/*
 * 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: #eee;
    --color-cream: #F4F2E8;
	
	--color-primary: #776D69;
	--color-secondary: #39393B;
	--color-highlight: #5E383B;
    --color-highlight-alt: #45292c;
	
	--font-primary: sofia-pro, sans-serif;
	--font-secondary: clarendon-urw, serif;
	--font-tertiary: zooja-pro, sans-serif;
	
	/*--content-padding: 2.5rem;*/
	--content-padding: 5vh;
	--outer-row: 0.625rem;
	--divider: 1.25rem;
	
	--top-bar-height: 92px;
	
	--heading-h1: 2.500em;
	--heading-h2: 2em;
	--heading-h3: 1.5em;
	--heading-h4: 1.25em;
	--heading-h5: 1.125em;
	--heading-h6: 1.125em;
	--base-font: 16px;
}

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

body {
    background-color: var(--color-highlight);
	color: var(--color-primary);
	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;
}
.side-bar {
	border-bottom: 2px solid var(--color-grey);
	padding-left: calc(var(--divider) / 2);
	padding-right: calc(var(--divider) / 2);
	position: relative;
	z-index: 100;
}
main {
    background-color: var(--color-white);
	overflow: hidden;
}

/*
 * Top Bar
 */
.top-bar {
	background-color: var(--color-white);
    padding-bottom: var(--divider);
    padding-top: var(--divider);
	z-index: 99;
}

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

/** Site Logo **/
.site-logo {
	height: 50px;
	float: left;
	margin: 0;
	width: 170px;
}
.site-logo__link {
	background: url("../img/svg/logo-ginninderry.svg") no-repeat 0 0;
	background-size: contain;
	display: block;
	height: 100%;
	width: 100%;
}

/** Top Bar - Navigation **/
.top-bar__navigation { 
}
.top-bar__navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.top-bar__navigation ul li {
	display: flex;
    align-items: center;
	padding: 0.625rem var(--outer-row);
	position: relative;
}
.top-bar__navigation ul li:first-child {
	padding-top: 0;
}
.top-bar__navigation ul li:last-child {
	padding-bottom: 0;
}
.top-bar__navigation ul li a {
	color: var(--color-secondary);
	display: inline-block;
	font-size: var(--heading-h6);
    font-weight: 600;
	line-height: 1;
	position: relative;
	text-decoration: none;
}
.top-bar__navigation--secondary ul li a {
	font-size: 1em;
}
.top-bar__navigation ul li a:hover,
.top-bar__navigation ul li.current-menu-item > a,
.top-bar__navigation ul li.current-page-ancestor > a {
	color: var(--color-highlight);
}
.top-bar__navigation ul li.current-menu-item > a,
.top-bar__navigation ul li.current-page-ancestor > a {
	color: var(--color-highlight);
	text-decoration: underline;
    text-decoration-color: var(--color-highlight);
    text-decoration-thickness: 15%;
    text-underline-offset: 5%;
}

/** Sub Menu **/
.top-bar__navigation > ul > .menu-item-has-children > a:first-child::before {
    content: '';
    display: block;
    margin-top: -0.325em;
}
.top-bar__navigation > ul > .menu-item-has-children > a:first-child::after {
    content: '';
    display: block;
    margin-bottom: -0.15em;
}

.subnav-trigger {
	background-color: transparent;
    border: 2px solid var(--color-highlight);
    border-radius: 50%;
    color: var(--color-highlight);
    display: block;
    height: 24px;
	margin-left: calc(var(--divider) / 2);
	opacity: 0;
	pointer-events: none;
    width: 24px;
	transition: opacity 0.25s ease-out, transform 0.25s ease-out;
}
li.sub-menu--active .subnav-trigger,
li:hover .subnav-trigger {
	opacity: 1;
	pointer-events: all;
}
.subnav-trigger::before {
    background-color: var(--color-highlight);
    border-radius: 0;
    content: '';
    display: block;
    height: 60%;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2px;
    transition: background-color 0.3s ease-out, opacity 0.3s ease-out, transform 0.3s ease-out;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.subnav-trigger::after {
    background-color: var(--color-highlight);
    border-radius: 0;
    content: '';
    display: block;
    height: 2px;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 60%;
    -webkit-transition: background-color 0.3s ease-out;
    -o-transition: background-color 0.3s ease-out;
    transition: background-color 0.3s ease-out;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.subnav-trigger--open {
    transform: rotateZ(-180deg);
}
.subnav-trigger:hover,
.subnav-trigger--open {
	background-color: var(--color-highlight);
}
.subnav-trigger:hover::before,
.subnav-trigger--open::before,
.subnav-trigger:hover::after,
.subnav-trigger--open::after {
	background-color: var(--color-white);
}
.subnav-trigger--open::before {
    opacity: 0;
}

.top-bar__navigation .sub-menu {
	background-color: var(--color-white);
	border-right: 2px solid var(--color-grey);
	height: 100%;
	opacity: 0;
	padding-top: 152px;
	pointer-events: none;
	position: fixed;
	top: 0; left: 380px;
	width: 380px;
	transform: rotateY(90deg);
    transform-origin: left;
	transition: opacity 0.25s ease-out, transform 0.25s ease-out;
}
.top-bar__navigation .sub-menu.sub-menu--active {
	opacity: 1;
	pointer-events: all;
	transform: rotateY(0deg);
	transition: opacity 0.25s ease-out, transform 0.25s ease-out;
}
.sub-menu__title {
	padding-bottom: 1.875rem !important;
}
.sub-menu__search .search-form {
	width: 100%;
}
.top-bar__navigation .sub-menu .sub-menu {
	background-color: transparent;
	border-right: none;
	height: auto;
	opacity: 1;
	padding-top: 0.625rem;
	pointer-events: all;
	position: static;
	top: auto; left: auto;
	width: auto;
}
.top-bar__navigation .sub-menu .sub-menu li {
	padding-left: calc(var(--outer-row) / 2);
	padding-bottom: 0.3125rem;
	padding-top: 0.3125rem;
}
.top-bar__navigation .sub-menu li.menu-item-has-children {
	display: list-item;
}
.top-bar__navigation .sub-menu .sub-menu li a {
	font-size: var(--base-font);
}

/** Top Bar - Button Navigation **/
.top-bar__button-navigation { 
}
.top-bar__button-navigation ul {
    display: flex;
    flex-wrap: wrap;
	list-style: none;
	margin: -0.3125rem;
	padding: 0;
}
.top-bar__button-navigation ul li {
	padding: 0.3125rem;
	position: relative;
}
.top-bar__button-navigation ul li a {
    background-color: var(--color-highlight);
	color: var(--color-white);
	border-radius: 5em;
	display: inline-block;
	font-weight: 500;
	line-height: 1;
	padding: 1em 1.5em 1.1em;
	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;
}
.top-bar__button-navigation ul li a:hover {
	background-color: var(--color-highlight-alt);
	color: var(--color-white);
}

/** Menu Button **/
.menu-button { 
	background-color:transparent;
	border:none;
	display:block;
	float:right;
	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-highlight);
	display:block;
	margin-top:-1px;
	position:absolute;
	left:50%;
	margin-left:-15px;
	height:2px;
	width:30px;
	-webkit-transform-origin:center;
	    -ms-transform-origin:center;
	        transform-origin:center;
}
.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:-1px;
	-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:-1px;
	-webkit-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	        transform: rotate(-45deg); 
}

