/*
	Theme Name: Superior Bowen Theme
	Author: FieldWrk
*/

#tinymce {
	padding: 30px;
	background: #ffffff;
	color: #000000;
}

#tinymce h5 {
	margin-top: 0;
	margin-bottom: 0.5em;
}

#tinymce h3.smaller {
	margin-top: 0;
	margin-bottom: 0;
}

#tinymce p {
	margin-top: 0;
}

/* Login Screen */

.login {
	background-color: #0E1624;
	background-image: url(/wp-content/themes/superior-bowen/images/graphic-bottom-right-corner.svg);
	background-repeat: no-repeat;
	background-position: bottom right;
}

#login {
	border: 0;
	margin: 0 auto;
	margin-top: 8%;
	border-radius: 0;
	padding: 0;
	box-shadow: none;
	background: transparent;
}

.login h1.admin-email__heading {
	font-size: 1.4em;
}

.login-action-confirm_admin_email #login {
	margin-top: 8%;
}

.login h1 a {
	background-image: url(/wp-content/themes/superior-bowen/images/logo.svg);
	background-color: transparent;
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center;
	width: 100%;
	margin: 0;
	border: 0;
}

.login #login_error, .login .message, .login .success {
	background: #F2F2F2;
	text-align: center;
	border: unset;
	padding: 0;
	font-style: italic;
	margin: 0;
	padding: 2em;
	padding-bottom: 0;
	font-size: 0.7em;
}

.login .message {
	background: transparent;
	color: #F2f2f2;
	padding-bottom: 2em;
	padding-top: 0;
}

.login form {
	background: #F2F2F2;
	box-shadow: unset;
	border: unset;
	margin-top: -1px;
	padding-bottom: 2em;
	padding-top: 2em;
	margin-bottom: 0;
	border-radius: 16px;
}

.login label {
	color: #0C0C1A;
}

.login form .input, .login input[type=password], .login input[type=text] {
	font-size: 1em !important;
	padding: 0.5em 1em !important;
	-webkit-appearance: none;
	width: 100%;
	border-radius: 8px;
	border: 0;
	box-shadow: unset;
	margin-bottom: 1em;
}

.login .user-pass-wrap {
	margin-bottom: 1em;
}

#login form p.submit {
	text-align: center;
	margin-top: 1em;
}

.wp-core-ui .button.button-large.button-primary, .wp-core-ui .button.button-large {
	padding: 0;
	font-size: 1em;
	transition: 0.5s all;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	cursor: pointer;
	justify-content: space-between;
	line-height: 1;
	text-decoration: none;
	background: #B8F51C;
	color: #0E1624;
	border: unset;
	padding: 1em 1.5em;
}

.wp-core-ui .button.button-large.button-primary:hover {
	background: #B8F51C;
	text-decoration: none;
	color: #0E1624;
	border: unset;
}

.wp-core-ui .button.button-large {
    background: #F2F2F2;
    color: #0C0C1A;
}

.login #backtoblog a, .login #nav a {
	color: #ffffff;
}

.login #backtoblog a:hover, .login #nav a:hover, .login h1 a:hover {
	color: #ffffff;
}

.login form .forgetmenot {
	float: none;
	margin-top: -1em;
}

.login #nav {
	margin-top: 2em;
}

.login #nav, .login #backtoblog {
	background: transparent;
}

.login #backtoblog {
	padding-top: 0;
	margin-bottom: 0;
}

.login .privacy-policy-page-link {
	display: none;
}

/* Font References */

@font-face {
  	font-family: 'PP Neue Montreal';
  	font-weight: 400;
  	src: url(library/fonts/PPNeueMontreal-Regular.woff2);
}

@font-face {
  	font-family: 'PP Neue Montreal';
  	font-weight: 500;
  	src: url(library/fonts/PPNeueMontreal-Medium.woff2);
}

/* Global */

* {
    box-sizing: border-box;
}

html {
	font-size: 19px;
	margin: 0;
	padding: 0;
	overscroll-behavior-y: none;
}

html.fixed {
	height: 100%;
	overflow: hidden;
}

body {
	font-size: 1em;
	margin: 0;
	padding: 0;
	font-family: 'PP Neue Montreal', sans-serif;
	color: #525862;
	position: relative;
	background: linear-gradient(to bottom, #ffffff 50%, #0B111C 50%);
}

.container,
#menu-primary-navigation .sub-menu {
	max-width: 1300px;
}

.container.full-width {
	width: 100%;
	max-width: 1700px;
}

.container-fluid {
	position: relative;
}

.container-fluid {
	z-index: 2;
}

.row {
	padding-top: 6em;
	padding-bottom: 6em;
}

.py-small {
	padding-top: 3em;
	padding-bottom: 3em;
}

.pt-small {
	padding-top: 3em;
}

.pb-small {
	padding-bottom: 3em;
}

.py-4.pt-0 {
	padding-top: 0 !important;
}

.row .row {
	padding-top: 0;
	padding-bottom: 0;
}

/* Typography */

h1, .h1 {
	color: #ffffff;
	font-size: 1.1em;
	margin-bottom: 1em;
	font-weight: 400;
}

h2, .h2 {
	font-size: 6.7em;
	color: #ffffff;
	font-weight: 400;
	line-height: 1;
}

#header h1 span {
	display: block;
	transform: translateY(125%);
	transition: 0.5s all ease-out;
	opacity: 0;
}

#header h2 span {
	display: block;
	transform: translateY(50%);
	transition: 0.5s opacity ease-out, 0.5s transform ease-out;
	opacity: 0;
}

#header h1.in span,
#header h2.in span {
	transform: translateY(0);
	opacity: 1;
}

h3, .h3 {
	font-size: 3em;
	color: #0E1624;
	font-weight: 400;
}

h3.smaller, .h3.smaller {
	font-size: 2.1em;
	margin-bottom: 0.4em;
}

h4, .h4 {
	font-size: 1.3em;
	color: #0E1624;
	font-weight: 400;
}

h5, .h5 {
	font-size: 0.8em;
	color: #525862;
	letter-spacing: 1.8px;
	text-transform: uppercase;
	margin-bottom: 1.2em; 
}

h6 {
	font-family: 'FONT NAME GOES HERE', sans-serif;
}

.eyebrow {
	text-transform: uppercase;
	letter-spacing: 1.3px;
	font-size: 0.8em;
	font-weight: 500;
}

a {
	color: #000000;
	transition: 0.5s all;
	text-decoration: underline;
}

a:hover {
	text-decoration: underline;
	color: #000000;
}

p:last-of-type {
	margin-bottom: 0;
}

hr {
	border-top: 1px solid #E7EBED;
	margin-top: 1.5em;
	margin-bottom: 1.5em;
	width: 100%;
}

.bg-dark hr {
	border-color: rgba(255,255,255, 0.25);
}

.chip {
	background: #1C2942;
	border-radius: 4px;
	padding: 8px 20px;
	margin-right: 0.5em;
	margin-bottom: 0.5em;
	font-size: 0.8em;
	color: #ffffff;
}

b, strong {
	font-weight: 900;
}

.medium {
	font-size: 1.3em;
}

.large {
	font-size: 1.6em;
}

.larger {
	font-size: 1.7em;
}

.blockquote {
	font-size: 1.6em;
	color: #ffffff;
	line-height: 44px;
}

.bg-white .blockquote {
	color: #0E1624;
}

.color-white {
	color: #ffffff;
}

.color-black {
	color: #000000;
}

.color-green {
	color: #B8F51C;
}

.color-muted {
	color: rgba(12,12,26,0.65);
}

.text-shadow {
	text-shadow: 00px 4px 4px rgba(0, 0, 0, 0.1);
}

.small {
	font-size: 0.7em;
}

.btn-primary, .btn-secondary, .fab {
	padding: 0;
	font-size: 1em;
	transition: 0.5s all;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	cursor: pointer;
	justify-content: space-between;
	line-height: 1;
	text-decoration: none;
}

.btn-primary {
	background: #B8F51C;
	color: #0E1624;
	border: unset;
}

.btn-primary:hover, .btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show >.btn-primary.dropdown-toggle {
	background: #B8F51C;
	text-decoration: none;
	color: #0E1624;
	border: unset;
}

.btn-primary.focus, .btn-primary:focus {
	box-shadow: unset;
}

.btn-primary::focus-visible {
	box-shadow: 0 0 0 .2rem rgba(38,143,255,.5);
}

.btn-secondary {
	background: #FFFFFF;
	color: #0E1624;
	border: 0;
}

.btn-secondary:hover {
	background: #FFFFFF;
	text-decoration: none;
	color: #0E1624;
	border: 0;
}

.btn-primary div, .btn-secondary div, .fab div {
    position: relative;
    overflow: hidden;
    top: 1px;
    padding: 16px 24px;
}

.fab div {
	padding: 14px 24px;
}

.fab div img {
	position: relative;
	top: -1px;
	left: -4px;
}

.btn-primary span:first-child, .btn-secondary span:first-child, .fab span:first-child {
    position: relative;
    display: block;
    transition: 0.4s all cubic-bezier(0.58,0,0.32,1);
}

.btn-primary span:last-child, .btn-secondary span:last-child, .fab span:last-child {
    position: absolute;
    left: 0;
    right: 0;
    transform: translateY(38px);
    transition: 0.4s all cubic-bezier(0.58,0,0.32,1);
    width: calc(100% - 48px);
    margin: 0 auto;
}

.btn-primary span, .btn-secondary span, .fab span {
    height: 19px;
}

.btn-primary:hover span:first-child, .btn-secondary:hover span:first-child, .fab:hover span:first-child {
    transform: translateY(-38px);
}

.btn-primary:hover span:last-child, .btn-secondary:hover span:last-child, .fab:hover span:last-child {
    transform: translateY(-19px);
}

.bg-light-gray .boxed .btn-secondary {
	background: #F2F2F2;
}

.fab, .fab:hover, .fab:focus, .fab:active {
	background: #0E1624;
	color: #ffffff;
	box-shadow: 0 6px 10px 4px rgba(0, 0, 0, 0.15), 0 2px 3px 0 rgba(0, 0, 0, 0.30);
	text-decoration: none;
}

#fab-container {
	position: fixed;
	bottom: 1em;
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 999;
	text-align: center;
	opacity: 0;
	transition: 0.5s all;
	pointer-events: none;
}

#fab-container.in {
	opacity: 1;
	pointer-events: auto;
}

#fab-trigger {
	pointer-events: none;
	position: absolute;
	height: 50%;
	top: 15%;
	width: 100%;
}

.btn-text {
	display: inline-flex;
    position: relative;
    width: auto;
    padding-bottom: 6px;
    color: #0E1624;
    text-decoration: none;
    cursor: pointer;
    overflow: hidden;
    font-weight: 500;
    font-size: 1.1em;
}

.btn-text:hover {
    text-decoration: none;
    color: #000000;
}

.btn-text:before {
    content: '';
    height: 2px;
    width: 100%;
    background: #B8F51C;
    position: absolute;
    left: calc(-200%);
    bottom: 0;
    transition: 1.2s all;
    transition-timing-function: cubic-bezier(0.57, 0, 0.4, 1);
}

.btn-text:hover:before {
    left: 0;
}

.btn-text:after {
    content: '';
    height: 2px;
    width: 100%;
    background: #B8F51C;
    position: absolute;
    left: 0;
    bottom: 0;
    transition: 1.2s all;
    transition-timing-function: cubic-bezier(0.57, 0, 0.4, 1);
}

.btn-text:hover:after {
	left: calc(200%);
}

.buttons .btn-secondary {
	margin-right: 0.5em;
}

.sliding-button {
	background: #FFFFFF;
	border-radius: 8px;
	padding: 4px;
	display: inline-flex;
	position: relative;
}

.bg-dark .sliding-button {
	background: #1C2942;
}

