/*
Theme Name: Intrusion 2022
Author: Tiller Digital
Version: 1.1.0
License: GNU General Public License v3 or later
*/



/* VARIABLES */

html {
	--blue: #223CCF;
	--dark-blue: #000425;
	--light-blue: #8BC3DE;
	--green: #DAF24C;
	--orange: #F35009;
	--purple: #5B1A93;
	--light: #EBEDE5;
	--black: #000000;
	--white: #FFFFFF;

	--page-head-height: 120rem;
	--page-head-height-compressed: 80rem;
	--frame-width: 1170rem;
}

@media screen and (max-width: 960px) {
	html {
		--page-head-height: 80rem;
		--page-head-height-compressed: 80rem;
		--frame-width: 480rem;
	}
}



/* REM SCALING */

html {font-size: 1px;}

@media screen and (min-width: 1921px) {html{font-size: 1.333333px;}}

@media screen and (max-width: 1520px) {html{font-size: 0.9583333px;}}
@media screen and (max-width: 1440px) {html{font-size: 0.9166666px;}}
@media screen and (max-width: 1360px) {html{font-size: 0.875px;}}
@media screen and (max-width: 1280px) {html{font-size: 0.8333333px;}}
@media screen and (max-width: 1200px) {html{font-size: 0.7966666px;}}
@media screen and (max-width: 1120px) {html{font-size: 0.75px;}}
@media screen and (max-width: 960px) {html{font-size: 1px;}}



/* TEXT */

html {
	scroll-behavior: smooth;
	overflow-y: scroll;
	scroll-padding-top: 200px;
	text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
}

body {
	margin: 0;
	font-family: 'Plus Jakarta Sans', sans-serif;
	font-size: 18rem;
	line-height: 1.5;
	color: var(--black);
	background: var(--white);
}

h1, h2, h3, h4, h5, h6 {
	margin: 1.25em 0 0 0;
	line-height: 1.25;
	font-weight: 800;
}

h1, .b-h1 {font-size: 68rem;}
h2, .b-h2 {font-size: 54rem;}
h3, .b-h3 {font-size: 42rem;}
h4, .b-h4 {font-size: 28rem; font-weight: 700;}
h5, .b-h5 {font-size: 20rem;}

h6, .b-h6 {
	font-size: 16rem;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 0.75em;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
	color: inherit;
}

h1 em, h2 em, h3 em, h4 em, h5 em, h6 em {
	font-weight: 800;
	font-style: normal;
	box-shadow: inset 0 -0.3em 0 var(--green);
}

.b-text-large {font-size: 22rem; font-weight: 500;}
.b-text-small {font-size: 16rem;}
.b-text-center {text-align: center;}

h6 + *, .b-h6 + * {margin-top: 0;}

@media screen and (max-width: 960px) {
	html {scroll-padding-top: 100px;}
	body {font-size: 16rem;}

	h1, .b-h1 {font-size: 28rem;}
	h2, .b-h2 {font-size: 24rem;}
	h3, .b-h3 {font-size: 22rem;}
	h4, .b-h4 {font-size: 20rem;}
	h5, .b-h5 {font-size: 18rem;}
	h6, .b-h6 {font-size: 16rem;}

	.b-text-large {font-size: 18rem;}
	.b-text-small {font-size: 14rem;}

	.b-page h1 br,
	.b-page h2 br,
	.b-page h3 br,
	.b-page h4 br,
	.b-page h5 br,
	.b-page h6 br {display: none;}
}



/* BASIC TAGS */

p {
	margin: 0.75em 0;
}

ul, ol {
	margin: 0.75em 0;
	padding: 0 0 0 1em;
}

strong, b {
	font-weight: 700;
}

em, i {
	font-style: italic;
}

img, svg {
	display: block;
	max-width: 100%;
	height: auto;
	border: none;
}

figure {
	max-width: 100%;
	margin: 40rem 0;
}

figcaption {
	margin-top: 10rem;
	font-size: 10rem;
}

blockquote {
	position: relative;
	background: #eee;
	margin: 40rem 0;
	padding: 40rem;
}

hr {
	margin: 40rem 0;
	padding: 0;
	background: none;
	border: none;
	border-bottom: 1px solid #ccc;
}

