/*
Theme Name: bn
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bn
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

bn is based on Underscores http://underscores.me/, (C) 2012-2015 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
    ## Margin, padding, gaps
		## Posts and pages
		## Background and font colours
	## Asides
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
	font-family: 'Raleway', sans-serif;
}

body {
	margin: 0;
	min-width:320px;
}

body.locked{
	overflow:hidden;
}

*,
*::after,
*::before{
	box-sizing:border-box;
	margin:0;
	padding:0;
}
*{ outline: none; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover,
a:focus {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 2em;
	margin: 0 0 0.67em 0;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"] {
	-webkit-appearance: textfield;
	box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
	color:#fff;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	float:left;
	width:100%;
	clear: both;
	font-weight: 400;
	font-family: 'Cinzel', serif;
	text-transform:uppercase;
}

p {
	float:left;
	width:100%;
	margin-bottom: 1.5em;
	font-weight: 300;
	font-size:1rem;
	line-height:160%;
	letter-spacing:2px;
}

a {
	text-decoration:none;
	cursor:pointer;
	color:#fff;
}

a:hover,
a:focus,
a:active {
	outline: 0;
}

a:hover{
	text-decoration:underline;
}

@media screen and (max-width:1024px){
	a:hover{
		text-decoration:none;
	}
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-size: 15px;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-size: 15px;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

body {
	background: #000; /* Fallback for when there is no custom background color defined. */
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}

blockquote,
q {
	quotes: "" "";
}

hr {
	border: 0;
	height: 1px;
	margin: 0.625em;
}

ul,
ol {
	float:left;
	width:100%;
	margin: 0 0 1.5em 1.25em;
}

ul {
	list-style: disc;
}

main ul{
	font-weight: 300;
	font-size: 1rem;
	line-height: 160%;
	letter-spacing: 2px;
	width: calc(100% - 1.25em);
}
main ul li{ 
	margin-bottom: 10px;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	float:left;
	width:100%;
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	display:block;
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}



/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/

.form-row {
	margin: 1em 0;
}

.form-column{
	padding-bottom:20px;
}

.form-column.left-content{
	padding-right:10px;
}

.form-column.right-content{
	padding-left:10px;
}

label {
	display: block;
}

form button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	float:right;
	padding:7px 32px 7px 38px;
	border:none;
	font-size: 0.9rem;
	font-weight:500;
	background:#fff;
	border:none;
	color:#000;
	letter-spacing:6px;
	margin-top: 15px;
	-webkit-transition:background-color .2s linear,color .2s linear;
	-moz-transition:background-color .2s linear,color .2s linear;
	transition:background-color .2s linear,color .2s linear;
}

@media screen and (min-width:1025px){
	form button:hover,
	input[type="button"]:hover,
	input[type="reset"]:hover,
	input[type="submit"]:hover {
		background-color:rgba(255,255,255,0.7);
	}
}

form button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
form button:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
	
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="date"],
input[type="password"],
input[type="search"],
textarea,
select  {
	width: 100%;
	padding:10px 20px;
	margin:0;
	border:1px solid #D3D4D4;
	background:none;
	font-size:0.8rem;
	color:#fff;
	letter-spacing:3px;
	-webkit-transition:background-color 1s;
	-moz-transition:background-color 1s;
	-o-transition:background-color 1s;
	transition:background-color 1s;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="date"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
	background-color:rgba(255,255,255,0.1);
}

select{
	padding:10px 16px;
	cursor:pointer;
}

textarea {
	float:left;
	min-width: 100%;
	max-width: 100%;
	height:100px;
	min-height:100px;
	max-height:300px;
}

p.sensitive-data{
	font-size:0.85rem;
}

/***** OVERRIDES FROM CONTACT FORM PLUGIN *****/

.wpcf7-form{
	float:left;
	width:100%;
}

.wpcf7-form p{ font-size: 0.8rem; margin-bottom: 0; }

span.wpcf7-form-control-wrap{
	float:left;
	width:100%;
}

input[type="text"].wpcf7-not-valid,
input[type="email"].wpcf7-not-valid,
input[type="tel"].wpcf7-not-valid,
input[type="url"].wpcf7-not-valid,
input[type="date"].wpcf7-not-valid,
input[type="password"].wpcf7-not-valid,
input[type="search"].wpcf7-not-valid,
textarea.wpcf7-not-valid{
	margin:0;
}

span.wpcf7-not-valid-tip{
	float:left;
	width:100%;
	color:#CCB360;
}

div.wpcf7-response-output{
	float:left;
	margin:0;
}

div.wpcf7-validation-errors{
	border-color:#ccb360;
}





/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}





/*--------------------------------------------------------------
# ALLOW FOR CENTRE VERTICAL ALIGN
--------------------------------------------------------------*/

.center-outer{
	display:table;
	height:100%;
	width:100%;
}

.center-inner{
	display:table-cell;
	vertical-align:middle;
}





/*--------------------------------------------------------------
# Structural
--------------------------------------------------------------*/

main{
	float:left;
	width:100%;
}



.full-width{
	float:left;
	width:100%;
	position:relative;
	overflow:hidden;
}

