/*
	Theme Name: Trinity Grading Theme
	Author: Shay Hammond
*/

/* Login Screen */

.login {
	background: #ffc400;
}

#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 {
	margin-bottom: 0.25em;
}

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

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

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

.login form .input, .login input[type=password], .login input[type=text] {
	font-size: 1em !important;
	padding: 0.5em 1em !important;
	-webkit-appearance: none;
	font-weight: 200;
	width: 100%;
	border: 1px solid #E4E4E4;
	box-shadow: 0px 0px 20px rgba(54, 57, 68, 0.03);
	border-radius: 0;
	margin-bottom: 1em;
	font-family: 'Lora';
}

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

#login form p.submit {
	text-align: center;
}

.wp-core-ui .button.button-large.button-primary, .wp-core-ui .button.button-large {
	padding: 1em 1.5em;
	font-size: 0.9em;
	font-weight: 900;
	transition: 0.5s all;
	border-radius: 6px;
	display: inline-flex;
	align-items: center;
	cursor: pointer;
	justify-content: space-between;
	font-family: 'Orbitron';
	line-height: 1;
	text-decoration: none;
	background: #000000;
	color: #ffffff;
	border: 0;
}

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

.wp-core-ui .button.button-large {
    background: #000000;
    color: #ffffff;
}

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

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

.login form .forgetmenot {
	float: none;
}

.login #nav, .login #backtoblog {
	background: #ffffff;
	margin-top: -1px;
}

.login #backtoblog {
	padding-top: 1em;
	padding-bottom: 1em;
	margin-bottom: 0;
	border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

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

/* Font References */

@font-face {
  	font-family: 'Oribitron';
	font-weight: 900;
  	src: url(library/fonts/Orbitron-Black.ttf);
}

/* Global */

* {
    box-sizing: border-box;
}

html {
	font-size: 18px;
	margin: 0;
	padding: 0;
}

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

body {
	font-size: 1em;
	margin: 0;
	padding: 0;
	font-family: 'Arial', sans-serif;
	color: #333333;
	position: relative;
	background: #ffffff;
}

.container {
	width: 90%;
	max-width: 1600px;
}

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

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

/* Typography */

.separator {
	width: 75px;
	height: 8px;
	margin-bottom: 1em;
	background: #ffc400;
}

h1, .h1 {
	font-family: 'Teko', sans-serif;
	color: #ffffff;
	font-weight: 600;
	font-size: 4em;
	line-height: 1;
	text-shadow: 3px 3px 0px #000000;
}

h2, .h2 {
	font-family: 'Teko', sans-serif;
	font-weight: 600;
	font-size: 3.5em;
	color: #000000;
	line-height: 1;
}

h2.jumbo {
	font-size: 7em;
	text-transform: uppercase;
	line-height: 0.9;
	font-family: 'Orbitron';
	font-weight: 900;
}

h2.super-jumbo {
	font-size: 8em;
	text-transform: uppercase;
	line-height: 0.9;
	font-family: 'Orbitron';
	font-weight: 900;
	background: rgba(255,196,0, 0.5);
	padding: 30px;
}

h3, .h3 {
	font-family: 'Teko', sans-serif;
	font-weight: 600;
	font-size: 2em;
	color: #000000;
}

h4, .h4 {
	font-family: 'Arial', sans-serif;
	text-transform: uppercase;
	font-size: 1em;
	color: #ffc400;
}

.text-html h4 {
	color: #000000;
}

h5, .h5 {
	font-family: 'Teko', sans-serif;
	font-weight: 500;
	font-size: 1.8em;
	color: #000000;
}

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

a {
	color: #000000;
	transition: 0.5s all;
}

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

b, strong {
	font-weight: 900;
}

.large {
	font-size: 1.8em;
}

.color-white {
	color: #ffffff;
}

.color-black {
	color: #000000;
}

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

.small {
	font-size: 0.7em;
}