.sliding-button .button {
	width: 185px;
	text-align: center;
	padding: 16px 24px;
	font-size: 1em;
	transition: 0.5s all;
	border-radius: 6px;
	display: inline-block;
	cursor: pointer;
	line-height: 1;
	letter-spacing: 0.1em;
	letter-spacing: -0.32px;
	position: relative;
	color: #0E1624;
}

.bg-dark .sliding-button .button {
	color: #ffffff;
}

.sliding-button .button.active {
	color: #0E1624;
}

.sliding-button:before {
	content: '';
	height: calc(100% - 8px);
	width: 185px;
	border-radius: 4px;
	background: #B8F51C;
	position: absolute;
	left: 4px;
	top: 4px;
	z-index: 1;
	transition: 0.5s all;
}

.sliding-button.right:before {
	transform: translateX(100%);
}

.sliding-button .button {
	position: relative;
	z-index: 2;
}

.page-template-open-positions .sliding-button .button {
	width: 125px;
}

.page-template-open-positions .sliding-button:before {
	width: 125px;
}

/* Helpers */

.line {
	width: 50px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	height: 2px;
	background: #B8F51C;
	margin-bottom: 0.8em;
}

.fancybox-slide--html {
	padding: 0;
	overflow: hidden;
}

.fancybox-stage {
	display: flex;
	align-items: center;
	justify-content: center;
}

.fancybox-slide--iframe {
	height: 75vh;
	top: unset;
	overflow: visible;
    padding: 0;
    margin: 44px;
    width: calc(100% - 88px);
}

.fancybox-content {
	vertical-align: bottom;
	border-top-left-radius: 24px;
	border-top-right-radius: 24px;
	width: 100%;
	max-width: 2000px;
	overflow: visible;
	padding: 32px;
}

.fancybox-slide--html .fancybox-content {
	height: 75% !important;
}

.fancybox-slide--video .fancybox-content {
	vertical-align: middle;
}

.fancybox-content .container {
	width: calc(100vw - 48px);
	max-width: 2000px;
	padding: 0;
	height: 100%;
}

.fancybox-content .row,
.fancybox-content .row > div {
	height: 100%;
}

.fancybox-content .card {
	height: 100%;
}

.fancybox-content .card-img {
	border-radius: 24px;
	height: 100%;
}

.fancybox-content .card-img img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	object-position: top;
}

.fancybox-content .row > div.col-md-5 {
	height: calc(100% + 32px);
    overflow: hidden;
}

.fancybox-content .bio {
	overflow: scroll;
	padding-right: 4em;
    height: 100%;
    padding-bottom: 11em;
    z-index: 1;
}

.fancybox-content .h4 {
	position: relative;
	z-index: 2;
}

.fancybox-content .h4 span {
	position: relative;
	z-index: 2;
}

.fancybox-content .h4:before {
	content: '';
	width: 100%;
	height: calc(100% + 1em);
	z-index: 1;
	background: linear-gradient(to bottom, #ffffff 75%, rgba(255,255,255,0));
	position: absolute;
	top: 0;
	left: 0;
}

.fancybox-content p {
	color: rgba(0,0,0,0.6);
	line-height: 177.778%;
}

.fancybox-button--close {
    top: 24px;
    right: 24px !important;
    background-color: #B8F51C;
    background-image: url(/wp-content/themes/superior-bowen/images/icon-x.svg);
    background-size: 24px;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 8px;
    height: 56px;
    width: 56px;
    right: 0;
    opacity: 1;
    transition: 0.5s background-color;
}

.fancybox-button--close:hover {
	background-color: #99CC17;
}

.fancybox-slide--html .fancybox-button--close {
	right: 24px;
}

.fancybox-button--close svg {
	display: none;
}

.single .fancybox-navigation .fancybox-button,
.fancybox-toolbar,
.fancybox-button.fancybox-button--close {
	opacity: 1 !important;
	visibility: visible !important;
}

.fancybox-button.fancybox-button--thumbs,
.fancybox-button.fancybox-button--download,
.fancybox-button.fancybox-button--play,
.fancybox-button.fancybox-button--zoom,
.fancybox-infobar,
.fancybox-close-small {
	display: none !important;
}

.separator-05 {
	height: 0.5em;
	display: block;
	clear: both;
	width: 100%;
}

.separator-1 {
	height: 1em;
	display: block;
	clear: both;
	width: 100%;
}

.separator-2 {
	height: 2em;
	display: block;
	clear: both;
	width: 100%;
}

.separator-3 {
	height: 3em;
	display: block;
	clear: both;
	width: 100%;
}

.separator-4 {
	height: 4em;
	display: block;
	clear: both;
	width: 100%;
}

.separator-6 {
	height: 6em;
	display: block;
	clear: both;
	width: 100%;
}

.bg-white {
	background-color: #ffffff;
}

.bg-light-gray {
	background-color: #F2F2F2;
}

.bg-medium-gray {
	background-color: #E6E6E6;
}

.bg-dark {
	background-color: #0E1624 !important;
	color: #B7B9BD;
}

.bg-dark h3,
.bg-dark .h3:not(.color-green),
.bg-dark .h4 {
	color: #ffffff;
}

.bg-dark h5,
.bg-dark .h5 {
	color: #B7B9BD;
}

.bg-darker {
	background-color: #0B111C;
}

.bg-image {
	background-size: cover;
	background-position: center;
	width: 100%;
	overflow: hidden;
	position: relative;
	height: 500px;
}

.bg-image.h-auto {
	height: auto;
	overflow: visible;
}

.bg-image.h-auto .row {
	position: relative;
}

.bg-image.h-full, .h-full {
	height: 100vh;
}

.bg-image.parallax {
	background-attachment: fixed;
}

.bg-image .container, .h-full .container {
	position: relative;
	z-index: 2;
	height: 100%;
}

.bg-image .row, .h-full .row {
	height: 100%;
}

.bg-image .bg-image {
	height: 100%;
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

.bg-video {
	background-size: cover;
	background-position: center;
	overflow: hidden;
}

.bg-video .bg-image {
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	opacity: 0;
	transition: 0.5s all;
}

.bg-video .bg-image.in {
	opacity: 1;
}

.bg-video .container {
	z-index: 4;
	position: relative;
}

.bg-video .container, .bg-video .row {
	height: 100%;
}

.bg-video .video,
.container.boxed .video {
    height: 100%;
    width: calc(100% + 12px);
    position: absolute;
    top: 0;
    left: -12px;
    z-index: 1;
    overflow: hidden;
    margin: 0;
    border-radius: 0;
    box-shadow: unset;
    opacity: 0;
    transition: 0.3s opacity;
}

.bg-video .video.in,
.container.boxed .video {
	opacity: 1;
}

.bg-video .video video,
.container.boxed .video video {
    right: 0;
    bottom: 0;
    width: auto;
    height: auto;
    position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	min-width: 100%;
    min-height: 100%;
    width: 100%;
    object-fit: cover;
}

.bg-video .video video {
	top: -10%;
}

.bg-video .overlay,
.container.boxed .video .overlay {
	z-index: 2;
}

.bg-video + .row {
	position: relative;
	z-index: 2;
}

.overlay {
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 1;
	background: linear-gradient(to bottom, rgba(14,22,36,0), rgba(14,22,36,0.7) 86%);
	pointer-events: none;
}

/* YouTube Embeds */

.video-container { 
	position: relative; 
	padding-bottom: 56.25%; 
	padding-top: 30px; 
	height: 0;
	overflow: hidden; 
}

.video-container iframe, .video-container object, .video-container embed { 
	position: absolute; 
	top: 0; 
	left: 0; 
	width: 100%; 
	height: 100%; 
}

/* Images */

img {
	max-width: 100%;
}

.alignleft { float: left; margin: 0 1em 1em 0; }
.alignright { float: right; margin: 0 0 1em 1em; }
.aligncenter {margin: 1em auto;}

#section-1-date-0 .image,
#section-1-date-2 .image {
	object-position: top;
}

/* Google Maps */

#map-container .boxed {
	width: calc(100vw - 48px);
	max-width: 2000px;
	padding: 0;
	overflow: hidden;
}

#no-results {
	margin-top: 2em;
}
 
#map {
	height: 60vh;
	max-height: 800px;
	width: 100%;
}

.gm-style-iw-ch {
	padding: 0;
}

button.gm-ui-hover-effect {
	height: 20px !important;
	width: 20px !important;
	top: 1em !important;
	right: 1em !important;
	position: absolute;
}

button.gm-ui-hover-effect:focus {
	outline: unset !important;
	border: 0 !important;
	box-shadow: none !important;
}

.gm-ui-hover-effect>span {
	background-color: #ffffff !important;
	height: 20px !important;
    width: 20px !important;
    margin: 0 !important;
}

.gm-style .gm-style-iw-c {
	background: #0E1624;
	width: auto;
	border-radius: 12px;
	color: #B7B9BD;
	padding-left: 0;
}

.gm-style .gm-style-iw-tc::after {
	background: #0E1624;
}

.gm-style .gm-style-iw-d {
	padding: 1.5em;
	padding-top: 0;
	max-width: 275px;
	overflow: hidden !important;
}
 
 .gm-style .gm-style-iw-c a {
 	color: #ffffff;
 }

.gm-style .gm-style-iw-c .medium,
.gm-style .gm-style-iw-c .phone,
.gm-style .gm-style-iw-c .directions,
.gm-style .gm-style-iw-c .website {
	color: #ffffff;
}

.gm-style .gm-style-iw-c .medium {
	padding-right: 50px !important;
}

.gm-style .gm-style-iw-c .phone {
	margin-right: 1em;
}

.gm-style .gm-style-iw-c .phone img {
	filter: brightness(0) saturate(100%) invert(99%) sepia(5%) saturate(0%) hue-rotate(112deg) brightness(116%) contrast(100%);
	margin-right: 0.5em;
}

#locations #filters {
	background: #ffffff;
	border-radius: 8px;
	padding: 0.8em 2em;
}

#locations #filters .label {
	color: #0C0C1A;
	font-size: 1.2em;
	border-radius: 0;
	margin-bottom: 0;
	padding: 0;
}

#legend > div {
	background: #ffffff;
	border-radius: 12px;
	padding: 1em;
	left: 12px !important;
	bottom: 12px !important;
	position: relative;
}

a[title="Open this area in Google Maps (opens a new window)"] {
	display: none !important;
}

.gm-style-mtc-bbw,
.gm-fullscreen-control {
	display: none;
}

button[title="Drag Pegman onto the map to open Street View"] {
	display: none;
}

.gm-bundled-control-on-bottom {
	bottom: 5em !important;
}

/* Header */

header.container-fluid {
	position: absolute;
	z-index: 999;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
	width: 100%;
	margin-top: 24px;
	margin-bottom: 0;
	/* height: calc(80px + 48px); */
	padding: 0;
	pointer-events: none;
}

header.open,
header.open .container {
	background: #141D2F;
}

header .container {
	height: 80px;
	top: 12px;
	background: #1C2942;
	border-radius: 12px;
	position: relative;
	padding: 0px 24px;
	position: sticky;
	pointer-events: auto;
}

.logged-in header .container {
	top: calc(32px + 12px);
}

header .row {
	padding-top: 0;
	padding-bottom: 0;
	height: 100%;
}

#logo {
	position: relative;
	z-index: 3;
	transition: 0s all;
	height: 100%;
}

#logo a {
	display: block;
	width: 100%;
}

#logo img {
	width: 90%;
	margin: 0;
	height: auto;
}

header .btn-primary div {
	padding: 12px 20px;
	white-space: nowrap;
}

header .btn-primary span:last-child {
	width: calc(100% - 40px);
}

/* Header Navigation */

#navigation {
	position: unset;
	height: 100%;
}

#menu-primary-navigation {
	margin: 0;
	padding: 0;
	display: flex;
	height: 100%;
}

#menu-primary-navigation li {
	list-style-type: none;
	text-transform: none;
	margin: 0;
	display: block;
	font-size: 1em;
	width: auto;
	height: 100%;
	display: flex;
	align-items: center;
	margin-left: 0.5em;
	margin-right: 0.5em;
	padding-left: 1em;
	padding-right: 1em;
	position: unset;
}