.full-height{
	height:100vh;
}

.max-full-height{
	max-height:100vh;
}

.content-width{
	display:block;
	margin:0 auto;
}

.content-width-inner{
	max-width:920px;
}

.content-width-outer{
	max-width:1024px;
}

.content-width-wide{
	max-width:1600px;
}

.left-content,
.right-content{
	width:50%;
	position:relative;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:cover;
}

.left-content{
	float:left;
}

.right-content{
	float:right;
}

.left-content-small, .right-content-small{width:35%;}
.left-content-large, .right-content-large{width:65%;}

.content-on-top{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

.content-fixed{
	position:fixed;
	top:0;
	left:0;
}

.row-flex{
	display:-webkit-flex;
	display:flex;
}

.image-only-wrapper{
	-webkit-flex:1;
	-ms-flex:1;
	flex:1;
	height:inherit;
}

.background-image-full{
	width:100%;
	height:100%;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:cover;
}

.section-content{
	display:block;
	width:100%;
	overflow:hidden;
	margin:0 auto;
	padding:50px 5%;
}

.pictured-background{ position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background-position: center; background-repeat: no-repeat; background-size: cover; z-index: -1; }
.content-max-width-1200{ max-width: 1200px; float: none; }
.content-max-width-1800{ max-width: 1800px; float: none; }


@media screen and (max-width:1899px){
	.padding-horizontal-30-1899{ padding-left: 30px; padding-right: 30px; }
}

@media screen and (max-width:1649px){
	.content-width-wide{
		padding-left:2%;
		padding-right:2%;
	}
}

@media screen and (max-width:1099px){
	main .content-width-inner,
	main .content-width-outer{
		padding-left:2%;
		padding-right:2%;
	}
}

@media screen and (max-width:768px){
	.left-content{
		width:100%;
	}
	
	.right-content{
		width:100%;
	}
}





/*--------------------------------------------------------------
# EXTRA CLASSES
--------------------------------------------------------------*/

.margin-20{margin-bottom:20px;}
.margin-30{margin-bottom:30px;}
.margin-50{margin-bottom:50px;}
.margin-70{margin-bottom:70px;}

.mobile-only{
	display:none;
}

@media screen and (max-height:479px),
screen and (max-width:479px){
	.mobile-only{
		display:block;
	}
}

.visuallyHidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}



/***** TITLES *****/

.section-title{
	display:block;
	margin:0 auto 20px;
	width:100%;
	text-align:center;
	text-transform:uppercase;
	font-family:"Cinzel",serif;
}

.section-title-large{
	font-size:4rem;
	letter-spacing:20px;
}

.section-title-small{
	font-size:2rem;
	letter-spacing:10px;
}

.section-title > span{
	float:left;
	width:100%;
	line-height:130%;
}

.section-title-left{text-align:left;}
.section-title-center{text-align:center;}
.section-title-right{text-align:right;}

.sub-heading{
	margin-bottom:5px;
	font-size:1rem;
	letter-spacing:3px;
}

@media screen and (max-width:1249px){
	.section-title-large{
		font-size:3.5rem;
		letter-spacing:15px;
	}
}

@media screen and (max-width:1023px){
	.section-title-large{
		font-size:3rem;
		letter-spacing:12px;
	}
	.section-title-small{
		font-size:1.9rem;
		letter-spacing:7px;
	}
}

@media screen and (max-width:768px){
	.section-title-large{
		font-size:2.5rem;
		letter-spacing:10px;
	}
	.section-title-small{
		font-size:1.8rem;
	}
}

@media screen and (max-width:479px){
	.section-title-large{
		font-size:2rem;
		letter-spacing:6px;
	}
	.section-title-small{
		font-size:1.5rem;
		letter-spacing:4px;
	}
}



/***** INTERACTION BUTTONS *****/

.expand-interaction{
	position:relative;
	width:31px;
	height:31px;
	float:right;
	margin-bottom:5px;
	z-index:1;
	cursor:default;
	text-indent:-5000px;
	-webkit-transform:translateZ(0);
	-moz-transform:translateZ(0);
	-ms-transform:translateZ(0);
	-o-transform:translateZ(0);
	transform:translateZ(0);
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	backface-visibility: hidden;
	webkit-font-smoothing: subpixel-antialiased;
	font-smoothing: subpixel-antialiased;
}

.expand-interaction-left{
	float:left;
}

.expand-interaction-line{
	position:absolute;
	height:1px;
	width:100%;
	background-color:#fff;
	-webkit-transition:all 1s;
	-moz-transition:all 1s;
	transition:all 1s;
}

.expand-interaction-line-top{
	top:10px;
	left:0;
}

.expand-interaction-line-bottom{
	bottom:10px;
	right:0;
}

.expand-interaction-active{
	
}

.expand-interaction-active .expand-interaction-line{
	height:2px;
}

.expand-interaction-active .expand-interaction-line-top{
	top:15px;
	left:0;
	-ms-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}

.expand-interaction-active .expand-interaction-line-bottom{
	bottom:14px;
	right:0px;
	-ms-transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}

