/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

/* Prevent any object from being highlighted upon touch event*/
* { -webkit-tap-highlight-color: rgba(0,0,0,0); }

/** Variables **/
:root {	
	--color-black: #000;
	--color-white: #fff;
	
	--color-grey-200: #f5f5f5;
	--color-grey-400: #e8e8e8;
	--color-grey-600: #555555;
	
    --color-primary-400: #00142f;
    --color-primary-600: #001028;
	
    --color-secondary-400: #810059;
    --color-secondary-600: #810059;
	
    --color-tertiary-400: #810059;
    --color-tertiary-600: #810059;
	
    --color-highlight-400: #e9003f;
    --color-highlight-600: #b50030;
	
	--font-primary: proxima-nova, sans-serif; /** 400 | 500 | 700 **/
	--font-secondary: ivyjournal, sans-serif; /** 600 **/
	
	--content-padding: 5vh;
	--outer-row: 0.625rem;
	--divider: 1.25rem;
	
	--top-bar-height: 70px;
	--stroke-width: 1px;
	--icon-size: calc(var(--base-font) * 2.5);
	
	--heading-h1: 2.500rem;
	--heading-h2: 2.000rem;
	--heading-h3: 1.750rem;
	--heading-h4: 1.500rem;
	--heading-h5: 1.250rem;
	--heading-h6: 1.125rem;
	--base-font: 16px;
}

html,
button,
input,
select,
textarea {
    color: var(--color-primary-400);
}