#menu-primary-navigation .menu-item-has-children {
	position: relative;
}

#menu-primary-navigation .menu-item-has-children:after {
  	content: '';
  	position: absolute;
  	left: 0;
  	right: 0;
  	top: 100%;
  	height: 12px; 
  	pointer-events: none;
}

#menu-primary-navigation li.menu-item-has-children:hover:after {
	pointer-events: auto;
}

#menu-primary-navigation a {
	color: #FFFFFF;
	font-size: 1em;
	transition: 0.5s color;
	text-decoration: none;
	z-index: 2;
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
}

#menu-primary-navigation > li:hover > a,
#menu-primary-navigation > li.current-menu-item > a,
#menu-primary-navigation > li.current-menu-parent > a {
	color: #B8F51C;
}

#menu-primary-navigation .menu-item-has-children > a {
	cursor: default;
}

#menu-primary-navigation > li > a:before {
	content: '';
	height: 2px;
	width: 0;
	transition: 0.5s all;
	position: absolute;
	left: 0;
	bottom: 0;
	background: #B8F51C;
}

#menu-primary-navigation > li:hover > a:before {
	width: 100%;
}

#menu-primary-navigation .caret {
	margin-left: 0.5em;
	height: 8px;
	display: flex;
}

#menu-primary-navigation .caret img{
	filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(0deg) brightness(103%) contrast(103%);
	height: 100%;
	transition: transform .4s cubic-bezier(.4,0,.2,1);
}

#menu-primary-navigation .caret img:last-of-type {
	position: relative;
	left: -4px;
}

#menu-primary-navigation li:hover .caret img {
	filter: brightness(0) saturate(100%) invert(100%) sepia(32%) saturate(4962%) hue-rotate(17deg) brightness(101%) contrast(92%);
}

#menu-primary-navigation li:hover .caret img:first-of-type {
	transform: rotate(-90deg);
}

#menu-primary-navigation li:hover .caret img:last-of-type {
	transform: rotate(90deg);
}

#menu-primary-navigation .sub-menu {
	position: fixed;
    opacity: 0;
    pointer-events: none;
    transition: 0.5s opacity, 0.2s top;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
	grid-template-rows: 1fr;
    grid-gap: 16px;
    width: 100%;
	left: 0;
	right: 0;
	margin: 0 auto;
    background: #1C2942;
    overflow: hidden;
    top: calc(80px + 12px + 24px);
    border-radius: 12px;
    padding: 32px;
}

.page-template-home #menu-primary-navigation .sub-menu {
	top: calc(80px + 12px + 48px);
}

.logged-in #menu-primary-navigation .sub-menu {
	top: calc(80px + 12px + 48px + 32px);
}

.stuck #menu-primary-navigation .sub-menu {
	top: calc(80px + 24px);
}

.logged-in .stuck #menu-primary-navigation .sub-menu {
	top: calc(32px + 80px + 24px);
}

#menu-primary-navigation .menu-item-has-children:hover .sub-menu {
	opacity: 1;
	pointer-events: auto;
}

#menu-primary-navigation .sub-menu li {
	display: block;
	padding: 0;
	color: #ffffff;
    border: none;
	white-space: nowrap;
	width: 100%;
	text-align: left;
	line-height: 1;
	margin: 0;
}

#menu-primary-navigation .sub-menu li a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px;
	background: #243454;
	border-radius: 6px;
	transition: 0.5s all;
}

#menu-primary-navigation .sub-menu a:hover,
#menu-primary-navigation .sub-menu li.current-menu-item a {
	color: #ffffff;
	background: #2A3E63;
}

#menu-primary-navigation .sub-menu li > a:after {
	content: '';
	background-image: url(/wp-content/themes/superior-bowen/images/icon-arrow-right-double-dark.svg);
	background-color: #B8F51C;
	border-radius: 6px;
	background-size: 50px;
	background-position: 220%;
	height: 40px;
	width: 40px;
	background-repeat: no-repeat;
	transition: 0.8s all cubic-bezier(0.72, 0, 0.21, 1);
}

#menu-primary-navigation .sub-menu li > a:hover:after {
	background-position: -140%;
}

#nav-icon {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 36px;
  	width: 36px;
  	background: #B8F51C;
  	border-radius: 8px;  
  	margin-right: 16px;
}

.nav-icon {  
  	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 16px;
}

.nav-icon:after, 
.nav-icon:before, 
.nav-icon div {
  	background-color: #0E1624;
  	content: '';
  	display: block;
  	height: 1px;
  	margin: 2px 0;
  	transition: all .2s ease-in-out;
}

.nav-icon:before {
	width: 100%;
}

.nav-icon div {
	width: 100%;
}

.nav-icon:after {
	width: 100%;
}

.nav-icon.close:before {
  	transform: translateY(5px) rotate(135deg);
  	width: 100%;
}

.nav-icon.close:after {
  	transform: translateY(-5px) rotate(-135deg);
}

.nav-icon.close div {
  	transform: scale(0);
}

.close:not(:disabled):not(.disabled):focus, .close:not(:disabled):not(.disabled):hover, .nav-icon.close {
	opacity: 1;
}

/* Special Layouts */

#header {
	height: 700px;
}

.page-template-home #header {
	background: #ffffff;
	height: calc(100vh - 48px);
	margin-top: 24px;
	min-height: 600px;
	max-height: 1440px;
}

.logged-in.page-template-home #header {
	height: calc(100vh - 48px - 32px);
}

#header .container, 
#header .row {
	height: 100%;
	position: relative;
	z-index: 2;
}

#header .container > .row > div:first-of-type {
	padding-left: 0;
	padding-right: 0;
}

.page-template-home #header.bg-video .video {
	width: calc(100vw - 48px);
	left: 0;
	right: 0;
	margin: 0 auto;
	border-radius: 24px;
}

.page-template-home h2 {
	display: flex;
	align-items: center;
	margin-left: -8px;
}

.page-template-home #header #changing-words {
	position: relative;
	height: 137px;
	margin-left: 0.25em;
	overflow: hidden;
	 -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 10%, black 95%, transparent 100%);
  	-webkit-mask-repeat: no-repeat;
  	-webkit-mask-size: cover;
  	mask-image: linear-gradient(to bottom, transparent 0%, black 10%, black 95%, transparent 100%);
  	mask-repeat: no-repeat;
  	mask-size: cover;
	width: 100%;
}

.page-template-home #header #changing-words span {
	display: block;
  	position: absolute;   
  	top: 0;
  	left: 0;
  	width: 100%;
  	opacity: 0;
  	transform: translateY(100%);
}

.page-template-news #header .row,
.single #header .row,
.page-template-projects #header .row {
	padding-top: calc(3em + 80px + 48px);
}

.images {
	height: 200vh;
}

.images .images-container {
	position: absolute;
	height: 100%;
	width: 100%;
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 1;
	pointer-events: none;
}

.images .image {
	border-radius: 12px;
	position: absolute;
}

.images .image:first-of-type {
	right: 0;
	top: 10%;
}

.images .image:nth-of-type(2) {
	left: 0;
	top: 60%;
}

.images .image:nth-of-type(3) {
	left: 45%;
	top: 75%;
}

.images .container.content > .row {
	height: calc(100vh - 80px - 48px);
	padding: 0;
}

.images .content {
	position: sticky;
	top: calc(80px + 48px);
	height: calc(100vh - 8em - 80px - 48px);
	z-index: 2;
	background: transparent;
}

.logged-in .images .content {
	top: calc(80px + 48px + 32px);
}

.images h3 {
  	position: relative;
  	color: #000000;
  	z-index: 3;
}

.page-links .link {
	padding-top: 1em;
	padding-bottom: 1em;
	border-top: 1px solid rgba(14,22,35,0.3);
	overflow: hidden;
	position: relative;
	text-decoration: none;
}

.page-links .link:hover {
	text-decoration: none;
}

.page-links .link:last-of-type {
	border-bottom: 1px solid rgba(14,22,35,0.3);
}

.bg-dark.page-links .link {
	border-color: #1C2942;
}

.page-links .link:hover {
	text-decoration: none;
}

.page-links .link:after {
	content: '';
	height: 100%;
	width: 100%;
	position: absolute;
	top: 100%;
	background: #B8F51C;
	transition: 0.5s all;
	z-index: -1;
}

.bg-light-gray.page-links .link:after,
.bg-medium-gray.page-links .link:after,
.bg-white.page-links .link:after {
	background: #0E1624;
}

.page-links .link:hover:after {
	text-decoration: none;
	top: 0;
}

.page-links .link .num {
	padding-left: 0;
}

.page-links .link .h3 {
	color: rgba(14,22,35,0.3);
	margin: 0;
	transition: 0.5s all;
}

.page-links .link div:not(.num) .h3 {
	color: #0E1624;

}
.page-links .link div:not(.num) .h3.inactive {
	color: rgba(14,22,35,0.3);
}

.bg-dark.page-links .link .h3 {
	color: rgba(183,185,189,0.4);
}

.bg-dark.page-links .link div:not(.num) .h3 {
	color: #B7B9BD;
}

.bg-dark.page-links .link div:not(.num) .h3.inactive {
	color: rgba(183,185,189,0.4);
}

.page-links .link:hover .num .h3 {
	color: #ffffff;
	padding-left: 0.25em;
}

.bg-dark.page-links .link:hover .num .h3 {
	color: #0E1624;
}

.page-links .link:hover div:not(.num) .h3 {
	color: #B8F51C;
}

.bg-dark.page-links .link:hover div:not(.num) .h3 {
	color: #0E1624;
}

.page-links .link .arrow {
	text-align: right;
	padding-right: 5px;
}

.page-links .link img {
	transition: 0.5s all;
}

.page-links .link:hover img {
	filter: brightness(0) saturate(100%) invert(81%) sepia(55%) saturate(636%) hue-rotate(22deg) brightness(100%) contrast(101%);
}

.bg-dark.page-links .link img {
	filter: brightness(0) saturate(100%) invert(100%) sepia(10%) saturate(0%) hue-rotate(159deg) brightness(112%) contrast(100%);
}

.bg-dark.page-links .link:hover img {
	filter: brightness(0) saturate(100%) invert(7%) sepia(7%) saturate(4622%) hue-rotate(180deg) brightness(95%) contrast(97%);
}

.boxed {
	border-radius: 24px;
}

.three-column {
	padding-bottom: 24px;
	padding-top: 24px;
}

.three-column .boxed {
	width: calc(100vw - 48px);
	max-width: 2000px;
}

.three-column.bg-light-gray .boxed,
.three-column.bg-medium-gray .boxed {
	background: #ffffff;
}

.three-column.bg-dark .boxed,
.three-column.bg-white .boxed {
	background: #F2F2F2;
}

.three-column .icon .box,
.safety-spotlight .icon .box {
	background: #0E1624;
	border-radius: 8px;
	height: 56px;
	width: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	overflow: hidden;
}

.three-column .icon img,
.safety-spotlight .icon img {
	height: 24px;
	width: 24px;
}

.three-column h4 {
	margin-top: 1em;
}

.bg-dark.three-column h3 {
	color: #0E1624;
}

.three-column .copy {
	padding-left: 20px;
	padding-right: 20px;
}

.bg-dark.three-column {
	color: #525862;
}

.table {
	margin-bottom: 0;
}

.table .row > div:first-of-type {
	padding-left: 0;
}

.table .row > div:last-of-type {
	padding-right: 0;
}

.table .cell {
	padding-top: 1em;
	padding-bottom: 1em;
	border-top: 1px solid rgba(255,255,255,0.25);
	height: 100%;
	align-items: center;
	display: flex;
}

.table .left {
	padding-left: 0;
	padding-right: 0;
}

.table .right {
	padding-right: 0;
	padding-left: 0;
}

.media-text img,
.riverflow img {
	border-radius: 12px;
}