.btn-primary, .btn-secondary {
	padding: 1em 1.5em;
	font-size: 0.9em;
	font-weight: 900;
	transition: 0.5s all;
	border-radius: 6px;
	display: inline-flex;
	align-items: center;
	cursor: pointer;
	justify-content: space-between;
	font-family: 'Orbitron';
	line-height: 1;
	text-decoration: none;
}

.btn-primary {
	background: #ffc400;
	color: #000000;
	border: 0;
}

.btn-primary:hover, .btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show >.btn-primary.dropdown-toggle {
	background: #d69f05;
	text-decoration: none;
	color: #000000;
	border: transparent;
}

.btn-primary img {
	height: 15px;
	width: 15px;
	margin-left: 1em;
}

.btn-secondary {
	background: #000000;
	color: #ffffff;
	font-size: 2em;
}

.btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active {
	background: #333333;
	text-decoration: none;
}

#open-positions .btn-secondary {
	font-size: 1em;
}

.btn-text {
	font-family: 'Orbitron';
	color: #ffc400;
	font-weight: 900;
}

.link {
	color: #ffc400;
	margin-bottom: 1em;
	display: block;
}

.link:hover {
	text-decoration: underline;
	color: #ffc400;
}

/* Helpers */

.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-black {
	background-color: #000000;
	color: #dddddd;
}

.bg-black h2,
.bg-gray h2 {
	color: #ffffff;
}

.bg-yellow {
	background-color: #ffc400;
}

.bg-gray {
	background: #333333;
	color: #dddddd;
}

.bg-bottom-graphic {
	background-image: url(/wp-content/themes/trinity/images/graphic-angle.svg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: 100%;
}

.bg-bottom-graphic.bg-gray {
	background-image: url(/wp-content/themes/trinity/images/graphic-angle-dark.svg);
}

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

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

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

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

.bg-video .video {
    height: 100%;
    width: 100%;
    z-index: 1;
    overflow: hidden;
    position: absolute;
    opacity: 0;
    transition: 0.3s all;
}

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

.bg-video .video video {
    width: 100vw;
	height: 100vh;
 	object-fit: cover;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
}

.bg-video .overlay {
	z-index: 2;
	background: linear-gradient(to bottom, transparent, rgba(0,0,0,0.9)) 75%;
}

.bg-video {
	z-index: 1;
}

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

.overlay {
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 1;
	background: rgba(0,0,0,0.08);
	pointer-events: none;
}

/* HTML Video */

.video {
	position: relative;
	overflow: hidden;
}

.video .container {
	position: absolute;
	height: 100%;
	z-index: 4;
	margin: 0 auto;
	left: 0;
	right: 0;
}

.video .overlay {
	background: rgba(255,255,255,0.3);
	z-index: 3;
}

.video .image {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background-size: cover;
	background-position: center;
}

.video video {
	position: absolute;
	z-index: 2;
	left: 0;
	top: 0;
	min-width: 105%;
    min-height: 100%;
}

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

.icon {
	height: 80px;
	width: 80px;
	margin-left: auto;
	margin-right: auto;
	display: block;
}

/* Header */

header.container-fluid {
	position: fixed;
	z-index: 999;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	margin-top: 0;
	margin-bottom: 0;
	background: transparent;
}

.logged-in header.container-fluid {
	top: 32px;
}

header .container {
	height: 100%;
	border-radius: 10px;
	margin-top: 2em;
	max-width: 1400px;
	width: 70%;
}

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

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

#logo img {
	width: 100%;
	margin: 0;
	margin-top: 1em;
	margin-bottom: 1em;
}

/* Header Navigation */

#navigation {
	position: relative;
	z-index: 2;
	height: 100%;
}

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

#menu-primary-navigation li {
	list-style-type: none;
	text-transform: none;
	margin: 0;
	display: block;
	font-size: 1em;
	width: auto;
}

#menu-primary-navigation li {
	position: relative;
}

#menu-primary-navigation li:first-child {
	margin-left: 2em;
}