/** Site Navigation **/
.site-navigation {
	background-color:var(--color-white);
	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:2px solid var(--color-grey);
	padding-bottom:1.25rem;
	padding-top:1.25rem;
	position:relative;
}
.site-navigation__navigation ul li:first-child {
	border-top:none;
	padding-top: 0;
}
.site-navigation__navigation ul li:last-child {
	padding-bottom: 0;
}

.site-navigation__navigation ul li a {
	display:block;
	color:var(--color-secondary);
	font-size: var(--heading-h4);
	font-weight: 600;
	line-height:1;
	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);
}
.site-navigation__navigation ul li .menu-arrow {
	background: url("../img/blank.gif");
	color:var(--color-secondary);
	display: block;
	height: 40px;
	line-height:40px;
	padding-left:0;
	position:absolute;
	top:10px; right:0;
	text-align: right;
	width: 40px;
}
.site-navigation__navigation ul li:first-child .menu-arrow {
	top: -9px;
}
.site-navigation__navigation ul li .menu-arrow .menu-arrow__icon {
	background-color: transparent;
    border: 2px solid var(--color-secondary);
    border-radius: 50%;
    color: var(--color-secondary);
    display: block;
    height: 24px;
	margin-top: -12px;
	position:absolute;
	top:50%; right:0;
	text-align: center;
    width: 24px;
}
.site-navigation__navigation ul li .menu-arrow .menu-arrow__icon::before {
    content: '\f107';
    display: block;
    font-size: 0.75em;
    font-family: "Font Awesome 5 Pro";
    font-weight: 600;
    line-height: 0;
    position: absolute;
    top: 60%;
	width: 100%;
    -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%);
}
.site-navigation__navigation ul li .menu-arrow--open .menu-arrow__icon::before {
	-webkit-transform:scaleY(-1);
	    -ms-transform:scaleY(-1);
	        transform:scaleY(-1);
	top: 40%;
}

.site-navigation__navigation ul li ul li a {
	color:var(--color-secondary);
	font-size:1rem;
	line-height:1;
	padding-top:0;
}
.site-navigation__navigation ul li ul.sub-menu {
	padding-left: 0.625rem;
	padding-top:1.25rem;
}
.site-navigation__navigation ul li ul.sub-menu li {
	border-top:none;
	padding-bottom:0.625rem;
	padding-top:0.625rem;
	padding-right:0;
	width:100%;
}
.site-navigation__navigation ul li ul.sub-menu li ul {
	padding-left: 0.625rem;
	padding-top:0.3125rem;
}
.site-navigation__navigation ul li ul.sub-menu li ul li {
	padding-bottom: 0.3125rem;
	padding-top:0.3125rem;
}

.site-navigation__navigation ul li.current-menu-item > a,
.site-navigation__navigation ul li.current-page-ancestor > a {
	color: var(--color-highlight);
	text-decoration: underline;
    text-decoration-color: var(--color-highlight);
    text-decoration-thickness: 10%;
    text-underline-offset: 5%;
}
.site-navigation__navigation ul li.current-menu-item > .menu-arrow .menu-arrow__icon,
.site-navigation__navigation ul li.current-page-ancestor > .menu-arrow .menu-arrow__icon {
    border: 2px solid var(--color-highlight);
    color: var(--color-highlight);
}

.site-navigation__navigation--secondary ul li,
.site-navigation__navigation--tertiary ul li {
	border-top: none;
	padding-bottom: 0.625rem;
	padding-top: 0.625rem;
}
.site-navigation__navigation--secondary ul li:first-child,
.site-navigation__navigation--tertiary ul li:first-child {
	padding-top: 0;
}
.site-navigation__navigation--secondary ul li:last-child,
.site-navigation__navigation--tertiary ul li:last-child {
	padding-bottom: 0;
}
.site-navigation__navigation--secondary ul li a {
	font-size: var(--heading-h5);
}
.site-navigation__navigation--tertiary ul li a {
	font-size: 1em;
}

.site-navigation .search-form__input::before {
	content: '\f002';
    color: var(--color-secondary);
    display: block;
    font-size: 1em;
    font-family: "Font Awesome 5 Pro";
    font-weight: 600;
    line-height: 1;
    pointer-events: none;
    position: absolute;
    top: 0.35em;
    left: 0;
}
.site-navigation .search-form input {
	border-top: none;
	border-left: none;
	border-right: none;
	border-bottom-color: var(--color-secondary);
	color: var(--color-secondary);
	font-weight: 600;
	padding: 0 0 0.5em 1.75em;
}
.site-navigation .search-form input:hover,
.site-navigation .search-form input:focus {
	background-color: transparent;
}
.site-navigation .search-form ::-webkit-input-placeholder {
	color:var(--color-secondary);
}
.site-navigation .search-form :-moz-placeholder {
	color: var(--color-secondary);
}
.site-navigation .search-form ::-moz-placeholder {
	color: var(--color-secondary);
}
.site-navigation .search-form :-ms-input-placeholder {
	color: var(--color-secondary);
}

/*
 * Bottom Bar
 */
.bottom-bar {
	color: var(--color-white);
}
.bottom-bar a {
    color: var(--color-white);
	text-decoration: none;
	white-space: nowrap;
}
.bottom-bar a:hover {
	text-decoration: underline;
}