@media screen and (max-width:1024px),
screen and (max-height:479px){
	.expand-interaction-active .expand-interaction-line{
		height:1px;
	}
	
	.expand-interaction-active .expand-interaction-line-top{
		top:10px;
		left:0;
		-ms-transform:rotate(0);
		-webkit-transform:rotate(0);
		transform:rotate(0);
	}
	
	.expand-interaction-active .expand-interaction-line-bottom{
		bottom:10px;
		right:0;
		-ms-transform:rotate(0);
		-webkit-transform:rotate(0);
		transform:rotate(0);
	}
}



/***** GHOST BUTTONS *****/

.ghost-button{
	display:block;
	width:240px;
	padding:15px 0;
	margin:0 auto;
	text-transform:uppercase;
	border-width:1px;
	border-style:solid;
	font-weight: 500;
	font-size:0.8rem;
	line-height:180%;
	letter-spacing:2px;
	-webkit-transition:all 0.5s linear;
	-moz-transition:all 0.5s linear;
	transition:all 0.5s linear;
}

@media screen and (max-width:479px){
	.ghost-button{
		width:210px;
		padding:12px 0;
	}
}

.ghost-button-white{
	border-color:#fff;
	color:#fff;
}

@media screen and (min-width:1025px){
	.ghost-button-white:hover{
		background:rgba(255, 255, 255, 0.1);
		text-decoration:none;
	}
}



/***** EXTENDING LINES *****/

.line-wrapper{
	float:left;
	width:100%;
	height:5px;
	position:relative;
}

.line-dot{
	position:absolute;
	top:0;
	width:5px;
	height:5px;
	-webkit-border-radius:50%;
	-moz-border-radius:50%;
	-ms-border-radius:50%;
	-o-border-radius:50%;
	border-radius:50%;
	background-color:#fff;
}

.line-dot-left{left:0;}
.line-dot-right{right:0;}

.line{
	clear:both;
	height:1px;
	background-color:#E4E4E4;
}

.line-left{float:left;}
.line-right{float:right;}

.line-wrapper .line{
	margin-top:2px;
}



/***** REVEAL BOXES *****/

.reveal-box{
	width:300px;
}

.reveal-box-header{
	float:left;
	width:200px;
	margin-bottom:10px;
}

.reveal-box .section-title-small{
	margin-bottom:10px;
	font-size:1.1rem;
}

.reveal-box-body{
	opacity:0;
	-webkit-filter:blur(5px);
	filter:blur(5px);
	-webkit-transition:all 1s;
	-moz-transition:all 1s;
	transition:all 1s;
}

.reveal-box-body p{ margin-top: -5px; }

.reveal-box-body-active{
	opacity:1;
	filter:blur(0);
}

.policy-find-more{ opacity: 1; font-size: 0.8rem; margin-bottom: 0; margin-top: -6px;
-webkit-transition:all 1s; -moz-transition:all 1s; 	transition:all 1s; transition-delay: 0.5s; }
.mechanics-item:hover .policy-find-more{ opacity: 0; transition-delay: 0s; -webkit-transition:all 0s; -moz-transition:all 0s; transition:all 0s;  }


@media screen and (max-width:1023px){
	.reveal-box{
		width:200px;
	}
	.reveal-box .section-title-small{
		letter-spacing:6px;
	}
	.reveal-box-body-active-scroll{
		opacity:1;
		filter:blur(0);
	}
}

@media screen and (max-width:768px){
	.policy-find-more{ display: none; }
}

@media screen and (max-width:768px),
screen and (max-height:479px){
	.reveal-box{
		width:300px;
	}
	.reveal-box .section-title-small{
		letter-spacing:10px;
	}
	/*.reveal-box-body{
		filter:blur(0);
		opacity:1;
	}*/
}



/***** TITLE ONLY SECTIONS *****/

.section-content-title-only{
	width:70%;
	padding-top:200px;
	padding-bottom:200px;
}

@media screen and (max-width:1449px){
	#row-policy-engineered .section-content-title-only{
		width:85%;
	}
}

@media screen and (max-width:1023px){
	#row-policy-engineered .section-content-title-only{
		width:100%;
	}
}

@media screen and (max-width:768px){
	.section-content-title-only{
		width:85%;
		padding-top:150px;
		padding-bottom:150px;
	}
}

@media screen and (max-width:479px){
	.section-content-title-only{
		width:100%;
		padding-top:100px;
		padding-bottom:100px;
	}
}



/***** MASKS *****/

.mask{
	background-color:rgba(0,0,0,0.6);
	z-index:0;
}






/*--------------------------------------------------------------
# ANIMATION CLASSES
--------------------------------------------------------------*/