table {
	margin: 40rem 0;
	width: 100%;
	border-spacing: 0;
	border-collapse: collapse;
}

table td {
	padding: 5rem;
	border: 1px solid #ccc;
	border-width: 1px 0;
}

iframe {
	width: 100%;
	border: none;
	overflow: auto;
}

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

article,
aside,
footer,
header,
main,
section {
	display: block;
}



/* LINKS */

a {
	color: var(--blue);
	background-color: transparent;
	text-decoration: none;
	transition: color 0.25s;
}

a:hover {color: var(--black);}
a svg {fill: currentColor;}



/* LINK */

.b-link {
	font-size: 16rem;
	font-weight: 700;
}

.b-link svg {
	width: 24rem;
	height: 12rem;
	display: inline-block;
	vertical-align: middle;
	margin: -1.5rem 0 0 6rem;
	pointer-events: none;
}



/* BUTTON */

.b-button {
	cursor: pointer;
	max-width: 100%;
	vertical-align: middle;
	display: inline-block;
	box-sizing: border-box;
	color: var(--dark-blue);
	font-family: inherit;
	font-weight: 700;
	font-size: 16rem;
	line-height: 1.25;
	width: auto;
	padding: 15rem 20rem;
	background: var(--green);
	border: none;
	border-radius: 0;
	text-align: center;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	transition: color 0.25s, background 0.25s, box-shadow 0.25s;
}

.b-button:hover {
	color: var(--green);
	background: var(--dark-blue);
}

.b-button svg {
	width: 40rem;
	height: 20rem;
	display: inline-block;
	vertical-align: middle;
	margin: -2rem 0 0 8rem;
	pointer-events: none;
}

* + p:last-child .b-button {margin-top: 15rem;}
.b-button + .b-button {margin-left: 20rem;}

.b-button.alt-outline {background-color: transparent; box-shadow: inset 0 0 0 2px var(--green); color: var(--dark-blue);}
.b-button.alt-outline:hover {color: var(--dark-blue); background: var(--green); box-shadow: inset 0 0 0 2px var(--green);}

.b-button.alt-blue {background-color: var(--blue); color: var(--white);}
.b-button.alt-blue:hover {background: var(--green); color: var(--dark-blue); }

.b-button.alt-dark {background-color: var(--dark-blue); color: var(--white);}
.b-button.alt-dark:hover {background: var(--green); color: var(--dark-blue); }



/* TEXT INPUT & TEXTAREA */

.b-input,
.b-textarea,
.b-select {
	box-sizing: border-box;
	color: var(--black);
	font-family: inherit;
	font-size: 16rem;
	line-height: 50rem;
	height: 50rem;
	width: 100%;
	padding: 0 15rem;
	background: var(--white);
	border: none;
	border-radius: 0rem;
	transition: box-shadow 0.25s;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

.b-textarea {
	display: block;
	line-height: 1.5em;
	padding: 7.5rem 15rem;
	height: 160rem;
	resize: vertical;
}

.b-select {
	cursor: pointer;
	padding-right: 30rem;
	background: var(--white) url(assets/images/expand.svg) no-repeat right 10rem center / 12rem 9rem;
}

.b-select::-ms-expand {
	display: none;
}

.b-input.alt-search {
	padding-left: 48rem;
	background: var(--white) url(assets/images/search.svg) no-repeat 12rem center / 24rem 24rem;
}



/* PAGE */

.b-page {
	border-right: 0 solid #fff; /* used when scroll is disabled */
	max-width: 100%;
	min-width: 320px;
	overflow: hidden;
	background: var(--white);
	box-shadow: 0 0 0 100vh var(--dark-blue);
}

.b-page-head {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	right: 0;
	height: var(--page-head-height);
	transition:  height 0.25s;
}

.b-page[data-scroll] .b-page-head {
	position: fixed;
	top: calc(var(--page-head-height-compressed) * -1);
	height: var(--page-head-height-compressed);
	transition: transform 0.25s;
}

.b-page[data-scroll="up"] .b-page-head {
	transform: translate(0, 100%);
}

.b-page-body {
	position: relative;
	z-index: 1;
}

.b-page-body > .b-section:first-child {padding-top: 80rem;}
.b-page-body > .b-section.alt-clear-nav:first-child {padding-top: 0; margin-top: var(--page-head-height);}
.b-page-body > .b-section[data-style=""]:not(.PFA, .PFA-FRONTPAGE):first-child {padding-top: 0; border-top: var(--page-head-height) solid var(--dark-blue);}

#toggle-nav:checked ~ .b-page[data-scroll] .b-page-head {transform: translate(0, 100%);}

@media screen and (max-width: 960px) {
	.b-page-body > .b-section:first-child {padding-top: 60rem;}
}



/* NAV & MODAL */

.b-nav,
.b-modal {
	display: flex !important;
	justify-content: center;
	align-items: center;
	pointer-events: none;
	overflow: hidden;
	position: fixed;
	z-index: 3;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	opacity: 0;
	visibility: hidden;
	transition: visibility 0s 0.25s, opacity 0.25s;
}

.b-nav-overlay,
.b-modal-overlay {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: #000;
	opacity: 0.8;
}

.b-nav-content,
.b-modal-content {
	width: calc(100% - 80rem);
	max-width:  var(--frame-width);
	max-height: 100%;
	overflow: hidden;
	transform: translate(0, 80rem);
	transition: transform 0.25s;
}

#toggle-nav:checked ~ .b-nav,
#toggle-modal:checked ~ .b-modal {
	pointer-events: auto;
	opacity: 1;
	visibility: visible;
	transition: visibility 0s 0s, opacity 0.25s;
}