#menu-primary-navigation li:last-child {
	margin-right: 1em;
}

#menu-primary-navigation li.current-menu-item:after {
	content: '';
	height: 5px;
	width: 100%;
	position: absolute;
	left: 0;
	bottom: -5px;
	background: #000000;
}

.toggle {
	color: #ffffff;
	font-size: 0.9em;
	background: #000000;
	border-radius: 4px;
	position: absolute;
	top: -70px;
	left: 0;
	padding: 0.5em 0.75em;
	font-family: 'Orbitron';
	font-weight: 900;
	height: 40px;
	width: 100%;
	cursor: pointer;
	display: none;
	align-items: center;
	justify-content: space-between;
}

.current-menu-item .toggle {
	display: flex;
}

.toggle div {
	opacity: 0.7; 
	transition: 0.5s all;
}

.toggle div.active {
	opacity: 1;
}

#menu-primary-navigation a {
	color: #000000;
	font-family: 'Orbitron';
	font-size: 1em;
	transition: 0.5s opacity;
	text-decoration: none;
	z-index: 2;
	position: relative;
	font-weight: 900;
	text-transform: uppercase;
}

#nav-icon {
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	justify-content: flex-end;
	padding-right: 15px;
}

.nav-icon {
  	width: 30px;
}

.nav-icon:after, 
.nav-icon:before, 
.nav-icon div {
  	background-color: #000000;
  	content: '';
  	display: block;
  	height: 3px;
  	margin: 5px 0;
  	border-radius: 0px;
  	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(8px) rotate(135deg);
  	width: 100%;
}

.nav-icon.close:after {
  	transform: translateY(-8px) 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;
}

.fancybox-content {
	width: 60%;
	background: #000000;
	color: #ffffff;
	padding: 0;
}

.fancybox-content .h2,
.fancybox-content .h5 {
	color: #ffffff;
}

.fancybox-content .h5 {
	margin-top: 0.5em;
	margin-bottom: 0.5em;
}

.fancybox-slide--html .fancybox-close-small {
	background: #ffc400;
	opacity: 1;
}

.fancybox-slide--html .fancybox-close-small:hover {
	opacity: 0.8;
}

.fancybox-button svg {
	filter: brightness(0) saturate(100%);
}

/* Special Layouts */

#header {
	top: 0;
	height: 90vh;
	position: relative;
	z-index: 3;
}

.page-template-home #header {
	position: fixed;
	height: 100vh;
}

.page-template-home #header:after {
	content: '';
	height: 400px;
	width: 100%;
	position: absolute;
	background-image: url(/wp-content/themes/trinity/images/graphic-home-header.svg);
	background-size: cover;
	bottom: 0;
	left: 0;
	z-index: 2;
}

#header:after {
	content: '';
	height: 300px;
	width: 100%;
	position: absolute;
	background-image: url(/wp-content/themes/trinity/images/graphic-header-gray.svg);
	background-size: cover;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.page-template-home #header + .image-text:before {
	content: '';
	height: 200px;
	width: 100%;
	position: absolute;
	background-image: url(/wp-content/themes/trinity/images/graphic-header-black.svg);
	background-size: cover;
	top: -200px;
	left: 0;
	z-index: 2;
	pointer-events: none;
}

.page-template-home .container-fluid:not(header) {
	z-index: 3;
}

.page-template-home #header + .image-text {
	margin-top: 98vh;
}

#header + .image-text {
	z-index: 4;
}

#header + .image-text .row {
	padding-top: 0;
}

.page-template-home #header + .image-text .row {
	padding-top: 3em;
}

.page-template-services #header + .image-text .row {
	padding-bottom: 3em;
}

#header + .image-text .row {
	align-items: flex-start !important;
}

#header + .image-text .row img {
	position: absolute;
}

#header + .image-text .row .col-lg-5 {
	margin-top: 6em;
}

#header + .image-text + .container-fluid .row {
	padding-top: 24em;
}