/***** YOU MUST ADD ONE OF THE SCROLL-ANIMATION CLASSES *****/
.scroll-animation{
	-webkit-transition-property:all;
	-moz-transition-property:all;
	-o-transition-property:all;
	transition-property:all;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.animation-speed-1s{
	-webkit-transition-duration:1s;
	-moz-transition-duration:1s;
	-o-transition-duration:1s;
	transition-duration:1s;
}
.animation-speed-2s{
	-webkit-transition-duration:2s;
	-moz-transition-duration:2s;
	-o-transition-duration:2s;
	transition-duration:2s;
}
.animation-speed-3s{
	-webkit-transition-duration:3s;
	-moz-transition-duration:3s;
	-o-transition-duration:3s;
	transition-duration:3s;
}
.animation-speed-4s{
	-webkit-transition-duration:4s;
	-moz-transition-duration:4s;
	-o-transition-duration:4s;
	transition-duration:4s;
}
.animation-speed-5s{
	-webkit-transition-duration:5s;
	-moz-transition-duration:5s;
	-o-transition-duration:5s;
	transition-duration:5s;
}

.appear{
	position:relative;
	opacity:0;
}

.scale-in{
	-webkit-transform:scale(0.8);
	-moz-transform:scale(0.8);
	transform:scale(0.8);
}

.appear-from-left{
	position:relative;
	left:-200px;
}

.appear-from-right{
	position:relative;
	right:-200px;
}

.appear-from-above{
	position:relative;
	top:-200px;
}

.appear-from-below{
	position:relative;
	bottom:-200px;
}

.blur{
	-webkit-filter:blur(20px);
	filter:blur(20px);
}

.appear-done{opacity:1;}
.scale-in-done{-webkit-transform:scale(1);-moz-transform:scale(1);transform:scale(1);}
.appear-from-left-done{left:0;}
.appear-from-right-done{right:0;}
.appear-from-above-done{top:0;}
.appear-from-below-done{bottom:0;}
.blur-done{-webkit-filter:blur(0);filter:blur(0);}

.blur-override{-webkit-filter:blur(20px); filter:blur(20px);}



/* EXTENDING LINES */

.line-animation{width:0;}
.line-100-done{width:100%;}
.line-75-done{width:75%;}
.line-50-done{width:50%;}
.line-25-done{width:25%;}

.line-dot-animation-done{
	animation-name: line-dot-pulse;
    animation-duration: 1s;
}

@keyframes line-dot-pulse{
	0%{width:8px;height:8px;top:0;left:0;}
	50%{width:16px;height:16px;top:-4px;left:-4px;}
	100%{width:8px;height:8px;top:0;left:0;}
}





/*--------------------------------------------------------------
# RE-USED ELEMENTS THAT ARE OVERRIDDEN INDIVUDALLY
--------------------------------------------------------------*/

/*--------------------------
# SOCIAL ICONS
---------------------------*/

.social-wrapper ul{
	margin:0;
	list-style:none;
}

.social-wrapper ul li a{
	float:left;
	width:23px;
	height:22px;
	margin:0 3px;
	background-image:url(img/icons/social-icons.png);
	background-repeat:no-repeat;
	text-indent:-5000px;
}

.social-wrapper ul li a.social-linkedin{
	background-position:0 0;
}
.social-wrapper ul li a.social-twitter{
	background-position:-29px 0;
}
.social-wrapper ul li a.social-facebook{
	background-position:-57px 0;
}



/*--------------------------
# BREADCRUMB TRAIL
---------------------------*/

#breadcrumb-wrapper{
	float:left;
	width:100%;
}

#breadcrumb-wrapper nav{
	float:left;
}

#breadcrumb-wrapper span{
	padding:0 3px;
}

#breadcrumb-wrapper span:first-of-type{
	padding-left:0;
}

#breadcrumb-wrapper span a{
	
}

#breadcrumb-wrapper span > span{
	
}

@media screen and (min-width:1025px){
	#breadcrumb-wrapper span a:hover{
		
	}
}





/*--------------------------
# SIDEBAR
---------------------------*/

.sidebar{
	/*width:20%;*/
}

.sidebar ul{
	float:left;
	width:100%;
	list-style:none;
	margin:0;
}

.sidebar ul li{
	width:auto;
	padding:0 0 0 20px;
	margin:0 0 8px;
	clear:both;
}

.sidebar ul li a{
	float:left;
	padding:1px 0;
	font-size:0.9rem;
	font-weight:bold;
	text-transform:uppercase;
	letter-spacing:1px;
}

.sidebar ul li.current-menu-item{
	background:url(img/assets/sidebar-menu-item-left.jpg) no-repeat 0 0 #e0144c;
	background-size:contain;
}

.sidebar ul li.current-menu-item a{
	padding:1px 23px 1px 0;
	background:url(img/assets/sidebar-menu-item-right.jpg) no-repeat 100% 0 #e0144c;
	background-size:contain;
	color:#fff;
}

@media screen and (max-width:768px){
	.sidebar ul li{
		clear:none;
		min-width:15%;
		margin:0 0 15px;
		text-align:center;
	}
	
	.sidebar ul li a{
		width:100%;
	}
}





/*--------------------------------------------------------------
# HEADER
--------------------------------------------------------------*/

#header{
	height:100vh;
}

#smaller-header{
	margin: 40px 0;
}

.logo-part{
	margin:0 auto 20px;
}

#logo-part-3{
	margin-bottom:60px;
}