#toggle-nav:checked ~ .b-nav .b-nav-content,
#toggle-modal:checked ~ .b-modal .b-modal-content {
	transform: translate(0, 0);
}

/* nav */

.b-nav {top: var(--page-head-height); align-items: flex-start;}
.b-nav-overlay {background: var(--dark-blue); opacity: 1;}
.b-nav-content {
	height: 100%;
	overflow: auto;
	transform: translate(0, -80rem);
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	-ms-overflow-style: none;
}

.b-nav-content::-webkit-scrollbar {
	display: none;
}

@media screen and (max-width: 960px) {
	.b-nav-content {width: 100%; padding: 0 20rem;}
	.b-modal-content {width: calc(100% - 40rem);}
}



/* COLUMNS */

.b-columns {
	display: flex;
	flex-wrap: wrap;
	margin: -15rem;
}

.b-column {
	padding: 15rem;
	box-sizing: border-box;
	flex: 0 0 auto;
	align-items: stretch;
}

.b-column[data-width="1"] {width: 8.3333333%;}
.b-column[data-width="2"] {width: 16.666666%;}
.b-column[data-width="3"] {width: 25%;}
.b-column[data-width="4"] {width: 33.333333%;}
.b-column[data-width="5"] {width: 41.666666%;}
.b-column[data-width="6"] {width: 50%;}
.b-column[data-width="7"] {width: 58.333333%;}
.b-column[data-width="8"] {width: 66.666666%;}
.b-column[data-width="9"] {width: 75%;}
.b-column[data-width="10"] {width: 83.333333%;}
.b-column[data-width="11"] {width: 91.666666%;}
.b-column[data-width="12"] {width: 100%;}

.b-column[data-width="1/1"] {width: 100%;}
.b-column[data-width="1/2"] {width: 50%;}
.b-column[data-width="1/3"] {width: 33.333333%;}
.b-column[data-width="1/4"] {width: 25%;}
.b-column[data-width="1/5"] {width: 20%;}
.b-column[data-width="1/6"] {width: 16.666666%;}
.b-column[data-width="1/7"] {width: 14.285714%;}
.b-column[data-width="1/8"] {width: 12.5%;}
.b-column[data-width="1/9"] {width: 11.111111%;}
.b-column[data-width="1/10"] {width: 10.000%;}
.b-column[data-width="1/11"] {width: 9.0909090%;}
.b-column[data-width="1/12"] {width: 8.3333333%;}

/* alts */

.b-columns.alt-tight {margin: -10rem;}
.b-columns.alt-tight .b-column {padding: 10rem;}

.b-columns.alt-collapse {margin: 0;}
.b-columns.alt-collapse .b-column {padding: 0;}