#header + .image-text + .container-fluid.no-content .row {
	padding-top: 6em;
}

#header + .image-text + .container-fluid.three-images .row {
	padding-top: 30em;
	padding-bottom: 10em;
}

.cta-section .row {
	padding-top: 12em;
	padding-bottom: 12em;
}

.bg-white + .bg-white > .container > .row {
	padding-top: 3em;
}

.three-images .image,
#open-positions .image {
	box-shadow: 5px 5px 5px rgba(0,0,0,0.5);
}

.three-images .image-1 {
	top: -20%;
	left: 0;
	z-index: 3;
	width: 40%;
	position: absolute;
}

.three-images .image-2 {
	z-index: 2;
	top: 10%;
	width: 70%;
	position: absolute;
	right: 0;
}

.three-images .image-3 {
	top: 60%;
	left: 20%;
	z-index: 3;
	position: absolute;
	width: 50%;
}

#open-positions .video-container {
	z-index: 3;
}

#open-positions .image-1 {
	position: relative;
	width: 50%;
	margin-left: 40%;
	top: 0;
	z-index: 2;
	margin-top: -1em;
}

#open-positions .image-2 {
	position: relative;
	width: 100%;
	margin-top: -20%;
	z-index: 1;
}

#open-positions .image-3 {
	position: relative;
	width: 70%;
	margin-left: 10%;
	margin-top: -10%;
	z-index: 2;
}

#open-positions .image-4 {
	position: relative;
	width: 30%;
	margin-left: 5%;
	margin-top: -15%;
	z-index: 3;
}

/* Cards */

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

a.card.no-hover .card-img img {
	transition: 0.5s all;
}

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

.card-body {
	background: #333333;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	color: #dddddd;
	transform: translateY(100%);
	transition: 0.5s all;
}

.card-body:before {
	content: '';
	height: 100px;
	width: 100%;
	position: absolute;
	background-image: url(/wp-content/themes/trinity/images/graphic-gray.svg);
	background-size: cover;
	top: -100px;
	left: 0;
	z-index: 2;
}

.card.no-hover .card-body:before {
	display: none;
}

.card.no-hover .card-body {
	background: linear-gradient(to bottom, transparent, #000000);
	height: 50%;
	width: 100%;
	bottom: 0;
	left: 0;
	transform: unset;
}

.card-body h3 {
	color: #ffffff;
	margin-top: -2em;
	position: relative;
	z-index: 2;
}

.card.no-hover .card-body h3 {
	position: absolute;
	bottom: 1em;
	left: 1em;
}

.card-content {
	transition: all 0.5s;
	width: 80%;
}

.card:hover .card-body {
    transform: none;
}

.card-footer {
	background: transparent;
	padding-left: 0;
	padding-right: 0;
}

.card-footer h5 {
	margin-bottom: 0;
}

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

.card .card-img {
	position: relative;
}

.card .overlay {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	height: 100%;
	width: 100%;
	background: rgba(255,196,0, 0.5);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: 0.5s all;
}

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

.card .btn-secondary {
	font-size: 1em;
}

/* Slick */

button[aria-label="1 of 1"] {
	display: none !important;
}

.slide:focus {
	outline: none;
}

.slick-track {
	display: flex;
	align-items: center;
}

.image-nav {
    position: relative;
    display: flex;
    align-items: center;
    margin-top: 2em;
}

.slick-prev:before, .slick-next:before {
	content: '';
}

.slick-prev, .slick-next {
	width: 100px;
	height: 100px;
	background-size: 30%;
	background-position: center;
	background-repeat: no-repeat;
	background-color: transparent;
	transform: unset;
	background-image: url(/wp-content/themes/trinity/images/ICON_NAME_HERE.svg);
	transition: 0.5s all;
}

.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
	background-image: url(/wp-content/themes/trinity/images/ICON_NAME_HERE.svg);
	background-color: #ffffff;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 30%;
}

.slick-next {
	transform: rotate(180deg);
}