#scroll-to-welcome{
	position:absolute;
	bottom:50px;
	left:0;
	width:100%;
}

#scroll-to-welcome a{
	display:block;
	width:21px;
	height:22px;
	margin:0 auto;
	background:url(img/assets/arrow-down-white.png) no-repeat 50% 50%;
	text-indent:-5000px;
	animation-name:arrowHop;
	animation-duration:6s;
	animation-iteration-count: infinite;
}

@keyframes arrowHop{
	0%{height:22px}
	10%{height:32px;}
	20%{height:22px}
	100%{height:22px}
}

@media screen and (max-height:479px){
	#scroll-to-welcome a{
		display:none;
	}
}

@media screen and (max-width:768px){
	
}

@media screen and (max-width:479px){
	
}





/*--------------------------------------------------------------
## Main nav
--------------------------------------------------------------*/

/* Toggle button */

#expand-main-menu{
	position:fixed;
	top:10px;
	right:20px;
	z-index:20;
	cursor:pointer;
}

#main-menu{
	min-height:100vh;
	background-color:rgba(0,0,0,0.9);
	z-index:-1;
	opacity:0;
	-webkit-filter:blur(5px);
	filter:blur(5px);
	-webkit-transition:opacity 1s, -webkit-filter 1s;
	-moz-transition:opacity 1s, filter 1s;
	-o-transition:opacity 1s, filter 1s;
	transition:opacity 1s, filter 1s;
}

#main-menu.main-menu-active{
	opacity:1;
	z-index:10;
	-webkit-filter:blur(0);
	filter:blur(0);
}

#main-menu .left-content,
#main-menu .right-content{
	height:100%;
}

#main-menu .left-content{
	padding-left:15%;
}

#main-menu ul{
	margin:0;
	list-style:none;
}

#main-menu ul li a,
#main-menu ul li span{
	margin-bottom:40px;
	color:#9D9FA0;
	font-size:3rem;
	text-align:left;
	line-height:100%;
	letter-spacing:25px;
	-webkit-transition:color 1s;
	-moz-transition:color 1s;
	-o-transition:color 1s;
	transition:color 1s;
}

#main-menu .right-content{
	padding-left:10%;
}

#main-menu .right-content img{
	margin-bottom:80px;
}

#main-menu .main-menu-sub-menu{
	margin-bottom:40px;
}

#main-menu .main-menu-sub-menu li{
	float:left;
	width:100%;
}

#main-menu .main-menu-sub-menu li a,
#main-menu .main-menu-sub-menu li span{
	float:left;
	margin-bottom:30px;
	font-size:0.8rem;
	letter-spacing:5px;
}

#main-menu nav .main-menu-sub-menu li a{
	text-transform:uppercase;
}

#main-menu #main-menu-contact li a{
	margin-bottom:20px;
}

#main-menu #main-menu-social{
	margin-bottom:0;
}

#main-menu #main-menu-social li{
	width:auto;
}

#main-menu #main-menu-social .social-icon{
	float:left;
	width:40px;
	height:40px;
	margin:0 20px 0 0;
	background-image:url(img/icons/social-icons-white.png);
	background-repeat:no-repeat;
	text-indent:-5000px;
	opacity:0.7;
	-webkit-transition:opacity 1s;
	-moz-transition:opacity 1s;
	-o-transition:opacity 1s;
	transition:opacity 1s;
}

#main-menu #main-menu-social #social-icon-instagram{background-position:6px 50%;}
#main-menu #main-menu-social #social-icon-linkedin{background-position:-60px 50%;}
#main-menu #main-menu-social #social-icon-twitter{background-position:-120px 50%;}
#main-menu #main-menu-social #social-icon-facebook{background-position:-175px 50%; margin-right:0;}

@media screen and (min-width:1025px){
	#main-menu ul li a:hover{text-decoration:none; color:#fff;}
	#main-menu #main-menu-social .social-icon:hover{opacity:1;}
}

@media screen and (max-height:599px),
screen and (max-width:1199px){
	#main-menu .left-content{padding-left:7%;}
	#main-menu ul li a, #main-menu ul li span{margin-bottom:30px; font-size:2rem; letter-spacing:20px;}
	#main-menu .right-content img{margin-bottom:50px;}
	#main-menu .main-menu-sub-menu li a, #main-menu .main-menu-sub-menu li span{margin-bottom:25px;}
	#main-menu .main-menu-sub-menu{	margin-bottom:20px;}
}

@media screen and (max-height:479px),
screen and (max-width:768px){
	#main-menu .left-content,#main-menu .right-content{width:50%;}
	#main-menu .left-content{padding-left:5%;}	
	#main-menu ul li a, #main-menu ul li span{margin-bottom:16px; font-size:1.7rem;	letter-spacing:12px;}	
	#main-menu .main-menu-sub-menu li a, #main-menu .main-menu-sub-menu li span{margin-bottom:20px;	letter-spacing:3px;}
	}

	@media screen and (max-width:768px){
		#row-policy-engineered section{ height: auto !important; }
	}