.bottom-bar__navigation > ul {
    list-style: none;
    padding-left: 0;
}
.bottom-bar__navigation > ul > li {
    padding-top: calc(var(--divider) / 2);
}
.bottom-bar__navigation > ul > li:first-child {
    padding-top: 0;
}
.bottom-bar__navigation > ul > li > a {
}

.bottom-bar__legality {
	font-size: 0.875rem;
	padding-bottom: var(--divider);
	padding-top: var(--divider);
}

.bottom-bar__logo {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	transition: opacity 0.25s ease-out;
}
.bottom-bar__logo:hover {
	opacity: 0.5;
}
.bottom-bar__logo--sla {
	background-image: url("../img/svg/logo-suburban-land-agency.svg");
	height: 45px;
	width: 230px;
}
.bottom-bar__logo--rd {
	background-image: url("../img/svg/logo-riverview-developments.svg");
	height: 54px;
	width: 180px;
}

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

/*
 * Breadcrumbs
 */
.breadcrumbs-container {
	border-bottom: 2px solid var(--color-grey);
	padding-bottom: var(--divider);
	padding-top: var(--divider);
}
.breadcrumbs-container p {
	font-size: 1rem;
}
.breadcrumbs-container a {
	text-decoration: none;
}
.breadcrumbs-container a:hover {
	text-decoration: underline;
}
.breadcrumb_divider {
	display: inline-block;
	padding-left: 0.3125rem;
	padding-right: 0.3125rem;
}
.breadcrumb_last {
	font-weight: 500;
}

/*
 * Banner Row
 */

/** Banner Video **/
.banner-row__video {
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
}
 
/*
 * Timeline Row
 */
section[id*="timeline"] .flexslider .slide-content {
	padding-left: calc(var(--divider) * 1.5);
	padding-bottom: var(--divider);
	position: relative;
}
section[id*="timeline"] .flexslider .slide-content::before,
section[id*="timeline"] .flexslider .slide-content::after {
	background-color: var(--color-primary);
	content: '';
	display: block;
	position: absolute;
}
section[id*="timeline"] .flexslider .slide-content::before {
	top: 0; bottom: 0; left: calc(var(--divider) / 2);
	width: 1px;
}
section[id*="timeline"] .flexslider .slide-content::after {
	height: 1px;
	right: 0; bottom: 0; left: 0;
}
section[id*="timeline"] .flexslider li:first-child .slide-content::after {
	left: calc(var(--divider) / 2);
}
section[id*="timeline"] .flexslider li:last-child .slide-content::after {
	right: calc(var(--divider) / 2);
}

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

/*
 * Explore Map
 */
#explore-map-container {
	height: 60vh;
}

.explore-map__legend {
	margin-top: var(--divider);
}

.explore-map__legend th,
.explore-map__legend td {
    border: none;
    line-height: 1;
    padding: 0.25em;
    text-align: left;
    vertical-align: middle;
}
.explore-map__legend tr:first-child th,
.explore-map__legend tr:first-child td {
	padding-top: 0;
}
.explore-map__legend tr:last-child th,
.explore-map__legend tr:last-child td {
	padding-bottom: 0;
}
.explore-map__legend th:first-child,
.explore-map__legend td:first-child {
	padding-left: 0;
}
.explore-map__legend th:last-child,
.explore-map__legend td:last-child {
	padding-right: 0;
}

.category-icon {
	display: inline-block;
	vertical-align: bottom;
}

/*
 * Insite Map
 */
#InSiteInteractive {
	margin-left: -15px;
	margin-right: -15px;
}
#InSiteInteractive .i-container {
	max-width: none;
}

/*
 * Project Timeline
 */
.timeline__block {
    padding-top: calc(var(--divider) + 0.125em);
    padding-left: calc(var(--heading-h4) * 2);
    position: relative;
}
.timeline__block:first-child {
    padding-top: 0.125em;
}
.timeline__block::before {
    background-color: var(--color-white);
    border: 2px solid var(--color-highlight);
    border-radius: 5rem;
    content: '';
    color: var(--color-highlight);
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    font-size: 1rem;
    height: var(--heading-h3);
    line-height: calc(var(--heading-h3) - 2px);
    position: absolute;
    top: calc(var(--divider) - 0.125rem); left: 0;
    text-align: center;
    width: var(--heading-h3);
    z-index: 5;
}
.background-cream .timeline__block::before {
    background-color: var(--color-cream);
}
.timeline__block:first-child::before {
    top: -0.125rem;
}
.timeline__block--complete::before {
    background-color: var(--color-highlight) !important;
    color: var(--color-white) !important;
    content: '\f00c';
}
.timeline__block::after {
    background-color: var(--color-highlight);
    content: '';
    font-size: 1rem;
    position: absolute;
    top: 0; bottom: 0; left: calc((var(--heading-h3) / 2) - 1px);
    width: 2px;
    z-index: 0;
}
.timeline__block:last-child::after {
    height: var(--divider);
    bottom: 0;
}
.timeline__block:only-child::after {
    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-left: calc(var(--divider) * 2);
	padding-right: calc(var(--divider) * 2);
}

.box-shadow {
	box-shadow: 0 5px 5px rgba(0,0,0,0.25);
}

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

.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);
}
.background-white + .background-white {
	padding-top: 0 !important;
}
.background-cream {
    background-color: var(--color-cream);
}
.background-cream + .background-cream {
	padding-top: 0 !important;
}
.background-highlight {
    background-color: var(--color-highlight);
	color: var(--color-white);
}
.background-highlight + .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.5);
    content: '';
    display: block;
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    z-index: 0;
}
.background-image--overlay--dark::after {
    background-color: rgba(0,0,0,0.6);
}
.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));
}

/*
 * Borders
 */
.border-bottom {
	border-bottom: 2px solid var(--color-primary);
}
.border-bottom--white {
	border-bottom-color: var(--color-white);
}
.border-bottom--grey {
	border-bottom-color: var(--color-grey);
}
.border-bottom--highlight {
	border-bottom-color: var(--color-highlight);
}

.border-top {
	border-top: 2px solid var(--color-primary);
}
.border-top--white {
	border-top-color: var(--color-white);
}
.border-top--grey {
	border-top-color: var(--color-grey);
}

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