.b-columns.alt-bottom {margin-bottom: -45rem;}
.b-columns.alt-bottom .b-column {padding-bottom: 45rem;}

.b-columns.alt-center {justify-content: center;}
.b-columns.alt-middle {align-items: center;}

.b-columns.alt-flickity {overflow: hidden; justify-content: flex-start; flex-wrap: nowrap;}
.b-columns.alt-flickity.flickity-enabled {overflow: visible; display: block; margin-top: 0; margin-bottom: 0;}
.b-columns.alt-flickity.flickity-enabled .b-column {display: block; padding-top: 0; padding-bottom: 0;}
.b-columns.alt-flickity.flickity-enabled.alt-middle .b-column {display: flex; flex-direction: column; justify-content: center;}

@media screen and (min-width: 961px) {
	.b-columns.alt-loose {margin: -20rem;}
	.b-columns.alt-loose .b-column {padding: 20rem;}
}

@media screen and (max-width: 960px) {
	.b-columns {margin: -10rem;}
	.b-columns .b-column {padding: 10rem;}
	.b-column[data-width] {width: 100%;}

	.b-columns.alt-bottom {margin-bottom: -30rem;}
	.b-columns.alt-bottom .b-column {padding-bottom: 30rem;}
}



/* SPACER */

.b-spacer {
	display: block;
	clear: both;
}

.b-spacer[data-height="small"] {height: 30rem;}
.b-spacer[data-height="medium"] {height: 80rem;}
.b-spacer[data-height="large"] {height: 150rem;}

@media screen and (max-width: 960px) {
	.b-spacer[data-height="small"],
	.b-spacer[data-height="medium"] {height: 40rem;}
	.b-spacer[data-height="large"] {height: 60rem;}
}



/* UTILITY */

.b-scrollbar {
	width: 100px;
	height: 100px;
	overflow: scroll;
	position: absolute;
	top: -9999px;
}

.b-disabled {
	opacity: 0.25 !important;
	pointer-events: none !important;
}

.b-hidden {
	display: none !important;
}

.b-box {
	background: #eee;
	min-height: 20rem;
}

.b-img {
	width: 100%;
}

.b-img-fallback {
	background: rgba(123,123,123,0.25);
}

.custom-background {
	background-color: #000425;
}

@media screen and (max-width: 960px){
	.b-hidden-mobile {display: none;}
}




/* MARGIN OVERWRITES */

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child,
p:first-child,
ul:first-child,
ol:first-child,
blockquote:first-child,
hr:first-child,
table:first-child {
	margin-top: 0 !important;
}

h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child,
p:last-child,
ul:last-child,
ol:last-child,
blockquote:last-child,
hr:last-child,
table:last-child {
	margin-bottom: 0 !important;
}



/* INVERTED */

.b-inverted {color: var(--white);}

.b-inverted h6,
.b-inverted .b-h6 {color: var(--green);}

.b-inverted a {color: var(--green);}
.b-inverted a:hover {color: var(--white);}

.b-inverted .b-button {color: var(--dark-blue);}
.b-inverted .b-button:hover {background: var(--white); color: var(--dark-blue);}

.b-inverted .b-button.alt-outline {color: var(--white);}
.b-inverted .b-button.alt-outline:hover {background: var(--green); color: var(--dark-blue);}



/* LISTS */

.b-page .b-list {
	list-style: none;
	padding: 0;
	margin: 1.5em 0;
}

.b-page .b-list > li {
	margin: 0.75em 0;
	background: url(assets/images/bullet-point.svg) no-repeat 0 0.33em / 0.8em 0.8em;
	padding-left: 1.5em;
}

.b-page .b-list > li:first-child {margin-top: 0;}
.b-page .b-list > li:last-child {margin-bottom: 0;}



/* WORDPRESS */

body#tinymce {
	padding: 10rem;
}

.aligncenter {
	margin: 40rem auto;
}

.alignleft {
	float: left;
	margin: 0 20rem 20rem 0;
}

.alignright {
	float: right;
	margin: 0 0 20rem 20rem;
}

.alignnone{
	margin: 40rem auto 40rem 0;
}

@media screen and (max-width: 960px) {
	.aligncenter,
	.alignleft,
	.alignright {float: none; margin: 40rem auto;}
}