@media screen and (max-width:599px){
	#main-menu ul li a, #main-menu ul li span{letter-spacing:5px;}	
	#main-menu .right-content img{max-width:80%;}	
	#main-menu .main-menu-sub-menu li a, #main-menu .main-menu-sub-menu li span{letter-spacing:1px;}	
	#main-menu #main-menu-social .social-icon{margin:0 7px 0 0;}
}

@media screen and (max-height:479px),
screen and (max-width:479px){
	#main-menu{overflow:scroll;}
	#main-menu .left-content{display:none;}
	#main-menu .right-content{width:100%;padding:20px 5%;}
	#main-menu .right-content img{margin:0 auto 30px;}
	#main-menu .main-menu-sub-menu li{width:50%; padding-right:5%;}
	#main-menu .main-menu-sub-menu li a{line-height:120%;}
	#main-menu #main-menu-contact li{width:100%; padding:0;}
	#main-menu #main-menu-contact li a,#main-menu #main-menu-contact li span{text-align:center;}
	#main-menu #main-menu-social li{padding-right:0;}
	#main-menu #main-menu-social{float:none; display:block; width:181px; margin:0 auto; overflow:hidden;}
}





/*--------------------------------------------------------------
# FOOTER
--------------------------------------------------------------*/

footer{
	padding:30px 0;
	font-size:0.8rem;
	text-align:center;
}

footer .textwidget p{
	margin-bottom:0;
	font-size:0.75rem;
}



/************************ RESPONSIVE **************************/

@media screen and (max-width:959px){
	footer{
		padding:30px 2%;
	}
}





/*--------------------------------------------------------------
# RE-USED ELEMENTS - OVERRIDE ON INDIVIDUAL PAGE STYLING
--------------------------------------------------------------*/

/***** OWL CAROUSEL *****/

.owl-carousel .owl-item{
	padding:0 20px;
	
}

/***** CATEGORY AND PRODUCT TEASERS *****/

.teaser-wrapper{
	display:block;
	max-width:260px;
	margin:0 auto;
	background-color:#fff;
}





/*--------------------------------------------------------------
# HOME PAGE
--------------------------------------------------------------*/

@media screen and (max-width:768px){
	#row-welcome .image-only-wrapper{
		display:none;
	}
}

/***** TEAM SECTION *****/

#row-team{
	height:100vh;
}

.team-wrapper{
	position:absolute;
	top:0;
	width:50%;
	transition:width 1s;
}

.bg-image-team{z-index:-1;}
.team-wrapper.left-content{left:0;}
.team-wrapper.right-content{right:0;}
.team-wrapper.left-content .bg-image-team{background-position:0 50%;}
.team-wrapper.right-content .bg-image-team{background-position:100% 50%;}

.team-wrapper.left-content .dark-overlay,
.team-wrapper.right-content .dark-overlay{position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.7); }

.team-wrapper-inactive{width:33.333%;}
.team-wrapper-active{width:66.666%;}

@media screen and (max-width:1399px){
	.team-wrapper .bg-image-team{
		background-size:cover;
	}
}

@media screen and (min-width:768px) and (max-width:1023px){
	.team-wrapper{
		width:50% !important;
	}
}

@media screen and (max-width:768px),
screen and (max-height:479px){
	#row-team{
		height:auto;
	}
	
	.team-wrapper{
		width:100%;
		position:relative;
		height:auto;
		padding:100px 0;
	}
}



/***** POLICY MECHANICS SECTION *****/

#row-policy-mechanics{
	background-size:cover;
	min-height:768px;
}

#mechanics-title .section-title > span{
	float:none;
	max-width:400px;
	clear:both;
}

#mechanics-title .section-title .section-title-small.section-title-right{
	max-width:600px;
}

.mechanics-item{
	height:auto;
	width:500px;
	-webkit-transition:filter 2s;
	-moz-transition:filter 2s;
	transition:filter 2s;
}

#mechanics-item-1{
	top:15%;
	left:19%;
}
#mechanics-item-2{
	top:22%;
	left:auto;
	right:12%;
}
#mechanics-item-3{
	top:39%;
	left:10%;
}
#mechanics-item-4{
	top:66%;
	left:20%;
}
#mechanics-item-5{
	top:70%;
	left:auto;
	right:8%;
}

.mechanics-item .section-title-small{
	letter-spacing:5px;
}

@media screen and (max-width:1799px){
	#mechanics-item-1{
		left:14%;
	}
	#mechanics-item-2{
		right:9%;
	}
	#mechanics-item-3{
		left:5%;
	}
	#mechanics-item-4{
		left:15%;
	}
	#mechanics-item-5{
		right:6%;
	}
}

@media screen and (max-width:1399px){
	#mechanics-item-1{
		top:5%;
		left:8%;
	}
	#mechanics-item-2{
		top:8%;
		right:5%;
	}
	#mechanics-item-3{
		top:35%;
		left:3%;
	}
	#mechanics-item-4{
		top:66%;
		left:10%;
	}
	#mechanics-item-5{
		top:64%;
		right:3%;
	}
}