.media-text.right .image,
.riverflow .right .image {
	padding-right: 0;
}

.media-text.right .content,
.riverflow .right .content {
	padding-left: 0;
}

.media-text.left .image,
.riverflow .left .image {
	padding-left: 0;
}

.media-text.left .content,
.riverflow .left .content {
	padding-right: 0;
}

.full-width-media {
	padding-top: 24px;
	padding-bottom: 24px;
}

.single .full-width-media {
	width: 100%;
	padding: 0;
	margin-left: 15px;
	margin-right: 15px;
}

.full-width-media .bg-image {
	border-radius: 24px;
	overflow: hidden;
	height: 60vh;
	width: calc(100vw - 48px);
	max-width: 2000px;
	padding-left: 0;
	padding-right: 0;
}

.single .full-width-media .bg-image {
	width: 100%;
	height: 500px;
}

.full-width-media .bg-image .image {
	position: relative;
	object-fit: cover;
	object-position: center;
	height: calc(100% + 15%);
	width: 100%;
}

.full-width-media .content {
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.7);
	height: 100%;
	width: 100%;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}

.full-width-media .copy {
	color: #B7B9BD;
	width: 40%;
	text-align: center;
}

.full-width-media .icon,
.media-text .icon,
.video-carousel .icon {
	background: #B8F51C;
	border-radius: 8px;
	height: 56px;
	width: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	overflow: hidden;
	margin-top: 2em;
	transition: 0.5s all;
}

.media-text .icon {
	position: absolute;
	bottom: 2em;
	right: 2em;
	margin: 0;
}

.video-carousel .icon {
	position: absolute;
	bottom: 1em;
	right: 1em;
	margin: 0;
	height: 48px;
	width: 48px;
	z-index: 3;
}

.full-width-media a:hover .icon,
.media-text .image a:hover .icon,
.video-carousel a:hover .icon {
	transform: scale(1.1);
}

.full-width-media .icon img,
.media-text .icon img {
	height: 20px;
	width: 20px;
	right: -2px;
	position: relative;
}

.video-carousel .icon img {
	height: 16px;
	width: 16px;
	right: -1px;
	position: relative;
}

.full-width-media .medium {
	width: 40%;
	color: rgba(255,255,255,0.8);
}

#dates {
	position: relative;
}

.full-width-media.date {
	height: calc(100vh - 24px - 24px - 80px - 48px);
	position: sticky;
	top: calc(80px + 48px + 24px);
}

.full-width-media.date:last-of-type {
	padding-bottom: 0;
}

.full-width-media.date .container {
	height: 100%;
}

.testimonials {
	background-image: url(/wp-content/themes/superior-bowen/images/graphic-bottom-right-corner.svg);
	background-repeat: no-repeat;
	background-position: bottom right;
}

.testimonials .row > div:first-child {
	padding-left: 0;
}

.testimonials .row > div:last-child {
	padding-right: 0;
}

.testimonials h3 {
	width: 90%;
}

.featured-project {
	padding-bottom: 3em;
	padding-top: 3em;
}

.featured-project.bg-light-gray .boxed {
	background: #ffffff;
}

.featured-project .row {
	padding-top: 0;
	padding-bottom: 0;
}

.featured-project .content {
	padding-left: 4em;
}

.featured-project .overlay,
.page-template-news #header .overlay,
.page-template-projects #header .overlay {
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 47.18%, rgba(0, 0, 0, 0.66) 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.50) 0%, rgba(0, 0, 0, 0.50) 100%);
	width: calc(100% - 30px);
	height: calc(100% - 30px);
	top: 15px;
	left: 15px;
	z-index: 1;
	border-radius: 16px;
}

.page-template-news #header .overlay,
.page-template-projects #header .overlay {
	height: 100%;
	top: 0;
	width: calc(100% - 15px);
}

.featured-project img {
	border-radius: 16px;
	margin-top: 15px;
	margin-bottom: 15px;
}

.page-template-news #header .image,
.single #header .image,
.page-template-projects #header .image {
	height: 450px;
	border-radius: 16px;
	overflow: hidden;
	padding-right: 0;
	position: relative;
}

.single #header .image {
	height: 575px;
}

.page-template-news #header img,
.single #header .image img,
.page-template-projects #header img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	border-radius: 16px;
}

.featured-project .image .title,
.page-template-news #header .image .title,
.page-template-projects #header .image .title {
	position: absolute;
	bottom: calc(15px + 1em);
	width: calc(100% - 30px);
	text-align: center;
	color: #ffffff;
	font-size: 1.3em;
	z-index: 2;
}

.news {
	overflow: hidden;
}

.news .container {
	padding-left: 0;
	padding-right: 0;
}

.cta-section {
	padding-top: 24px;
}

.cta-section .boxed {
	width: calc(100vw - 48px);
	max-width: 2000px;
	padding-left: 0;
	padding-right: 0;
	position: relative;
	overflow: hidden;
}

.cta-section .overlay {
	background: rgba(0,0,0,0.5);
}

.cta-section .row {
	height: 100%;
	z-index: 2;
	position: relative;
}

.cta-section .bg-image {
	border-radius: 24px;
	overflow: hidden;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
}

.cta-section .bg-image img {
	position: relative;
	object-fit: cover;
	object-position: center;
	height: calc(100% + 15%);
	width: 100%;
}

.big-text {
	color: #0E1624;
}

.bg-dark.big-text {
	color: #ffffff;
}

.big-text p:not(:last-of-type) {
	margin-bottom: 2em;
}

.side-by-side-text .container {
	padding-left: 0;
	padding-right: 0;
}

.big-text .container {
	padding-left: 0;
	padding-right: 0;
}

.single #header .h5 {
	color: rgba(255,255,255,0.6);
	transition: 0.5s color;
	text-decoration: none;
	display: flex;
	align-items: center;
}

.single #header .h5:hover {
	color: #ffffff;
	text-decoration: none;
}

.single #header .h5 img {
	opacity: 0.6;
	transition: 0.5s all;
	position: relative;
	top: -1px;
	height: 12px;
	width: auto;
}

.single #header .h5:hover img {
	opacity: 1;
}

.single #content {
	padding-top: 24px;
	padding-bottom: 24px;
}

.single #content .boxed {
	width: calc(100vw - 48px);
	max-width: 2000px;
	background: #F2F2F2;
	padding-left: 0;
	padding-right: 0;
	position: relative;
}

.cta-section .overlay {
	background: rgba(0,0,0,0.5);
}

.cta-section .row {
	height: 100%;
	z-index: 2;
	position: relative;
}

.single .card.sticky {
	position: sticky;
	top: calc(80px + 48px + 24px + 3em);
}

.single .card.sticky hr {
	border-color: rgba(14,22,35,0.25);
}

.single .card.sticky .h5 {
	color: rgba(14,22,36,0.6);
}

.single .card.sticky .medium,
.page-template-contact .medium {
	color: #0E1624;
}

.accordion .container {
	padding-left: 0;
	padding-right: 0;
}

.accordion .position-sticky {
	top: calc(80px + 48px + 2em);
}

.logged-in .accordion .position-sticky {
	top: calc(80px + 48px + 2em + 32px);
}

.safety-spotlight .bg-top {
	position: absolute;
	top: 0;
	right: 0;
} 

.safety-spotlight .bg-bottom {
	position: absolute;
	bottom: 0;
	left: 0;
} 

.video-carousel .container {
	padding-left: 0;
	padding-right: 0;
}

.multi-accordion .container {
	padding-left: 0;
	padding-right: 0;
}

.multi-accordion  .inactive {
	opacity: 0;
	pointer-events: none;
	position: absolute;
	transition: 0s all;
}

#locations .isotope-container {
	margin-left: -30px;
	margin-right: -30px;
}

/* Cards */

.card {
	justify-content: center;
	border: 0;
	overflow: hidden;
	border-radius: 0;
	background: transparent;
}

a.card,
a.card:hover,
.card a,
.card a:hover {
	text-decoration: none;
}

.card-img {
	overflow: hidden;
	border-radius: 12px;
	position: relative;
}

a.card .card-img img {
	transition: 0.5s all cubic-bezier(0.57, 0, 0.4, 1);
}

a.card:hover .card-img img {
	transform: scale(1.1);
}

.card-img .button {
	position: absolute;
	top: 1em;
	right: 1em;
	display: flex;
	z-index: 2;
}

.card.horizontal .card-img .button {
	position: relative;
	top: unset; 
	right: unset;
}

.card-img .button .icon,
.card-img .button .text {
	background-color: #B8F51C;
	border-radius: 8px;
}

.card.horizontal .card-img .button .icon {
	height: 48px;
	width: 48px;
	background-size: 55px;
	border-radius: 6px;
}

.card-img .button .text {
	padding: 16px 24px;
	height: 56px;
	opacity: 0;
	transition: 0.5s all;
}

a.card:hover .card-img .button .text {
	opacity: 1;
}

.card-img .button .icon {
	background-image: url(/wp-content/themes/superior-bowen/images/icon-arrow-right-double-dark.svg);
	background-size: 64px;
	background-position: 320%;
	background-repeat: no-repeat;
	height: 56px;
	width: 56px;
	margin-left: 0.5em;
	transition: 0.8s all cubic-bezier(0.72, 0, 0.21, 1);
}

.team .card-img .button .icon {
	background-image: url(/wp-content/themes/superior-bowen/images/icon-linkedin.svg);
	background-size: 24px;
	background-position: center;
}

a.card:hover .card-img .button .icon {
	background-position: -260%;
}

.team .card-img .button:hover .icon {
	background-color: #99CC17;
}

.card-body {
	color: rgba(12,12,26,0.65);
	padding-left: 0;
	padding-right: 0;
	padding-bottom: 0;
}

.card .card-img .overlay {
	background: rgba(0,0,0,0.6);
	opacity: 0;
	transition: 0.5s all;
}

a.card:hover .card-img .overlay {
	opacity: 1;
}

.team .overlay {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	font-size: 1.3em;
	pointer-events: auto;
}

.team:hover .overlay {
	opacity: 1;
	text-decoration: none;
}

.bg-light-gray.full-width-media + .bg-light-gray.three-column,
.bg-medium-gray.full-width-media + .bg-medium-gray.three-column {
	padding-top: 0;
}

.video-carousel .card {
	border-radius: 8px;
}

.video-carousel .card-body {
	background: #ffffff;
	border-top: 4px solid #B8F51C;
	padding: 1em;
	color: rgba(82,88,98,0.65);
}

.video-carousel .card-img {
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	height: 400px;
}

.video-carousel .card .card-img .overlay {
	opacity: 0.2;
}

.card.horizontal {
	flex-direction: row;
	align-items: center;
	background: #ffffff;
	border-radius: 8px;
}

a.card.horizontal:hover {
	box-shadow: 0 2px 16px 0px rgba(0,0,0,0.08);
}

.card.horizontal .card-body {
	padding: 2em;
	width: 60%;
	flex-basis: 60%;
}

.card.horizontal .card-footer {
	background: unset;
	border: unset;
	flex-basis: 40%;
	width: 40%;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	padding: 2em;
}

.card.horizontal .card-img {
	width: auto;
	border-radius: unset;
}

.card.horizontal .chip {
	background: #F2F2F2;
	color: #525862;
	border-radius: 4px;
	font-size: 0.9em;
	white-space: nowrap;
	margin: 0;
	margin-right: 1em;
}

.card.location {
	background: #ffffff;
	border-radius: 12px;
	height: 100%;
}

.card.location .card-body {
	padding: 1.5em;
}

.card.location img {
	margin-right: 0.5em;
}

.card.location .phone,
.card.location a {
	color: #0E1624;
}

/* Swiper */

.image-carousel-swiper {
	overflow: hidden;
}

.image-carousel-swiper img {
	border-radius: 6px;
}

.logo-carousel .swiper-wrapper,
.auto-image-carousel .swiper-wrapper {
   	-webkit-transition-timing-function:linear!important;
   	-o-transition-timing-function:linear!important;
   	transition-timing-function:linear!important;
}