/** 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--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);
	font-size: var(--heading-h6);
	text-decoration: none;
}
.pagination__numbers span.current {
	background-color: var(--color-highlight);
    border-radius: 50%;
	color: var(--color-white);
    display: block;
	font-weight: 600;
    height: calc(var(--base-font) * 2);
	line-height: calc((var(--base-font) * 2) - 4px);
    text-align: center;
    width: calc(var(--base-font) * 2);
}
.pagination__numbers a:hover {
	color: var(--color-highlight);
}

/*
 * Sliders
 */
.flexslider {
	position: relative;
	width: 100%;
}
.background-slider {
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	z-index: 0;
}

.slide-content {
	padding-left: calc(var(--divider) / 2);
	padding-right: calc(var(--divider) / 2);
}

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

.flexslider--overflow .flex-viewport {
    overflow: visible !important;
}
.flexslider--overflow .flex-viewport::before {
    content: "";
    display: block;
    position: absolute;
    top: -0.625rem;
    right: calc(100% - (var(--divider) / 2));
    bottom: -0.625rem;
    width: 100vw;
    z-index: 5;
}
.background-white .flexslider--overflow .flex-viewport::before {
    background-color: var(--color-white);
}
.background-cream .flexslider--overflow .flex-viewport::before {
    background-color: var(--color-cream);
}

/*
 * Controls
 */

/** Directional **/
.flex-direction-nav {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
}
.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 {
    display: block;
}
.flex-disabled {
	display: block;
    opacity: 0.25;
    pointer-events: none;
}

/** Paging **/
.flex-control-paging { 
	display: flex;
	justify-content: left;
	list-style:none; 
	margin:0; 
	padding:var(--divider); 
	position:absolute;
	right: 0; bottom: 0; left: 0;
	text-align: center;
	z-index: 10;
}
.flexslider--controls--centered .flex-control-paging { 
	justify-content: center;
}
.flexslider--controls--right .flex-control-paging { 
	justify-content: flex-end;
}
.flexslider--controls--side .flex-control-paging {
    flex-direction: column;
    justify-content: center;
    top: 0; right: 0; bottom: 0; left: auto;
}
.flexslider--controls--side .flex-control-paging li {
    margin: 0.3125rem 0;
}

.flexslider--controls--offset .flex-control-paging {
	padding-bottom: 0;
	padding-left: 0;
	padding-right: 0;
	position: relative;
}

.flex-control-paging:empty {
	display: none;
}
.flexslider--floating-nav .flex-control-paging {
	position: absolute;
	right: 0; bottom: var(--outer-row); 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:2px solid var(--color-white);
	background-color:transparent;
	cursor:pointer;
	display:block;
	height:14px;
	overflow:hidden;
	text-indent:999px;
	width:14px;
  -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:2px;
}

.flexslider--controls--offset .flex-control-paging li a {
	border:2px solid var(--color-highlight);
}
.flexslider--controls--offset .flex-control-paging li a:hover,
.flexslider--controls--offset .flex-control-paging li a.flex-active {
	background-color:var(--color-highlight);
}


/** Accordion **/
.panel__title {
    position: relative;
}
.panel__title:hover {
    z-index: 1;
}
.panel__title__link {
    border-top: 2px solid var(--color-highlight);
    color: var(--color-highlight);
    display: block;
    font-weight: 500;
    margin: 0 !important;
    padding: var(--divider) calc((var(--divider) * 2) + 40px) var(--divider) var(--divider);
    position: relative;
    text-decoration: none;
}
.accordion__panel:first-child .panel__title__link {
    border-top: none;
}
.accordion__panel .accordion__panel .panel__title__link {
	background-color: var(--color-grey);
    border-top: 2px solid var(--color-highlight);
}
.title__link__icon {
	margin-top: calc((var(--base-font) * 2.25) * -0.5);
    position: absolute;
    top: 50%;
    right: var(--divider);
}
.title__link__icon::before,
.title__link__icon::after {
    background-color: var(--color-highlight);
    border-radius: 0;
    content: '';
    display: block;
    height: 60%;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2px;
    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%);
}
.title__link__icon::after {
    height: 2px;
    width: 60%;
}

.accordion__panel--open > .panel__title > .panel__title__link {
	background-color: var(--color-highlight);
	color: var(--color-white);
}
.panel__title__link:hover > .title__link__icon,
.accordion__panel--open > .panel__title > .panel__title__link .title__link__icon {
	background-color: var(--color-highlight);
	border-color: var(--color-highlight);
}
.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;
}

/** 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__content {
	pointer-events: all;
	position:relative;
	z-index: 5;
}
.popup__content * {
	pointer-events: all;
}
.popup__close {
	pointer-events: all;
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	z-index: 0;
}

.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);
}
.close-btn::before,
.close-btn::after {
	background-color:var(--color-primary);
	content:'';
	display:block;
	height: 2px;
	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); 
}

/** Wordpress Video Shortcode **/
.wp-video {
    max-width: 100% !important;
    height: auto !important;
    width: 100% !important;
}
.mejs-container {
    width: 100% !important;
	min-width: none !important;
    height: auto !important;
}
.mejs-mediaelement {
	position: relative !important;
}
.wp-video-shortcode video, video.wp-video-shortcode {
    max-width: 100%;
    display: block !important;
    height: auto !important;
    width: 100% !important;
}
.mejs-controls .mejs-time-rail .mejs-time-current {
    background: var(--color-highlight) !important;
}

/** 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 **/
.video-embed {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.video-embed iframe,  
.video-embed object,  
.video-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));
}

/** Relative position helper class **/
.position_relative {
	display: block;
	position: relative;
	z-index: 5;
}

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

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 { 
    color: var(--color-highlight);
	font-weight: 500;
	line-height: 1.2;
	margin-bottom: 0.75em;
	margin-top: 0.75em;
}
h1,
.h1 {
	font-size: var(--heading-h1);
	margin-bottom: 1em;
	margin-top: 1em;
}
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);
}
h6,
.h6 {
	font-size: var(--heading-h6);
}

.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,
.background-highlight h1,
.background-highlight h2,
.background-highlight h3,
.background-highlight h4,
.background-highlight h5,
.background-highlight h6,
.background-highlight .h1,
.background-highlight .h2,
.background-highlight .h3,
.background-highlight .h4,
.background-highlight .h5,
.background-highlight .h6 { 
    color: var(--color-white);
}

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