.slick-dotted.slick-slider {
	margin-bottom: 0;
}

.slick-dots {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100%;
	bottom: auto;
}

.slick-dots li {
	color: unset;
    width: unset;
    height: unset;
    width: unset;
    margin-top: 0.25em;
	margin-bottom: 0.25em;
	margin-left: 0;
	margin-right: 0;
}

.slick-dots li:before {
	content: unset;
}

.slick-dots li button {
	height: 15px;
	width: 15px;
	border-radius: 50%;
	font-size: 0;
	background: rgba(255, 255, 255, 0.74);
	opacity: 1;
	transition: 0.5s all;
}

.slick-dots li button:before {
    font-size: 0;
    line-height: 0;
    content: unset;
}

.slick-dots li.slick-active button {
	background: rgba(255, 255, 255, 0.74);
	opacity: 1;
	height: 20px;
	width: 20px;
}

/* Filter */

.filter {
	width: 100%;
	position: relative;
	font-size: 1em;
	cursor: pointer;
}

.filter .active {
	padding: 1em;
	text-transform: capitalize;
	background-color: #ffffff;
	background-image: url(/wp-content/themes/trinity/images/icon-dropdown.svg);
	background-size: 20px;
	background-position: 96% center;
	background-repeat: no-repeat;
	padding-right: 2.5em;
	color: #000000;
	border: 1px solid #000000;
	border-bottom: unset;
}

.filter .dropdown {
	position: absolute;
	background: #ffffff;
	width: 100%;
	display: none;
	z-index: 998;
	color: #000000;
	margin-top: -5px;
	border: 1px solid #000000;
	border-top: unset;
}

.filter .dropdown .option {
	margin: 1em;
}

.filter .dropdown .option:first-of-type {
	border-top: 1px solid #000000;
	padding-top: 1em;
	margin-top: 0;
}

.es {
	display: none;
}

.es.visible {
	display: inherit; 
}

.en.hidden {
	display: none;
}

/* Isotope */

.hidden-item {
	display: none;
}

.isotope, .isotope-filter {
	padding-left: 15px;
	padding-right: 15px;
}

.isotope .row, .isotope-filter .row {
	margin-left: -15px;
	margin-right: -15px;
}

.grid-item {
	margin-bottom: 30px;
	padding-left: 15px;
	padding-right: 15px;
}

.isotope-filter .col-md-6 {
	padding-left: 15px;
	padding-right: 15px;
}

.grid-item:last-of-type {
	margin-bottom: 0;
}

.grid-item .card-img {
	width: 100%;
}

/* 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 */

.accordion {
	cursor: pointer;
	padding: 0;
	margin: 0;
}

.accordion li {
	list-style-type: none;
	margin: 0;
	padding-top: 2em;
	padding-left: 2em;
	padding-right: 2em;
	border-bottom: 1px solid #BCBCBC;
	display: block;
	font-size: 1em;
}

.accordion li:before {
	display: none;
}

.accordion li.open {
	background: #ffffff;
	padding-bottom: 2em;
	border-bottom: 0;
}

.accordion h5 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 0;
	margin-top: 0;
	transition: 0.5s all;
	line-height: 1.2;
	padding-bottom: 1em;
}

.accordion h5:hover {
	color: #272828;
}

.accordion h5 span {
	width: 80%;
}

.accordion .answer {
	display: none;
	margin-top: 0;
	padding-left: 0;
	margin-bottom: 0;
	font-family: 'FONT NAME GOES HERE';
	width: 80%;
}

.accordion li.open h5 .icon {
	background-color: #FFC336;
	background-image: url(/wp-content/themes/trinity/images/ICON_NAME_HERE.svg);
}

/* Lists */

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

p + ul {
	margin-top: 1em;
}

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

/* Forms */

label {
	font-weight: 900;
	color: #000000;
	font-family: 'Orbitron';
	font-size: 1em;
	text-transform: uppercase;
}