.logo-carousel .swiper-slide {
	height: auto;
	width: 100%;
	background: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1em 2em;
	border-radius: 12px;
}

.auto-image-carousel .swiper-slide {
	border-radius: 12px;
	overflow: hidden;
	height: 550px;
}

.auto-image-carousel .swiper-slide img {
	height: 100%;
	width: 100%;
	object-fit: cover;
}

.video-carousel-slick .slick-list {
	overflow: visible;
}

.video-carousel-slick .card {
	width: calc(100% - 15px);
}

.swiper-button-next, .swiper-button-prev {
	height: 56px;
	width: 56px;
	background-color: #B8F51C;
	background-image: url(/wp-content/themes/superior-bowen/images/icon-arrow-right-dark.svg);
	border-radius: 8px;
	background-size: 24px;
	background-repeat: no-repeat;
	background-position: center;
	position: relative;
	left: unset;
	right: unset;
	top: unset;
	margin-top: unset;
	transition: 0.5s background-color;
}

.swiper-button-next:hover,
.swiper-button-prev:hover,
.swiper-button-next:active,
.swiper-button-prev:active,
.swiper-button-next:focus,
.swiper-button-prev:focus{
	background-size: 24px !important;
}

.swiper-button-prev {
	background-image: url(/wp-content/themes/superior-bowen/images/icon-arrow-left-dark.svg);
}

.swiper-button-next:after, .swiper-button-prev:after {
	display: none;
}

.swiper-button-next {
	margin-left: 0.5em;
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
	background-color: #1C2942;
	background-image: url(/wp-content/themes/superior-bowen/images/icon-arrow-right-disabled.svg);
	opacity: 1;
	background-size: 24px !important;
}

.single .swiper-button-prev.swiper-button-disabled, 
.single .swiper-button-next.swiper-button-disabled,
.bg-light-gray .swiper-button-prev.swiper-button-disabled,
.bg-light-gray .swiper-button-next.swiper-button-disabled {
	background-color: #E6E6E6;
}

.swiper-button-prev.swiper-button-disabled {
	background-image: url(/wp-content/themes/superior-bowen/images/icon-arrow-left-disabled.svg);
}

.swiper-button-next:not(.swiper-button-disabled):hover,
.swiper-button-prev:not(.swiper-button-disabled):hover {
	background-color: #99CC17;
}

/* Filter */

#filters {
	margin-left: 0;
}

#filters .label {
	border-radius: 4px;
	background: #ffffff;
	padding: 0.5em 1em;
	color: #0E0E0E;
	margin-bottom: 1em;
	margin-right: 1em;
	cursor: pointer;
	transition: 0.5s all;
	font-size: 0.85em;
}

#filters .label:hover {
	background: rgba(14,22,36,0.1);
}

#filters .active .label {
	background: #0E0E0E;
	color: #ffffff;
}

.filter {
	position: relative;
	display: flex;
	align-items: center;
}

.filter .current {
	background: #ffffff;
	width: 100%;
	border-radius: 8px;
	padding: 16px 24px;
	height: 59px;
	padding-right: 2.5em;
	position: relative;
	background-repeat: no-repeat;
	text-transform: capitalize;
	color: #0E1624;
	cursor: pointer;
}

.filter .caret {
	position: absolute;
	right: 24px;
	z-index: 2;
	height: 8px;
	width: 16px;
}

.filter .caret img {
	height: 100%;
	transition: transform .4s cubic-bezier(.4,0,.2,1);
	position: absolute;
	top: 0;
}

.filter .caret img:first-of-type {
	right: -4px;
	transform: rotate(-90deg);
}

.filter .caret img:last-of-type {
	right: 0;
	transform: rotate(90deg);
}

.filter.open .caret img:first-of-type {
	transform: rotate(0deg);
}

.filter.open .caret img:last-of-type {
	transform: rotate(0deg);
}

.filter .dropdown {
	background: #ffffff;
	position: absolute;
	z-index: 998;
	display: none;
	width: 100%;
	padding: 4px;
	margin-top: 5px;
	border-radius: 12px;
	box-shadow: 0 2px 16px 0px rgba(0, 0, 0, 0.08);
	top: 59px;
	border: 1px solid transparent;
}

.filter .dropdown:hover {
	border: 1px solid #BDBDBD;
}

.filter .dropdown .option {
	padding: 16px 24px;
	transition: 0.5s all;
	border-radius: 8px;
	cursor: pointer;
}

.filter .dropdown .option:hover {
	background: #F2F2F2;
}

#no-results .col-12 {
	background: #FFFFFF;
	padding: 4em;
	text-align: center;
}

.filter.checkbox {	
	cursor: pointer;
	margin-top: 1em;
	margin-bottom: 1em;
	font-weight: 400;
	display: flex;
	align-items: center;
	color: rgba(12,12,26,0.6);
}

.filter.checkbox img {
	height: 20px;
	width: 20px;
	display: inline-block;
	margin-right: 0.5em;
}

.filter.checkbox:before {
	content: '';
	height: 20px;
	width: 20px;
	border: 1px solid #1C2942;
	display: inline-block;
	position: relative;
	margin-right: 0.5em;
	border-radius: 3px;
	flex-shrink: 0;
	flex-grow: 0;
}

.filter.checkbox.checked:before {
	background-image: url(/wp-content/themes/superior-bowen/images/icon-checked.svg);
	background-size: cover;
	background-position: center;
	background-color: #1C2942;
}

/* Isotope */

.hidden-item {
	display: none;
}

.grid-item {
	margin-bottom: 30px;
}

/* Table */

table {
	width: 100%;
	font-size: 1em;
	line-height: 1;
}

thead {
	background: #F4F4F4;
}

th {
	padding: 1em;
}

th:last-of-type {
	padding-right: 4em;
}

td {
	border: 0;
	padding: 1em;
}

/* Accordion */

ul.accordion {
	padding: 0;
	margin: 0;
}

.accordion li {
	list-style-type: none;
	margin-bottom: 1em;
	overflow: hidden;
}

.accordion li.open {
	margin-bottom: 0;
}

.answer span:first-of-type p {
	margin-top: 1em;
}

.accordion h4 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	transition: 0.5s all;
	padding: 1.25em 1em;
	background: #FFFFFF;
	border-radius: 8px;
	position: relative;
	z-index: 2;
	cursor: pointer;
	margin-bottom: 0;
}

.bg-dark .accordion h4 {
	background: #1C2942;
	color: #ffffff;
}

.accordion h4 span {
	width: calc(100% - 48px - 1em);
}

.accordion .answer {
	display: none;
	background: #F2F2F2;
	color: #525862;
	font-size: 1.1em;
	border-bottom-left-radius: 8px;
	border-bottom-right-radius: 8px;
	padding: 1.5em;
	padding-top: 2em;
	margin-top: -1em;
	margin-bottom: 0.5em;
}

.bg-dark  .accordion .answer {
	background: #2A3E63;
	color: #B7B9BD;
}

.accordion h6 + .answer {
	margin-top: -1.5em;
}

.accordion li.open .answer {
	opacity: 1;
	display: block;
}

.accordion .btn-icon {
	height: 48px;
	width: 48px;
	background-color: #B8F51C;
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: 0.5s all;
}

.accordion li:not(.open):hover .btn-icon,
.accordion li.open .btn-icon {
	background-color: #99CC17;
}

.accordion h3:hover .btn-icon {
	background-color: #AB4815;
}

.accordion li .btn-icon img {
	width: 15px;
	height: 8px;
}

.accordion li.open .btn-icon img {
	transform: rotate(-180deg);
}

/* Lists */

ul {
	padding: 0;
	margin-left: 2.5em;
}

ul li {
	width: 100%;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	position: relative;
}

ul.two-col {
	display: flex;
	flex-wrap: wrap;
}

ul.two-col li {
	width: 50%;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
}

/* Gravity Forms */

.gform_wrapper {
	position: relative;
	margin: 0;
	width: 100%;
}

.gform_heading {
	display: none !important;
}

.gfield_label {
	font-weight: 400 !important;
	font-size: 1em !important;
	margin-bottom: 0.5em !important;
}

.gform_wrapper.gravity-theme .gform_validation_errors {
	border: 0 !important;
	background: transparent !important;
	border-radius: 0 !important;
	box-shadow: unset !important;
	padding: 0 !important;
	margin-bottom: 2em !important;
}

.gform_wrapper.gravity-theme .gform_validation_errors>h2 .gform-icon {
	display: none !important;
}

.gform_wrapper.gravity-theme .gform_validation_errors>h2 {
	font-size: 1em !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	margin: 0 !important;
	padding: 0 !important;
	font-family: 'Open Sans' !important;
}

.gform_validation_container {
	display: none;
}

.gform_wrapper.gravity-theme .gfield_error [aria-invalid=true] {
	border: 0 !important;
	border-bottom: 1px solid red !important;
}

.gform_wrapper.gravity-theme .gfield_error .gfield_repeater_cell label, .gform_wrapper.gravity-theme .gfield_error label, .gform_wrapper.gravity-theme .gfield_error legend, .gform_wrapper.gravity-theme .gfield_validation_message, .gform_wrapper.gravity-theme .validation_message, .gform_wrapper.gravity-theme [aria-invalid=true]+label, .gform_wrapper.gravity-theme label+[aria-invalid=true] {
	color: #000000 !important;
}

.gform_wrapper.gravity-theme .gfield_validation_message, .gform_wrapper.gravity-theme .validation_message {
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	position: relative;
	top: -2em;
	color: red !important;
}

.gform_wrapper.gravity-theme .gfield_required  {
	height: 4px;
	width: 4px;
	border-radius: 50%;
	background: #EF2020;
	position: relative;
	left: 3px;
	top: -10px;
}

.gform_wrapper.gravity-theme .gfield_required span {
	display: none;
}

.gform_wrapper.gravity-theme input[type=color], .gform_wrapper.gravity-theme input[type=date], .gform_wrapper.gravity-theme input[type=datetime-local], .gform_wrapper.gravity-theme input[type=datetime], .gform_wrapper.gravity-theme input[type=email], .gform_wrapper.gravity-theme input[type=month], .gform_wrapper.gravity-theme input[type=number], .gform_wrapper.gravity-theme input[type=password], .gform_wrapper.gravity-theme input[type=search], .gform_wrapper.gravity-theme input[type=tel], .gform_wrapper.gravity-theme input[type=text], .gform_wrapper.gravity-theme input[type=time], .gform_wrapper.gravity-theme input[type=url], .gform_wrapper.gravity-theme input[type=week], .gform_wrapper.gravity-theme select, .gform_wrapper.gravity-theme textarea {
	font-size: 1em !important;
	padding: 0.8em 1em !important;
	-webkit-appearance: none;
	width: 100% !important;
	border: 0;
	box-shadow: none;
	background-color: #FFFFFF;
	transition: 0.5s all;
	border-radius: 8px;
	margin-bottom: 1em !important;
	color: #0C0C1A;
	border: 1px solid #FFFFFF;
}

.gform_wrapper.gravity-theme input[type=color]:hover, .gform_wrapper.gravity-theme input[type=date]:hover, .gform_wrapper.gravity-theme input[type=datetime-local]:hover, 
.gform_wrapper.gravity-theme input[type=datetime]:hover, .gform_wrapper.gravity-theme input[type=email]:hover, .gform_wrapper.gravity-theme input[type=month]:hover, 
.gform_wrapper.gravity-theme input[type=number]:hover, .gform_wrapper.gravity-theme input[type=password]:hover, .gform_wrapper.gravity-theme input[type=search]:hover, 
.gform_wrapper.gravity-theme input[type=tel]:hover, .gform_wrapper.gravity-theme input[type=text]:hover, .gform_wrapper.gravity-theme input[type=time]:hover, 
.gform_wrapper.gravity-theme input[type=url]:hover, .gform_wrapper.gravity-theme input[type=week]:hover, .gform_wrapper.gravity-theme select:hover, .gform_wrapper.gravity-theme textarea:hover {
	border: 1px solid #E6E6E6;
	box-shadow: none;
}