/** Title Styles **/
.title-display {
    font-family: var(--font-secondary);
    font-weight: 400;
}
.title-brush {
    font-family: var(--font-tertiary);
    font-weight: 400;
}
span.title-brush {
	font-size: 1.35em;
    vertical-align: middle;
    line-height: 0;
}

.title-xlarge {
	font-size: calc(var(--heading-h1) * 2);
}

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

/** Text Styles **/
.text-white {
	color: var(--color-white);
}
.text-highlight {
	color: var(--color-highlight);
}

.text-large {
	font-size: var(--heading-h6);
}
.text-xlarge {
	font-size: var(--heading-h5);
}

.text-underline {
    text-decoration: underline;
    text-decoration-color: var(--color-highlight);
    text-decoration-thickness: 10%;
    text-underline-offset: 10%;
    white-space: nowrap;
}

.text-uppercase {
	text-transform: uppercase;
}

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

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: var(--divider);
	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-primary);
	content: '';
	display: block;
	height: 1px;
	position: absolute;
	top: 0.75em; left: 0;
	width: calc(var(--divider) / 2);
}
main .text-white ul:not([class]) li::before,
main .text-white ul.list-2-columns li::before {
	background-color: var(--color-white);
}

/** Date List **/
.list-dates {
	font-size: var(--heading-h6);
	list-style: none;
	padding-left: 0;
}
.list-dates li {
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding-left: 1.5em;
	position: relative;
}
.list-dates li:first-child {
	margin-top: 0;
}
.list-dates li:last-child {
	margin-bottom: 0;
}
.list-dates li::before {
	color: var(--color-highlight);
	content: '\f073';
	display: block;
	font-family: "Font Awesome 5 Pro";
  	font-weight: 300;
	position: absolute;
	top: 3px; left: 0;
}

/*
 * Tables
 */
table {
	border-collapse: collapse;
	width: 100%;
}
th,
td {
	border: 1px solid var(--color-primary);
	padding: 0.5em;
	text-align: left;
	vertical-align: top;
}
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: 2px solid var(--color-primary);
	padding: 1em 0.5em;
}
.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-left: 0;
	margin-right: 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);
	border-top: none;
	height: 1px;
	margin-bottom: 2em;
	margin-top: 2em;
}

abbr[title] {
	text-decoration: none;
}
dd {
	margin-left: 0;
}

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 { 
	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 { 
	margin-bottom:0 !important;
}

/* ==========================================================================
   Links
   ========================================================================== */
a { 
	color: var(--color-highlight);
	outline:none; 
	text-decoration:underline;
	
    transition: color 0.25s ease-out, background-color 0.25s ease-out, border-color 0.25s ease-out;
}
a:hover { 
	text-decoration:none;
}
a.text-white,
.text-white a,
.background-highlight a {
	color: var(--color-white);
}

/** Buttons **/
.btn {
	border-radius: 5em;
	display: inline-block;
	font-weight: 500;
	line-height: 1;
	min-width: 160px;
	padding: 1.1em 2.2em 1.25em;
	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--highlight {
	background-color: var(--color-highlight);
	color: var(--color-white);
}
a:hover .btn--highlight,
.btn--highlight:hover {
	background-color: var(--color-highlight-alt);
	color: var(--color-white);
}

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

.btn--hollow {
	background-color: transparent;
	border: 2px solid;
	padding: calc(1.1em - 2px) calc(2.2em - 2px) calc(1.25em - 2px);
}

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

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

p + .btn,
p .btn:only-child,
ul + .btn,
ol + .btn {
	margin-top: calc((var(--divider) * 2) - 1em);
}

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

.link-icon {
	background-color: transparent;
    border: 2px solid var(--color-highlight);
    border-radius: 50%;
	color: var(--color-highlight);
    display: block;
    font-size: var(--heading-h6);
    height: calc(var(--base-font) * 2.25);
	line-height: calc((var(--base-font) * 2.25) - 5px);
    text-align: center;
    width: calc(var(--base-font) * 2.25);
    transition: all 0.25s ease-out;
}
a:hover .link-icon {
	background-color: var(--color-highlight);
    border-color: var(--color-highlight);
    color: var(--color-white);
}
.link-icon--white {
    border-color: var(--color-white);
    color: var(--color-white);
}
a:hover .link-icon--white {
	background-color: var(--color-white);
    border-color: var(--color-white);
    color: var(--color-highlight);
}

/** Read More/Category Links **/
.read-more {
	color: var(--color-highlight);
	display: inline-block;
	font-weight: 500;
	position: relative;
	text-decoration: none !important;
}
.read-more:hover {
	color: var(--color-highlight);
}
.read-more--white:hover {
	color: var(--color-white);
}
.read-more::after {
	background-color:var(--color-highlight);
	content:'';
	display:block;
	height: clamp(2px, 0.125em, 15px);
    position: absolute;
    left: 0;
    right: 0;
    bottom: calc(clamp(2px, 0.125em, 15px) * -0.5);
	-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;
}
.read-more--white::after {
	background-color:var(--color-white);
}
.read-more:hover::after,
.read-more--current::after {
	-webkit-transform:scaleX(1);
	    -ms-transform:scaleX(1);
	        transform:scaleX(1);
	-webkit-transform-origin:left;
	    -ms-transform-origin:left;
	        transform-origin:left;
}

/** Tile Link **/
.tile-link, .tile-link span {
    display: block;
    text-decoration: none;
}
.tile-link__image-container {
    overflow: hidden;
    position: relative;
}

/*.tile-link__image-container::before {
	background-color: var(--color-primary);
	content: '';
	display: block;
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	z-index: 5;
}*/
.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);
}
.tile-link__title {
    margin-top: 0;
    margin-bottom: 0.5em;
}
.tile-link__title:last-child {
    margin-bottom: 0;
}

/** Media Links **/
.media-link {
	background-color: var(--color-white);
	border-radius: 5rem;
	color: var(--color-highlight);
	display: block;
	font-size: var(--heading-h6);
	font-weight: 500;
	line-height: 1;
	padding: 1em 3em 1.25em 1.5em;
	position: relative;
	text-decoration: none;
}
.media-link--cream {
	background-color: var(--color-cream);
}
.media-link:first-child {
	margin-top: 0;
}
.media-link:hover {
	background-color: var(--color-highlight) !important;
	color: var(--color-white);
}
.media-link--white:hover::before {
	color: var(--color-white) !important;
}
.media-link::before { 
	display:block; 
	font-size:1.5em; 
	font-family: "Font Awesome 5 Pro";
  	font-weight: 300;
	pointer-events:none;
	position:absolute; 
	top:50%; 
	right:1em;
	transform:translateY(-50%);
}