@media screen and (max-width:1199px){
	.mechanics-item{
		width:450px;
	}
	#mechanics-item-1{
		top:3%;
		left:6%;
	}
	#mechanics-item-4{
		left:5%;
	}
}

@media screen and (max-width:1023px){
	#row-policy-mechanics{
		height:auto;
		min-height:none;
		padding:50px 0;
	}
	
	#mechanics-title{
		position:relative;
	}
	
	.mechanics-item{
		position:relative;
		top:auto !important;
		left:auto !important;
		right:auto !important;
		float:left;
		width:50%;
		padding:0 20px 30px;
	}
	
	.mechanics-item:nth-of-type(2n){
		clear:left;
	}
}

@media screen and (max-width:768px){
	#mechanics-title .section-title{
		margin:20px auto 60px;
		padding:0 30px;
	}
	
	.expand-interaction-line-active .expand-interaction-line-top{
		left:0;
		top:10px;
		-webkit-transform:rotate(0);
		-moz-transform:rotate(0);
		transform:rotate(0);
	}
	
	.expand-interaction-line-active .expand-interaction-line-bottom{
		right:0;
		bottom:10px;
		-webkit-transform:rotate(0);
		-moz-transform:rotate(0);
		transform:rotate(0);
	}
}

@media screen and (max-width:479px){
	#mechanics-title .section-title{
		float:none;
		max-width:320px;
	}
	
	.mechanics-item{
		width:100%;
	}
}



/***** BLOG *****/

.blog-teaser{
	position:relative;
	text-align:center;
}

.blog-teaser > .mask{
	padding:150px 10%;
	opacity:1;
	-webkit-transition:opacity 1s;
	-moz-transition:opacity 1s;
	-o-transition:opacity 1s;
	transition:opacity 1s;
}

.blog-teaser .section-content{
	-webkit-transition:-webkit-filter 1s;
	-moz-transition:filter 1s;
	-o-transition:filter 1s;
	transition:filter 1s;
}

.blog-teaser .section-content > span{
	margin-bottom:30px;
}

.blog-teaser-link-wrapper{
	margin-top:50px;
	text-align:center;
}

.blog-archive{ position: fixed; width: 300px; }
.blog-archive .section-title-large{ font-size: 2rem; letter-spacing: 7px; margin-bottom: 20px; }
.blog-archive .widget-title{ font-size: 1.2rem; }


.blog-index,
.blog-single{ width: calc(100% - 300px); }

.blog-single .blog-index{ width: 100%; }

.blog-index .row-social{ margin-bottom: 75px; }
.blog-index .blog-image{ min-height: 400px; width: 60%; }
.blog-index .mask{ width: 40%; float: left; /*height: 400px;*/  background-color: transparent; }

.blog-index .section-content .section-title-small{ font-size: 1rem; text-align: left; }
.blog-index .section-content .section-title-large{ font-size: 2rem; letter-spacing: 7px; }

.blog-index .left-content .section-title-small{ text-align: right; }
.blog-index .left-content .section-title-large{ text-align: right; }

.blog-index .blog-teaser-link-wrapper a{ float: left; }
.blog-index .left-content .blog-teaser-link-wrapper a{ float: right; }


.blog-single .section-title-small{ font-size: 1.5rem; letter-spacing: 5px; }
.blog-single .section-title-large{ font-size: 3rem; letter-spacing: 10px; }

@media screen and (min-width:1025px){
	.blog-teaser > .mask{
		opacity:0;
	}
	
	.blog-teaser:hover > .mask{
		opacity:1;
	}
	.blog-teaser .section-content{
		-webkit-filter:blur(5px);
		filter:blur(5px);
	}
	.blog-teaser:hover .section-content{
		-webkit-filter:blur(0);
		filter:blur(0);
	}
}

@media screen and (max-width:768px){
	.blog-index, .blog-single{ width: 100%; float: left; }
	.blog-archive{ float: right; position: relative; width: 100%; }
	.blog-index .blog-image,
	.blog-index .mask{ width: 50%; }
	.blog-index .section-content .section-title-small{ font-size: 0.9rem; letter-spacing: 3px; }
	.blog-index .section-content .section-title-large{ font-size: 1.5rem; letter-spacing: 4px; line-height: 120%; }
	.blog-index .blog-teaser-link-wrapper a{ width: 200px; padding: 10px 0; }
	
	.blog-single .section-title-small{ font-size: 1rem; letter-spacing: 3px; }
	.blog-single .section-title-large{ font-size: 2.25rem; letter-spacing: 4px; line-height: 130%; }
	
	.blog-archive .section-title-large,
	.blog-archive .widget-title{ text-align: center; }
	.blog-archive .archives{ width: 100%; }
	.blog-archive .archives li{ width: 100%; float: left; }
	.blog-archive .archives li a{ text-align: center; float: none; margin: 0 auto; display: table; }
}

@media screen and (max-width:570px){
	.blog-index .blog-image{ width: 100%; min-height: auto; height: 200px; }
	.blog-index .mask{ width: 100%; height: auto; }
	.blog-teaser-link-wrapper{ margin-top: 30px; }
	.blog-index .section-content{ padding: 50px 0%; }
	
	
}