input, textarea, select {
	padding: 0.8em 1em;
	width: 100%;
	margin-bottom: 0;
	background-color: #ffffff;
	color: #000000;
	border: 2px solid #000000;
}

input[type="submit"] {
	width: auto;
}

textarea {
	height: 200px;
	resize: vertical !important;
  	overflow: auto;
}

select {
	-webkit-appearance: none;
	background-image: url(/wp-content/themes/trinity/images/icon-dropdown.svg);
	background-size: 20px;
	background-position: 96% center;
	background-repeat: no-repeat;
	padding-right: 2em;
}

.wpcf7-not-valid-tip {
	margin-top: 0;
	font-size: 0.8em;
	font-style: italic;
}

#contact .wpcf7-not-valid-tip {
	color: #ffffff;
}

.wpcf7-not-valid:not(.wpcf7-checkbox):not(.wpcf7-radio) {
	border: 2px solid red;
}

.wpcf7 form .wpcf7-response-output {
	margin: 0;
	margin-top: 1em;
}

#contact .wpcf7 form .wpcf7-response-output {
	color: #ffffff;
}

input[type="file"] {
	border: 0;
	background: transparent;
}

input[type=checkbox], input[type=radio] {
	width: auto;
	margin-right: 0.5em;
	margin-bottom: 0.5em;
}

.wpcf7-list-item label {
	font-weight: normal;
}

.wpcf7-list-item {
	margin-left: 0;
	width: 100%;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #adadad;
  font-style: italic;
}

::-moz-placeholder { /* Firefox 19+ */
  color: #adadad;
  font-style: italic;
}

:-ms-input-placeholder { /* IE 10+ */
  color: #adadad;
  font-style: italic;
}

:-moz-placeholder { /* Firefox 18- */
 color: #adadad;
  font-style: italic;
}

/* Google Maps */

#map {
	height: 100%;
	width: 100%;
}

.gm-style img {
	height: 40px !important;
	width: 4lvw !important;
}

.gm-style-iw-chr {
	position: absolute;
	width: 100%;
}

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

.gm-style .gm-style-iw-d {
	padding: 1.5em;
	padding-right: 4em;
	background-color: #333333;
	color: #ffffff;
	border-radius: 4px;
	overflow: unset !important;
	line-height: 1.4;
	font-size: 1em;
}

.gm-style .gm-style-iw-t {
	bottom: 15px !important;
}

.gm-style-iw-tc {
	display: none;
}

.gm-style .gm-style-iw-t::after {
	border: 1px solid #333333;
	z-index: 1;
    border-right: 0;
    border-top: 0;
}
  
.gm-style .gm-style-iw-d .btn-text {
	font-size: 0.7em;
}

.gm-style .gm-style-iw-d .btn-text img {
	height: 15px;
	width: 20px;
}

.gm-style .gm-style-iw-d img {
	width: 80px;
	margin-bottom: 1.5em;
	display: block;
}

.gm-style .gm-style-iw-c {
	border-radius: 0;
	padding: 0;
	box-shadow: unset;
	background: #0E120F;
	padding-top: 0 !important;
	margin-top: -8.2em;
	margin-left: -1.5em;
}

.gm-style .gm-style-iw-c button {
	top: 0.5em !important;
	right: 0.5em !important;
	margin: 0 !important;
	height: 15px !important;
	width: 15px !important;
}
 
.gm-ui-hover-effect>span {
	height: 15px !important;
	width: 15px !important;
	background: #ffffff !important;
	margin: 0 !important;
}

.gm-style .gm-style-iw-c button:focus {
	outline: unset;
}

.gm-style .gm-style-iw-c button img {
	height: 100% !important;
	width: 100% !important;
	margin: 0 !important;
}

.gm-style .gm-style-iw-tc::after {
	height: 35px;
	width: 40px;
	left: -8px;
	background: #2E6084;
	display: none !important;
}

#map-section .text {
	padding-left: 2em;
}

/* Footer */