.media-link--video::before { 
	content:'\f144';
}
.media-link--pdf::before { 
	content:'\f1c1';
}
.media-link--powerpoint::before { 
	content:'\f1c4';
}
.media-link--phone::before { 
	content:'\f095';
}
.media-link--email::before { 
	content:'\f0e0';
}
.media-link--link::before { 
	content:'\f35d';
	font-size: 130%;
}

/** Banner Links **/
.banner-link {
    color: var(--color-highlight);
    display: block;
    padding: var(--divider) calc(32px + (var(--divider) * 2)) var(--divider) var(--divider);
    position: relative;
    text-decoration: none;
}
.banner-link__title {
    display: block;
    font-size: var(--heading-h5);
    font-weight: 500;
    line-height: 1;
}
.banner-link:hover .banner-link__title {
	color: var(--color-highlight);
	text-decoration: underline;
    text-decoration-color: var(--color-highlight);
    text-underline-offset: 5%;
	text-decoration-thickness: 10%;
}
.banner-link__description {
    display: block;
    margin-top: 0.5em;
}
.banner-link__arrow {
    position: absolute;
    top: 50%; right: var(--divider);
    transform: translateY(-50%);
}

/** Social Links **/
.social-link {
	color: var(--color-highlight);
	font-size: var(--heading-h5);
}
.social-link:hover {
	color: var(--color-highlight-alt);
}

/** Category Tags **/
.category-tag {
	background-color: var(--color-highlight);
	color: var(--color-white);
	display: block;
	font-size: 0.875rem;
	line-height: 1;
	padding: 0.75em;
	position: absolute;
	top: 0; left: 0;
	text-transform: uppercase;
}
.featured-post .category-tag {
	top: auto; bottom: 0;
}
.category-tag--sustainability {
	background-color: #7F7C49;
}
.category-tag--community {
	background-color: #90656C;
}
.category-tag--lifestyle {
	background-color: #454A5B;
}
.category-tag--arts {
	background-color: #CE7A48;
}

/* ==========================================================================
   Forms
   ========================================================================== */
input,
textarea,
select,
button { 
	background-color:transparent; 
	border:2px solid var(--color-primary);
	border-radius:0;
	color:var(--color-primary);
	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); 
}
input:focus, 
textarea:focus { 
	background-color:var(--color-highlight); 
	border-color:var(--color-highlight); 
	color:var(--color-white);
}
textarea,
textarea[rows] { 
	height:140px;
}

select { 
	background-image:none;
}

input[type="checkbox"], 
input[type="radio"] { 
	background-color:transparent;
	border:2px solid var(--color-primary); 
	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-highlight); 
	background-clip:content-box;
	border-color:var(--color-highlight);
	outline:none;
	padding:3px;
}

/*
 * gAppointments
 */
#ga_appointments_calendar {
	box-shadow: none !important;
	margin: 0 !important;
}
#gappointments_calendar_slots label.time_slot {
	padding: 0 !important;
	text-align: center;
}

@media screen and (min-width: 320px) and (max-width: 580px) {
	.ga_wrapper_small .ga_monthly_schedule_wrapper td span, .ga_wrapper_medium .ga_monthly_schedule_wrapper td span, .ga_wrapper_large .ga_monthly_schedule_wrapper td span {
		line-height: 22px;
	}
}
@media screen and (min-width: 581px) {
	.ga_wrapper_small .ga_monthly_schedule_wrapper td span, .ga_wrapper_medium .ga_monthly_schedule_wrapper td span, .ga_wrapper_large .ga_monthly_schedule_wrapper td span {
		line-height: 34px;
	}
}

/*
 * formstack
 */
#dvBannerHTML .ff-form-main{
	max-width:100%;
}

#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row .ff-col-1{
	width:100%;
}
#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row .ff-col-2{
	width:100%;
	max-width: 100%;
}
#dvBannerHTML .ff-form-main .ff-page-row .ff-group-row{
	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-bottom: 0
	padding-top: 0;
	max-width: none;
	margin-left: calc(var(--divider) * -0.5);
    margin-right: calc(var(--divider) * -0.5);	
}
#dvBannerHTML .ff-form-main .ff-page-row .ff-group-row.group-0 {
	padding-top: 0;
}

#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row{
	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-bottom: var(--divider);
	padding-left: calc(var(--divider) / 2);
    padding-right: calc(var(--divider) / 2);
}

#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row .ff-label-col {
	display: flex;
}
#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row .ff-field-col {
	display: block;
}

#dvBannerHTML .ff-required-mark{
	float: left;
    color: var(--color-primary);
}
#dvBannerHTML .ff-footer-row{
	padding-left: calc(var(--divider) / 2);
    padding-right: calc(var(--divider) / 2);
}
#dvBannerHTML .ff-submit-btn{
	margin:0px;
}
#dvBannerHTML .ff-submit-btn .btnDiv{
	text-align: left;
}
#dvBannerHTML .ff-submit-btn .ff-btn-submit{
	margin:0px;
	background-color: var(--color-highlight);
    border: none;
    border-radius: 5em;
    color: var(--color-white);
    display: inline-block;
    font-weight: 500;
    line-height: 1;
    min-width: 160px;
    padding: 1.1em 3em 1.25em;
    text-align: center;
    text-decoration: none !important;
    width: auto;
}
#dvBannerHTML .ff-submit-btn .ff-btn-submit:hover{
	background-color: var(--color-highlight-alt);
    color: var(--color-white);
}
#dvBannerHTML .ff-select-type{
	min-height: 65px;
}
#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-radio-li,
#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-checkbox-li{
	margin-bottom: 0 !important;
    margin-top: 0.625rem;
    padding-left: 30px;
    position: relative;
	padding-right: calc(var(--divider) / 2);
	margin-right: 0;
	width:100%;
}
#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-radio-li span,
#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-checkbox-li span{
	position: absolute;
    left: 0;
    top: 2px;
	background: transparent;
    border: 2px solid var(--color-primary);
    float: left;
    height: 20px;
    margin-right: 0.625rem;
    width: 20px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-radio-li span{
	border-radius: 50%;
}
#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-radio-li span.ff-ext-selected,
#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-checkbox-li span.ff-ext-selected{
	background-color: var(--color-highlight);
    background-clip: content-box;
    border-color: var(--color-highlight);
    outline: none;
    padding: 3px;
}
#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-radio-li label,
#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-checkbox-li label{
	height:unset;
	padding:0px;
	color: var(--color-primary);
    font-size: 0.875em;
}
#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row .ff-col-1 .ff-general-text-label{
	color: var(--color-primary);
    font-size: 0.875em;
}
#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-select-to-radiobtn-list,
#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-select-to-checkbox-list{
	width:100%;
}
#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-0 .ff-item-row:nth-child(3),
#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-0 .ff-item-row:nth-child(4),
#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-4 .ff-item-row{
	display:flex;
	flex-direction: row-reverse;
}
#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-0 .ff-item-row:nth-child(3) .ff-col-1,
#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-0 .ff-item-row:nth-child(4) .ff-col-1,
#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-4 .ff-item-row .ff-col-1{
	width: calc(100% - 35px);
}
#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-0 .ff-item-row:nth-child(3) .ff-col-2,
#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-0 .ff-item-row:nth-child(4) .ff-col-2,
#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-4 .ff-item-row .ff-col-2{
	width: 35px;
	min-width: unset;
}
#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-4 .ff-item-row:last-child .ff-col-1,
#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-4 .ff-item-row:last-child .ff-col-2{
	width:100%;
}