html {
	background-color: var(--color-primary-600);
}
body {
	background-color: var(--color-white);
	color: var(--color-primary-400);
	font-family: var(--font-primary);
	font-size:var(--base-font);
	font-weight:400;
    line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection declarations have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between images and the bottom of their containers: h5bp.com/i/440
 */

img {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Chrome Frame prompt
   ========================================================================== */

.chromeframe {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Coordinate Styles
   ========================================================================== */

body.locked,
body.fancybox-active {
	overflow: hidden;
}
main {
	background-color: var(--color-white);
	overflow: hidden;
	padding-top: var(--top-bar-height);
}
.page-template-home-page main,
.page-template-internal-page main,
.page-template-team-page main,
.single-mv_service main {
	padding-top: 0;
}

/*
 * Top Bar
 */
.top-bar {
	padding-top: var(--divider);
	position: absolute;
	top: 0; right: 0; left: 0;
	z-index: 10;
	transition: background-color 0.5s ease-out;
}
.top-bar--nav-open,
.top-bar--search-open {
	background-color: var(--color-primary-400);
	z-index: 99;
}

.top-bar-offset {
	padding-top: var(--top-bar-height);
}

/** Site Logo **/
.site-logo {
	height: 50px;
	float: left;
	margin: 0;
	width: 160px;
}
.site-logo__link,
.site-logo__link svg {
	display: block;
	height: 100%;
	width: 100%;
}
.logo-text {
	fill: var(--color-primary-400);
	transition: fill 0.25s ease-out;
}
.page-template-home-page .logo-text,
.page-template-internal-page .logo-text,
.page-template-team-page .logo-text,
.single-mv_service .logo-text,
.top-bar--nav-open .logo-text,
.top-bar--search-open .logo-text {
	fill: var(--color-white);
}

/** Top Bar - Navigation **/
.top-bar__navigation { 
	float: right;
	opacity:0;
	pointer-events: none;
	z-index:-1;
	-webkit-transition: z-index 0s 0.75s ease-out, opacity 0.5s ease-out;
	-o-transition: z-index 0s 0.75s ease-out, opacity 0.5s ease-out;
	transition: z-index 0s 0.75s ease-out, opacity 0.5s ease-out;
	-webkit-overflow-scrolling:touch;
}
.top-bar__navigation--visible {
	pointer-events: all;
	z-index:50;
	opacity:1;
	-webkit-transition: opacity 0.5s ease-out;
	-o-transition: opacity 0.5s ease-out;
	transition: opacity 0.5s ease-out;
}
.top-bar__navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.top-bar__navigation ul li {
	float: left;
	margin-left: 1.875rem;
	position: relative;
}
.top-bar__navigation ul li:first-child {
	margin-left: 0;
}
.top-bar__navigation ul li a {
	color: var(--color-primary-400);
	display: block;
	font-size: 1em;
	font-weight: 500;
	line-height: 1;
	padding-bottom: 0.625rem;
	padding-top: 0.625rem;
	position: relative;
	text-decoration: none;
}
.page-template-home-page .top-bar__navigation ul li a,
.page-template-internal-page .top-bar__navigation ul li a,
.page-template-team-page .top-bar__navigation ul li a,
.single-mv_service .top-bar__navigation ul li a {
	color: var(--color-white);
}
.top-bar__navigation ul li.current-menu-item > a,
.top-bar__navigation ul li.current-page-ancestor > a {
	
}
.top-bar__navigation ul li > a::after {
	background-color:var(--color-highlight-400);
	content:'';
	display:block;
	height:var(--stroke-width);
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	-webkit-transform:scaleX(0);
	    -ms-transform:scaleX(0);
	        transform:scaleX(0);
	-webkit-transform-origin:right;
	    -ms-transform-origin:right;
	        transform-origin:right;
	-webkit-transition: -webkit-transform 0.25s ease-out;
	transition: -webkit-transform 0.25s ease-out;
	-o-transition: transform 0.25s ease-out;
	transition: transform 0.25s ease-out;
	transition: transform 0.25s ease-out, -webkit-transform 0.25s ease-out;
}
.page-template-home-page .top-bar__navigation ul li > a::after,
.page-template-internal-page .top-bar__navigation ul li > a::after,
.page-template-team-page .top-bar__navigation ul li > a::after,
.single-mv_service .top-bar__navigation ul li > a::after {
	background-color: var(--color-white);
}
.top-bar__navigation ul li.current-menu-item > a::after,
.top-bar__navigation ul li.current-page-ancestor > a::after,
.top-bar__navigation ul li > a:hover::after {
	-webkit-transform:scaleX(1);
	    -ms-transform:scaleX(1);
	        transform:scaleX(1);
	-webkit-transform-origin:left;
	    -ms-transform-origin:left;
	        transform-origin:left;
}

/** Sub Menus **/
.top-bar__navigation ul li.menu-item-has-children {
	position: relative;
}
.top-bar__navigation ul li.menu-item-has-children > a > i {
	font-size: 0.875em;
	margin-left: 0.5em;
}
.top-bar__navigation ul li.menu-item-has-children ul.sub-menu {
	background-color: var(--color-grey-400);
	border-radius: 0;
	max-width: 260px;
	opacity: 0;
	padding: 1em 1em 0;
	pointer-events: none;
	position: absolute;
	top: 75%; left: 50%;
	transform: translateX(-50%);
	transition: opacity 0.25s ease-out, top 0.25s ease-out;
}
.page-template-home-page .top-bar__navigation ul li.menu-item-has-children ul.sub-menu,
.page-template-internal-page .top-bar__navigation ul li.menu-item-has-children ul.sub-menu,
.page-template-team-page .top-bar__navigation ul li.menu-item-has-children ul.sub-menu,
.single-mv_service .top-bar__navigation ul li.menu-item-has-children ul.sub-menu {
	background-color: var(--color-white);
}
.top-bar__navigation ul li.menu-item-has-children:hover ul.sub-menu {
	opacity: 1;
	pointer-events: all;
	top: 100%;
}
.top-bar__navigation ul li.menu-item-has-children ul.sub-menu li {
	float: none;
	margin: 0;
	padding-bottom: 1em;
}
.top-bar__navigation ul li.menu-item-has-children ul.sub-menu li a {
	color: var(--color-primary);
	padding: 0;
	white-space: nowrap;
	overflow: hidden;
    text-overflow: ellipsis;
}
.top-bar__navigation ul li.menu-item-has-children ul.sub-menu li a:hover,
.top-bar__navigation ul li.menu-item-has-children ul.sub-menu li.current-menu-item > a,
.top-bar__navigation ul li.menu-item-has-children ul.sub-menu li.current-page-ancestor > a {
	color: var(--color-highlight-400);
}
.top-bar__navigation ul li.menu-item-has-children ul.sub-menu li a::after {
	display: none;
}

/** Menu Button **/
.menu-button { 
	background-color:transparent;
	border:none;
	display:block;
	height:20px;
	padding:0;
	position:relative;
	width:30px;
	z-index:30;
	-webkit-transition: all 0.25s ease-out;
	-o-transition: all 0.25s ease-out;
	transition: all 0.25s ease-out;
}

.menu-button span { 
	background-color:var(--color-primary-400);
	display:block;
	margin-top:calc(var(--stroke-width) * -0.5);
	position:absolute;
	left:50%;
	margin-left:-15px;
	height:var(--stroke-width);
	width:30px;
	-webkit-transform-origin:center;
	    -ms-transform-origin:center;
	        transform-origin:center;
}
.page-template-home-page .menu-button span,
.page-template-internal-page .menu-button span,
.page-template-team-page .menu-button span,
.single-mv_service .menu-button span,
.top-bar--nav-open .menu-button span,
.top-bar--search-open .menu-button span {
	background-color: var(--color-white);
}
.menu-button span:first-child {
	margin-top:-10px;
	top:50%;
}
.menu-button span:last-child {
	margin-top:8px;
	top:50%;
}

.menu-button.menu-button--closed span {  
	-webkit-transition:opacity 0.25s ease-out 0.25s, margin-top 0.25s ease-out 0.25s, width 0.25s ease-out, -webkit-transform 0.25s ease-out;  
	transition:opacity 0.25s ease-out 0.25s, margin-top 0.25s ease-out 0.25s, width 0.25s ease-out, -webkit-transform 0.25s ease-out;  
	-o-transition:transform 0.25s ease-out, opacity 0.25s ease-out 0.25s, margin-top 0.25s ease-out 0.25s, width 0.25s ease-out;  
	transition:transform 0.25s ease-out, opacity 0.25s ease-out 0.25s, margin-top 0.25s ease-out 0.25s, width 0.25s ease-out;  
	transition:transform 0.25s ease-out, opacity 0.25s ease-out 0.25s, margin-top 0.25s ease-out 0.25s, width 0.25s ease-out, -webkit-transform 0.25s ease-out;
}
.menu-button.menu-button--open span {
	-webkit-transition: margin-top 0.25s ease-out, opacity 0.25s ease-out, -webkit-transform 0.25s ease-out 0.25s, width 0.25s ease-out; 
}

.menu-button.menu-button--open span:first-child {
	margin-top:calc(var(--stroke-width) * -0.5);
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg); 
}
.menu-button.menu-button--open span:nth-child(2) {
	opacity:0;
}
.menu-button.menu-button--open span:last-child {
	margin-top:calc(var(--stroke-width) * -0.5);;
	-webkit-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	        transform: rotate(-45deg); 
}

/** Site Navigation **/
.site-navigation {
	background-color:var(--color-primary-400);
	background-clip:padding-box;
	overflow-y:scroll;
	opacity:0;
	pointer-events: none;
	position:fixed;
	top:0;
	bottom:0;
	left:0;
	right:0;
	z-index:-1;
	width:100%;
	-webkit-transition: z-index 0s 0.75s ease-out, opacity 0.5s ease-out;
	-o-transition: z-index 0s 0.75s ease-out, opacity 0.5s ease-out;
	transition: z-index 0s 0.75s ease-out, opacity 0.5s ease-out;
	-webkit-overflow-scrolling:touch;
} 
.site-navigation.site-navigation--visible {
	pointer-events: all;
	z-index:50;
	opacity:1;
	-webkit-transition: opacity 0.5s ease-out;
	-o-transition: opacity 0.5s ease-out;
	transition: opacity 0.5s ease-out;
}
.site-navigation__navigation ul {
	list-style:none;
	margin:0;
	padding:0;
}
.site-navigation__navigation ul li {
	border-top:var(--stroke-width) solid var(--color-white);
	position:relative;
	overflow:hidden;
}
.site-navigation__navigation ul li:first-child {
	border-top:none;
}
.site-navigation__navigation ul li a {
	display:block;
	color:var(--color-white);
	font-family: var(--font-secondary);
	font-size: var(--heading-h4);
	font-weight: 600;
	line-height:1;
	padding-bottom: 1em;
	padding-top: 1em;
	position:relative;
	text-decoration:none;
	z-index:5;
	-webkit-transition:color 0.25s ease-out;
	-o-transition:color 0.25s ease-out;
	transition:color 0.25s ease-out;
}

.site-navigation__navigation ul li a:hover {
	color:var(--color-highlight-400);
}

.site-navigation__navigation ul li .menu-arrow {
	background: url("../img/blank.gif");
	color:var(--color-white);
	display: block;
	height: calc(var(--heading-h4) * 3);
	line-height:var(--icon-size);
	padding-left:0;
	position:absolute;
	top:0; right:0;
	text-align: right;
	width: var(--icon-size);
}
.site-navigation__navigation ul li .menu-arrow .menu-arrow__icon {
	background-color: transparent;
    border: var(--stroke-width) solid var(--color-white);
    border-radius: 50%;
    color: var(--color-white);
    display: block;
	font-size: var(--base-font);
    height: var(--icon-size);
	line-height: calc(var(--icon-size) - (var(--stroke-width) * 2));
	margin-top: calc(var(--icon-size) * -0.5);
	position:absolute;
	top:50%; right:0;
	text-align: center;
    width: var(--icon-size);
	
	-webkit-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
}
.site-navigation__navigation ul li .menu-arrow--open .menu-arrow__icon {
	-webkit-transform:scaleY(-1);
	    -ms-transform:scaleY(-1);
	        transform:scaleY(-1);
}

.site-navigation__navigation ul li ul li a {
	color:var(--color-white);
	font-family: var(--font-primary);
	font-size:var(--base-font);
	font-weight: 400;
	line-height:1;
	padding-top:0;
}
.site-navigation__navigation ul li ul li a:hover { 
	color:var(--color-highlight-400);
}
.site-navigation__navigation ul li ul.sub-menu {
	padding-left: 0.625rem;
	padding-top:0;
}
.site-navigation__navigation ul li ul.sub-menu li {
	border-top:none;
	padding-right:0;
	width:100%;
}
.site-navigation__navigation ul li ul.sub-menu li:last-child a {
	padding-bottom: var(--heading-h4);
}

.site-navigation__navigation ul li.current-menu-item > a,
.site-navigation__navigation ul li.current-page-ancestor > a {
	color:var(--color-highlight-400);
}

.site-navigation__functions {
	
}
.site-navigation__functions ul {
	list-style:none;
	margin:-0.625rem;
	padding: var(--heading-h4) 0 0;
}
.site-navigation__functions ul li {
	padding: 0.625rem;
	width: 100%;
}
.site-navigation__functions ul li a {
	display:block;
	color:var(--color-white);
	font-weight: 500;
	line-height:1;
	text-decoration:none;
	-webkit-transition:color 0.25s ease-out;
	-o-transition:color 0.25s ease-out;
	transition:color 0.25s ease-out;
}

.site-navigation__functions ul li a:hover,
.site-navigation__functions ul li.current-menu-item > a,
.site-navigation__functions ul li.current-page-ancestor > a{
	color:var(--color-highlight-400);
}

/** Site Search **/
.site-search {
	background-color:var(--color-primary-400);
	background-clip:padding-box;
	overflow-y:scroll;
	opacity:0;
	pointer-events: none;
	position:fixed;
	top:0;
	bottom:0;
	left:0;
	right:0;
	z-index:-1;
	width:100%;
	-webkit-transition: z-index 0s 0.75s ease-out, opacity 0.5s ease-out;
	-o-transition: z-index 0s 0.75s ease-out, opacity 0.5s ease-out;
	transition: z-index 0s 0.75s ease-out, opacity 0.5s ease-out;
	-webkit-overflow-scrolling:touch;
} 
.site-search.site-search--visible {
	pointer-events: all;
	z-index:51;
	opacity:1;
	-webkit-transition: opacity 0.5s ease-out;
	-o-transition: opacity 0.5s ease-out;
	transition: opacity 0.5s ease-out;
}

/*
 * Bottom Bar
 */
.bottom-bar a,
.bottom-bar__navigation a {
    text-decoration: none;
    /*white-space: nowrap;*/
}
.bottom-bar a:hover,
.bottom-bar__navigation a:hover {
    text-decoration: underline;
	text-decoration-thickness: clamp(1px, 0.065em, 5px);
	text-underline-offset: clamp(1px, 0.065em, 5px);
}
.bottom-bar__navigation ul {
    list-style: none;
    padding: 0;
}
.bottom-bar__navigation ul li {
    padding-bottom: 0.3125rem;
    padding-top: 0.3125rem;
}
.bottom-bar__navigation ul li:first-child {
    padding-top: 0;
}
.bottom-bar__navigation ul li:last-child {
    padding-bottom: 0;
}
.bottom-bar__navigation ul li a {
    /** Handle text overflow
	display: block;
    overflow: hidden;
    text-overflow: ellipsis; **/
}

.bottom-bar__legality {
	background-color: var(--color-primary-600);
    font-size: 1rem;
    padding-bottom: var(--divider);
    padding-top: var(--divider);
}

/* ==========================================================================
   Page Styles
   ========================================================================== */

/*
 * Home Page Banner
 */
.banner-row__slider-controls {
	position: absolute;
	bottom: 0;
	left: 0;
}
.banner-row__images,
.banner-row__video {
	overflow: hidden;
	position: absolute !important;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: auto !important;
	z-index: 1;
}
.banner-row__images ul,
.banner-row__images ul li {
	position: absolute !important;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

/** Slider Controls **/
.banner-row .flex-direction-nav {
	align-items: center;
	display: flex;
	font-size: 1rem;
	line-height: 1;
	list-style: none;
	margin: 0;
	padding: 0;
	position: relative;
}
.banner-row .flex-direction-nav a {
	color: var(--color-white);
	display: block;
	font-size: 1.125rem;
	font-weight: normal;
	text-decoration: none;
	transition: color 0.25s ease-out, opacity 0.25s ease-out;
}
.banner-row .flex-direction-nav a.flex-disabled {
	opacity: 0.5;
	pointer-events: none;
}
.banner-row .flex-direction-nav a:hover {
	color: var(--color-highlight-400);
}
.banner-row .flex-direction-nav a i {
	display: block;
	transition: transform 0.25s ease-out;
	will-change: transform;
}
.banner-row .flex-direction-nav a.flex-prev {
	padding-right: 0.9375rem;
}
.banner-row .flex-direction-nav a.flex-next {
	padding-left: 0.9375rem;
}
.banner-row .flex-direction-nav a.flex-prev:hover i {
	transform: translateX(calc(var(--divider) * -0.25));
}
.banner-row .flex-direction-nav a.flex-next:hover i {
	transform: translateX(calc(var(--divider) * 0.25));
}

.slider-controls__total-slides {
	align-items: center;
	display: flex;
}
.total-slides__current, .total-slides__total {
	display: block;
	font-size: 1rem;
	text-align: center;
	width: 1em;
}
.total-slides__divider {
	background-color: var(--color-white);
	display: block;
	height: var(--stroke-width);
	margin-left: 0.9375rem;
	margin-right: 0.9375rem;
	width: 3.125rem;
}

/*
 * Location Map
 */
.location-map-container {
	height: 50vh;
}

/*
 * AJAX Load More
 */
.alm-btn-wrap {
    margin: 0 !important;
    padding: 0 !important;
}
.alm-posts .ajax-load-more-wrap {
    padding: 0 !important;
}
.alm-btn-wrap button.alm-load-more-btn {
    display: inline-block;
    font-weight: 500;
    position: relative;
    text-decoration: none !important;
    
    background-color: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    color: var(--color-primary-400) !important;
    font-size: var(--base-font) !important;
    height: auto;
	letter-spacing: normal;
    line-height: 1;
    margin: calc(var(--divider) * 1) 0 0;
    padding: 0.75em calc(var(--divider) + var(--icon-size)) 0.75em 0 !important;
    text-align: center;
	text-transform: none !important;
    transition: background-color 0.25s ease-out, border-color 0.25s ease-out, color 0.25s ease-out;
    box-shadow: none !important;
}
.alm-btn-wrap button.alm-load-more-btn:hover,
.alm-btn-wrap button.alm-load-more-btn:focus,
.alm-btn-wrap button.alm-load-more-btn.loading {
    background-color: transparent;
    box-shadow: none;
    color: var(--color-primary-400);
    padding: 0.75em calc(var(--divider) + var(--icon-size)) 0.75em 0;
}

.alm-btn-wrap button.alm-load-more-btn.loading::before {
    background-color: var(--color-highlight-400);
    border-radius: 50%;
    background-image: url("../img/svg/gf-spinner-white.svg");
    background-size: 32px;
    height: var(--icon-size);
    margin: calc(var(--icon-size) * -0.5) 0 0 !important;
    position: absolute;
    right: 0;
    top: 50%;
    left: auto !important;
    width: var(--icon-size);
    z-index:10;
	
	-webkit-animation: spin_animation 1.125s infinite linear;
    animation: spin_animation 1.125s infinite linear;
}

.alm-btn-wrap .alm-load-more-btn.done {
    display: none;
}


/* ==========================================================================
   Layouts/Graphic Styles
   ========================================================================== */
.outer-row { 
	padding-left:var(--outer-row); 
	padding-right:var(--outer-row);
}

.boxed-content {
	display: block;
	padding: var(--divider);
}
.boxed-content--x2 {
	padding: calc(var(--divider) * 2);
}
.boxed-content--sides-x2 {
	padding: var(--divider) calc(var(--divider) * 2);
}
.boxed-content--half {
	padding: calc(var(--divider) / 2);
}

.content-area { 
	padding-bottom:var(--content-padding); 
	padding-top:var(--content-padding); 
}
.content-area--x2 { 
	padding-bottom:calc(var(--content-padding) * 2); 
	padding-top:calc(var(--content-padding) * 2); 
}

.padding-bottom { 
	padding-bottom: var(--divider);
}
.padding-bottom--x2 { 
	padding-bottom: calc(var(--divider) * 2);
}
.padding-top { 
	padding-top: var(--divider);
}
.padding-top--x2 { 
	padding-top: calc(var(--divider) * 2);
}

.padding-right { 
	padding-right: calc(var(--divider) * 2);
}

.margin-bottom {
	margin-bottom: 1em;
}
.margin-top {
	margin-top: 1em;
}

.negative-bottom-margin {
	margin-bottom: calc(var(--divider) * -1);
}
.negative-bottom-margin--x2 {
	margin-bottom: calc(var(--divider) * -2);
}
.negative-bottom-margin--x3 {
	margin-bottom: calc(var(--content-padding) * -1);
}
.negative-bottom-margin--x4 {
	margin-bottom: calc(var(--content-padding) * -2);
}
.negative-top-margin {
	margin-top: calc(var(--divider) * -1);
}
.negative-top-margin--x2 {
	margin-top: calc(var(--divider) * -2);
}
.negative-top-margin--x3 {
	margin-top: calc(var(--content-padding) * -1);
}
.negative-top-margin--x4 {
	margin-top: calc(var(--content-padding) * -2);
}

.padding-bottom-x0 { 
	padding-bottom:0 !important; 
}
.padding-top-x0 { 
	padding-top:0 !important; 
}

/** Extend Foundation **/
.push-left {
	margin-right: auto;
}
.push-right {
	margin-left: auto;
}

.pull-left-1,
.pull-left-2,
.pull-left-3,
.pull-left-4 {
	margin-left: calc(var(--outer-row) * -2);
}
.pull-right-1,
.pull-right-2,
.pull-right-3,
.pull-right-4 {
	margin-right: calc(var(--outer-row) * -2);
}

.grid-x.grid-x--xsmall.grid-padding-x {
  margin-left: -0.3125rem;
  margin-right: -0.3125rem;
}
.grid-x.grid-x--xsmall.grid-padding-y {
  margin-top: -0.3125rem;
  margin-bottom: -0.3125rem;
}
.grid-x.grid-x--xsmall.grid-padding-x > .cell {
  padding-left: 0.3125rem;
  padding-right: 0.3125rem;
}
.grid-x.grid-x--xsmall.grid-padding-y > .cell {
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
}

.grid-x.grid-x--small.grid-padding-x {
  margin-left: -0.625rem;
  margin-right: -0.625rem;
}
.grid-x.grid-x--small.grid-padding-y {
  margin-top: -0.625rem;
  margin-bottom: -0.625rem;
}
.grid-x.grid-x--small.grid-padding-x > .cell {
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}
.grid-x.grid-x--small.grid-padding-y > .cell {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}

/*
 * Backgrounds
 */
.background-white {
    background-color: var(--color-white);
	color: var(--color-primary-400);
}
header.background-white + section.background-white,
section.background-white + section.background-white {
	padding-top: 0 !important;
}
.background-white--pattern {
    background: var(--color-white) url("../img/background-texture.png") 0 0;
	background-size: 7px;
	color: var(--color-primary-400);
}
header.background-white--pattern + section.background-white--pattern,
section.background-white--pattern + section.background-white--pattern {
	padding-top: 0 !important;
}

.background-black {
    background-color: var(--color-black);
	color: var(--color-white);
}
header.background-black + section.background-black,
section.background-black + section.background-black {
	padding-top: 0 !important;
}

.background-grey {
    background-color: var(--color-grey-400);
	color: var(--color-primary-400);
}
header.background-grey + section.background-grey,
section.background-grey + section.background-grey {
	padding-top: 0 !important;
}
.background-grey--pattern {
    background: var(--color-grey-400) url("../img/background-texture-grey.png") 0 0;
	background-size: 7px;
	color: var(--color-primary-400);
}
header.background-grey--pattern + section.background-grey--pattern,
section.background-grey--pattern + section.background-grey--pattern {
	padding-top: 0 !important;
}

.background-primary {
    background-color: var(--color-primary-400);
	color: var(--color-white);
}
header.background-primary + section.background-primary,
section.background-primary + section.background-primary {
	padding-top: 0 !important;
}
.background-blue {
    background-color: var(--color-primary-400);
}
.background-secondary {
    background-color: var(--color-secondary-400);
	color: var(--color-white);
}
header.background-secondary + section.background-secondary,
section.background-secondary + section.background-secondary {
	padding-top: 0 !important;
}
.background-tertiary {
    background-color: var(--color-tertiary-400);
	color: var(--color-white);
}
header.background-tertiary + section.background-tertiary,
section.background-tertiary + section.background-tertiary {
	padding-top: 0 !important;
}
.background-highlight {
    background-color: var(--color-highlight-400);
	color: var(--color-primary-400);
}
header.background-highlight + section.background-highlight,
section.background-highlight + section.background-highlight {
	padding-top: 0 !important;
}

.background-image {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.background-image > img {
    opacity: 0;
}
.background-image--overlay::after {
    background-color: rgba(0,0,0,0.8);
    content: '';
    display: block;
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    z-index: 0;
}
.background-image--overlay--blue::after {
    background-color: rgba(0,20,47,0.8);
}
.background-image--overlay--dark::after {
    background-color: rgba(0,0,0,0.8);
}
.background-image--overlay--gradient::after {
    background-color: transparent;
	background-image: linear-gradient(to right, rgba(0,0,0,0.8) , rgba(0,0,0,0));
}

.background-extend {
	position: relative;
	z-index: 5;
}
.background-extend::after {
	content: '';
	display: block;
	position: absolute;
	top: 0; bottom: 0;
	width: 100vw;
	z-index: -1;
}
.background-extend--left::after {
	right: calc(var(--divider) * -0.5);
}
.background-extend--right::after {
	left: calc(var(--divider) * -0.5);
}
.background-extend--white::after {
	background-color: var(--color-white);
}
.background-extend--white--pattern::after {
	background: var(--color-white) url("../img/background-texture.png") 0 0;
	background-size: 7px;
}
.background-extend--grey::after {
	background-color: var(--color-grey-400);
}
.background-extend--grey--pattern::after {
	background: var(--color-grey-400) url("../img/background-texture-grey.png") 0 0;
	background-size: 7px;
}

/*
 * Borders
 */
.border-bottom {
	border-bottom: var(--stroke-width) solid var(--color-primary-400);
}
.border-bottom--white,
.background-black .border-bottom,
.background-primary .border-bottom,
.background-secondary .border-bottom,
.background-tertiary .border-bottom {
	border-bottom-color: var(--color-white);
}

.border-top {
	border-top: var(--stroke-width) solid var(--color-primary-400);
}
.border-top--white,
.background-black .border-top,
.background-primary .border-top,
.background-secondary .border-top,
.background-tertiary .border-top {
	border-top-color: var(--color-white);
}

/*
 * Images
 */
img {
	object-fit: contain;
}
figure {
	margin-left: 0;
	margin-right: 0;
    padding: 0;
	position: relative;
}
figure:first-child {
    margin-top: 0;
}
figure:last-child {
    margin-bottom: 0;
}
figure:only-child {
    margin: 0;
}
.figcaption,
figcaption {
	background-color: rgba(255,255,255,0.75);
	color: var(--color-primary-400);
	display: block;
	font-size: 0.875rem;
	padding: 1em;
	position: absolute;
	right: 0; bottom: 0; left: 0;
}

.flexslider:not(.flexslider--paging-offset) .figcaption,
.flexslider:not(.flexslider--paging-offset) figcaption {
	top: 0; bottom: auto;
}
.flexslider[data-controlnav="false"] .figcaption,
.flexslider[data-controlnav="false"] figcaption,
.flexslider.flexslider--paging-offset .figcaption,
.flexslider.flexslider--paging-offset figcaption {
	top: auto; right: 0; bottom: 0; left: 0;
}

.staff-image::before {
    background-color: var(--color-white);
    content: "";
    display: block;
    padding-top: 55%;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 55%;
    transform: translate(-50%, -50%);
    z-index: 0;
    border-radius: 100%;
}
/*.staff-image > div,
.staff-image > span {
	mix-blend-mode: multiply;
	z-index: 5;
}*/

/** Post Images **/
div[id^="attachment"],
figure[id^="attachment"],
.wp-caption {
	display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
}
div[id^="attachment"] img,
figure[id^="attachment"] img,
img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/** Icons **/
.icon--50 {
	height: 50px;
	width: 50px;
}
.icon--80 {
	height: 80px;
	width: 80px;
}
.icon--100 {
	height: 100px;
	width: 100px;
}

/** Set Size **/
.set-size {
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
	position: relative;
}

.set-size--banner {
	padding-top: 50%;
}
.set-size--landscape {
	padding-top: 66.66%;
}
.set-size--portrait {
	padding-top: 133.33%;
}
.set-size--portrait--short {
	padding-top: 122.5%;
}
.set-size--square {
	padding-top: 100%;
}

.set-size__image {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.set-size__image > img {
	opacity: 0;
	position: absolute;
}

/*
 * Pagination
 */
.pagination__numbers a,
.pagination__numbers span {
	color: var(--color-primary-400);
	font-size: var(--heading-h6);
	text-decoration: none;
}
.pagination__numbers span.current {
	background-color: var(--color-highlight-400);
    border-radius: 50%;
	color: var(--color-white);
    display: block;
	font-weight: 500;
    height: calc(var(--base-font) * 2);
	line-height: calc((var(--base-font) * 2));
    text-align: center;
    width: calc(var(--base-font) * 2);
}
.background-black .pagination__numbers span.current,
.background-primary .pagination__numbers span.current {
	background-color: var(--color-white);
	color: var(--color-primary-400);
}
.background-secondary .pagination__numbers span.current {
	background-color: var(--color-white);
	color: var(--color-secondary-400);
}
.background-tertiary .pagination__numbers span.current {
	background-color: var(--color-white);
	color: var(--color-tertiary-400);
}
.background-highlight .pagination__numbers span.current {
	background-color: var(--color-primary-400);
	color: var(--color-highlight-400);
}

/*
 * Sliders
 */
.flexslider {
	position: relative;
	width: 100%;
}
.flexslider ul.slides {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}

.flexslider--overflow .flex-viewport {
	overflow: visible !important;
}

/** Column Slider **/
.flexslider[data-columnSlider] {
	margin-left: calc(var(--divider) * -0.5) !important;
    margin-right: calc(var(--divider) * -0.5) !important;
}
.flexslider[data-columnSlider] .slide-content {
    padding-left: calc(var(--divider) / 2);
    padding-right: calc(var(--divider) / 2);
}
.flexslider[data-columnSlider] .flex-control-paging {
	padding-left: calc(var(--divider) * 1.5);
	padding-right: calc(var(--divider) * 1.5);
}

/** Background Slider **/
.background-slider {
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	z-index: 0;
}

/*
 * Controls
 */

.flexslider[data-columnSlider] .flex-direction-nav {
	padding-left: calc(var(--divider) * 1.5);
	padding-right: calc(var(--divider) * 1.5);
	top: calc(50% - ((14px + var(--divider)) / 2));
}

.flexslider[data-directionnav="true"].flexslider--paging-offset .flex-direction-nav {
	top: calc(50% - ((14px + var(--divider)) / 2));
}
.flexslider[data-directionnav="true"].flexslider--directional-offset {
	padding-bottom: calc(var(--icon-size) + var(--divider));
}
.flexslider[data-columnSlider].flexslider[data-directionnav="true"].flexslider--directional-offset .flex-direction-nav {
	padding: calc(var(--divider) / 2) calc(var(--divider) / 2) 0 !important;
	top: auto; bottom: 0;
	transform: none;
}
.flexslider[data-directionnav="true"].flexslider--directional-offset .flex-direction-nav:not(.flex-control-paging) {
	padding: calc(var(--divider) / 2) 0 0 !important;
	top: auto; bottom: 0;
	transform: none;
}

.flexslider[data-directionnav="true"].flexslider--paging-offset.flexslider--directional-offset {
	padding-bottom: calc(var(--icon-size) + var(--divider)) !important;
}
.flexslider[data-columnSlider].flexslider[data-directionnav="true"].flexslider--directional-offset .flex-direction-nav {
	padding-bottom: 0 !important;
}
.flexslider--paging-offset.flexslider--directional-offset .flex-control-paging + .flex-direction-nav {
	padding: 0;
	position: absolute;
	top: auto; right: 0; bottom: calc(var(--icon-size) * -0.5); left: 0;
	z-index: 10;
}

.flexslider[data-columnSlider].flexslider[data-directionnav="true"].flexslider--directional-offset .flex-control-paging,
.flexslider[data-directionnav="true"].flexslider--paging-offset.flexslider--directional-offset .flex-control-paging {
	justify-content: center;
	padding-top: 0;
	position: absolute;
	bottom: calc((var(--icon-size) / 2) - 7px) !important;
}
.flexslider[data-directionnav="true"].flexslider--directional-offset:not(.flexslider--paging-offset) .flex-control-paging {
	bottom: calc(var(--icon-size) + var(--divider));
}

/** Directional **/
.flex-direction-nav {
    display: flex;
	justify-content: space-between;
    list-style: none;
    margin: 0;
    padding: 0 var(--divider);
	pointer-events: none;
	position: absolute;
	top: 50%; left: 0; right: 0;
	z-index: 10;
	transform: translateY(-50%);
}

.flex-direction-nav.disabled {
    display: none;
}
.flex-direction-nav li {
    margin: 0;
}
.flex-direction-nav li:first-child {
    padding-right: calc(var(--divider) / 2);
}
.flex-direction-nav li:last-child {
    padding-left: calc(var(--divider) / 2);
}

.flex-direction-nav li a {
	pointer-events: all;
}

.flex-direction-nav li a .link-icon {
	border-color: var(--color-white);
	color: var(--color-white);
}
.flex-direction-nav li a:hover .link-icon {
	background-color: var(--color-white);
	border-color: var(--color-white);
	color: var(--color-primary-400);
}

.flexslider--directional-offset .flex-direction-nav li a .link-icon {
	border-color: var(--color-primary-400);
	color: var(--color-primary-400);
}
.flexslider--directional-offset .flex-direction-nav li a:hover .link-icon {
	background-color: var(--color-primary-400);
	border-color: var(--color-primary-400);
	color: var(--color-white);
}

.background-black .flexslider--directional-offset .flex-direction-nav li a .link-icon,
.background-primary .flexslider--directional-offset .flex-direction-nav li a .link-icon,
.background-secondary .flexslider--directional-offset .flex-direction-nav li a .link-icon,
.background-tertiary .flexslider--directional-offset .flex-direction-nav li a .link-icon {
	border-color: var(--color-white);
	color: var(--color-white);
}
.background-black .flexslider--directional-offset .flex-direction-nav li a:hover .link-icon {
	background-color: var(--color-white);
	border-color: var(--color-white);
	color: var(--color-black);
}
.background-primary .flexslider--directional-offset .flex-direction-nav li a:hover .link-icon,
.background-secondary .flexslider--directional-offset .flex-direction-nav li a:hover .link-icon,
.background-tertiary .flexslider--directional-offset .flex-direction-nav li a:hover .link-icon {
	background-color: var(--color-white);
	border-color: var(--color-white);
	color: var(--color-primary-400);
}
.background-secondary .flexslider--directional-offset .flex-direction-nav li a:hover .link-icon {
	color: var(--color-secondary-400);
}
.background-tertiary .flexslider--directional-offset .flex-direction-nav li a:hover .link-icon {
	color: var(--color-tertiary-400);
}
.background-highlight .flexslider--directional-offset .flex-direction-nav li a:hover .link-icon {
	color: var(--color-highlight-400);
}

/** Custom Slider Controls **/
.slider-controls .custom-direction-nav {
    display: flex;
	justify-content: space-between;
    list-style: none;
    margin: 0;
    padding: 0;
}
.slider-controls .custom-direction-nav li {
    margin: 0;
}
.slider-controls .custom-direction-nav li:first-child {
    padding-right: calc(var(--divider) / 2);
}
.slider-controls .fcustomex-direction-nav li:last-child {
    padding-left: calc(var(--divider) / 2);
}

.flex-disabled {
	display: block;
    opacity: 0.25;
    pointer-events: none !important;
}

/** Paging **/
.flex-control-paging { 
	display: flex;
	justify-content: center;
	list-style:none; 
	margin:0; 
	padding:var(--divider); 
	position:absolute;
	right: 0; bottom: 0; left: 0;
	text-align: center;
	z-index: 10;
}

.flexslider--paging-left .flex-control-paging { 
	justify-content: left;
}
.flexslider--paging-right .flex-control-paging { 
	justify-content: flex-end;
}

.flexslider[data-columnSlider] .flex-control-paging,
.flexslider--paging-offset .flex-control-paging {
	padding-bottom: 0;
	position: relative;
}
.flexslider--paging-offset--absolute .flex-control-paging {
	position: absolute;
	right: 0; top: 100%; left: 0;
	z-index: 5;
}

.flex-control-paging li {
	margin:0 0.3125rem;
}
.flex-control-paging li:first-child {
	margin-left: 0;
}
.flex-control-paging li:last-child {
	margin-right: 0;
}

.flex-control-paging li a {
	border:var(--stroke-width) solid var(--color-white);
	background-color:transparent;
	cursor:pointer;
	display:block;
	height:16px;
	overflow:hidden;
	text-indent:999px;
	width:16px;
  -webkit-border-radius: 50%;
          border-radius: 50%; 
}
.flex-control-paging li a:hover { 
	background-color:var(--color-white);
}
.flex-control-paging li a.flex-active {
	background-clip:content-box;
	background-color:var(--color-white);
	padding:calc(var(--stroke-width) * 3);
}

.flexslider[data-columnSlider] .flex-control-paging li a,
.flexslider--paging-offset .flex-control-paging li a {
	border-color: var(--color-primary-400);
}
.flexslider[data-columnSlider] .flex-control-paging li a:hover,
.flexslider--paging-offset .flex-control-paging li a:hover {
	background-color: var(--color-primary-400);
}
.flexslider[data-columnSlider] .flex-control-paging li a.flex-active,
.flexslider--paging-offset .flex-control-paging li a.flex-active {
	background-color: var(--color-primary-400);
}

.background-black .flexslider[data-columnSlider] .flex-control-paging li a,
.background-primary .flexslider[data-columnSlider] .flex-control-paging li a,
.background-secondary .flexslider[data-columnSlider] .flex-control-paging li a,
.background-tertiary .flexslider[data-columnSlider] .flex-control-paging li a,
.background-black .flexslider--paging-offset .flex-control-paging li a,
.background-primary .flexslider--paging-offset .flex-control-paging li a,
.background-secondary .flexslider--paging-offset .flex-control-paging li a,
.background-tertiary .flexslider--paging-offset .flex-control-paging li a {
	border-color: var(--color-white);
}
.background-black .flexslider[data-columnSlider] .flex-control-paging li a:hover,
.background-primary .flexslider[data-columnSlider] .flex-control-paging li a:hover,
.background-secondary .flexslider[data-columnSlider] .flex-control-paging li a:hover,
.background-tertiary .flexslider[data-columnSlider] .flex-control-paging li a:hover,
.background-black .flexslider--paging-offset .flex-control-paging li a:hover,
.background-primary .flexslider--paging-offset .flex-control-paging li a:hover,
.background-secondary .flexslider--paging-offset .flex-control-paging li a:hover,
.background-tertiary .flexslider--paging-offset .flex-control-paging li a:hover {
	background-color: var(--color-white);
}
.background-black .flexslider[data-columnSlider] .flex-control-paging li a.flex-active,
.background-primary .flexslider[data-columnSlider] .flex-control-paging li a.flex-active,
.background-secondary .flexslider[data-columnSlider] .flex-control-paging li a.flex-active,
.background-tertiary .flexslider[data-columnSlider] .flex-control-paging li a.flex-active,
.background-black .flexslider--paging-offset .flex-control-paging li a.flex-active,
.background-primary .flexslider--paging-offset .flex-control-paging li a.flex-active,
.background-secondary .flexslider--paging-offset .flex-control-paging li a.flex-active,
.background-tertiary .flexslider--paging-offset .flex-control-paging li a.flex-active {
	background-color: var(--color-white);
}

.flex-control-paging:empty,
.flexslider--hide-controls .flex-control-paging,
.flexslider--hide-controls .flex-direction-nav {
	display: none;
}

/** Accordion **/
.panel__title {
    position: relative;
}
.panel__title:hover {
    z-index: 1;
}
.panel__title__link {
    border-top: var(--stroke-width) solid var(--color-primary-400);
    color: var(--color-primary-400);
    display: block;
    font-weight: 500;
    margin: 0 !important;
    padding: var(--divider) calc(var(--divider) + var(--icon-size)) var(--divider) 0;
    position: relative;
    text-decoration: none;
}
.panel__title__link:hover {
    color: var(--color-highlight-400);
}
.accordion__panel:first-child .panel__title__link {
    border-top: none;
}
.accordion__panel .accordion__panel .panel__title__link {
    border-top: var(--stroke-width) solid var(--color-primary-400);
}
.title__link__icon {
	margin-top: calc(var(--icon-size) * -0.5);
    position: absolute;
    top: 50%;
    right: 0;
}
.title__link__icon::before,
.title__link__icon::after {
    background-color: var(--color-white);
    border-radius: 0;
    content: '';
    display: block;
    height: 40%;
    position: absolute;
    top: 50%;
    left: 50%;
    width: var(--stroke-width);
    transition: background-color 0.25s ease-out, opacity 0.25s ease-out, transform 0.25s ease-out;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
	z-index: 5;
}
.title__link__icon::after {
    height: var(--stroke-width);
    width: 40%;
}
.title__link__icon .arrow-link {
	position: absolute;
	z-index: 0;
}

.panel__content {
	padding: 0 calc(var(--divider) + var(--icon-size)) var(--divider) 0;
}

.accordion__panel--open > .panel__title > .panel__title__link {
	background-color: transparent !important;
	color: var(--color-highlight-400);
}
.panel__title__link:hover > .title__link__icon,
.accordion__panel--open > .panel__title > .panel__title__link .title__link__icon {
	background-color: transparent !important;
}
.panel__title__link:hover .title__link__icon::before,
.accordion__panel--open > .panel__title > .panel__title__link .title__link__icon::before,
.panel__title__link:hover .title__link__icon::after,
.accordion__panel--open > .panel__title > .panel__title__link .title__link__icon::after {
	background-color: var(--color-white);
}
.accordion__panel--open > .panel__title > .panel__title__link .title__link__icon {
    transform: rotateZ(-180deg);
}
.accordion__panel--open > .panel__title > .panel__title__link .title__link__icon::before {
    opacity: 0;
}

.background-primary .panel__title__link,
.background-black .panel__title__link,
.background-secondary .panel__title__link,
.background-tertiary .panel__title__link {
    border-top-color: var(--color-white);
    color: var(--color-white);
}
.background-highlight .panel__title__link {
    border-top-color: var(--color-primary-400);
    color: var(--color-primary-400);
}
.background-primary .accordion__panel .accordion__panel .panel__title__link,
.background-black .accordion__panel .accordion__panel .panel__title__link, 
.background-secondary .accordion__panel .accordion__panel .panel__title__link, 
.background-tertiary .accordion__panel .accordion__panel .panel__title__link {
    border-top-color: var(--color-white);
}
.background-highlight .accordion__panel .accordion__panel .panel__title__link {
    border-top-color: var(--color-primary-400);
}
.background-primary .title__link__icon::before,
.background-primary .title__link__icon::after,
.background-black .title__link__icon::before,
.background-black .title__link__icon::after,
.background-secondary .title__link__icon::before,
.background-secondary .title__link__icon::after,
.background-tertiary .title__link__icon::before,
.background-tertiary .title__link__icon::after {
    background-color: var(--color-white);
}
.background-highlight .title__link__icon::before,
.background-highlight .title__link__icon::after {
    background-color: var(--color-primary-400);
}
.background-black .accordion__panel--open > .panel__title > .panel__title__link {
	background-color: var(--color-white);
	color: var(--color-black);
}
.background-primary .accordion__panel--open > .panel__title > .panel__title__link {
	background-color: var(--color-white);
	color: var(--color-primary-400);
}
.background-secondary .accordion__panel--open > .panel__title > .panel__title__link {
	background-color: var(--color-white);
	color: var(--color-secondary-400);
}
.background-tertiary .accordion__panel--open > .panel__title > .panel__title__link {
	background-color: var(--color-white);
	color: var(--color-tertiary-400);
}
.background-highlight .accordion__panel--open > .panel__title > .panel__title__link {
	background-color: var(--color-primary-400);
	color: var(--color-highlight-400);
}
.background-primary .panel__title__link:hover > .title__link__icon,
.background-primary .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon,
.background-black .panel__title__link:hover > .title__link__icon,
.background-black .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon,
.background-secondary .panel__title__link:hover > .title__link__icon,
.background-secondary .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon,
.background-tertiary .panel__title__link:hover > .title__link__icon,
.background-tertiary .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon {
	background-color: var(--color-white);
	border-color: var(--color-white);
}
.background-highlight .panel__title__link:hover > .title__link__icon,
.background-highlight .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon {
	background-color: var(--color-primary-400);
	border-color: var(--color-primary-400);
}
.background-primary .panel__title__link:hover .title__link__icon::before,
.background-primary .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon::before,
.background-primary .panel__title__link:hover .title__link__icon::after,
.background-primary .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon::after {
	background-color: var(--color-primary-400);
}
.background-black .panel__title__link:hover .title__link__icon::before,
.background-black .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon::before,
.background-black .panel__title__link:hover .title__link__icon::after,
.background-black .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon::after {
	background-color: var(--color-black);
}
.background-secondary .panel__title__link:hover .title__link__icon::before,
.background-secondary .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon::before,
.background-secondary .panel__title__link:hover .title__link__icon::after,
.background-secondary .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon::after {
	background-color: var(--color-secondary-400);
}
.background-tertiary .panel__title__link:hover .title__link__icon::before,
.background-tertiary .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon::before,
.background-tertiary .panel__title__link:hover .title__link__icon::after,
.background-tertiary .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon::after {
	background-color: var(--color-tertiary-400);
}
.background-highlight .panel__title__link:hover .title__link__icon::before,
.background-highlight .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon::before,
.background-highlight .panel__title__link:hover .title__link__icon::after,
.background-highlight .accordion__panel--open > .panel__title > .panel__title__link .title__link__icon::after {
	background-color: var(--color-highlight-400);
}


/** Pop Ups **/
.popup {
	background: rgba(0,0,0,0.85);
	background-attachment: fixed;
	background-size: cover;
	overflow-y:scroll;
	opacity:0;
	position:fixed;
	top:0; left:0; right:0; bottom:0; z-index:-1;
	
	-webkit-transition: z-index 0s 0.75s ease-out, opacity 0.5s ease-out;
	-o-transition: z-index 0s 0.75s ease-out, opacity 0.5s ease-out;
	transition: z-index 0s 0.75s ease-out, opacity 0.5s ease-out;
} 
.popup--active {
	opacity:1;
	z-index:999;
	
	-webkit-transition: opacity 0.5s ease-out;
	-o-transition: opacity 0.5s ease-out;
	transition: opacity 0.5s ease-out;
}
.popup * {
	pointer-events: none;
}
.popup--active .popup__content {
	pointer-events: all;
	position:relative;
	z-index: 5;
}
.popup--active .popup__content * {
	pointer-events: all;
}
.popup__close {
	pointer-events: none;
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	z-index: 0;
}
.popup--active .popup__close {
	pointer-events: all;
}

.close-btn {
	background-color:var(--color-white);
	display:block;
	height: 50px;
	position:absolute;
	top:0; right:0;
	width: 50px;
	z-index: 50;
}
.close-btn:hover {
	background-color: var(--color-highlight-400);
}
.close-btn::before,
.close-btn::after {
	background-color:var(--color-primary-400);
	content:'';
	display:block;
	height: var(--stroke-width);
	position:absolute;
	margin-left:-12px;
	left:50%; top:50%;
	width: 24px;
	
	-webkit-transition: background-color 0.25s ease-out;
	
	-o-transition: background-color 0.25s ease-out;
	
	transition: background-color 0.25s ease-out;
	
  -webkit-transform-origin:50% 50%;
  -ms-transform-origin:50% 50%;
      transform-origin:50% 50%;
}
.close-btn:hover::before,
.close-btn:hover::after {
	background-color: var(--color-white);
}
.close-btn::before {
	margin-top:0;
	
  -webkit-transform: rotate(45deg); 
          -ms-transform: rotate(45deg); 
      transform: rotate(45deg); 
}
.close-btn::after {
	margin-top:0;
  -webkit-transform: rotate(-45deg); 
          -ms-transform: rotate(-45deg); 
      transform: rotate(-45deg); 
}

/** HTML5 Video **/
.js-banner-video { 
	height:auto;
	min-height:100%;
	min-width:100%;
	opacity:0;
	pointer-events: none;
	position:absolute;
	left:50%;
	top:50%;
	width:auto;
	z-index:0;
	transition:opacity 0.5s ease-out;
	-webkit-transform: translateX(-50%) translateY(-50%);
	        transform: translateX(-50%) translateY(-50%);
}
.js-banner-video--active {
	opacity: 1;
}

/** HTML5 Video **/
.js-banner-video { 
	height:auto;
	min-height:100%;
	min-width:100%;
	opacity:0;
	pointer-events: none;
	position:absolute;
	left:50%;
	top:50%;
	width:auto;
	z-index:0;
	transition:opacity 0.5s ease-out;
	-webkit-transform: translateX(-50%) translateY(-50%);
	        transform: translateX(-50%) translateY(-50%);
}
.js-banner-video--active {
	opacity: 1;
}

/** Hide HTML5 video controls **/
.IIV::-webkit-media-controls-play-button, .IIV::-webkit-media-controls-start-playback-button {
	opacity: 0;
	pointer-events: none;
	width: 5px;
}

/** Responsive Embeds **/
.object-embed {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.object-embed iframe,  
.object-embed object,  
.object-embed embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/** 100% height helper class **/
.height_100 {
	height: 100%;
}
.height_100--vh {
	height: 100vh;
}
.height_100--vh-top-bar {
	height: calc(100vh - var(--top-bar-height));
}
.height_100--min {
    height: auto;
	min-height: 100vh;
}
.grid-padding-y.height_100 {
	height: calc(100% + var(--divider));
}

.small-height_100 {
	height: 100%;
}
.small-height_100--vh {
	height: 100vh;
}
.small-height_100--vh-top-bar {
	height: calc(100vh - var(--top-bar-height));
}
.small-height_100--min {
	height: auto;
	min-height: 100vh;
}
.grid-padding-y.small-height_100 {
	height: calc(100% + var(--divider));
}

/** Helper classes **/
.position_relative {
	position: relative;
	z-index: 5;
}

/* ==========================================================================
   Animations
   ========================================================================== */

@-webkit-keyframes spin_animation {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes spin_animation {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/* ==========================================================================
   Typography
   ========================================================================== */

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 { 
	font-family: var(--font-secondary);
    font-weight: 600;
    line-height: 1.3;
}
h1,
.h1 {
	font-size: var(--heading-h1);
}
h2,
.h2 {
	font-size: var(--heading-h2);
}
h3,
.h3 {
	font-size: var(--heading-h3);
}
h4,
.h4 {
	font-size: var(--heading-h4);
}
h5,
.h5 {
	font-size: var(--heading-h5);
	margin-bottom: 1em;
	margin-top: 1em;
}
h6,
.h6 {
	font-size: var(--heading-h6);
	margin-bottom: 1.5em;
	margin-top: 1.5em;
}

.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6,
.text-white .h1,
.text-white .h2,
.text-white .h3,
.text-white .h4,
.text-white .h5,
.text-white .h6 { 
    color: var(--color-white);
}

/** Title Styles **/
.title-secondary {
    font-family: var(--font-primary);
}

.title-small {
	font-family: var(--font-primary);
	font-size: 1rem;
	font-weight: 600;
	text-transform: uppercase;
}

h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small,
h1 time,
h2 time,
h3 time,
h4 time,
h5 time,
h6 time {
	display: block;
	font-size: 75%;
	padding-bottom: 0.3125rem;
}

/** FIX LINE HEIGHT **/
.fix_line_height::before { 
    content: '';
    display: block;
    margin-top: -0.3625em;
}
.fix_line_height::after { 
    content: '';
    display: block;
    margin-bottom: -0.2125em;
}

/** Text Styles **/
.text-white {
	color: var(--color-white) !important;
}
.text-black {
	color: var(--color-black) !important;
}
.text-primary {
	color: var(--color-primary-400) !important;
}
.text-secondary {
	color: var(--color-secondary-400) !important;
}
.text-tertiary {
	color: var(--color-tertiary-400) !important;
}
.text-highlight {
	color: var(--color-highlight-400) !important;
}

.text-h1 {
	font-size: var(--heading-h1);
}
.text-h2 {
	font-size: var(--heading-h2);
}
.text-h3 {
	font-size: var(--heading-h3);
}
.text-h4 {
	font-size: var(--heading-h4);
}
.text-h5 {
	font-size: var(--heading-h5);
}
.text-h6 {
	font-size: var(--heading-h6);
}

.post-content h1,
.post-content .h1,
.post-content .text-h1 {
	font-size: var(--heading-h3);
}
.post-content h2,
.post-content .h2,
.post-content .text-h2 {
	font-size: var(--heading-h4);
}
.post-content h3,
.post-content .h3,
.post-content .text-h3 {
	font-size: var(--heading-h5);
}
.post-content h4,
.post-content .h4,
.post-content .text-h4 {
	font-size: var(--heading-h6);
}
.post-content h5,
.post-content .h5,
.post-content .text-h5 {
	font-size: var(--base-font);
}
.post-content h6,
.post-content .h6,
.post-content .text-h6 {
	font-size: var(--base-font);
}

.text-underline {
    text-decoration: underline;
    text-decoration-color: var(--color-highlight-400);
    text-decoration-thickness: var(--stroke-width);
	text-underline-offset: var(--stroke-width);
    white-space: nowrap;
}

.text-white .text-underline,
.background-black .text-underline,
.background-primary .text-underline,
.background-secondary .text-underline,
.background-tertiary .text-underline {
	text-decoration-color: var(--color-white);
}
.background-highlight .text-underline {
	text-decoration-color: var(--color-primary-400);
}

/*
 * Lists 
 */
ul, ol {
	margin-bottom: 1em;
	margin-top: 1em;
	padding-left: 20px;
	text-align: left;
}

ol li ul,
ol li ol{
	margin-bottom: 0.25em !important;
    margin-top: 0.25em !important;
}
ol li {
	margin-bottom: 0.25em;
    margin-top: 0.25em;
}
ol li:first-child {
    margin-top: 0;
}
ol li:last-child {
	margin-bottom: 0;
}

main ul:not([class]),
main ul.list-2-columns {
	list-style: none;
	padding-left: 0;
}
main ul:not([class]) li ul,
main ul.list-2-columns li ul {
	margin-bottom: 0.25em !important;
    margin-top: 0.25em !important;
}
main ul:not([class]) li,
main ul.list-2-columns li {
	margin-bottom: 0.25em;
    margin-top: 0.25em;
	padding-left: calc(var(--divider) / 2);
	position: relative;
}
main ul:not([class]) li:first-child {
    margin-top: 0;
}
main ul:not([class]) li:last-child {
	margin-bottom: 0;
}
main ul:not([class]) li::before,
main ul.list-2-columns li::before {
	background-color: var(--color-highlight-400);
	border-radius: 50%;
	content: '';
	display: block;
	height: 4px;
	position: absolute;
	top: 0.6em; left: 0;
	width: 4px;
}
main .text-white ul:not([class]) li::before,
main .text-white ul.list-2-columns li::before,
main .background-black ul:not([class]) li::before,
main .background-black ul.list-2-columns li::before,
main .background-primary ul:not([class]) li::before,
main .background-primary ul.list-2-columns li::before,
main .background-secondary ul:not([class]) li::before,
main .background-secondary ul.list-2-columns li::before,
main .background-tertiary ul:not([class]) li::before,
main .background-tertiary ul.list-2-columns li::before {
	background-color: var(--color-white);
}

.contact-list {
	list-style: none;
	padding-left: 0;
}
.contact-list li {
	margin-top: 0.625rem;
}
.contact-list li:first-child {
	margin-top: 0;
}

/*
 * Tables
 */
table {
	border-collapse: collapse;
	margin-bottom: 1em;
	margin-top: 1em;
	width: 100%;
}
th,
td {
	border: var(--stroke-width) solid var(--color-primary-400);
	padding: 1em;
	text-align: left;
	vertical-align: top;
}
.background-black th,
.background-black td,
.background-primary th,
.background-primary td,
.background-secondary th,
.background-secondary td,
.background-tertiary th,
.background-tertiary td {
	border-color:var(--color-white);
}
th {
	font-weight: 600;
}

.row-divider th,
.row-divider td,
.row-divider thead + tbody tr:first-child th,
.row-divider thead + tbody tr:first-child td {
	border: none;
	border-top: var(--stroke-width) solid var(--color-primary-400);
}
.background-black .row-divider th,
.background-black .row-divider td,
.background-black .row-divider thead + tbody tr:first-child th,
.background-black .row-divider thead + tbody tr:first-child td,
.background-primary .row-divider th,
.background-primary .row-divider td,
.background-primary .row-divider thead + tbody tr:first-child th,
.background-primary .row-divider thead + tbody tr:first-child td,
.background-secondary .row-divider th,
.background-secondary .row-divider td,
.background-secondary .row-divider thead + tbody tr:first-child th,
.background-secondary .row-divider thead + tbody tr:first-child td,
.background-tertiary .row-divider th,
.background-tertiary .row-divider td,
.background-tertiary .row-divider thead + tbody tr:first-child th,
.background-tertiary .row-divider thead + tbody tr:first-child td {
	border-top-color: var(--color-white);
}
.row-divider tr:first-child th,
.row-divider tr:first-child td {
	border-top: none;
}
.row-divider th:first-child,
.row-divider td:first-child {
	padding-left: 0;
}
.row-divider th:last-child,
.row-divider td:last-child {
	padding-right: 0;
}

/*
 * Blockquote 
 */
blockquote {
	margin: 2em 0;
	position: relative;
}
blockquote::before {
	color: var(--color-highlight-400);
	content: open-quote;
    display: block;
    font-size: calc(var(--heading-h1) * 1.25);
    font-family: var(--font-secondary);
    font-weight: 600;
    line-height: 0.5;
    pointer-events: none;
}
.staff-quote::before {
    position: absolute;
    bottom: 100%;
    left: 0;
}
cite {
	font-style: normal;
	font-weight: 600;
}
.blockquote-shortcode > p {
	font-style: italic;
	font-weight: 400 !important;
}

/** Font Settings **/
.no-margin {
	margin: 0;
}

address {
	font-style: normal;
}
strong,
b { 
	font-weight: 600;
}

hr {
	background-color: var(--color-primary-400);
	border-top: none;
	height: var(--stroke-width);
	margin-bottom: 2em;
	margin-top: 2em;
}
.background-primary hr,
.background-black hr,
.background-highlight hr {
	background-color:var(--color-white);
}

h1:first-child,
h2:first-child, 
h3:first-child, 
h4:first-child, 
h5:first-child,
h6:first-child,
.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, 
dl:first-child,
blockquote:first-child,
table:first-child,
.margin-top:first-child { 
	margin-top:0 !important;
}
h1:last-child, 
h2:last-child, 
h3:last-child, 
h4:last-child, 
h5:last-child, 
h6:last-child, 
.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, 
dl:last-child, 
blockquote:last-child , 
table:last-child,
.margin-bottom:last-child { 
	margin-bottom:0 !important;
}

/* ==========================================================================
   Links
   ========================================================================== */
a { 
	color: var(--color-primary-400);
	outline:none; 
	text-decoration:underline;
	text-decoration-color: var(--color-highlight-400);
	text-decoration-thickness: var(--stroke-width);
	text-underline-offset: var(--stroke-width);
	
	word-wrap: break-word;
	overflow-wrap: break-word;
	word-break: break-word;
	
    transition: color 0.25s ease-out, background-color 0.25s ease-out, border-color 0.25s ease-out, opacity 0.25s ease-out;
}
a:hover { 
	text-decoration:none;
}
a.text-white,
.text-white a:not([class]),
.background-black a:not([class]),
.background-primary a:not([class]),
.background-secondary a:not([class]),
.background-tertiary a:not([class]) {
	color: var(--color-white);
	text-decoration-color: var(--color-white);
}
.background-highlight a:not([class]) {
	text-decoration-color: var(--color-primary-400);
}

/** Link Icons **/
.icon-link {
	text-decoration: none;
}

.link-icon {
	background-color: transparent;
    border: none;
    border-radius: 50%;
	color: var(--color-primary-400);
    display: block;
    font-size: var(--heading-h6);
    height: var(--icon-size);
	line-height: calc(var(--icon-size) - (var(--stroke-width) * 1));
    text-align: center;
    width: var(--icon-size);
    transition: all 0.25s ease-out;
}
a:hover .link-icon {
	/*background-color: var(--color-primary-400);
    border-color: var(--color-primary-400);*/
    color: var(--color-white);
}
.link-icon--white,
.background-black .link-icon,
.background-primary .link-icon,
.background-secondary .link-icon,
.background-tertiary .link-icon {
    border-color: var(--color-white);
    color: var(--color-white);
}
a:hover .link-icon--white,
.background-black a:hover .link-icon,
.background-primary a:hover .link-icon,
.background-secondary a:hover .link-icon,
.background-tertiary a:hover .link-icon {
	/*background-color: var(--color-white);
    border-color: var(--color-white);*/
    color: var(--color-primary-400);
}
.background-secondary a:hover .link-icon {
    color: var(--color-secondary-400);
}
.background-tertiary a:hover .link-icon {
    color: var(--color-tertiary-400);
}
.background-highlight a:hover .link-icon {
    color: var(--color-highlight-400);
}

/** Buttons **/
.btn {
	display: inline-block;
	font-weight: 500;
	line-height: 1;
	padding: 1em 2em;
	text-align: center;
	text-decoration: none !important;
	transition: color 0.25s ease-out, background-color 0.25s ease-out, border-color 0.25s ease-out;
}
.btn--fluid {
	width: 100%;
}

.btn--white {
	background-color: var(--color-white);
	color: var(--color-primary-400);
}
a:hover .btn--white,
.btn--white:hover {
	background-color: var(--color-highlight-400);
	color: var(--color-primary-400);
}
.btn--black {
	background-color: var(--color-black);
	color: var(--color-white);
}
a:hover .btn--black,
.btn--black:hover {
	background-color: var(--color-highlight-400);
	color: var(--color-primary-400);
}

.btn--primary {
	background-color: var(--color-primary-400);
	color: var(--color-white);
}
.btn--secondary {
	background-color: var(--color-secondary-400);
	color: var(--color-white);
}
.btn--tertiary {
	background-color: var(--color-tertiary-400);
	color: var(--color-white);
}

a:hover .btn--primary,
.btn--primary:hover,
a:hover .btn--secondary,
.btn--secondary:hover,
a:hover .btn--tertiary,
.btn--tertiary:hover {
	background-color: var(--color-highlight-400);
	color: var(--color-primary-400);
}

.btn--highlight {
	background-color: var(--color-highlight-400);
	color: var(--color-primary-400);
}
a:hover .btn--highlight,
.btn--highlight:hover {
	background-color: var(--color-highlight-600);
	color: var(--color-primary-400);
}

.background-black .btn--white {
	color: var(--color-black);
}
.background-primary .btn--black,
.background-primary .btn--white {
	color: var(--color-primary-400);
}
.background-secondary .btn--black,
.background-secondary .btn--white {
	color: var(--color-secondary-400);
}
.background-tertiary .btn--black,
.background-tertiary .btn--white {
	color: var(--color-tertiary-400);
}
.background-highlight .btn--black,
.background-highlight .btn--white{
	color: var(--color-highlight-400);
}
.background-black a:hover .btn--white,
.background-black .btn--white:hover,
.background-primary a:hover .btn--black,
.background-primary .btn--black:hover,
.background-primary a:hover .btn--white,
.background-primary .btn--white:hover,
.background-secondary a:hover .btn--black,
.background-secondary .btn--black:hover,
.background-secondary a:hover .btn--white,
.background-secondary .btn--white:hover,
.background-tertiary a:hover .btn--black,
.background-tertiary .btn--black:hover,
.background-tertiary a:hover .btn--white,
.background-tertiary .btn--white:hover {
	color: var(--color-primary-400) !important;
}
.background-highlight a:hover .btn--black,
.background-highlight .btn--black:hover,
.background-highlight a:hover .btn--white,
.background-highlight .btn--white:hover{
	color: var(--color-primary-400) !important;
	background-color: var(--color-highlight-600);
}

.background-highlight .btn--primary {
	color: var(--color-highlight-400);
}
.background-highlight .background-white .btn--primary {
	color: var(--color-white);
}
.background-highlight a:hover .btn--primary,
.background-highlight .btn--primary:hover {
	color: var(--color-primary-400) !important;
	background-color: var(--color-highlight-600);
}
.background-highlight .background-white a:hover .btn--primary,
.background-highlight .background-white .btn--primary:hover {
	color: var(--color-primary-400) !important;
	background-color: var(--color-highlight-400);
}
.background-highlight .background-primary .btn--white {
	color: var(--color-primary-400);
}
.background-highlight .background-primary a:hover .btn--white,
.background-highlight .background-primary .btn--white:hover {
	color: var(--color-primary-400) !important;
	background-color: var(--color-highlight-400);
}

.btn--hollow {
	background-color: transparent;
	border: var(--stroke-width) solid;
	padding: calc(1em - var(--stroke-width)) calc(2em - var(--stroke-width));
}

.btn--hollow--white {
	border-color: var(--color-white);
	color: var(--color-white);
}
a:hover .btn--hollow--white,
.btn--hollow--white:hover {
	background-color: var(--color-white);
	color: var(--color-primary-400);
}
.btn--hollow--black {
	border-color: var(--color-black);
	color: var(--color-black);
}
a:hover .btn--hollow--black,
.btn--hollow--black:hover {
	background-color: var(--color-black);
	color: var(--color-white);
}

.btn--hollow--primary {
	border-color: var(--color-primary-400);
	color: var(--color-primary-400);
}
a:hover .btn--hollow--primary,
.btn--hollow--primary:hover {
	background-color: var(--color-primary-400);
	color: var(--color-white);
}

.btn--hollow--secondary {
	border-color: var(--color-secondary-400);
	color: var(--color-secondary-400);
}
a:hover .btn--hollow--secondary,
.btn--hollow--secondary:hover {
	background-color: var(--color-secondary-400);
	color: var(--color-white);
}

.btn--hollow--tertiary {
	border-color: var(--color-tertiary-400);
	color: var(--color-tertiary-400);
}
a:hover .btn--hollow--tertiary,
.btn--hollow--tertiary:hover {
	background-color: var(--color-tertiary-400);
	color: var(--color-white);
}

.btn--hollow--highlight {
	border-color: var(--color-highlight-400);
	color: var(--color-highlight-400);
}
a:hover .btn--hollow--highlight,
.btn--hollow--highlight:hover {
	background-color: var(--color-highlight-400);
	color: var(--color-primary-400);
}

.background-black a:hover .btn--hollow--white,
.background-black .btn--hollow--white:hover {
	color: var(--color-black) !important;
}
.background-primary a:hover .btn--hollow--black,
.background-primary .btn--hollow--black:hover,
.background-primary a:hover .btn--hollow--white,
.background-primary .btn--hollow--white:hover {
	color: var(--color-primary-400) !important;
}
.background-secondary a:hover .btn--hollow--black,
.background-secondary .btn--hollow--black:hover,
.background-secondary a:hover .btn--hollow--white,
.background-secondary .btn--hollow--white:hover {
	color: var(--color-secondary-400) !important;
}
.background-tertiary a:hover .btn--hollow--black,
.background-tertiary .btn--hollow--black:hover,
.background-tertiary a:hover .btn--hollow--white,
.background-tertiary .btn--hollow--white:hover {
	color: var(--color-tertiary-400) !important;
}
.background-highlight a:hover .btn--hollow--black,
.background-highlight .btn--hollow--black:hover,
.background-highlight a:hover .btn--hollow--white,
.background-highlight .btn--hollow--white:hover{
	color: var(--color-highlight-400) !important;
}

/** Read More/Category Links **/
.read-more {
	color: var(--color-primary-400);
	display: inline;
	position: relative;
	text-decoration: none !important;
}
.read-more:hover {
	color: var(--color-primary-400);
}
.read-more::after {
	background-color:var(--color-highlight-400);
	content:'';
	display:block;
	height: var(--stroke-width);
    position: absolute;
    left: 0;
    right: 0;
    bottom: calc(var(--stroke-width) * -1);
	-webkit-transform:scaleX(1);
	    -ms-transform:scaleX(1);
	        transform:scaleX(1);
	-webkit-transform-origin:left;
	    -ms-transform-origin:left;
	        transform-origin:left;
	-webkit-transition: -webkit-transform 0.25s ease-out;
	transition: -webkit-transform 0.25s ease-out;
	-o-transition: transform 0.25s ease-out;
	transition: transform 0.25s ease-out;
	transition: transform 0.25s ease-out, -webkit-transform 0.25s ease-out;
}
.read-more:hover::after {
	-webkit-transform:scaleX(0);
	    -ms-transform:scaleX(0);
	        transform:scaleX(0);
	-webkit-transform-origin:right;
	    -ms-transform-origin:right;
	        transform-origin:right;
}

.read-more--white,
.text-white .read-more,
.background-black .read-more,
.background-primary .read-more,
.background-secondary .read-more,
.background-tertiary .read-more {
	color: var(--color-white);
}
.read-more--white::after,
.text-white .read-more::after,
.background-black .read-more::after,
.background-primary .read-more::after, 
.background-secondary .read-more::after, 
.background-tertiary .read-more::after  {
	background-color: var(--color-white);
}
.background-highlight .read-more::after  {
	background-color: var(--color-primary-400);
}

/** Tile Link **/
.tile-link {
    display: block;
    text-decoration: none;
}
.tile-link span:not(.grid-x) {
	display: block;
}
.tile-link {
	position: relative;
}
.tile-link__image-container {
    overflow: hidden;
    position: relative;
}
.tile-link__content-container {
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	z-index: 5;
}
.content-container__position {
	position: absolute;
	top: 50%; right: 0; left: 0;
	transform: translateY(-50%);
}
.tile-link__image-container > span,
.tile-link__image-container > img {
    transition: transform 0.5s ease-out;
}
a:hover .tile-link__image-container > span,
a:hover .tile-link__image-container > img {
    transform: scale(1.05);
}

/** Arrow Links **/
.arrow-link {
	display: inline-block;
	font-weight: 500;
	padding-bottom: 0.75em;
	padding-top: 0.75em;
	padding-right: calc(var(--divider) + var(--icon-size));
	position: relative;
	text-decoration: none !important;
}
.arrow-link--icon {
	display: block;
	height: var(--icon-size);
	padding: 0;
	width: var(--icon-size);
}
.arrow-link--white {
	color: var(--color-white);
}
.arrow-link__arrow {
	color: var(--color-white);
	height: var(--icon-size);
	position: absolute;
	top: 50%;
	right: 0;
	width: var(--icon-size);
	transform: translateY(-50%);
}
.arrow-link__accordion {
	transform: translate3d(-50%, -50%, 0);
}
.arrow-link__arrow::before, .arrow-link__arrow::after {
	background-color: var(--color-highlight-400);
	border-radius: 50%;
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 0;
	transition: opacity 0.25s ease-out, transform 0.25s ease-out;
}
.arrow-link__arrow::before {
	opacity: 1;
}
.arrow-link__arrow::after {
	opacity: 0;
	transform: scale(0);
}
a:hover .arrow-link__arrow::before, button:hover .arrow-link__arrow::before {
	opacity: 0;
}
a:hover .arrow-link__arrow::after, button:hover .arrow-link__arrow::after {
	opacity: 1;
	transform: scale(1.15);
}
.arrow__start, .arrow__end {
	line-height: var(--icon-size);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	text-align: center;
	z-index: 5;
	transition: opacity 0.15s ease-out, transform 0.15s ease-out;
}
.arrow-link__footer .arrow__start, .arrow-link__footer .arrow__end {
	text-indent: 0px;
}
.arrow__end {
	opacity: 0;
	transform: translateX(-25%);
}
.arrow__end--left {
	transform: translateX(25%);
}
a:hover .arrow__start, button:hover .arrow__start {
	opacity: 0;
	transform: translateX(25%);
}
a:hover .arrow__start--left, button:hover .arrow__start--left {
	transform: translateX(-25%);
}
a:hover .arrow__end, button:hover .arrow__end {
	opacity: 1;
	transform: translateX(0);
}
a:hover .arrow-link__accordion > .arrow__start, button:hover .arrow-link__accordion > .arrow__start {
	opacity: 1;
	transform: translateX(0%);
}
a:hover .arrow-link__accordion > .arrow__end, button:hover .arrow-link__accordion > .arrow__end {
	opacity: 0;
	transform: translateX(0);
}

/** Row Links **/
.row-link {
	border-top: 1px solid var(--color-primary-400);
	display: block;
	padding-bottom: calc(var(--divider) * 1.5);
	padding-top: calc(var(--divider) * 1.5);
	text-decoration: none;
}
.row-link:first-child {
	border-top: none;
	padding-top: 0;
}
.row-link:last-child {
	padding-bottom: 0;
}
.row-link__title {
	transition: color 0.25s ease-out;
}
a:hover .row-link__title {
	color: var(--color-highlight-400);
}

/* ==========================================================================
   Forms
   ========================================================================== */
input,
textarea,
select,
button { 
	background-color:transparent; 
	border:var(--stroke-width) solid var(--color-primary-400);
	border-radius:0;
	color:var(--color-primary-400);
	cursor:pointer;
	display:block;
	font-size:1em;
	font-weight:400;
	line-height: 1;
	margin:0;
	padding:1em;
	outline:none;
	text-shadow:none;
	width:100%;
	
	transition: color 0.25s ease-out, background-color 0.25s ease-out, border-color 0.25s ease-out;
  -webkit-appearance: none;
}
input:hover, 
textarea:hover, 
select:hover {
	border-color:var(--color-highlight-400); 
}
input:focus, 
textarea:focus { 
	background-color:var(--color-highlight-400); 
	border-color:var(--color-highlight-400); 
	color:var(--color-white);
}
textarea,
textarea[rows] { 
	height:140px;
}

select { 
	background-image:none;
}

input[type="checkbox"], 
input[type="radio"] { 
	background-color:transparent;
	float:left;
	height:20px; 
	margin-right:0.625rem;
	width:20px;
	
	-webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
}
input[type="radio"] {
    border-radius:50%;
}
input:checked { 
	background-color:var(--color-primary-400); 
	background-clip:content-box;
	border-color:var(--color-primary-400);
	outline:none;
	padding:calc(var(--stroke-width) * 2);
}

/** Multi File Upload **/
.gform_fileupload_multifile {
	border: var(--stroke-width) dashed var(--color-primary-400);
	padding: var(--divider);
	text-align: center;
}
.gform_fileupload_multifile button,
.gform_delete_file {	
	background: transparent;
	border: none;
    color: var(--color-primary-400);
	display: inline-block;
	height: auto;
	outline:none; 
	padding: 0;
	text-decoration:underline;
	text-decoration-color: var(--color-highlight-400);
	text-decoration-thickness: var(--stroke-width);
	text-underline-offset: var(--stroke-width);
	width: auto;
}
.gform_fileupload_multifile button:hover { 
	text-decoration:none;
}
.gform_delete_file {
	text-decoration: none;
}
.gform_delete_file:hover,
.gform_delete_file:focus {
	color: var(--color-highlight-400);
}
.gform_fileupload_rules {
	display: block;
	font-size: 1rem;
	padding-top: 0.625rem;
}
.ginput_preview {
	padding-top: 0.625rem;
}

/*
 * Form Buttons
 */
button.gform_button {
	background-color: transparent;
	border: none;
	color: var(--color-primary-400);
	display: inline-block;
	font-weight: 500;
	padding: 0.75em calc(var(--divider) + var(--icon-size)) 0.75em 0;
	position: relative;
	text-decoration: none;
	width: auto;
}
button.gform_button:hover,
button.gform_button:focus { 
}

/*
 * Form Labels
 */
label,
legend {
	color: var(--color-primary-400);
	display: block;
	padding-bottom: 0.625rem;
	text-align: left;
}
.field_description_above > label,
.field_description_above > legend {
	padding-bottom: 0;
}
.hidden_label > label,
.hidden_label > legend {
	display: none;
}
input + label,
select + label,
.select-container + label,
button + label,
.gfield_description {
	color: var(--color-primary-400);
	font-size: 0.875em;
	padding-bottom: 0;
	padding-top: 0.625rem;
}
.field_description_above .gfield_description {
	padding-bottom: 0.625rem;
	padding-top: 0;
}

/*
 * Form Body
 */
.gform_fields,
.gform_fields > fieldset,
.ginput_complex,
.ginput_container_checkbox .gfield_checkbox,
.ginput_container_radio .gfield_radio { 
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
	font-size:1em; 
	margin-left:calc(var(--divider) * -0.5);
	margin-right:calc(var(--divider) * -0.5);
	padding: 0;
	text-align: left;
}
.ginput_complex {
	margin-bottom: calc(var(--divider) * -1);
}
.ginput_complex .gf_clear_complex {
	display: none;
}
.gform_fields > li,
.gform_fields > fieldset,
.ginput_complex > span,
.ginput_complex > div,
.ginput_container_checkbox .gfield_checkbox > div,
.ginput_container_radio .gfield_radio > div,
.gfield {
	clear: both;
	display: block;
	margin-bottom:var(--divider);
	margin-left: 0;
	margin-right: 0;
	padding-left: calc(var(--divider) / 2);
	padding-right: calc(var(--divider) / 2);
	width: 100%;
}

.ginput_container_checkbox,
.ginput_container_radio { 
	margin-top:-0.625rem;
	text-align: left;
}
.ginput_container_checkbox .gfield_checkbox > div,
.ginput_container_radio .gfield_radio > div { 
	margin-bottom:0 !important;
	margin-top:0.625rem;
	padding-left: calc(calc(var(--divider) / 2) + 1.875rem);
	position: relative;
}
.ginput_container_checkbox .gfield_checkbox > div input,
.ginput_container_radio .gfield_radio > div input {
	position: absolute;
	left: calc(var(--divider) / 2); top: 0;
}
.ginput_container_checkbox .gfield_checkbox > div input + label,
.ginput_container_radio .gfield_radio > div input + label {
	display:block;
	line-height: 20px;
	margin-bottom:0;
	padding-top: 0;
}

.ginput_container_consent {
	position: relative;
	padding-left: 1.875rem;
}
.ginput_container_consent input {
	position: absolute;
	left: 0; top: 0;
}
.ginput_container_consent label {
	display: inline;
	line-height: 20px;
	padding-top: 0;
	vertical-align: top;
}
.ginput_container_consent label + .gfield_required_asterisk {
	display: none;
}

.gsection {
	border-bottom: var(--stroke-width) solid var(--color-primary-400);
	margin: calc(var(--divider) / 2) calc(var(--divider) / 2) calc(var(--divider) * 1);
	padding-left: 0;
	padding-right: 0;
}
.gsection_title {
	font-size: var(--heading-h5);
	padding-bottom: 0.5em;
}

.spacer.gfield {
	margin-bottom: 0 !important;
}
.gf_clear {
	clear:both;
}
.gfield_visibility_hidden,
.gform_hidden {
	display: none !important;
}

/** Radio Buttons **/
.radio-buttons .ginput_container_radio {
	margin-top: 0;
}
.radio-buttons .ginput_container_radio .gfield_radio {
	margin: -1px;
}
.radio-buttons .ginput_container_radio .gfield_radio > div {
	margin: 0;
	padding: 1px;
}
.radio-buttons .ginput_container_radio .gfield_radio > div input {
	top: calc(var(--divider) / 2);
}
.radio-buttons .ginput_container_radio .gfield_radio > div input:checked {
	background-color: var(--color-white);
	border-color: var(--color-white);
}
.radio-buttons .ginput_container_radio .gfield_radio > div input + label {
	background-color: var(--color-grey-200);
	cursor: pointer;
	font-size: var(--base-font);
	height: 100%;
	padding: calc(var(--divider) / 2) calc(var(--divider) / 2) calc(var(--divider) / 2) calc((var(--divider) / 2) + 30px);
	transition: background-color 0.25s ease-out, color 0.25s ease-out;
}
.radio-buttons .ginput_container_radio .gfield_radio > div input + label:hover {
	color: var(--color-highlight-400);
}
.radio-buttons .ginput_container_radio .gfield_radio > div input:checked + label {
	background-color: var(--color-highlight-400);
	color: var(--color-white) !important;
}

/*
 * Form Footer 
 */
.gform_footer { 
	clear:both; 
	position:relative; 
	text-align:left; 
}

img.gform_ajax_spinner {
	height:32px; 
	margin-top: -16px;
	position:absolute;
	right:0;
	top:50%;
	width:32px;
	-webkit-animation: spin_animation 1.125s infinite linear;
    animation: spin_animation 1.125s infinite linear;
}

/*
 * Warnings 
 */
.gform_validation_errors,
.gfield_validation_message,
.gform_required_legend {
	display:none !important;
}
.gfield_contains_required.gfield_error input,
.gfield_contains_required.gfield_error textarea,
.gfield_contains_required.gfield_error select,
.gfield_contains_required.gfield_error .jcf-select .jcf-select-text { 
	border-color:red;
}
.gfield_contains_required.gfield_error legend,
.gfield_contains_required.gfield_error label {
	color:red !important;
}

/** Honeypot **/
.gform_validation_container {
	display: none !important;
}

/** Placeholders **/
::-webkit-input-placeholder {
	color:var(--color-primary-400);
}
:-moz-placeholder {
	color: var(--color-primary-400);
}
::-moz-placeholder {
	color: var(--color-primary-400);
}
:-ms-input-placeholder {
	color: var(--color-primary-400);
}

.background-black input,
.background-black textarea,
.background-black select,
.background-black input[type="checkbox"], 
.background-black input[type="radio"],
.background-black input:hover,
.background-black textarea:hover,
.background-black select:hover,
.background-black input[type="checkbox"]:hover, 
.background-black input[type="radio"]:hover,
.background-primary input,
.background-primary textarea,
.background-primary select,
.background-primary input[type="checkbox"], 
.background-primary input[type="radio"],
.background-primary input:hover,
.background-primary textarea:hover,
.background-primary select:hover,
.background-primary input[type="checkbox"]:hover, 
.background-primary input[type="radio"]:hover,
.background-secondary input,
.background-secondary textarea,
.background-secondary select,
.background-secondary input[type="checkbox"], 
.background-secondary input[type="radio"],
.background-secondary input:hover,
.background-secondary textarea:hover,
.background-secondary select:hover,
.background-secondary input[type="checkbox"]:hover, 
.background-secondary input[type="radio"]:hover,
.background-tertiary input,
.background-tertiary textarea,
.background-tertiary select,
.background-tertiary input[type="checkbox"], 
.background-tertiary input[type="radio"],
.background-tertiary input:hover,
.background-tertiary textarea:hover,
.background-tertiary select:hover,
.background-tertiary input[type="checkbox"]:hover, 
.background-tertiary input[type="radio"]:hover {
	border-color: var(--color-white);
	color: var(--color-white);
}
.background-highlight input:hover,
.background-highlight textarea:hover,
.background-highlight select:hover,
.background-highlight input[type="checkbox"]:hover, 
.background-highlight input[type="radio"]:hover {
	border-color: var(--color-primary-400);
}
.background-black input:focus,
.background-black textarea:focus,
.background-black select:focus{
	background-color:var(--color-white); 
	border-color:var(--color-white); 
	color:var(--color-black);
}
.background-primary input:focus,
.background-primary textarea:focus,
.background-primary select:focus{
	background-color:var(--color-white); 
	border-color:var(--color-white); 
	color:var(--color-primary-400);
}
.background-secondary input:focus,
.background-secondary textarea:focus,
.background-secondary select:focus{
	background-color:var(--color-white); 
	border-color:var(--color-white); 
	color:var(--color-secondary-400);
}
.background-tertiary input:focus,
.background-tertiary textarea:focus,
.background-tertiary select:focus{
	background-color:var(--color-white); 
	border-color:var(--color-white); 
	color:var(--color-tertiary-400);
}
.background-highlight input:focus,
.background-highlight textarea:focus,
.background-highlight select:focus{
	background-color:var(--color-primary-400); 
	border-color:var(--color-primary-400); 
	color:var(--color-highlight-400);
}
.background-black input:checked,
.background-primary input:checked,
.background-secondary input:checked,
.background-tertiary input:checked { 
	background-color:var(--color-white); 
	border-color:var(--color-white);
}
.background-highlight input:checked { 
	background-color:var(--color-primary-400); 
	border-color:var(--color-primary-400);
}
.background-black button.gform_button {
	background-color: var(--color-white);
	color: var(--color-black);
}
.background-primary button.gform_button {
	color: var(--color-white);
}
.background-secondary button.gform_button {
	background-color: var(--color-white);
	color: var(--color-secondary-400);
}
.background-tertiary button.gform_button {
	background-color: var(--color-white);
	color: var(--color-tertiary-400);
}
.background-highlight button.gform_button {
	background-color: var(--color-primary-400);
	color: var(--color-highlight-400);
}
.background-black button.gform_button:hover,
.background-black button.gform_button:focus,
.background-primary button.gform_button:hover,
.background-primary button.gform_button:focus,
.background-secondary button.gform_button:hover,
.background-secondary button.gform_button:focus,
.background-tertiary button.gform_button:hover,
.background-tertiary button.gform_button:focus { 
    color: var(--color-white);
}
.background-highlight button.gform_button:hover,
.background-highlight button.gform_button:focus { 
	background-color: var(--color-highlight-600);
    color: var(--color-primary-400);
}
.background-black label,
.background-black legend,
.background-black input + label,
.background-black select + label,
.background-black .select-container + label,
.background-black button + label,
.background-black .gfield_description,
.background-primary label,
.background-primary legend,
.background-primary input + label,
.background-primary select + label,
.background-primary .select-container + label,
.background-primary button + label,
.background-primary .gfield_description,
.background-secondary label,
.background-secondary legend,
.background-secondary input + label,
.background-secondary select + label,
.background-secondary .select-container + label,
.background-secondary button + label,
.background-secondary .gfield_description,
.background-tertiary label,
.background-tertiary legend,
.background-tertiary input + label,
.background-tertiary select + label,
.background-tertiary .select-container + label,
.background-tertiary button + label,
.background-tertiary .gfield_description {
	color: var(--color-white);
}
.background-black .gsection,
.background-primary .gsection,
.background-secondary .gsection,
.background-tertiary .gsection {
	border-bottom-color: var(--color-white);
}
.background-black img.gform_ajax_spinner,
.background-primary img.gform_ajax_spinner,
.background-secondary img.gform_ajax_spinner,
.background-tertiary img.gform_ajax_spinner {
	content: url("../img/svg/gf-spinner-white.svg");
}
.background-black ::-webkit-input-placeholder,
.background-primary ::-webkit-input-placeholder,
.background-secondary ::-webkit-input-placeholder,
.background-tertiary ::-webkit-input-placeholder {
	color:var(--color-white);
}
.background-black :-moz-placeholder,
.background-primary :-moz-placeholder,
.background-secondary :-moz-placeholder,
.background-tertiary :-moz-placeholder {
	color: var(--color-white);
}
.background-black ::-moz-placeholder,
.background-primary ::-moz-placeholder,
.background-secondary ::-moz-placeholder,
.background-tertiary ::-moz-placeholder {
	color: var(--color-white);
}
.background-black :-ms-input-placeholder,
.background-primary :-ms-input-placeholder,
.background-secondary :-ms-input-placeholder,
.background-tertiary :-ms-input-placeholder {
	color: var(--color-white);
}

/* Small screens */
@media only screen { } /* Define mobile styles */

@media only screen and (max-width: 39.99em) {
	
	.popup {
		display: none;
	} 
	.popup--active {
		display: block;
	}
	
} /* max-width 640px, mobile-only styles, use when QAing mobile issues */

/* Medium screens - min-width 640px */
@media only screen and (min-width: 40em) {
	
	:root {
		/*--content-padding: 3.75rem;*/
		--outer-row: 0.9375rem;
		--divider: 1.875rem;
		
		--top-bar-height: 106px;
		
		--heading-h1: 3.750rem;
		--heading-h2: 3.125rem;
		--heading-h3: 2.500rem;
		--heading-h4: 2.000rem;
		--heading-h5: 1.500rem;
		--heading-h6: 1.250rem;
		--base-font: 18px;
	}
	
	.site-logo {
		height: 76px;
		width: 230px;
	}
	
	.menu-button::before {
		color: var(--color-primary-400);
		content: 'Menu';
		display: block;
		font-size: 1rem;
		position: absolute;
		top: 50%;
		right: calc(100% + (var(--divider) / 2));
		transform: translateY(-50%);
	}
	.page-template-home-page .menu-button::before,
	.page-template-internal-page .menu-button::before,
	.page-template-team-page .menu-button::before,
	.single-mv_service .menu-button::before,
	.top-bar--nav-open .menu-button::before,
	.top-bar--search-open .menu-button::before {
		color: var(--color-white);
	}
	
	/** Post Images **/
	.wp-caption.alignleft,
	p > img.alignleft {
		float: left;
		margin-right: var(--divider);
	}
	.wp-caption.alignright,
	p > img.alignright {
		float: right;
		margin-left: var(--divider);
	}
	
	/** 100% height helper class **/
	.medium-height_100 {
		height: 100%;
	}
	.medium-height_100--vh {
		height: 100vh;
	}
	.medium-height_100--vh-top-bar {
		height: calc(100vh - var(--top-bar-height));
	}
	.medium-height_100--min {
		height: auto;
		min-height: 100vh;
	}
	.grid-padding-y.medium-height_100 {
		height: calc(100% + var(--divider));
	}
	
	/** 2 column list **/
	.list-2-columns {
		column-count: 2;
	}
	.list-2-columns > li {
		display: inline-block;
		width: 100%;
	}
	
	/** Gravity Forms **/
	.gfield--width-quarter {
		width: 25%;
	}
	.gf_name_has_3 > span,
	.gfield--width-third,
	.ginput_complex .ginput_container_date {
		width:33.33%;
	}
	.gf_name_has_2 > span,
	.gf_name_has_4 > span,
	.gf_name_has_5 > span,
	.gfield--width-half,
	.ginput_complex .ginput_left,
	.ginput_complex .ginput_right,
	.ginput_container_checkbox .gfield_checkbox > div,
	.ginput_container_radio .gfield_radio > div { 
		width:50%;
	}
	.gf_name_has_5 > span:first-child,
	.ginput_complex .ginput_full,
	.ginput_complex :only-child {
		width: 100%;
	}
	.ginput_complex.has_city.has_state.has_zip:not(.has_country) > span:not(.ginput_full) {
		width:33.33%;
	}

} @media only screen and (min-width: 40em) and (max-width: 64em) { } /* min-width 641px and max-width 1024px, use when QAing tablet-only issues */

/* Large screens - min-width 1024px */
@media only screen and (min-width: 64em) {
	
	:root {
		/*--content-padding: 5rem;*/
		--outer-row: 1.875rem;
		
		--heading-h1: 4.375rem;
		--heading-h2: 3.750rem;
		--heading-h3: 2.500rem;
	}
	
	.banner-row__images,
	.banner-row__video {
		left: 50%;
	}
	
	.background-extend--left::after {
		right: 0;
	}
	.background-extend--right::after {
		left: 0;
	}
	
	.background-image--overlay::after {
		background-color: rgba(0,0,0,0.4);
	}
	
	.large-set-size--banner {
		padding-top: 50%;
	}
	.large-set-size--landscape {
		padding-top: 66.66%;
	}
	.large-set-size--portrait {
		padding-top: 133.33%;
	}
	.large-set-size--portrait--short {
		padding-top: 122.5%;
	}
	.large-set-size--square {
		padding-top: 100%;
	}
	
	/** Extend Foundation **/
	.pull-left-1 {
		margin-left: -8.33333%;
	}
	.pull-left-2 {
		margin-left: -16.66667%;
	}
	.pull-left-3 {
		margin-left: -25%;
	}
	.pull-left-4 {
		margin-left: -33.33333%;
	}
	.pull-right-1 {
		margin-right: -8.33333%;
	}
	.pull-right-2 {
		margin-right: -16.66667%;
	}
	.pull-right-3 {
		margin-right: -25%;
	}
	.pull-right-4 {
		margin-right: -33.33333%;
	}
	
	/** 100% height helper class **/
	.large-height_100 {
		height: 100%;
	}
	.large-height_100--vh {
		height: 100vh;
	}
	.large-height_100--vh-top-bar {
		height: calc(100vh - var(--top-bar-height));
	}
	.large-height_100--min {
		height: auto;
		min-height: 100vh;
	}
	.grid-padding-y.large-height_100 {
		height: calc(100% + var(--divider));
	}

} @media only screen and (min-width: 64em) and (max-width: 85em) { } /* min-width 1025px and max-width 1360px, use when QAing large screen-only issues */

/* XLarge screens - min-width 1360px */
@media only screen and (min-width: 85em) {
	
	:root {
		
	}
	
	/** 100% height helper class **/
	.xlarge-height_100 {
		height: 100%;
	}
	.xlarge-height_100--vh {
		height: 100vh;
	}
	.xlarge-height_100--vh-top-bar {
		height: calc(100vh - var(--top-bar-height));
	}
	.xlarge-height_100--min {
		height: auto;
		min-height: 100vh;
	}
	.grid-padding-y.xlarge-height_100 {
		height: calc(100% + var(--divider));
	}
	
} @media only screen and (min-width: 85em) and (max-width: 97.500em) { } /* min-width 1361px and max-width 1560px, use when QAing xlarge screen-only issues */

/* XXLarge screens - min-width 1560px */
@media screen and (min-width: 97.500em) {
	
	/** 100% height helper class **/
	.xxlarge-height_100 {
		height: 100%;
	}
	.xxlarge-height_100--vh {
		height: 100vh;
	}
	.xxlarge-height_100--vh-top-bar {
		height: calc(100vh - var(--top-bar-height));
	}
	.xxlarge-height_100--min {
		height: auto;
		min-height: 100vh;
	}
	.grid-padding-y.xxlarge-height_100 {
		height: calc(100% + var(--divider));
	}
	
} @media only screen and (min-width: 97.500em) and (max-width: 112.500em) { } /* min-width 1561px and max-width 1800px, use when QAing xlarge screen-only issues */

/* XXXLarge screens - min-width 1800px */
@media screen and (min-width: 112.500em) {
	
	/** 100% height helper class **/
	.xxxlarge-height_100 {
		height: 100%;
	}
	.xxxlarge-height_100--vh {
		height: 100vh;
	}
	.xxxlarge-height_100--vh-top-bar {
		height: calc(100vh - var(--top-bar-height));
	}
	.xxxlarge-height_100--min {
		height: auto;
		min-height: 100vh;
	}
	.grid-padding-y.xxxlarge-height_100 {
		height: calc(100% + var(--divider));
	}
	
}

/* IE 10 & 11 */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { 
	
	.outer-row {
		padding-left:1.875rem !important;
		padding-right:1.875rem !important;
	}
	.content-area {
		padding-bottom:5rem !important;
		padding-top:5rem !important;
	}
	.content-area--x2 {
		padding-bottom:10rem !important;
		padding-top:10rem !important;
	}
	.content-area--bottom-x0 { 
		padding-bottom:0 !important; 
	}
	.content-area--top-x0 { 
		padding-top:0 !important; 
	}
	.divider {
		padding-top:1.875rem !important;
	}
	
	h1, .h1 {
		font-size: 4.375rem !important;
	}
	h2, .h2 {
		font-size: 3.750rem !important;
	}
	h3, .h3 {
		font-size: 2.500rem !important;
	}
	h4, .h4 {
		font-size: 2.000rem !important;
	}
	h5, .h5 {
		font-size: 1.750rem !important;
	}
	h6, .h6 {
		font-size: 1.250rem !important;
	}
	
}


/* ==========================================================================
   Plugin Styles
   ========================================================================== */

/* FlexSlider Necessary Styles
*********************************/
.flexslider {
  margin: 0;
  padding: 0;
}
.flexslider .slides {
	list-style: none;
	margin: 0;
	padding: 0;
}
.flexslider .slides > li {
  display: none;
  -webkit-backface-visibility: hidden;
}
.flexslider .slides:after {
  content: "\0020";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
html[xmlns] .flexslider .slides {
  display: block;
}
* html .flexslider .slides {
  height: 1%;
}
.no-js .flexslider .slides > li:first-child {
  display: block;
}

/*!--------------------------------------------------------------------
STYLES "Outdated Browser"
Version:    1.1.0 - 2014
author:     Burocratik
website:    http://www.burocratik.com
* @preserve
-----------------------------------------------------------------------*/
#outdated{
    display: none; position: fixed; top: 0; left: 0; width: 100%; height: 170px;
    text-align: center; text-transform: uppercase; z-index:1500;
    background-color: #f25648; color: #ffffff;
}
* html #outdated{position: absolute;}
#outdated h6{font-size: 25px; line-height: 25px; margin: 30px 0 10px;}
#outdated p{font-size: 12px; line-height: 12px; margin: 0;}
#outdated #btnUpdateBrowser{
    display: block; position: relative; padding: 10px 20px; margin: 30px auto 0; width: 230px; /*need for IE*/
    color: #ffffff; text-decoration: none; border: 2px solid #ffffff; cursor: pointer;
}
#outdated #btnUpdateBrowser:hover{color: #f25648; background-color:#ffffff;}
#outdated .last{position: absolute; top: 10px; right: 25px; width: 20px; height: 20px;}
#outdated #btnCloseUpdateBrowser{ border-bottom:none;
    display: block; position: relative; width: 100%; height: 100%;
    text-decoration: none; color: #ffffff; font-size: 36px; line-height: 36px;
}

/** select plugin **/
.jcf-select {
    display: block;
    vertical-align: top;
    background: transparent;
    margin: 0;
    position: relative;
    text-align: left;
}
.jcf-select select {
    z-index: 1;
    left: 0;
    top: 0;
}
.jcf-select .jcf-select-text {
    background-color: transparent;
    border: var(--stroke-width) solid var(--color-primary-400);
    border-radius: 0;
    color: var(--color-primary-400);
    cursor: pointer;
    display: block;
    font-size: 1em;
    font-weight: 400;
    margin: 0;
	min-height: calc(3em + (var(--stroke-width) * 3));
    padding: calc(1em - var(--stroke-width)) calc(3em - var(--stroke-width)) calc(1em - var(--stroke-width)) calc(1em - var(--stroke-width));
    outline: none;
    text-shadow: none;
    width: 100%;
    transition: color 0.25s ease-out, background-color 0.25s ease-out, border-color 0.25s ease-out;
    -webkit-appearance: none;
	white-space: nowrap;
}
.jcf-select .jcf-select-text > span {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
}
.jcf-select:hover .jcf-select-text {
	border-color: var(--color-highlight-400);
}
.jcf-drop-active .jcf-select-text {
	background-color: var(--color-highlight-400);
	border-color: var(--color-highlight-400);
	color: var(--color-white) !important;
}
.jcf-select .jcf-select-opener {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: var(--divider);
    transition: all 0.25s ease-out;
}
.jcf-drop-active.jcf-select .jcf-select-opener {
	color: var(--color-white);
    transform: rotateX(180deg);
}
.jcf-select .jcf-select-opener::before {
    content: '\f078';
    display: block;
    font-size: 1em;
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    line-height: 1;
    pointer-events: none;
    position: absolute;
    top: 50%;
    right: 1em;
    -webkit-transition: all 0.25s ease-out;
    -o-transition: all 0.25s ease-out;
    transition: all 0.25s ease-out;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.background-primary .jcf-select .jcf-select-text,
.background-black .jcf-select .jcf-select-text,
.background-secondary .jcf-select .jcf-select-text,
.background-tertiary .jcf-select .jcf-select-text {
    border-color: transparent;
    color: var(--color-white);
}
.background-primary .jcf-select:hover .jcf-select-text,
.background-black .jcf-select:hover .jcf-select-text,
.background-secondary .jcf-select:hover .jcf-select-text,
.background-tertiary .jcf-select:hover .jcf-select-text {
	border-color: var(--color-white);
}
.background-highlight .jcf-select:hover .jcf-select-text {
	border-color: var(--color-primary-400);
}
.background-primary .jcf-drop-active .jcf-select-text {
	background-color: var(--color-white);
	border-color: var(--color-white);
	color: var(--color-primary-400) !important;
}
.background-black .jcf-drop-active .jcf-select-text{
	background-color: var(--color-white);
	border-color: var(--color-white);
	color: var(--color-black) !important;
}
.background-secondary .jcf-drop-active .jcf-select-text {
	background-color: var(--color-white);
	border-color: var(--color-white);
	color: var(--color-secondary-400) !important;
}
.background-tertiary .jcf-drop-active .jcf-select-text {
	background-color: var(--color-white);
	border-color: var(--color-white);
	color: var(--color-primary-400) !important;
}
.background-highlight .jcf-drop-active .jcf-select-text {
	background-color: var(--color-primary-400);
	border-color: var(--color-primary-400);
	color: var(--color-highlight-400) !important;
}
.background-primary .jcf-select .jcf-select-opener::before,
.background-black .jcf-select .jcf-select-opener::before,
.background-secondary .jcf-select .jcf-select-opener::before,
.background-tertiary .jcf-select .jcf-select-opener::before {
    color: var(--color-white);
}
.background-highlight .jcf-select .jcf-select-opener::before {
    color: var(--color-primary-400);
}
.background-primary .jcf-drop-active.jcf-select .jcf-select-opener,
.background-primary .jcf-drop-active.jcf-select .jcf-select-opener::before {
	color: var(--color-primary-400);
}
.background-black .jcf-drop-active.jcf-select .jcf-select-opener,
.background-black .jcf-drop-active.jcf-select .jcf-select-opener::before {
	color: var(--color-black);
}
.background-secondary .jcf-drop-active.jcf-select .jcf-select-opener,
.background-secondary .jcf-drop-active.jcf-select .jcf-select-opener::before {
	color: var(--color-secondary-400);
}
.background-tertiary .jcf-drop-active.jcf-select .jcf-select-opener,
.background-tertiary .jcf-drop-active.jcf-select .jcf-select-opener::before {
	color: var(--color-tertiary-400);
}
.background-highlight .jcf-drop-active.jcf-select .jcf-select-opener,
.background-highlight .jcf-drop-active.jcf-select .jcf-select-opener::before {
	color: var(--color-highlight-400);
}

body > .jcf-select-drop {
    position: absolute;
    margin: 0;
    z-index: 9999;
}
body > .jcf-select-drop.jcf-drop-flipped {
    margin: 1px 0 0;
}
.jcf-select .jcf-select-drop {
    position: absolute;
    margin-top: 0px;
    z-index: 9999;
    top: 100%;
    left: 0;
    right: 0;
}
.jcf-select .jcf-drop-flipped {
    bottom: 100%;
    top: auto;
}
.jcf-select-drop .jcf-select-drop-content {
    border: var(--stroke-width) solid var(--color-highlight-400);
    border-radius: 0;
    overflow: hidden;
}
.background-primary .jcf-select-drop .jcf-select-drop-content,
.background-black .jcf-select-drop .jcf-select-drop-content,
.background-secondary .jcf-select-drop .jcf-select-drop-content,
.background-tertiary .jcf-select-drop .jcf-select-drop-content {
	border-color: var(--color-white);
}
.background-highlight .jcf-select-drop .jcf-select-drop-content {
	border-color: var(--color-primary-400);
}

/* select options styles */
.jcf-list {
    display: inline-block;
    vertical-align: top;
    position: relative;
    background: #fff;
    width: 100%;
}
.jcf-list .jcf-list-content {
    vertical-align: top;
    display: inline-block;
    overflow: auto;
    width: 100%;
}
.jcf-list ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.jcf-list ul li {
    overflow: hidden;
    display: block;
	padding-left: 0 !important;
}
.jcf-list ul li::before {
	display: none !important;
}
.jcf-list .jcf-overflow {
    overflow: auto;
}
.jcf-list .jcf-option {
    color: var(--color-primary-400);
    font-size: 1em;
    line-height: 1;
    margin: 0;
    padding: 1em calc(1em - var(--stroke-width));
    text-align: left;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    display: block;
    height: 1%;
}
.background-black .jcf-list .jcf-option {
    color: var(--color-black);
}
.background-secondary .jcf-list .jcf-option {
    color: var(--color-secondary-400);
}
.background-tertiary .jcf-list .jcf-option {
    color: var(--color-tertiary-400);
}

.jcf-list .jcf-disabled {
    background: #fff !important;
    color: #aaa !important;
}
.jcf-select-drop .jcf-hover, .jcf-list-box .jcf-selected {
    background-color: #eee;
}
.jcf-list .jcf-optgroup-caption {
    white-space: nowrap;
    font-weight: bold;
    display: block;
    padding: 5px 9px;
    cursor: default;
    color: #000;
}
.jcf-list .jcf-optgroup .jcf-option {
    padding-left: 30px;
}

/** Fancybox **/
.fancybox-active {
    height: auto;
}

.fancybox-is-hidden {
    left: -9999px;
    margin: 0;
    position: absolute !important;
    top: -9999px;
    visibility: hidden;
}

.fancybox-container {
    -webkit-backface-visibility: hidden;
    height: 100%;
    left: 0;
    outline: none;
    position: fixed;
    -webkit-tap-highlight-color: transparent;
    top: 0;
    touch-action: manipulation;
    transform: translateZ(0);
    width: 100%;
    z-index: 99992;
}

.fancybox-container * {
    box-sizing: border-box;
}

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.fancybox-outer {
    -webkit-overflow-scrolling: touch;
    overflow-y: auto;
}

.fancybox-bg {
    background: rgb(30, 30, 30);
    opacity: 0;
    transition-duration: inherit;
    transition-property: opacity;
    transition-timing-function: cubic-bezier(.47, 0, .74, .71);
}

.fancybox-is-open .fancybox-bg {
    opacity: .9;
    transition-timing-function: cubic-bezier(.22, .61, .36, 1);
}

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption,
.fancybox-navigation .fancybox-button {
    direction: ltr;
    opacity: 0;
    position: absolute;
    transition: opacity .25s ease, visibility 0s ease .25s;
    visibility: hidden;
    z-index: 99997;
}

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption,
.fancybox-show-nav .fancybox-navigation .fancybox-button {
    opacity: 1;
    transition: opacity .25s ease 0s, visibility 0s ease 0s;
    visibility: visible;
}

.fancybox-infobar {
    color: #ccc;
    font-size: 13px;
    -webkit-font-smoothing: subpixel-antialiased;
    height: 44px;
    left: 0;
    line-height: 44px;
    min-width: 44px;
    mix-blend-mode: difference;
    padding: 0 10px;
    pointer-events: none;
    top: 0;
    -webkit-touch-callout: none;
    user-select: none;
}

.fancybox-toolbar {
    right: 0;
    top: 0;
}

.fancybox-stage {
    direction: ltr;
    overflow: visible;
    transform: translateZ(0);
    z-index: 99994;
}

.fancybox-is-open .fancybox-stage {
    overflow: hidden;
}

.fancybox-slide {
    -webkit-backface-visibility: hidden; /* Using without prefix would break IE11 */
    display: none;
    height: 100%;
    left: 0;
    outline: none;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: 44px;
    position: absolute;
    text-align: center;
    top: 0;
    transition-property: transform, opacity;
    white-space: normal;
    width: 100%;
    z-index: 99994;
}

.fancybox-slide::before {
    content: '';
    display: inline-block;
    font-size: 0;
    height: 100%;
    vertical-align: middle;
    width: 0;
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next {
    display: block;
}

.fancybox-slide--image {
    overflow: hidden;
    padding: 0.9375rem;
}

.fancybox-slide--image::before {
    display: none;
}

.fancybox-slide--html {
    padding: 6px;
}

.fancybox-content {
    background: #fff;
    display: inline-block;
    margin: 0;
    max-width: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding: 44px;
    position: relative;
    text-align: left;
    vertical-align: middle;
}

.fancybox-slide--image .fancybox-content {
    animation-timing-function: cubic-bezier(.5, 0, .14, 1);
    -webkit-backface-visibility: hidden;
    background: transparent;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    left: 0;
    max-width: none;
    overflow: visible;
    padding: 0;
    position: absolute;
    top: 0;
    transform-origin: top left;
    transition-property: transform, opacity;
    user-select: none;
    z-index: 99995;
}

.fancybox-can-zoomOut .fancybox-content {
    cursor: zoom-out;
}

.fancybox-can-zoomIn .fancybox-content {
    cursor: zoom-in;
}

.fancybox-can-swipe .fancybox-content,
.fancybox-can-pan .fancybox-content {
    cursor: grab;
}

.fancybox-is-grabbing .fancybox-content {
    cursor: grabbing;
}

.fancybox-container [data-selectable='true'] {
    cursor: text;
}

.fancybox-image,
.fancybox-spaceball {
    background: transparent;
    border: 0;
    height: 100%;
    left: 0;
    margin: 0;
    max-height: none;
    max-width: none;
    padding: 0;
    position: absolute;
    top: 0;
    user-select: none;
    width: 100%;
}

.fancybox-spaceball {
    z-index: 1;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--pdf .fancybox-content,
.fancybox-slide--iframe .fancybox-content {
    height: 100%;
    overflow: visible;
    padding: 0;
    width: 100%;
}

.fancybox-slide--video .fancybox-content {
    background: #222;
}

.fancybox-slide--map .fancybox-content {
    background: #e5e3df;
}

.fancybox-slide--iframe .fancybox-content {
    background: #fff;
}

.fancybox-video,
.fancybox-iframe {
    background: transparent;
    border: 0;
    display: block;
    height: 100%;
    margin: 0;
    overflow: hidden;
    padding: 0;
    width: 100%;
}

/* Fix iOS */
.fancybox-iframe {
    left: 0;
    position: absolute;
    top: 0;
}

.fancybox-error {
    background: #fff;
    cursor: default;
    max-width: 400px;
    padding: 40px;
    width: 100%;
}

.fancybox-error p {
    color: #444;
    font-size: 16px;
    line-height: 20px;
    margin: 0;
    padding: 0;
}

/* Buttons */

.fancybox-button {
    background: rgba(30, 30, 30, .6);
    border: 0;
    border-radius: 0;
    box-shadow: none;
    cursor: pointer;
    display: inline-block;
    height: 44px;
    margin: 0;
    padding: 10px;
    position: relative;
    transition: color .2s;
    vertical-align: top;
    visibility: inherit;
    width: 44px;
}

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
    color: #fff;
}

.fancybox-button:hover {
    color: #fff;
}

.fancybox-button:focus {
    outline: none;
}

.fancybox-button.fancybox-focus {
    outline: 1px dotted;
}

.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
    color: #888;
    cursor: default;
    outline: none;
}

/* Fix IE11 */
.fancybox-button div {
    height: 100%;
}

.fancybox-button svg {
    display: block;
    height: 100%;
    overflow: visible;
    position: relative;
    width: 100%;
}

.fancybox-button svg path {
    fill: currentColor;
    stroke-width: 0;
}

.fancybox-button--play svg:nth-child(2),
.fancybox-button--fsenter svg:nth-child(2) {
    display: none;
}

.fancybox-button--pause svg:nth-child(1),
.fancybox-button--fsexit svg:nth-child(1) {
    display: none;
}

.fancybox-progress {
    background: #ff5268;
    height: 2px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: scaleX(0);
    transform-origin: 0;
    transition-property: transform;
    transition-timing-function: linear;
    z-index: 99998;
}
/* Close button on the top right corner of html content */

.fancybox-close-small {
    background: transparent;
    border: 0;
    border-radius: 0;
    color: #ccc;
    cursor: pointer;
    opacity: .8;
    padding: 8px;
    position: absolute;
    right: -12px;
    top: -44px;
    z-index: 401;
}

.fancybox-close-small:hover {
    color: #ed1b2c;
    opacity: 1;
}

.fancybox-slide--html .fancybox-close-small {
    color: currentColor;
    padding: 10px;
    right: 0;
    top: 0;
}

.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
    overflow: hidden;
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
    display: none;
}

/* Navigation arrows */

.fancybox-navigation .fancybox-button {
    background-clip: content-box;
    height: 100px;
    opacity: 0;
    position: absolute;
    top: calc(50% - 50px);
    width: 70px;
}

.fancybox-navigation .fancybox-button div {
    padding: 7px;
}

.fancybox-navigation .fancybox-button--arrow_left {
    left: 0;
    padding: 31px 26px 31px 6px;
}

.fancybox-navigation .fancybox-button--arrow_right {
    padding: 31px 6px 31px 26px;
    right: 0;
}

/* Caption */

.fancybox-caption {
    bottom: 0;
    color: #eee;
    font-size: 14px;
    font-weight: 400;
    left: 0;
    line-height: 1.5;
    padding: 25px 44px 25px 44px;
    right: 0;
    text-align: center;
    z-index: 99996;
}

.fancybox-caption::before {
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAD6CAQAAADKSeXYAAAAYklEQVQoz42RwQ3AMAgDjfcfup8WoRykfBAK5mQHKSz5rbXJPis1hjiV3CIqgG0hLZPkVkA4p4x5oR1bVeDrdCLrW2Q0D5bcwY3TGMHbdw3mPRuOtaspYP1w//G1OIcW148H0DMCqI/3mMMAAAAASUVORK5CYII=);
    background-repeat: repeat-x;
    background-size: contain;
    bottom: 0;
    content: '';
    display: block;
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: -44px;
    z-index: -1;
}

.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited {
    color: #ccc;
    text-decoration: none;
}

.fancybox-caption a:hover {
    color: #fff;
    text-decoration: underline;
}

/* Loading indicator */

.fancybox-loading {
    animation: fancybox-rotate 1s linear infinite;
    background: transparent;
    border: 4px solid #888;
    border-bottom-color: #fff;
    border-radius: 50%;
    height: 50px;
    left: 50%;
    margin: -25px 0 0 -25px;
    opacity: .7;
    padding: 0;
    position: absolute;
    top: 50%;
    width: 50px;
    z-index: 99999;
}

@keyframes fancybox-rotate {
    100% {
        transform: rotate(360deg);
    }
}

/* Transition effects */

.fancybox-animated {
    transition-timing-function: cubic-bezier(0, 0, .25, 1);
}

/* transitionEffect: slide */

.fancybox-fx-slide.fancybox-slide--previous {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--next {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--current {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

/* transitionEffect: fade */

.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next {
    opacity: 0;
    transition-timing-function: cubic-bezier(.19, 1, .22, 1);
}

.fancybox-fx-fade.fancybox-slide--current {
    opacity: 1;
}

/* transitionEffect: zoom-in-out */

.fancybox-fx-zoom-in-out.fancybox-slide--previous {
    opacity: 0;
    transform: scale3d(1.5, 1.5, 1.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
    opacity: 0;
    transform: scale3d(.5, .5, .5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
    opacity: 1;
    transform: scale3d(1, 1, 1);
}

/* transitionEffect: rotate */

.fancybox-fx-rotate.fancybox-slide--previous {
    opacity: 0;
    transform: rotate(-360deg);
}

.fancybox-fx-rotate.fancybox-slide--next {
    opacity: 0;
    transform: rotate(360deg);
}

.fancybox-fx-rotate.fancybox-slide--current {
    opacity: 1;
    transform: rotate(0deg);
}

/* transitionEffect: circular */

.fancybox-fx-circular.fancybox-slide--previous {
    opacity: 0;
    transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--next {
    opacity: 0;
    transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--current {
    opacity: 1;
    transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
}

/* transitionEffect: tube */

.fancybox-fx-tube.fancybox-slide--previous {
    transform: translate3d(-100%, 0, 0) scale(.1) skew(-10deg);
}

.fancybox-fx-tube.fancybox-slide--next {
    transform: translate3d(100%, 0, 0) scale(.1) skew(10deg);
}

.fancybox-fx-tube.fancybox-slide--current {
    transform: translate3d(0, 0, 0) scale(1);
}

/* Styling for Small-Screen Devices */
@media all and (max-height: 576px) {
    .fancybox-caption {
        padding: 12px;
    }

    .fancybox-slide {
        padding-left: 6px;
        padding-right: 6px;
    }

    .fancybox-slide--image {
        padding: 6px 0;
    }

    .fancybox-close-small {
        right: -6px;
    }

    .fancybox-slide--image .fancybox-close-small {
        background: #4e4e4e;
        color: #f2f4f6;
        height: 36px;
        opacity: 1;
        padding: 6px;
        right: 0;
        top: 0;
        width: 36px;
    }
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}