.gform_wrapper textarea:active, .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]):active, .gform_wrapper select:active {
	outline: none;
	border: 1px solid #0E1624;
	box-shadow: none;
}

.gform_wrapper textarea:focus, .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]):focus, .gform_wrapper select:focus {
	outline: none;
	border: 1px solid #0E1624;
	box-shadow: 0 0 0 4px rgba(24, 14, 36, 0.12);
}

.gform_wrapper.gravity-theme select {
	background-image: url(/wp-content/themes/superior-bowen/images/icon-caret-down-dark.svg);
	background-size: 15px;
	background-position: 94% center;
	background-repeat: no-repeat;
	background-color: #FFFFFF;
}

.gform_wrapper.gravity-theme textarea {
	height: 100px !important;
	resize: vertical !important;
  	padding: 0.5em 1em;
}

input[type=checkbox] {
	border: 1px solid #DDE2E5;
	height: 20px;
    width: 20px;
    top: 3px;
    position: relative;
}

.gform_wrapper .gfield_required {
	color: #f26e24;
}

#field_1_8 .gfield_label {
	display: none;
}

.btn-primary.disabled, .btn-primary:disabled {
	background-color: #E6E6E6;
	color: #8A8A8A;
	cursor: default;
	pointer-events: none;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: rgba(12,12,26,0.6);
}

::-moz-placeholder { /* Firefox 19+ */
  color: rgba(12,12,26,0.6);
}

:-ms-input-placeholder { /* IE 10+ */
  color: rgba(12,12,26,0.6);
}

:-moz-placeholder { /* Firefox 18- */
  color: rgba(12,12,26,0.6);
}

.page-template-contact .position-sticky {
	top: calc(80px + 48px + 2em);
}

.page-template-contact.logged-in .position-sticky {
	top: calc(80px + 48px + 2em + 32px);
}

/* Footer */

footer .container {
	padding-left: 0;
	padding-right: 0;
}

footer > div {
	border-bottom-left-radius: 64px;
	border-bottom-right-radius: 64px;
}

footer a {
	text-decoration: none;
}

footer a:hover {
	text-decoration: underline;
}

footer a.small {
	color: #ffffff;
	text-align: center;
	line-height: 1;
	display: block;
}

footer .eyebrow {
	color: rgba(255,255,255, 0.65);
	margin-bottom: 2em;
}

#menu-useful-links,
#menu-employee-links {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

#menu-useful-links li,
#menu-employee-links li {
	list-style-type: none;
	margin: 0;
    position: relative;
    width: auto;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

#menu-useful-links li:last-child, #menu-employee-links li:last-child {
	margin-bottom: 0;
}

#menu-useful-links li a,
#menu-employee-links li a {
	color: #ffffff;
	font-size: 1.3em;
	transition: 0.5s all;
	text-decoration: underline;
	text-decoration-color: transparent;
}

#menu-useful-links li a:hover,
#menu-employee-links li a:hover {
	text-decoration: underline;
	text-underline-offset: 4px;
	text-decoration-thickness: 1.5px;
	text-decoration-color: #ffffff;
}

#menu-footer-secondary-navigation {
	display: flex;
	justify-content: flex-end;
	margin: 0;
}

#menu-footer-secondary-navigation li {
	width: auto;
	margin-left: 1em;
	margin-right: 1em;
	margin-top: 0;
	margin-bottom: 0;
	list-style-type: none;
}

#menu-footer-secondary-navigation li:last-child {
	margin-right: 0;
}

#menu-footer-secondary-navigation li:before {
	display: none;
}

#menu-footer-secondary-navigation li a {
	color: #B7B9BD;
	transition: 0.5s all;
}

#menu-footer-secondary-navigation li a:hover {
	color: #ffffff;
	text-decoration: none;
}

footer .fw img {
	width: 100px;
	opacity: 0.5;
	transition: 0.5s all;
}

footer .fw:hover img {
	opacity: 1;
}

.social {
	height: 48px;
	width: 48px;
	border: 1px solid #3B3B3B;
	border-radius: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.social:first-of-type {
	margin-left: 0 !important;
}

.page-template-contact .position-sticky .social {
	border: 1px solid rgba(12,12,26,0.12);
}

.social img {
	height: 15px;
	width: 15px;
}

.page-template-contact .position-sticky .social img {
	filter: brightness(0) saturate(100%) invert(3%) sepia(78%) saturate(1710%) hue-rotate(226deg) brightness(88%) contrast(96%);
}

.social:hover {
	border: 1px solid #ffffff;
}

.page-template-contact .position-sticky .social:hover {
	border: 1px solid rgba(12,12,26,1);
}

#wordmark-container {
	position: sticky;
    bottom: 0;
    z-index: 1;
    margin-top: -64px;
    opacity: 0;
    transition: 0.2s all;
}

#wordmark-container.in {
	opacity: 1;
}

#wordmark {
    position: relative;
    z-index: 2;
    -webkit-transform: translate3d(0, 0, 0);
    background-image: url(/wp-content/themes/superior-bowen/images/graphic-footer.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom;
    height: 23vh;
    width: 100%;
    padding: 0;
    padding-top: 33vh;
}

#est {
	text-transform: uppercase;
    letter-spacing: 1.3px;
    font-size: 0.8em;
    font-weight: 500;
    text-align: center;
    padding-bottom: 2em;
}

#est a {
	color: #525862;
	text-decoration: none;
	display: inline-block; 
}

#est a:hover {
	color: rgba(255,255,255, 0.65);
}

/* Animations */

.fade-in {
	opacity: 0;
	top: 50px;
	transition: 0.6s opacity ease-in-out 0.1s, 0.5s top ease-in-out 0.1s;
	position: relative;
}

.fade-in.in {
	opacity: 1; 
	top: 0;
}

.fade-in.count-1 {
	transition: 0.6s opacity ease-in-out 0.2s, 0.6s top ease-in-out 0.2s;
}

.fade-in.count-2 {
	transition: 0.6s opacity ease-in-out 0.3s, 0.6s top ease-in-out 0.3s;
}

.fade-in.count-3 {
	transition: 0.6s opacity ease-in-out 0.4s, 0.6s top ease-in-out 0.4s;
}

.fade-in.count-4 {
	transition: 0.6s opacity ease-in-out 0.5s, 0.6s top ease-in-out 0.5s;
}

.fade-in.count-5 {
	transition: 0.6s opacity ease-in-out 0.6s, 0.6s top ease-in-out 0.6s;
}

.fade-in.count-6 {
	transition: 0.6s opacity ease-in-out 0.7s, 0.6s top ease-in-out 0.7s;
}

.fade-in.count-7 {
	transition: 0.6s opacity ease-in-out 0.8s, 0.6s top ease-in-out 0.8s;
}

.fade-in.count-8 {
	transition: 0.6s opacity ease-in-out 0.9s, 0.6s top ease-in-out 0.9s;
}

.fade-in.count-9 {
	transition: 0.6s opacity ease-in-out 1s, 0.6s top ease-in-out 1s;
}

.fade-in.count-10 {
	transition: 0.6s opacity ease-in-out 2.2s, 0.6s top ease-in-out 2.2s;
}

.fade-in.count-11 {
	transition: 0.6s opacity ease-in-out 2.4s, 0.6s top ease-in-out 2.4s;
}

.fade-in.count-12 {
	transition: 0.6s opacity ease-in-out 2.6s, 0.6s top ease-in-out 2.6s;
}

.fade-in.count-13 {
	transition: 0.6s opacity ease-in-out 2.8s, 0.6s top ease-in-out 2.8s;
}

.fade-in.count-14 {
	transition: 0.6s opacity ease-in-out 3s, 6s top ease-in-out 3s;
}

@media only screen and (min-width: 2000px) {
	.d-xxl-none {
		display: none !important;
	}

	.d-xxl-block {
		display: block !important;
	}

	/* Helpers */

	.fancybox-slide--html .fancybox-content {
		height: 50% !important;
	}

	.fancybox-content .h4:before {
		height: calc(100% + 0.5em);
	}
}

@media only screen and (max-width: 1700px) {
	/* Special Layouts */

	.testimonials .attribution {
		width: 80%;
	}
}

@media only screen and (max-width: 1600px) {

}

@media only screen and (max-width: 1500px) {
	
}

@media only screen and (max-width: 1440px) {
	/* Global */

	/* Typography */

	.blockquote {
		line-height: 1.4;
	}

	/* Special Layouts */

	.page-template-home #header #changing-words {
		height: 118px;
	}

	.single #header .image {
		height: 500px;
	}

	.testimonials .attribution {
		width: 70%;
	}

	/* Helpers */

	.fancybox-slide--html .fancybox-content {
		height: 65% !important;
	}

	/* Accordion */


	/* Swiper */

	.auto-image-carousel .swiper-slide {
		height: auto;
	}

	/* Filters */

	.filter .current {
		height: 56px;
	}
}

@media only screen and (max-width: 1300px) {
	/* Global */

	/* Typography */


	/* Header */

	/* Header Navigation */


	/* Helpers */

	/* Special Layouts */

	.page-template-home #header {
		max-height: 700px;
	}
}

@media only screen and (max-width: 1200px) {
	/* Global */

	.row {
		padding-top: 4em;
		padding-bottom: 4em;
	}
	
	.py-small {
		padding-top: 2em;
		padding-bottom: 2em;
	}

	.pt-small {
		padding-top: 2em;
	}

	.pb-small {
		padding-bottom: 2em;
	}

	/* Typography */

	.sliding-button .button {
		font-size: 0.9em;
		width: 150px;
		padding: 12px 20px;
	}

	.sliding-button:before {
		width: 150px;
	}

	/* Header */

	#logo {
		width: 215px;
	}

	header .btn-primary div {
		padding: 8px 16px;
	}

	header .btn-primary span:last-child {
		width: calc(100% - 32px);
	}

	/* Header Navigation */

	#menu-primary-navigation .sub-menu {
		top: calc(60px + 24px);
	}

	.page-template-home #menu-primary-navigation .sub-menu {
		top: calc(60px + 12px + 24px);
	}

	#menu-primary-navigation li {
		padding-left: 0.5em;
		padding-right: 0.5em;
	}

	/* Special Layouts */

	.page-template-home #header {
		max-height: 575px;
		min-height: 500px;
	}

	.page-template-news #header .row,
	.single #header .row,
	.page-template-projects #header .row {
	    padding-top: calc(2em + 80px + 48px);
	}

	.page-template-news #header .image,
	.page-template-projects #header .image {
		height: 400px;
	}

	.page-template-home #header #changing-words {
		height: 114px;
	}

	.single #header .image {
		height: 400px;
	}

	.page-links .arrow img {
		height: 45px;
		width: 45px;
	}

	.media-text.right .content,
	.riverflow .right .content {
		padding-right: 30px;
	}

	.media-text.left .content,
	.riverflow .left .content {
		padding-left: 30px;
	}

	.images {
		height: 100vh;
		min-height: 800px;
	}

	.images .images-container {
		overflow: hidden;
		max-width: 100vw;
	}

	.images .image:first-of-type {
		right: -20%;
		top: 24px;
	}

	.images .image:nth-of-type(2) {
		top: 30%;
		left: -10%;
	}

	.images .image:nth-of-type(3) {
		left: unset;
		right: -5%;
	}

	.testimonials {
		background-size: 250px;
	}

	.testimonials h3 {
		width: 100%;
	}

	.full-width-media .copy {
		width: 50%;
	}

	.single .full-width-media .bg-image {
		height: 400px;
	}

	.accordion .btn-icon {
		height: 40px;
		width: 40px;
	}

	.accordion li .btn-icon img {
		width: 12px;
		height: 6px;
	}

	.full-width-media.date {
		top: 85px;
		height: calc(100vh - 85px);
	}

	/* Cards */

	.card.horizontal .chip {
		width: auto;
		margin-bottom: 1em;
	}

	.card.horizontal .card-body {
		width: 75%;
		flex-basis: 75%;
	}

	.card.horizontal .card-footer {
		width: 25%;
		flex-basis: 25%;
	}

	.video-carousel .card-img {
		height: 300px;
	}

	/* Filters */

	.filter .current {
		height: 46px;
		font-size: 0.9em;
		padding: 12px 20px;
	}

	.filter .dropdown .option {
		font-size: 0.9em;
		padding: 12px 20px;
	}
}