#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row .ff-input-type-invalid {
	border-width: 2px !important;
}

#ffPage109 .ff-group-row.group-0 .ff-item-row {
	width: 100% !important;
}

/*
 * Form Buttons
 */
button.gform_button {
	background-color: var(--color-highlight);
	border: none;
	border-radius: 5em;
	color: var(--color-white);
    display: inline-block;
    font-weight: 500;
    line-height: 1;
    min-width: 160px;
    padding: 1.1em 3em 1.25em;
    text-align: center;
    text-decoration: none !important;
	width: auto;
}
button.gform_button:hover,
button.gform_button:focus { 
	background-color: var(--color-highlight-alt);
    color: var(--color-white);
}

/*
 * Form Labels
 */
label,
legend {
	color: var(--color-highlight);
	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);
	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;
}
.ginput_complex {
	margin-bottom: calc(var(--divider) * -1);
}
.gform_fields > li,
.gform_fields > fieldset,
.ginput_complex > span,
.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: 18px;
	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: 18px;
	padding-top: 0;
	vertical-align: top;
}
.ginput_container_consent label + .gfield_required_asterisk {
	display: none;
}

.gsection {
	border-bottom: 2px solid var(--color-primary);
	margin: calc(var(--divider) / 2) calc(var(--divider) / 2) calc(var(--divider) * 1.5);
	padding-left: 0;
	padding-right: 0;
}
.gsection_title {
	font-size: var(--heading-h4);
	padding-bottom: 0.25em;
}

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

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

img.gform_ajax_spinner {
	height:32px; 
	position:absolute;
	right:0;
	top:50%;
	width:32px;
	transform:translateY(-50%);
}

/*
 * Warnings 
 */
.gform_validation_errors,
.gfield_validation_message {
	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);
}
:-moz-placeholder {
	color: var(--color-primary);
}
::-moz-placeholder {
	color: var(--color-primary);
}
:-ms-input-placeholder {
	color: var(--color-primary);
}

.background-highlight input,
.background-highlight textarea,
.background-highlight select,
.background-highlight input[type="checkbox"], 
.background-highlight input[type="radio"],
.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-white);
	color: var(--color-white);
}
.background-highlight input:focus,
.background-highlight textarea:focus,
.background-highlight select:focus {
	background-color:var(--color-white); 
	border-color:var(--color-white); 
	color:var(--color-primary);
}
.background-highlight input:checked { 
	background-color:var(--color-white); 
	border-color:var(--color-white);
}

.background-highlight button.gform_button {
	background-color: var(--color-white);
	color: var(--color-highlight);
}
.background-highlight button.gform_button:hover,
.background-highlight button.gform_button:focus { 
	background-color: var(--color-highlight-alt);
    color: var(--color-white);
}

.background-highlight label,
.background-highlight legend,
.background-highlight input + label,
.background-highlight select + label,
.background-highlight .select-container + label,
.background-highlight button + label,
.background-highlight .gfield_description {
	color: var(--color-white);
}

.background-highlight .gsection {
	border-top-color: var(--color-white);
}

.background-highlight ::-webkit-input-placeholder {
	color:var(--color-white);
}
.background-highlight :-moz-placeholder {
	color: var(--color-white);
}
.background-highlight ::-moz-placeholder {
	color: var(--color-white);
}
.background-highlight :-ms-input-placeholder {
	color: var(--color-white);
}

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