@media screen and (max-width:479px){
	.blog-teaser > .mask{
		padding:100px 5%;
	}
	.blog-teaser .section-content > .section-title-small{
		font-size:1.2rem;
	}
	.blog-teaser .section-content > .section-title-large{
		font-size:1.5rem;
	}
}



/***** CONTACT SECTION *****/

#row-contact{
	padding:120px 0;
}

#row-contact .content-width-outer{
	overflow:hidden;
}

#row-contact .section-title{
	float:none;
	width:100%;
	max-width:450px;
	clear:both;
	overflow:hidden;
	margin-bottom:80px;
}

#row-contact .section-title-large{
	font-size:5rem;
	letter-spacing:30px;
}

#row-contact .section-title-small{
	letter-spacing:15px;
}

#row-contact .left-content p{
	margin-bottom:25px;
	line-height:160%;
}

.fos-statement{ float: left; width: 100%; margin-top: 50px; border-top: 1px solid #fff; padding-top: 25px; padding-bottom: 10px; border-bottom: 1px solid #fff; }
.fos-statement p{ font-size: 0.8rem; }


@media screen and (max-width:768px){
	#left-content-contact{
		margin-bottom:50px;
	}
	.form-column.right-content,
	.form-column.left-content{
		padding-left:0;
		padding-right:0;
	}
}

@media screen and (max-width:479px){
	#row-contact .section-title-large{
		font-size:3rem;
	}
}


/***** VIDEOS *****/

.video-body-wrapper{
	overflow:hidden;
}

.body-video{
	height:100% !important;
}





/***** INSTAGRAM FEED *****/

.instagram-link{
	background:url(img/icons/instagram-overlay.png) no-repeat 50% 50%;
	-webkit-transition:opacity 1s;
	-moz-transition:opacity 1s;
	-o-transition:opacity 1s;
	transition:opacity 1s;
	text-indent:-5000px;
}

.instagram-wrapper:hover > .instagram-link{
	opacity:1;
}

@media screen and (max-width:768px){
	.row-social{
		display:block;
	}
	.instagram-wrapper{
		flex:auto;
		height:400px;
	}
}

@media screen and (min-width:1025px){
	.instagram-link{
		opacity:0;
	}
	.instagram-wrapper:hover > .instagram-link{
		opacity:1;
	}
}





/*--------------------------------------------------------------
# NEWS PAGES
--------------------------------------------------------------*/

.pagination,
.blog-archive ul{
	float:none;
	display:block;
	position:relative;
	overflow:hidden;
	width:100%;
	max-width:500px;
	margin:0 auto 20px;
	list-style:none;
}

.pagination{
	padding-top:50px;
}

.pagination li{
	margin-bottom: 0;
}

.pagination li,
.pagination li,
.blog-archive li,
.blog-archive li{
	
}

.pagination li span,
.pagination li a,
.blog-archive li span,
.blog-archive li a{
	float:left;
	min-width:70px;
	padding:2px 20px;
	margin:0 15px 15px 0;
	/*border:1px solid #222;*/
	color:#eee;
	font-size:3rem;
	font-family:"Cinzel",serif;
	text-align:center;
	-webkit-transition:background-color 1s;
	-moz-transition:background-color 1s;
	-o-transition:background-color 1s;
	transition:background-color 1s;
}

.pagination li span{
	
}

.pagination li a{
	
}

.blog-archive{
	
}

.blog-archive li span,
.blog-archive li a{
	padding:5px 20px;
	font-size:1.7rem;
	font-size: 1rem;
	margin: 0 0 10px 0;
	clear: both;
	border: none;
	padding: 0;
	text-transform: none;
	width: auto;
	text-align: left;
	color: #9D9FA0;
}



@media screen and (min-width:1025px){
	.pagination li a:hover,
	.blog-archive li a:hover{
		text-decoration:none;
		color: #fff;
	}
}

@media screen and (max-width:768px){
	.pagination li .page-numbers{ display: none; }
	.pagination li .next,
	.pagination li .prev{ display: table; margin: 0 auto; float: none; }
}



/*******************************************************************************
Privacy Page GDPR Update 180523
*******************************************************************************/
#gdpr *{  }
#gdpr p{  }
#gdpr a{  }
#gdpr li{ line-height:160%; }
#gdpr table{ width:100%; }
#gdpr table{ margin-bottom:20px; border-collapse:collapse; }
#gdpr table tr{  }
#gdpr table th{ padding:5px 10px; border:#fff solid 3px; background: #666; color:#fff !important; }
#gdpr table th p{ color:#fff !important; }
#gdpr table td{ padding:5px 10px; border:#fff solid 3px; vertical-align: top; }
#gdpr table p{ padding:0; margin:0; line-height: 160%; }


@media screen and (max-width: 1024px){

	#popmake-349{
		width: 95% !important;
		height: 80vh !important;
		overflow-y: scroll !important;
		top: 10vh !important;
	}
	
}






/************************** POPUP MAKER *************************/
.pum-content a{ color: #bfa759 !important; }
.desktop-device .pum-content a:hover{ text-decoration: underline; }