footer a {
	text-decoration: none;
}

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

#menu-footer-navigation {
	margin: 0;
	padding: 0;
	display: flex;
}

#menu-footer-navigation li {
	list-style-type: none;
	margin: 0;
    position: relative;
    width: auto;
	margin-right: 2em;
}

#menu-footer-navigation li a {
	color: #ffffff;
}

footer .social {
	height: 40px;
	width: 40px;
	margin-right: 1em;
	transition: 0.5s all;
}

footer a:hover .social {
	opacity: 0.6;
}

/* Animations */

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

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

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

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

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

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

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

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

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

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

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

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

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

}

@media only screen and (max-width: 1600px) {
	#header + .image-text + .container-fluid .row {
		padding-top: 18em;
	}

	#header + .image-text + .container-fluid.three-images .row {
		padding-top: 25em;
	}
}

@media only screen and (max-width: 1500px) {
	html {
		font-size: 16px;
	}	

	.fancybox-content {
		width: 70%;
	}

	.three-images .image-3 {
		top: 70%;
	}

	#open-positions .image-2 {
		margin-top: -10%;
	}

	#open-positions .image-4 {
		margin-top: -10%;
	}
}

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

	.container {
		width: 95%;
	}

	#header + .image-text + .container-fluid .row {
		padding-top: 18em;
	}
}

@media only screen and (max-width: 1400px) {
	.three-images .image-3 {
		top: 60%;
	}
}

@media only screen and (max-width: 1300px) {
	#header:after {
		height: 200px;
	}

	.single #header:after {
		height: 250px;
	}
	
	#header + .image-text .row {
		padding-top: 0;
	}

	.three-images .image-3 {
		top: 50%;
	}

	#header + .image-text + .container-fluid.three-images .row {
		padding-top: 20em;
		padding-bottom: 6em;
	}

}

@media only screen and (max-width: 1200px) {
	.container {
		width: 100%;
	}

	h2.jumbo {
		font-size: 6em;
	}

	h2.super-jumbo {
		font-size: 7em;
	}

	.btn-secondary {
		font-size: 1.7em;
	}

	header .container {
		width: 90%;
	}

	.fancybox-content {
		width: 90%;
		padding-left: 30px;
		padding-right: 30px;
	}

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

	#header + .image-text .row img {
		position: relative;
	}

	#header + .image-text + .image-text .row,
	#header + .image-text + .container-fluid .row {
		padding-top: 6em;
	}

	#header + .image-text .row .col-lg-5 {
		margin-top: 0;
	}

	#header + .image-text .row {
		align-items: center !important;
	}

	.three-images .image-2 {
		top: 20%;
	}

	#header + .image-text + .container-fluid.three-images .row {
		padding-bottom: 6em;
		padding-top: 6em;
	}

	.three-images .image-1 {
		top: 0%;
	}

	.three-images .image-2 {
		top: 40%;
	}

	.three-images .image-3 {
		top: 70%;
	}

	.no-content {
		display: none;
	}

	/* Cards */

	.card:not(.no-hover) .card-body {
		position: relative;
		transform: unset;
	}

	.card-content {
		width: 100%;
	}
}

@media only screen and (max-width: 1024px) {
	h2.jumbo {
		font-size: 5.5em;
	}

	.btn-secondary {
		font-size: 1.5em;
	}
	
	.cta-section .row {
		padding-top: 6em;
		padding-bottom: 6em;
	}
}

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


	/* Special Layouts */
	
}