@media only screen and (max-width: 39.99em) {
	
} /* 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: 112px;
		
		--heading-h1: 3.333em;
		--heading-h2: 2.778em;
		--heading-h3: 2.222em;
		--heading-h4: 1.222em;
		--heading-h5: 1.111em;
		--heading-h6: 1.111em;
		--base-font: 18px;
	}
	
	/** Banner Links/CTAs **/
	.banner-row__links {
		position: absolute;
		right: 0; bottom: 0; left: 0;
		z-index: 10;
	}
	
	.explore-map__legend {
		margin-top: 0;
		max-width: 300px;
		position: absolute;
		top: var(--divider); left: var(--divider);
		z-index: 10;
	}
	
	/** 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%;
	}
	
	/** Banner Links **/
	.banner-link {
		color: var(--color-white);
		padding: var(--divider) calc(40px + (var(--divider) * 2)) var(--divider) var(--divider);
	}
	.banner-link:hover .banner-link__title {
		color: var(--color-white);
		text-decoration-color: var(--color-white);
	}

	.banner-row__links .medium-up-2 .cell:first-child .banner-link {
		border-right: 1px solid var(--color-grey);
		padding-left: calc(var(--divider) / 2);
	}
	.banner-row__links .medium-up-2 .cell:last-child .banner-link {
		border-left: 1px solid var(--color-grey);
	}
	.banner-row__links .medium-up-2 .cell:last-child .banner-link .banner-link__arrow {
		right: calc(var(--divider) / 2);
	}

	.banner-row__links .cell:only-child .banner-link {
		padding-left: calc(var(--divider) / 2);
		padding-right: calc(var(--divider) / 2);
	}
	.banner-row__links .cell:only-child .banner-link .banner-link__arrow {
		right: calc(var(--divider) / 2);
	}
	
	.gfield--width-quarter {
		width: 25%;
	}
	.gf_name_has_3 > span,
	.gfield--width-third {
		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%;
	}
	/*
 	* formstack
 	*/
	#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row{
		width: 50%;
		float: left;
	}
	#dvBannerHTML .ff-form-main #ffPage7.ff-page-row .group-0 .ff-item-row,
	#dvBannerHTML .ff-form-main #ffPage7.ff-page-row .group-4 .ff-item-row,
	#dvBannerHTML .ff-form-main #ffPage99--.ff-page-row .group-4 .ff-item-row,
	#dvBannerHTML .ff-form-main #ffPage99.ff-page-row .group-5 .ff-item-row:nth-child(2),
	#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row.fw-row,
	#dvBannerHTML .ff-form-main #ffPage22.ff-page-row .group-3 .ff-item-row,
	#dvBannerHTML .ff-form-main #ffPage34.ff-page-row .group-2#ffSection3 .ff-item-row,
	#dvBannerHTML .ff-form-main #ffPage34.ff-page-row .group-2 .ff-checkbox-li,
	#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-4 .ff-item-row,
	#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-0 .ff-item-row:first-child,
	#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-0 .ff-item-row:nth-child(2),
	#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-0 .ff-item-row:nth-child(3),
	#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-0 .ff-item-row:nth-child(4){
		width: 100%;
	}
	#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-4 .ff-item-row input[type="checkbox"],
	#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-0 .ff-item-row:first-child input[type="checkbox"],
	#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-0 .ff-item-row:nth-child(2) input[type="checkbox"],
	#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-0 .ff-item-row:nth-child(3) input[type="checkbox"],
	#dvBannerHTML .ff-form-main #ffPage2.ff-page-row .group-0 .ff-item-row:nth-child(4) input[type="checkbox"]{
		margin-bottom:0px;
	}
	#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row:first-child{
		width:100%;
		margin-bottom: 0;
	}
	#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row .ff-col-2 input[type="checkbox"]{
		margin-bottom: 43px;
	}
	#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-radio-li,
	#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-checkbox-li{
		width: 50%;
	}
	#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-radio-li:only-child,
	#dvBannerHTML .ff-form-main .ff-page-row .ff-item-row  .ff-field-col .ff-checkbox-li:only-child{
		width: 100%;
	}

} @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: 3.889em;
		--heading-h2: 2.778em;
		--heading-h3: 2.222em;
		--heading-h4: 1.556em;
		--heading-h5: 1.333em;
	}
	.side-bar {
		border-bottom: none;
		border-right: 2px solid var(--color-grey);
		padding-left: 0;
		padding-right: 0;
		position: fixed;
		top: auto; right: auto; left: auto;
		height: 100vh;
		overflow-y: auto;
		width: 320px;
		z-index: 10;
	}
	.main-content {
		align-self: flex-end;
		width: calc(100% - 320px);
	}
	.top-bar__navigation .sub-menu {
		left: 320px;
		width: 320px;
	}
	
	.top-bar {
		position: relative;
	}
	
	.site-logo {
		height: 62px;
		width: 200px;
	}
	
	.banner-row {
		min-height: 800px;
	}
	
	/** 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 {
		--heading-h1: 4.444em;
		--heading-h2: 3.333em;
	}
	
	.side-bar {
		width: 380px;
	}
	.main-content {
		width: calc(100% - 380px);
	}
	.top-bar__navigation .sub-menu {
		left: 380px;
		width: 380px;
	}
	
	/** 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.444em !important;
	}
	h2, .h2 {
		font-size: 3.333em !important;
	}
	h3, .h3 {
		font-size: 2.222em !important;
	}
	h4, .h4 {
		font-size: 1.444em !important;
	}
	h5, .h5 {
		font-size: 1.333em !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: 2px solid var(--color-primary);
    border-radius: 0;
    color: var(--color-primary);
    cursor: pointer;
    display: block;
    font-size: 1em;
    font-weight: 400;
    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;
}
.jcf-select:hover .jcf-select-text {
	border-color: var(--color-highlight);
}
.jcf-drop-active .jcf-select-text {
	background-color: var(--color-highlight);
	border-color: var(--color-highlight);
	color: var(--color-white);
}
.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';
    color: var(--color-primary);
    display: block;
    font-size: 1em;
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    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%);
}
.jcf-drop-active.jcf-select .jcf-select-opener::before {
	color: var(--color-white);
}
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: -1px;
    right: -1px;
}
.jcf-select .jcf-drop-flipped {
    bottom: 100%;
    top: auto;
}
.jcf-select-drop .jcf-select-drop-content {
    border: 2px solid var(--color-highlight);
    border-radius: 0;
    overflow: hidden;
}

/* 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;
}
.jcf-list .jcf-overflow {
    overflow: auto;
}
.jcf-list .jcf-option {
    color: var(--color-primary);
    font-size: 1em;
    line-height: 1;
    margin: 0;
    padding: 1em calc(1em - 2px);
    text-align: left;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    display: block;
    height: 1%;
}
.jcf-list .jcf-disabled {
    background: #fff !important;
    color: #aaa !important;
}
.jcf-select-drop .jcf-hover, .jcf-list-box .jcf-selected {
    background-color: #eee;
    color: var(--color-primary);
}
.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;
}

.background-highlight .jcf-select .jcf-select-text {
    border-color: var(--color-white);
    color: var(--color-white);
}
.background-highlight .jcf-select:hover .jcf-select-text {
	border-color: var(--color-white);
}
.background-highlight .jcf-drop-active .jcf-select-text {
	background-color: var(--color-white);
	border-color: var(--color-white);
	color: var(--color-primary);
}
.background-highlight .jcf-drop-active.jcf-select .jcf-select-opener {
	color: var(--color-primary);
}
.background-highlight .jcf-select .jcf-select-opener::before {
    color: var(--color-white);
}
.background-highlight .jcf-drop-active.jcf-select .jcf-select-opener::before {
	color: var(--color-primary);
}
.background-highlight .jcf-select-drop .jcf-select-drop-content {
    border-color: var(--color-white);
}

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