@media only screen and (max-width: 1024px) {
	/* Global */

	/* Typography */

	h3, .h3 {
		font-size: 2.7em;
	}

	/* Header */

	#logo {
		width: 200px;
	}

	header .btn-primary {
		font-size: 0.9em;
	}

	header .btn-primary div {
		top: 2px;
	}

	/* Header Navigation */

	#menu-primary-navigation a {
		font-size: 0.9em;
	}

	/* Special Layouts */

	.page-links .link > div:not(.num) .h3 {
		color: #0E1624;
	}

	.bg-dark.page-links .link:hover .num .h3 {
		color: rgba(183, 185, 189, 0.4) !important;
	}

	.bg-dark.page-links .link > div:not(.num) .h3,
	.bg-dark.page-links .link:hover > div:not(.num) .h3 {
		color: #B7B9BD !important;
	}

	.page-links .link:hover .num .h3 {
		color: rgba(14,22,35,0.3);
		padding-left: 0;
	}

	.page-links .link:hover div:not(.num) .h3 {
		color: inherit;
	}

	.page-links .link:hover img {
		filter: unset;
	}

	.bg-dark.page-links .link:hover img {
		filter: brightness(0) saturate(100%) invert(100%) sepia(10%) saturate(0%) hue-rotate(159deg) brightness(112%) contrast(100%);
	}

	.page-links .link:hover:after {
		display: none;
	}

	/* Isotope */

	.isotope .grid-item {
		margin-bottom: 45px;
	}

	/* Cards */

	a.card:hover .card-img .button .text {
		opacity: 0;
	}

	a.card:hover .card-img .button .icon {
		background-position: 320%;
	}
}

@media only screen and (min-width: 1200px) and (max-height: 750px) {
	/* Header Navigation */


	/* Special Layouts */
	
	#header {
		height: 600px;
	}
}

@media only screen and (max-width: 992px) {
	/* Global */

	/* Typography */

	h2, .h2 {
		font-size: 4em;
	}

	.sliding-button .button {
		font-size: 1em;
		width: 185px;
		padding: 16px 24px;
	}

	.sliding-button:before {
		width: 185px;
	}

	/* Header */

	header.container-fluid {
		margin-top: 12px;
	}

	header.container-fluid.open:before {
		content: '';
		width: 100%;
		height: 24px;
		background: #141D2F;
		top: -24px;
		position: absolute;
	}

	header .container {
		padding: 0px 16px;
	}

	#logo {
		width: 350px;
	}

	/* Header Navigation */

	.nav-icon.close:after {
		width: 100%;
	}

	#navigation {
		margin: inherit;
	}

	.menu-primary-navigation-container, .logged-in .menu-primary-navigation-container {
		background: #1C2942;
	    height: calc(100vh - 80px - 24px);
	    width: 100%;
	    left: 0;
	    position: fixed;
	    top: -100vh;
	    display: flex;
	    align-items: flex-start;
	    justify-content: center;
	    overflow-y: scroll;
	}

	.page-template-home .menu-primary-navigation-container, .page-template-home.logged-in .menu-primary-navigation-container {
	    height: calc(100vh - 80px - 48px);
	}

	.stuck .menu-primary-navigation-container, .logged-in .stuck .menu-primary-navigation-container {
	    height: calc(100vh - 80px - 24px);
	}

	.menu-primary-navigation-container.visible {
		top: calc(80px + 24px);
	}

	.page-template-home .menu-primary-navigation-container.visible {
		top: calc(80px + 48px);
	}

	.stuck .menu-primary-navigation-container.visible {
		top: calc(80px + 24px);
	}

	.logged-in .menu-primary-navigation-container.visible {
		top: calc(80px + 24px + 32px);
	}

	#menu-primary-navigation {
		flex-direction: column;
		align-items: flex-start;
		margin: 0;
		padding: 0;
		width: 100%;
	}

	.page-template-home #menu-primary-navigation .sub-menu {
		top: unset;
	}

	#menu-primary-navigation li, #menu-primary-navigation .sub-menu li {
		display: block;
		margin-right: 0;
		margin-left: 0;
		text-align: center;
		width: 100%;
		height: auto;
		padding-left: 46px;
		padding-right: 46px;
	}

	#menu-primary-navigation > li {
		border-bottom: 1px solid rgba(255,255,255,0.12);
	}

	#menu-primary-navigation > li > a {
		font-size: 1.5em;
		padding-top: 1em;
		padding-bottom: 1em;
		height: auto;
		justify-content: space-between;
	}

	#menu-primary-navigation > li:hover > a {
		color: #ffffff;
	}

	#menu-primary-navigation > li:hover > a:before {
		display: none;
	}

	#menu-primary-navigation .menu-item-has-children .caret {
		background-color: #243454;
		border-radius: 50%;
		height: 48px;
		width: 48px;
		align-items: center;
		justify-content: center;
		margin: 0;
	}

	#menu-primary-navigation .caret img {
		height: 12px;
		position: relative;
	}

	#menu-primary-navigation .caret img:first-of-type {
		right: -3px;
	}

	#menu-primary-navigation .caret img:last-of-type {
		left: -3px;
	}

	#menu-primary-navigation .menu-item-has-children:hover .caret img {
		filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(305deg) brightness(103%) contrast(101%);
	}

	#menu-primary-navigation .menu-item-has-children.open .caret img {
		filter: brightness(0) saturate(100%) invert(89%) sepia(53%) saturate(746%) hue-rotate(17deg) brightness(97%) contrast(99%);
	}

	#menu-primary-navigation li:hover .caret img:first-of-type,
	#menu-primary-navigation li:hover .caret img:last-of-type {
		transform: unset;
	}

	#menu-primary-navigation li.open .caret img:first-of-type {
		transform: rotate(-90deg);
	}

	#menu-primary-navigation li.open .caret img:last-of-type {
		transform: rotate(90deg);
	}

	#menu-primary-navigation .sub-menu,
	.logged-in #menu-primary-navigation .sub-menu {
		display: none;
		position: relative;
		padding: 0;
		max-width: 100%;
		top: 0;
		padding-bottom: 1.5em;
		opacity: 1;
	}

	.stuck #menu-primary-navigation .sub-menu {
		top: 0;
	}

	#menu-primary-navigation .sub-menu li {
		padding: 0;
		margin: 0;
	}

	#menu-primary-navigation > li:last-child {
		padding-bottom: 6em;
		border-bottom: 0;
	}

	#menu-primary-navigation .sub-menu li a {
		font-size: 1em;
		padding-top: 0.8em;
		padding-bottom: 0.8em;
		background: transparent;
		padding-left: 0;
		justify-content: flex-start;
		padding-right: 0;
	}

	#menu-primary-navigation .sub-menu li a:after {
		background-image: url(/wp-content/themes/superior-bowen/images/icon-arrow-right-white.svg);
		background-color: transparent;
		height: 20px;
		width: 20px;
		margin-left: 0.5em;
		background-position: center;
		background-size: cover;
	}

	#menu-primary-navigation .sub-menu li a:before {
		display: none;
	}

	#menu-primary-navigation .sub-menu a:hover, #menu-primary-navigation .sub-menu li.current-menu-item a {
		background: transparent;
	}

	/* Helpers */

	.fancybox-slide--html .fancybox-content {
		height: 80% !important;
		padding-bottom: 0;
	}

	.fancybox-content .row {
		padding-right: 15px;
		overflow: scroll;
	}

	.fancybox-content .card {
		height: 500px;
	}

	.fancybox-content .row > div {
		height: auto;
	}

	.fancybox-content .bio {
		padding-right: 0;
		padding-bottom: 32px;
		height: auto;
		overflow: auto;
	}

	.fancybox-content .h4:before {
		display: none;
	}

	.bg-image.h-full {
		height: 70vh;
	}

	.bg-video .video video {
		top: 0;
	}

	/* Special Layouts */

	.page-template-news #header .row, .single #header .row, .page-template-projects #header .row {
		padding-top: calc(3em + 80px);
	}

	.page-template-home #header {
		margin-top: 12px;
	}

	.page-template-home #header.bg-video .video {
		border-radius: 16px;
		width: calc(100vw - 24px);
	}

	.page-template-home #header #changing-words {
		height: 80px;
	}

	.page-template-news #header .overlay,
	.page-template-projects #header .overlay {
		width: calc(100%);
		left: 0;
	}

	.page-template-news #header .image,
	.page-template-projects #header .image {
		margin-bottom: 1em;
	}

	.page-template-news #header .image .title,
	.page-template-projects #header .image .title {
		width: 100%;
		bottom: 15px;
	}

	.images {
		height: auto;
	}

	.images .content {
		position: relative;
		top: unset;
		height: 100vh;
		min-height: 800px;
	}

	.images .container.content > .row {
		height: 100%;
	}

	.images .image:first-of-type {
		width: 450px;
		right: 30px;
		top: -20px;
	}

	.images .image:nth-of-type(2) {
		width: 250px;
		top: 10%;
		left: 2%;
	}

	.images .image:nth-of-type(3) {
		left: 0;
		right: 0;
		margin: 0 auto;
		top: unset;
		bottom: 24px;
		width: 400px;
	}

	.page-links .arrow img {
		height: 60px;
		width: 60px;
	}

	.full-width-media .bg-image {
		height: 400px;
	}

	.full-width-media .copy {
		width: 70%;
	}

	.single .full-width-media .bg-image {
		width: calc(100% - 30px);
		left: 15px;
	}

	.testimonials {
		background-image: unset;
	}

	.testimonials .attribution {
		width: 100%;
	}

	.featured-project .content {
		padding-left: 2em;
	}

	.single .boxed > .container > .row {
		padding-top: 2em;
		padding-bottom: 0;
	}

	.full-width-media .medium {
		width: 80%;
	}

	.full-width-media.date {
		top: 100px;
		height: calc(100vh - 100px);
	}

	.featured-project .row {
		padding-top: 1em;
		padding-bottom: 1em;
	}

	/* Gravity Forms */

	.gform_wrapper div.validation_error {
		position: relative;
		top: 0;
		padding-left: 15px;
		padding-right: 15px;
	}

	.gform_wrapper .gform_footer {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}

	.gform_wrapper li:nth-of-type(even) {
		padding-left: 15px;
	}

	.gform_wrapper textarea, .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), .gform_wrapper select {
		margin-bottom: 1em;
	}

	/* Cards */

	.card.horizontal {
		display: block;
	}

	.card.horizontal .card-body {
		width: 100%;
		flex-basis: 100%;
	}

	.card.horizontal .card-footer {
		width: 100%;
		flex-basis: 100%;
		justify-content: flex-start;
		padding-top: 0;
	}

	/* Filters */ 

	.filter .current {
		height: 59px;
		font-size: 1em;
		padding: 16px 24px;
	}

	#locations #filters .label {
		margin-right: 0.5em;
	}

	/* Form */

	.gform_wrapper.gravity-theme .gform_fields {
		display: block !important;
	}

	/* Footer */

	#wordmark {
		padding-top: 17vh;
	}
}

@media only screen and (max-width: 782px) {
	/* Header */

	.logged-in header.stuck .container {
		top: calc(46px + 12px);
	}

	/* Header Navigation */

	.logged-in .menu-primary-navigation-container.visible {
		top: calc(80px + 24px + 46px);
	}

}