@media only screen and (max-width: 992px) {
	/* 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 */

	h2.super-jumbo {
		font-size: 5em;
	}

	.bg-image {
		height: 400px;
	}
	
	/* Header */

	header.container-fluid {
		height: 70px;
	}

	#logo img {
		width: 200px;
	}

	#map {
		height: 500px;
	}

	/* Header Navigation */

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

	#navigation {
		margin: inherit;
	}

	.menu-primary-navigation-container, .logged-in .menu-primary-navigation-container {
		background: #000000;
	    height: auto;
	    width: calc(90% - 30px);
		margin: 0 auto;
		right: 0;
	    left: 0;
	    position: fixed;
	    top: -100vh;
	    display: flex;
	    align-items: flex-start;
	    justify-content: center;
	    overflow-y: scroll;
		border-bottom-left-radius: 10px;
		border-bottom-right-radius: 10px;
	}

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

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

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

	#menu-primary-navigation li, #menu-primary-navigation .sub-menu li {
		display: block;
		margin-right: 0;
		margin-left: 0;
		margin-top: 1em;
		margin-bottom: 1em;
		text-align: center;
		width: 100%;
	}

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

	#menu-primary-navigation a {
		font-size: 1.5em;
		padding-top: 0.5em;
		padding-bottom: 0.5em;
		height: auto;
		color: #ffffff;
	}

	#menu-primary-navigation .current-menu-item a {
		color: #ffc400;
	}

	#menu-primary-navigation .sub-menu {
		display: none;
		position: relative;
		background: transparent;
		padding-top: 0;
		padding-bottom: 0;
		border: 0;
	}

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

	#menu-primary-navigation .sub-menu a {
		font-size: 2em;
		display: inline-block;
		padding-top: 0.8em;
		padding-bottom: 0.8em;
	}

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

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

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

	/* Helpers */

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

	/* Special Layouts */

	#header + .image-text .row img {
		position: relative;
	}

	#header + .image-text .row .col-lg-5 {
		margin-top: 0;
	}
	
	#header + .image-text + .container-fluid.three-images .row {
		padding-top: 6em;
		padding-bottom: 6em;
	}

	.page-template-contact #header {
		height: 600px;
	}

	.page-template-contact #header:after {
		height: 250px;
	}

	.three-images .image {
		position: relative;
	}

	.three-images .image-1 {
		top: 0;
	}

	.three-images .image-2 {
		top: -10%;
		right: -30%;
	}

	.three-images .image-3 {
		top: -15%;
		right: -10%;
	}
}

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

	.logged-in header.container-fluid {
		top: 46px;
	}

	/* Header Navigation */

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

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

	#wpadminbar {
		position: fixed !important;
	}

	.container {
		width: 100%;
	}

	header .container {
		width: 100%;
	}

	.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 */

	h1, .h1 {
		font-size: 3.5em;
	}

	.page-template-home h1 {
		font-size: 2.5em;
	}

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

	h2.jumbo {
		font-size: 3.5em;
	}

	h2.super-jumbo {
		font-size: 2em;
	}

	.fancybox-content {
		padding-left: 15px;
		padding-right: 15px;
	}

	.bg-image {
		height: 250px;
	}

	/* Header */


	/* Header Navigation */

	.menu-primary-navigation-container, .logged-in .menu-primary-navigation-container {
		width: calc(100% - 30px);
	}

	#menu-primary-navigation {
		padding-top: 2em;
	}

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

	#menu-primary-navigation .sub-menu > li:first-child {
		margin-top: 0.5em;
	}

	/* Special Layouts */

	#header {
		height: 400px;
	}

	#header:after {
		height: 150px;
	}
	
	.single #header {
		height: 600px;
	}

	.single #header:after {
		height: 250px;
	}

	#header + .image-text + .container-fluid.three-images .row,
	.page-template-home #header + .image-text + .container-fluid .row, .page-template-home #header + .image-text .row {
		padding-top: 3em;
		padding-bottom: 3em;
	}

	/* Cards */

	.card-body:before {
		height: 50px;
		top: -50px;
	}

	.card-body h3 {
		margin-top: -1em;
	}

	.card.no-hover .card-body {
		height: 100%;
		background: linear-gradient(to bottom, rgba(0,0,0,0.1), #000000);
	}

	.card.no-hover .card-body h3 {
		margin: 0;
	}

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

	/* Footer */

	#menu-footer-navigation {
		justify-content: center;
	}
}

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

}