@media only screen and (max-width: 767px) {
	/* Global */

	#wpadminbar {
		position: fixed !important;
	}

	.row {
		padding-top: 3em;
		padding-bottom: 3em;
	}
	
	.py-small {
		padding-top: 1.5em;
		padding-bottom: 1.5em;
	}

	.pt-small {
		padding-top: 1.5em;
	}

	.pb-small {
		padding-bottom: 1.5em;
	}

	/* Typography */

	h2, .h2 {
		font-size: 3em;
	}

	h3, .h3 {
		font-size: 2em;
	}

	h3.smaller, .h3.smaller {
		font-size: 1.7em;
	}

	.error404 h2 {
		font-size: 2.5em;
	}

	.medium {
		font-size: 1.1em;
	}

	.large {
		font-size: 1.3em;
	}

	.larger {
		font-size: 1.4em;
	}

	.buttons .btn-secondary {
		margin-right: 0;
	}

	.buttons .btn-primary,
	.buttons .btn-secondary {
		font-size: 0.8em;
	}

	.chip {
		font-size: 0.7em;
		padding: 8px 15px;
	}

	.sliding-button .button {
		font-size: 0.9em;
		width: 162px;
		padding: 12px 20px;
	}

	.sliding-button:before {
		width: 162px;
	}

	.blockquote {
		font-size: 1.3em;
	}

	.testimonials .h4 {
		font-size: 1.1em;
	}

	/* Header */

	header.container-fluid {
		margin-top: 6px;
	}

	header .container {
		height: 64px;
		top: 14px;
	}

	#menu-primary-navigation .caret img {
		height: 8px;
	}

	#menu-primary-navigation .caret img:first-of-type {
		right: -2px;
	}

	#menu-primary-navigation .caret img:last-of-type {
		left: -2px;
	}

	#logo {
		width: auto;
		max-width: 80%;
	}

	/* Header Navigation */

	.page-template-home .menu-primary-navigation-container, .page-template-home.logged-in .menu-primary-navigation-container {
		height: calc(100vh - 80px - 12px);
	}

	.menu-primary-navigation-container, .logged-in .menu-primary-navigation-container {
		height: calc(100vh - 80px - 7px);
	}

	.page-template-home .menu-primary-navigation-container.visible {
		top: calc(80px + 12px);
	}

	.menu-primary-navigation-container.visible {
		top: calc(64px + 24px);
	}

	.logged-in .menu-primary-navigation-container.visible {
		top: calc(64px + 24px + 46px);
	}

	.stuck .menu-primary-navigation-container.visible {
		top: calc(64px + 24px);
	}

	.stuck .menu-primary-navigation-container, .logged-in .stuck .menu-primary-navigation-container {
		height: calc(100vh - 64px - 12px);
	}

	#menu-primary-navigation .sub-menu li:first-child a {
		padding-top: 0;
	}

	#menu-primary-navigation li {
		padding-left: 26px;
		padding-right: 26px;
	}


	.page-template-home #menu-primary-navigation .sub-menu {
		top: unset;
	}

	/* Images */

	.alignleft, .alignright { float: unset; margin: 1em auto; display: block;}

	#section-1-date-2 .image {
		object-position: top left;
	}

	/* Helpers */

	.boxed {
		border-radius: 12px;
	}

	.fancybox-content {
		padding: 16px;
	}

	.fancybox-content .card {
		height: 400px;
	}

	.fancybox-content .container {
		width: 100%;
	}

	.fancybox-content .row {
		padding-right: 0;
	}

	button.fancybox-button.fancybox-close-small {
		height: 40px;
		width: 40px;
		background-size: 20px;
	}

	/* Special Layouts */

	#header {
		height: 500px;
	}

	.page-template-home #header {
		margin-top: 8px;
	}

	.page-template-news #header .row,
	.single #header .row,
	.page-teplate-projects #header .row {
        padding-top: calc(2em + 64px + 24px);
    }

    .page-template-news #header .image,
    .single #header .image,
    .page-template-projects #header .image {
    	height: 300px;
    }

    .page-template-news #header .image .title,
    .page-template-projects #header .image .title {
    	font-size: 1em;
    }

	.page-template-home #header.bg-video .video {
		width: calc(100vw - 12px);
	}

	.page-template-home h2 {
		flex-direction: column;
		align-items: flex-start;
	}

	.page-template-home #header #changing-words {
		margin-left: 0;
		height: 75px;
	}

	.images .image:nth-of-type(1) {
        width: 60%;
        top: 20px;
        right: -20px;
    }

	.images .image:nth-of-type(2) {
        width: 35%;
        top: 20%;
        left: -8%;
    }

    .images .image:nth-of-type(3) {
    	width: 80%;
    	bottom: -30px;
    }

	.single #header .container {
		padding-left: 0;
		padding-right: 0;
	}

	.page-links .link > div {
		padding-left: 0;
		padding-right: 0;
	}

	.page-links .link div.num .h3 {
		font-size: 1.2em;
		margin-bottom: 0.5em;
	}

	.three-column .copy {
		padding-left: 0;
		padding-right: 0;
	}

	.three-column h4 {
		margin-top: 0;
	}

	.table .cell .h3 {
		font-size: 1.5em;
	}

	.media-text.right .image,
	.riverflow .right .image {
		padding-left: 0;
	}

	.media-text.right .content,
	.riverflow .right .content {
		padding-right: 0;
	}

	.media-text.left .image,
	.riverflow .left .image {
		padding-right: 0;
	}

	.media-text.left .content,
	.riverflow .left .content {
		padding-left: 0;
	}

	.media-text img,
	.riverflow img {
		border-radius: 8px;
	}

	.testimonials .row > div:first-child {
		padding-right: 0;
	}

	.testimonials .row > div:last-child {
		padding-left: 0;
	}

	.featured-project .row {
		padding-top: 0;
		padding-bottom: 0;
	}

	.featured-project .image {
		padding-left: 7.5px;
		padding-right: 7.5px;
	}

	.featured-project img {
		border-radius: 6px;
		margin-top: 7.5px;
	}

	.featured-project .overlay {
		width: calc(100% - 15px);
		height: calc(100% - 15px);
		top: 7.5px;
		left: 7.5px;
		border-radius: 6px;
	}

	.featured-project .content {
		padding-left: 30px;
		padding-right: 30px;
		padding-bottom: 30px;
	}

	.cta-section .bg-image {
		border-radius: 12px;
	}

	.safety-spotlight .h3.smaller {
		font-size: 1.3em;
	}

	.safety-spotlight .bg-top,
	.safety-spotlight .bg-bottom {
		width: 30%;
	}

	.full-width-media .content {
		padding-left: 15px;
		padding-right: 15px;
	}

	.full-width-media .copy {
		width: 100%;
	}

	.single .full-width-media .bg-image {
		height: 300px;
	}

	.full-width-media .medium {
		width: 90%;
	}

	#fab-trigger {
		height: 70%;
	}

	.full-width-media.date {
        top: 80px;
        height: calc(70vh - 80px);
    }

	/* Cards */


	/* Tables */

	table {
		display: block;
		overflow: scroll;
	}

	th, td {
		font-size: 0.7em;
	}

	td {
		line-height: 1.2;
	}
	
	th:last-of-type {
		padding-right: 2em;
	}

	td:last-of-type {
		padding-right: 2em;
	}

	/* Lists */

	ul.two-col li {
		width: 100%;
		padding-right: 0;
	}

	/* Accordion */

	.accordion h4 {
    	font-size: 1.1em;
    }

    .accordion li {
    	margin-bottom: 0.5em;
    }

	.accordion li.open .answer {
		font-size: 1em;
	}

	.accordion .answer {
		margin-bottom: 0;
	}

	/* Cards */

	.card.horizontal .card-body,
	.card.horizontal .card-footer {
		padding: 1em;
	}

	.card.horizontal .card-footer {
		padding-top: 0;
	}

	/* Filters */

	#filters {
		margin-right: 0;
	}

	.filter .current {
		height: 50px;
		font-size: 0.9em;
		padding: 12px 20px;
		background-size: 10px;
		background-position: 95% center;
	}

	.filter .dropdown {
		top: 50px;
	}

	.filter .dropdown .option {
		font-size: 0.9em;
		padding: 12px 20px;
	}

	.filter.checkbox {
		margin-top: 0;
		margin-bottom: 0.5em;
	}

	.grid-item {
		margin-bottom: 45px;
	}

	/* Swiper */

	.logo-carousel .swiper-slide {
		padding: 1em;
	}

	/* Gravity Forms */
	
	.gform_wrapper.gravity-theme select {
		background-position: 93% center;
	}

	/* Footer */

	#menu-footer-secondary-navigation {
		justify-content: flex-start;
	}

	#menu-footer-secondary-navigation li:first-child {
		margin-left: 0;
	}

	#wordmark {
		height: 16vh;
	}

	#est {
		font-size: 0.7em;
	}

	#est a {
		width: 100%;
		display: block;
	}

}

@media only screen and (max-width: 500px) {
	#logo img {
		width: 80%;
	}

	.images {
		min-height: unset;
	}

	.images .content {
		min-height: unset;
		height: 70vh;
	}

	.images .image:nth-of-type(2) {
		top: 10%;
	}
}

@media only screen and (max-width: 400px) {
	.images .image:first-of-type {
		width: 250px;
		top: 20px;
	}

	.images .image:nth-of-type(2) {
		width: 150px;
		left: -20px;
		top: 10%;
	}

	.images .image:nth-of-type(3) {
		width: 300px;
		bottom: -20px;
	}
}

@media only screen and (max-width: 375px) {
	/* Typography */

	.sliding-button .button {
		font-size: 0.8em;
		width: 143px;
		padding: 8px 16px;
	}

	.sliding-button:before {
		width: 143px;
	}
}

@media only screen and (min-width: 1200px) and (max-width: 1440px) {
	/* Global */

	html {
		font-size: 16px;
	}

	.container, 
	#menu-primary-navigation .sub-menu {
		max-width: 1140px;
	}

	/* Special Layouts */

	.page-template-home h2 {
		margin-left: -7px;
	}
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
	/* Global */

	html {
		font-size: 16px;
	}

	.container, 
	#menu-primary-navigation .sub-menu {
		max-width: calc(100vw - 96px);
	}

	/* Header */

	header.container-fluid {
		margin-top: 12px;
	}

	header .container {
		height: 60px;
	}

	.logged-in #menu-primary-navigation .sub-menu {
		top: calc(60px + 12px + 24px + 32px);
	}

	.stuck #menu-primary-navigation .sub-menu {
		top: calc(60px + 24px);
	}

	.logged-in .stuck #menu-primary-navigation .sub-menu {
		top: calc(32px + 60px + 24px);
	}

	/* Primary Navigation */

	#menu-primary-navigation .menu-item-has-children > a:after {
		width: 12px;
		height: 6px;
	}

	#menu-primary-navigation .sub-menu {
		padding: 24px;
	}

	#menu-primary-navigation .sub-menu li > a:after {
		height: 32px;
		width: 32px;
		background-position: 170%;
		background-size: 45px;
	}

	#menu-primary-navigation .sub-menu li > a:hover:after {
		background-position: -75%;
	}

	/* Special Layouts */

	.page-template-home #header {
		margin-top: 12px;
	}

	.page-template-home h2 {
		margin-left: -7px;
	}

	.page-template-home #header.bg-video .video {
		border-radius: 16px;
		width: calc(100vw - 24px);
	}
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
	/* Global */

	header .container, 
	#menu-primary-navigation .sub-menu {
		max-width: calc(100vw - 48px);
	}

	.container {
		max-width: calc(100vw - 48px - 30px);
	}

	/* Primary Navigation */

}

@media only screen and (max-width: 767px) {
	/* Global */

	header .container, 
	#menu-primary-navigation .sub-menu {
		max-width: calc(100vw - 30px);
	}

	.container {
		max-width: calc(100vw - 48px - 30px);
	}

	/* Primary Navigation */

}