/*
Theme Name: History SA : Flight
Author: Freerange Future
Author URI: http://freerangefuture.com/
Version: 1.0
Text Domain: historysaflight
*/

body{
  font-family: "freight-text-pro",serif;
  font-style: normal;
  font-weight: 300;
  background: #f1f1f1;
  color: #56565A;
  font-size: 16px;
  line-height: 1.2em;
}

body.fixed{
  overflow: hidden;
}

h1, h2, h3, h4{
	font-family: lft-etica, sans-serif;
	font-weight: 700;
	text-transform: uppercase;
	margin: 0 0 15px;
}

p{
	margin: 0 0 20px;
}

header {
    background: #fff;
    height: 115px;
}

a.logo {
    float: left;
    position: absolute;
    top: 20px;
    z-index: 9999;
}

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

a.logo img.ht-logo{
	width: 125px;
    height: 128px;
    margin-right: 25px;
}

a.logo img.ef-logo{
	width: 190px;
    height: 67px;
    position: relative;
    top: -25px;
}

.main-menu{
	float: right;
}

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

.main-menu li.objects{
	float: none;
	width: auto;
}

.main-menu li, footer #menu-footer-menu li{
	display: inline-block;
	margin-right: 45px;
	text-transform: uppercase;
	font-size: 1.25em;
	font-family: lft-etica, sans-serif;
	font-weight: 600;
}

.main-menu li:last-child, footer #menu-footer-menu li:last-child{
	margin-right: 0;
}

ul.menu li a,  footer #menu-footer-menu li a{
	color: #56565A;
}

.main-menu li a{
	border-top: 4px solid #fff;
	padding: 46px 0;
	display: block;
}

footer #menu-footer-menu .sub-menu{
 	display: none;
}

footer #menu-footer-menu{
    padding: 40px 0;
    text-align: center;
    border-bottom: 2px solid #ddd;
    margin-bottom: 50px;
}

.main-menu li a:hover, .main-menu li.current-menu-item > a, .main-menu li.current_page_item > a,
.single-timeline .main-menu li.timeline > a, .single-events .main-menu li.events > a, .single-patrons .main-menu li.supporters > a,
.single-sponsors .main-menu li.supporters > a, .single-post .main-menu li.explore > a,
.main-menu ul li.menu-item-has-children.rollover > a, .main-menu li.current-menu-parent > a{
	color: #54328D;
	text-decoration: none;
	border-top-color: #54328D;
}

.single-patrons .main-menu li.patrons, .single-sponsors .main-menu li.sponsors, .single-post .main-menu li.articles{
	font-weight: 600;
}

.single-patrons .main-menu li.patrons > a, .single-sponsors .main-menu li.sponsors > a, .single-post .main-menu li.articles > a{
	color: #54328D;
}

.main-menu li .submenu-container{
	display: none;
}

.main-menu ul li .submenu-container{
    display: block;
    position: absolute;
    background: #fff;
    width: 100%;
    left: -9999px;
    z-index: 999;
    padding: 0;
    text-align: center;
    border-top: 1px solid #8A8A8A;
    margin: 0;
}

.main-menu ul li:hover .submenu-container, .main-menu ul li .submenu-container.focused {
    left: 0;
}

.main-menu ul li .submenu-container .sub-menu {
    display: block!important;
    margin: 0 auto;
    max-width: 1320px;
    padding: 0;
    text-align: center;
}

.main-menu ul li .submenu-container li{
	font-size: 0.9em;
	font-weight: 400;
}

.main-menu ul li .submenu-container li a{
	border-top: 0;
	padding: 20px 0;
}

.main-menu ul li .submenu-container li:hover{
	font-weight: 600;
}

.main-menu ul li.menu-item-has-children > a{
	position: relative;
}

.main-menu ul li.menu-item-has-children > a:after{
	width: 22px; 
	height: 12px; 
	content: '';
	display: none;
	position: absolute;
	bottom: -1px;
	left: 0;
	right: 0;
	margin: 0 auto;
	background: url('assets/images/nav-indicator.svg') no-repeat center #fff;
	z-index: 9999;
}

.main-menu ul li.menu-item-has-children > a:hover:after, .main-menu ul li.menu-item-has-children.rollover > a:after{
	display: block;
}

.main-menu ul li.explore .submenu-container li:first-child{
	margin-left: -310px;
}

.main-menu ul li.supporters .submenu-container .sub-menu{
	text-align: right;
}

.static{
	position: static;
}

.relative{
	position: relative;
}

.purple{
	background-color: #54328D!important;
}

.grey{
	background-color: #D6D6D9;
}

#hero{
	height: 600px;
    background-repeat: no-repeat;
    background-size: cover;
    float: left;
    width: 100%;
    margin-bottom: 30px;
    background-position: right center;
}

#hero h1{
	font-size: 2.8125em;
	line-height: 1.1em;
	text-transform: uppercase;
}

#hero p{
	font-size: 1.625em;
	line-height: 1.2em;
	margin: 0 0 15px;
	font-weight: 500;
	max-width: 450px;
}

.full-height-parent{
	height: 100%;
}

.flex{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.light h1, .light h2, .light h3, .light h4, .light h5, .light h6, .light p, .light p a, .purple .link, .purple .link:hover{
	color: #fff;
}

#hero .button{
	margin-top: 20px;
	min-width: 300px;
}

.button{
	color: #54328D;
	font-family: lft-etica, sans-serif;
	font-weight: 600;
	font-size: 1.625em;
	line-height: 1.4em;
	text-decoration: none;
	text-transform: uppercase;
	background-color: #fff;
	border-radius: 10px;
	padding: 12px 25px;
	display: inline-block;
	text-align: center;
}

.button:hover{
	background-color: #54328D;
	color: #fff;
	text-decoration: none;
}

.button:focus, button:focus{
	text-decoration: none;
	outline: none;
}

.button.purple, .button.purple:focus{
	color: #fff;
}

.button.purple:hover{
	background-color: #56565A!important;
	color: #fff;
}

.intro-content{
	margin: 55px 0 85px;
	float: left;
	width: 100%;
}

.intro-content p, .panel p{
	font-size: 1.375em;
	line-height: 1.4em;
}

h2{
	font-size: 2em;
	line-height: 1.2em;
}

.link{
    text-transform: uppercase;
    color: #56565a;
    font-size: 1.25em;
    line-height: 1.2em;
    font-family: lft-etica, sans-serif;
    font-style: normal;
    font-weight: 700;
}

.link .arrow{
    width: 20px;
    height: 18px;
    margin-right: 25px!important;
    margin-top: 0!important;
    margin-bottom: 0!important;
    position: relative;
    top: -2px;
    transition: transform .2s ease-in-out;
    -webkit-transition: transform .2s ease-in-out;
    -moz-transition: transform .2s ease-in-out;
}

.link:hover .arrow{
    transform: translate3d(10px, 0px, 0px);
    -webkit-transition: transform .2s ease-in-out;
    -moz-transition: transform .2s ease-in-out;
}

.link:hover, .link:focus{
	text-decoration: none;
	color: #56565A;
}

.full-width-image{
	width: 100%;
	float: left;
	position: relative;
}

.full-width-image button{
	display: block;
	border: 0;
	padding: 0;
	position: absolute;
	width: 100%;
	height: 100%;
	background: url('assets/images/play.svg') no-repeat center;
	transition: all 0.3s ease-in-out;
}

.full-width-image button:hover{
	background: url('assets/images/play.svg') no-repeat center rgba(255,255,255,0.2);
}

.full-width-image img{
	width: 100%;
	height: auto;
}

.panel{
	float: left;
	width: 100%;
	margin: 0 0 85px;
}

.image-panel{
    position: relative;
    overflow: hidden;
    min-height: 560px;
}

.image-panel .flex{
	height: 560px;
	justify-content: flex-start;
}

.image-panel .image-bg{
	position: absolute;
	top: 0;
	right: 0;
	width: 50%;
	z-index: 1;
	height: 100%;
}

.image-panel .image-bg .row{
	height: 100%;
}

.image-panel .image-bg .image{
	height: 100%;
	z-index: 1;
	position: relative;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.panel.white-bg{
	background: #fff;
}

.panel.extra-pad{
	padding: 55px 0;
}

.no-bottom-margin{
	margin-bottom: 0;
}

.cta{
	padding: 80px 0;
}

.cta.panel{
	margin-bottom: 0;
}

.cta p:last-child{
	margin-bottom: 0;
}

footer {
    padding: 0 0 10px;
    background: #fff;
    border-top: 1px solid #c0c0c0;
    float: left;
    width: 100%;
}

footer .footer-logos {
    text-align: left;
}

footer .footer-logos p{
	margin-bottom: 0;
}

footer .textwidget, footer .textwidget a{
    display: inline-block;
}

footer .textwidget img {
    width: 60px;
    min-height: 50px;
    display: inline-block;
    margin: 0 10px 20px 0;
}

footer .textwidget img.sach{
    height: 62px;
    margin-top: 1px;
}

footer .textwidget img.gsa, footer .textwidget img.artsa {
    width: 70px;
}

footer .textwidget img.tcod {
    width: 100px;
    margin-right: 0;
}

footer .heading {
    text-transform: uppercase;
    font-size: 1.125em;
    line-height: 1.2em;
    padding: 0 0 30px;
    color: #56565a;
    font-family: "lft-etica-condensed",sans-serif;
    font-style: normal;
    font-weight: 400;
    border-bottom: 1px solid #aaa;
}

.footer-menu {
    margin: 38px 40px 0 0;
    float: left;
}

.footer-menu ul.menu li {
    text-transform: uppercase;
    font-size: 1.125em;
    line-height: 1.2em;
    padding: 0 15px;
    font-family: "lft-etica-condensed",sans-serif;
    font-style: normal;
    font-weight: 400;
    border-right: 1px solid #56565a;
    margin: 0;
    display: inline-block;
}

.footer-menu ul.menu li:last-child{
	border-right: 0;
}

.footer-menu ul.menu li:first-child {
    padding-left: 0;
}

.footer-menu ul.menu li a {
    color: #56565a;
}

footer .a-icons {
    margin: 30px 5px 0 0;
}

.social {
    margin: 25px 0;
}

.social .menu-social-container{
	display: inline-block;
}

.pull-right {
    float: right!important;
}

.social .menu{
	display: inline-block;
	position: relative;
	top: -20px;
}

.social .menu ul{
	list-style: none;
	padding: 0;
	margin: 0;
}

.social .menu li {
    width: 51px;
    height: 51px;
    font-size: 0.1px;
    display: inline-block;
    margin-left: 5px;
}

.social .menu li a {
    padding: 0;
    border: 1px solid #56565A;
    border-radius: 50%;
    display: block;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
}

#menu-social li.fb a {
    background-image: url('assets/images/fb.svg');
    background-size: 15px;
    border-color: #3b5998;
}

#menu-social li.twitter a {
    background-image: url('assets/images/twitter.svg');
    background-size: 35px;
    border-color: #1da1f2;
}

#menu-social li.ig a {
    background-image: url('assets/images/ig.svg');
    background-size: 32px;
    border-color: #c32aa3;
}

#menu-social li.flickr a {
    background-image: url('assets/images/Flickr.svg');
    background-size: 28px;
    border-color: #e82283;
}

#menu-social li.youtube a {
    background-image: url('assets/images/Youtube.svg');
    background-size: 35px;
    border-color: #d03829;
}

#menu-social li.twitter a:hover{
	background-image: url('assets/images/twitter-ro.svg');
	background-color: #1da1f2;
}

#menu-social li.fb a:hover{
	background-image: url('assets/images/fb-ro.svg');
	background-color: #3b5998;
}

#menu-social li.ig a:hover{
	background-image: url('assets/images/ig-ro.svg');
	background-color: #c32aa3;
}

#menu-social li.flickr a:hover{
	background-image: url('assets/images/Flickr-ro.svg');
	background-color: #e82283;
}

#menu-social li.youtube a:hover{
	background-image: url('assets/images/Youtube-ro.svg');
	background-color: #d03829;
}

.social p{
    font-size: 0.875em;
    font-weight: 400;
    display: inline-block;
    margin: 15px 10px 0 0;
}

#banner{
	height: 250px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	background-color: #D6D6D9;
}

#banner h1{
	color: #fff;
	text-transform: uppercase;
	text-align: center;
	font-size: 2.8125em;
	line-height: 1.5em;
	margin: 0;
	width: 100%;
}

#banner h1.dark{
	color: #56565A;
}

#page-content{
	margin: 60px 0;
	float: left;
	width: 100%;
}

blockquote, blockquote p{
	color: #54328D;
	font-size: 1.625em;
	font-weight: 500;
	line-height: 1.4em;
}

#page-content h1, #page-content h2, #page-content h3, #page-content h4, #page-content h5, #page-content h6,
#page-content p, #page-content blockquote, #page-content ul, #page-content ol, #page-content .searchform{
	margin: 0 8.33333% 25px;
}

#page-content h4, #page-content h5, #page-content h6{
	margin-bottom: 15px;
}

#page-content p, #page-content li{
	font-size: 1.375em;
	line-height: 1.4em;
}

#page-content li{
	margin: 0 0 5px;
}

#page-content ul, #page-content ol{
	padding-left: 22px;
}

#page-content blockquote p{
	font-size: 1em;
	line-height: 1.4em;
	margin: 0 0 5px;
}

#page-content p img, #page-content img{
	max-width: 100%;
	height: auto;
	margin: 15px 0 30px;
}

#page-content img.aligncenter{
	margin-left: auto;
	margin-right: auto;
	float: none;
	text-align: center;
	display: block;
}

#page-content img.alignright{
	margin-left: 20px;
	margin-right: auto;
	display: block;
	float: right;
}

#page-content img.alignleft{
	margin-right: 20px;
	float: left;
}

#page-content p.wp-caption-text{
    font-size: 1em;
    margin: 15px 0 25px;
    font-family: lft-etica, sans-serif;
}

#page-content .wp-caption img{
	margin: 0;
}

.wp-caption{
	width: 100%!important;
	height: auto;
}

.wp-caption img{
	width: 100%;
	height: auto;
}

#page-content h3{
	font-size: 1.75em;
	line-height: 1.4em;
}

#page-content h4{
	font-size: 1.5em;
	line-height: 1.4em;
}

#page-content h5{
	font-size: 1.375em;
	line-height: 1.4em;
}

#page-content h6{
	font-size: 1.2em;
	line-height: 1.4em;
}

.listing{
	margin: 50px 0 80px;
}

.item{
	overflow: hidden;
	float: left;
	width: 100%;
	background: #fff;
	border: 1px solid #e3e3e3;
	margin-bottom: 30px;
}

.item img.wp-post-image{
	width: 25%;
	float: left;
	margin: 0!important;
}

.item .content{
	width: 75%;
	float: right;
	padding: 45px 50px 50px;
	position: relative;
	height: 273px;
}

.item .content h2, .item .content p{
	margin: 0 0 20px!important;
}

.item .content .arrow{
	margin-top: 0!important;
	margin-bottom: 0!important;
	margin-right: 25px!important;
}

.item .content .link{
	position: absolute;
	bottom: 45px;
}

.item .content h2{
	font-size: 1.625em;
}

.item.post.sponsor{
	display: flex;
	align-items: center;
}

.item.sponsor .content{
	height: auto;
	min-height: 100px;
}

.item.sponsor .content .link{
	position: relative;
	bottom: 0;
}

.wp-pagenavi {
    margin: 0 8.33%;
    padding: 0 15px;
    float: left;
    width: calc(100% - 16.66%);
}

.wp-pagenavi .pages{
	display: none;
}

.wp-pagenavi a, .wp-pagenavi span{
    border: 1px solid #e3e3e3;
    padding: 7px 10px;
    margin: 0 8px 5px 0;
    background: #fff;
    font-size: 1em;
    font-family: lft-etica, sans-serif;
    min-width: 35px;
    display: inline-block;
    text-align: center;
    color: #56565A;
}

.wp-pagenavi span.current {
    font-weight: bold;
    background: #56565A;
    color: #fff;
    border-color: #56565A;
}

.wp-pagenavi a:hover{
	background: #54328D;
	color: #fff;
	text-decoration: none;
	border-color: #54328D;
}

.single #page-content p.back-to-link{
	margin-bottom: 50px;
}

.single #page-content p.back-to-link .link{
	font-size: 1em;
}

.et-ver-timeline-template-1 .et-timeline-date span{
    color: #56565A;
    font-size: 1.125em;
    font-family: lft-etica, sans-serif;
    font-weight: 700;
    letter-spacing: 0;
    border-radius: 0;
    border: 2px solid #D6D6D9;
    padding: 10px 20px;
}

.et-ver-timeline-template-1 .et-timeline-line{
	border-color: #D6D6D9
}

.et-ver-timeline-template-1 .et-timeline-date.et-clearfix + .et-timeline-item{
	margin-top: 0;
}

.et-ver-timeline-template-1 .et-timeline-item{
	margin-top: 60px;
}

.et-ver-timeline-template-1 .et-timeline-item:nth-of-type(2n){
	margin-top: 80px;
}

.et-ver-timeline-template-1 .et-title a{
	transition: none;
}

.et-ver-timeline-template-1 .et-title a:hover{
	color: #54328D;
	text-decoration: none;
}

.et-ver-timeline-template-1 .et-timeline-circle{
	margin-left: -4px;
	margin-top: 15px;
	height: 10px;
	width: 10px;
	background-color: #56565a;
	border: 0;
}

.et-ver-timeline-template-1 .et-all-contain-here{
	border-color: #D6D6D9;
}

.et-image img{
	margin: 0 auto 25px!important;
}

.et-image img[src*="no-image-available.png"]{
	display: none;
}

.et-ver-timeline-template-1 .et-inner-content{
	padding-top: 0;
}

.et-ver-timeline-template-1 .et-title a{
    font-size: 1.625em;
    text-transform: uppercase;
    color: #56565A;
    font-family: lft-etica, sans-serif;
    font-weight: 700;
}

.et-ver-timeline-template-1 .et-inner-content .et-meta-wrap .et-date{
    font-size: 1.625em;
    text-transform: uppercase;
    color: #56565A;
    font-family: lft-etica, sans-serif;
    font-weight: 300;
}

.et-ver-timeline-template-1 .et-content{
    color: #8A8A8A;
    font-size: 1.375em;
    font-family: "freight-text-pro",serif;
    font-style: normal;
    font-weight: 400;
    margin-bottom: 10px;
}

.et-ver-timeline-template-1 .et-link-button a{
    background: transparent;
    border: 0;
    text-transform: none;
    padding: 0;
    font-size: 1.375em;
    color: #54328D;
    text-decoration: underline;
    font-family: "freight-text-pro",serif;
    font-style: normal;
    font-weight: 400;
}

.et-ver-timeline-template-1 .et-link-button a:hover{
	background: transparent;
	text-decoration: none;
	color: #56565A;
}

.et-ver-timeline-template-1 .et-content-outer-wrap{
	display: none;
}

.et-ver-timeline-template-1 .et-link-button {
    margin-bottom: 0;
}

.et-ver-timeline-template-1 .et-all-contain-here:before{
	width: 13px;
	height: 13px;
	right: -8px;
	top: 12px;
	border-color: #D6D6D9;
}

.et-ver-timeline-template-1 .et-timeline-item:nth-of-type(2n) .et-all-contain-here:before{
	width: 13px;
	height: 13px;
	right: auto;
	left: -8px;
	top: 12px;
	border-color: #D6D6D9;
}

.fb-flag{
    position: absolute;
    right: 0;
    top: 35px;
}

#enews{
	background-color: #54328D;
	color: #fff;
	padding: 35px 0 30px;
}

#enews h2{
	margin: 0;
}

#enews .button, .home .cta .button{
	min-width: 320px;
}

#enews .button{
	margin-top: 7px;
}

#enews .button:hover{
	background-color: #56565A;
}

.modal{
	display: block!important;
	visibility: hidden;
	opacity: 0;
	transition: visibility 0s, opacity 0.3s linear;
}

.modal.in{
	display: block!important;
	visibility: visible;
	opacity: 1;
    position: fixed;
    top: 0px;
    width: 100%;
    left: 0px;
    height: 100vh;
    background: rgba(0, 0, 0, 0.8);
    z-index: 9999;
}

.modal-dialog{
    width: 550px;
    height: 580px;
    background: #fff;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    top: 20%;
}

.modal.in#featured-video{
	background-color: #000;
}

.modal-dialog.video{
	width: calc(100% - 100px);
	height: calc(100vh - 125px);
	top: 75px;
	padding: 75px 50px 50px;
}

.modal-dialog.video .close{
	top: -50px;
}

.modal-dialog iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.modal-dialog .close{
    position: absolute;
    top: -60px;
    right: 0;
    background: url('assets/images/close.svg') no-repeat;
    width: 35px;
    height: 35px;
    text-indent: -9999px;
    border: 0;
}

#signup-form .modal-body{
	padding: 20px 40px;
	display: flex;
    align-items: center;
    justify-content: space-between;
    height: 580px;
}

#signup-form .modal-body .gform_wrapper{
	margin: 0;
}

#signup-form .modal-body .gform_wrapper h3.gform_title{
	text-align: center;
	font-size: 2em;
	line-height: 1.3em;
	margin: 0 0 20px;
}

.gform_wrapper ul.gform_fields li.gfield.hide-main-label label.gfield_label_before_complex{
	display: none;
}

.gform_wrapper .field_sublabel_above .ginput_complex.ginput_container label{
    font-size: 1.1em!important;
    color: #56565A;
    font-weight: 700;
    letter-spacing: 0!important;
    margin-bottom: 6px!important;
}

div.ginput_complex.ginput_container.gf_name_has_2 span{
	width: 100%!important;
	padding: 0;
	margin-bottom: 5px;
}

.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
textarea{
    padding: 8px 10px!important;
    font-size: 20px!important;
    line-height: 30px;
    background: transparent;
    border: 1px solid #56565a;
    color: #56565A;
    width: 100%;
    margin-right: 2%;
}

.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]):focus,
textarea:focus{
	outline: none;
	border-color: #54328D;
}

.gform_wrapper ul.gform_fields li.gfield{
	padding: 0!important;
	margin-top: 5px!important;
}

.top_label div.ginput_complex.ginput_container.gf_name_has_1, .top_label div.ginput_complex.ginput_container.gf_name_has_2, .top_label div.ginput_complex.ginput_container.gf_name_has_3{
	width: 100%!important;
}

.gform_wrapper .gform_footer{
	width: 300px!important;
	display: inline-block;
	float: right;
}

.gform_wrapper .gform_footer input[type=submit]{
    display: block!important;
    width: calc(100% - 50px)!important;
    background: #54328D;
    border: 0;
    color: #fff;
    padding: 15px;
    margin: 0!important;
    float: right;
}

#signup-form .gform_wrapper .gform_footer{
	width: 100%!important;
}

#signup-form .gform_wrapper .gform_footer input.button{
    display: block;
    width: 100%;
    background: #54328D;
    border: 0;
    color: #fff;
    padding: 15px;
    margin: 0!important;
}

#signup-form .gform_wrapper .gform_footer input.button:hover, .gform_wrapper .gform_footer input[type=submit]:hover{
	background: #56565A;
	color: #fff;
}

.gform_wrapper div.validation_error{
    border: 0!important;
    padding: 0!important;
    text-align: left!important;
    margin-bottom: 10px!important;
    font-size: 1.1em!important;
}

.gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
    max-width: 100%!important;
}

.gform_wrapper li.gfield.gfield_error, .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning{
	background-color: transparent!important;
	border: 0!important;
	margin-bottom: 0!important;
}

.gform_wrapper .field_sublabel_above .description, .gform_wrapper .field_sublabel_above .gfield_description, .gform_wrapper .field_sublabel_above .gsection_description{
	margin-top: 0!important;
}

.gform_wrapper .field_description_below .gfield_description{
	padding-top: 3px!important;
}

.gform_wrapper .gform_footer{
	padding: 0!important;
	margin: 30px 0 0!important;
}

.gform_wrapper.gf_browser_chrome ul.gform_fields li.gfield span.name_first, .gform_wrapper.gf_browser_chrome ul.gform_fields li.gfield span.name_last, .gform_wrapper.gf_browser_chrome ul.gform_fields li.gfield span.name_middle{
	padding-top: 0!important;
}

.gform_wrapper .gfield_required{
	color: #56565A!important;
	margin-left: 2px!important;
	font-size: 1.1em;
}

.gform_wrapper li.gfield.gfield_error.gfield_contains_required label.gfield_label {
    margin-top: 0!important;
    margin-bottom: 5px;
}

.gform_wrapper li.gfield.gfield_error.gfield_contains_required div.ginput_container{
	margin-top: 0!important;
}

#page-content ul.gform_fields{
	padding-left: 0;
}

@keyframes gform_ajax_spinner {
  to {transform: rotate(360deg);}
}
 
.gform_ajax_spinner{
  content: '';
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  width: 25px!important;
  height: 25px!important;
  margin-top: -12px;
  margin-left: 0;
  border-radius: 50%;
  border: 2px solid #ccc;
  border-top-color: #333;
  animation: gform_ajax_spinner .6s linear infinite;
}

.gform_footer{
	position: relative;
}

#page-content .gform_wrapper form{
    margin: 0 8.33333% 25px;
}

.tax-term-content{
	margin: 75px 0;
}

.objects{
	float: left;
	width: 100%;
}

.objects .post-item{
	max-width: 20%;
	float: left;
}

.objects .post-item a{
	position: relative;
	display: block;
	display: flex;
    align-items: center;
}

.objects .post-item a:before{
	content: '';
	background-color: rgba(84,50,141,0.5);
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	transition: all 0.2s ease-in-out;
	opacity: 0;
}

.objects .post-item a:hover:before{
	opacity: 1;
}

.title-overlay{
	opacity: 0;
	visibility: hidden;
	transition: all 0.2s ease-in-out;
	margin: 0!important;
	position: absolute;
	color: #fff;
	width: 100%;
	padding: 0 20px;
	display: block;
	text-align: center;
	font-size: 1.625em!important;
	line-height: 1.2em!important;
	font-weight: 500;
}

.objects .post-item a:hover .title-overlay{
	opacity: 1;
	visibility: visible;
}

.objects .post-item a img{
	margin: 0!important;
}

.iframe-wrapper{
    position: relative;
    overflow: hidden;
    padding-top: 56.25%;
    margin: 40px 0;
}

p .iframe-wrapper{
	margin: 40px -8.333%;
}

iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.modal .iframe-wrapper{
	padding: 0;
	margin: 0;
	position: static;
	overflow: auto;
}

.searchform label{
    font-size: 1.375em;
    font-weight: 500;
    clear: both;
    display: block;
    margin: 0 0 15px;
}

.searchform input[type="text"]{
    border: 1px solid #fff;
    padding: 10px 10px;
    font-size: 1.25em;
    font-weight: 500;
    width: calc(100% - 150px);
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

.searchform input[type="text"]:focus{
	outline: none;
	border-color: #54328D;
}

.searchform #searchsubmit{
    background: #54328D;
    color: #fff;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    width: 150px;
    float: right;
    border: 0;
    font-size: 1.25em;
    font-family: lft-etica, sans-serif;
    text-transform: uppercase;
    font-weight: 600;
    padding: 15px 10px 14px;
}

.searchform #searchsubmit:hover{
	background: #56565A;
}

.single-timeline #page-content h2{
	margin-bottom: 5px;
}

.single #page-content p.date{
	font-weight: 600;
}

#page-content.profile-page h1, #page-content.profile-page h2, #page-content.profile-page h3,
#page-content.profile-page h4, #page-content.profile-page h5, #page-content.profile-page h6, 
#page-content.profile-page p, #page-content.profile-page blockquote, #page-content.profile-page ul, 
#page-content.profile-page ol{
	margin-left: 0;
	margin-right: 0;
}

#page-content.profile-page .wp-post-image{
	margin-top: 0;
}

.listing .eventbrite-ticket-section{
	display: none;
}

.listing .item.eventbrite h2{
	margin-bottom: 5px!important;
}

.listing .item.eventbrite .event-date p{
	font-weight: 400;
}

.gallery-item img{
	margin-bottom: 5px!important;
	border: 2px solid #f1f1f1!important;
}

.gallery-caption{
	padding: 0 10px;
}

@media screen and (max-width: 1350px){
	.item img.wp-post-image{
		width: 30%;
	}
	.item .content{
		width: 70%;
	}
}

@media screen and (max-width: 1320px){
	.main-menu ul li .submenu-container .sub-menu{
		max-width: 1140px;
	}
	.main-menu li{
		margin-right: 25px;
	}
	.main-menu ul li.explore .submenu-container li:first-child {
	    margin-left: -290px;
	}
}

@media screen and (max-width: 1199px){
	.main-menu ul li .submenu-container .sub-menu{
		max-width: 940px;
	}
	.main-menu li{
		margin-right: 15px;
    	font-size: 1em;
	}
	.main-menu ul li.explore .submenu-container li:first-child {
	    margin-left: -160px;
	}
	#hero h1 {
	    font-size: 2.5em;
	}
	#hero p {
	    font-size: 1.5em;
	}
	.button{
		font-size: 1.5em;
	}
	#hero .button{
		min-width: 250px;
	}
	.link{
		font-size: 1.125em;
	}
	.social.pull-right{
		float: left!important;
	}
	.item img.wp-post-image {
	    width: 35%;
	}
	.item .content {
	    width: 65%;
	    padding: 30px 35px 35px;
	    height: 270px;
	}
	.item .content .link{
		bottom: 25px;
	}
	.fb-flag {
	    width: 55%;
	    top: 100px;
	}
	.objects .post-item{
		max-width: 25%;
	}
	footer #menu-footer-menu li{
		margin-right: 35px;
	}
}

@media screen and (max-width: 992px){
	footer #menu-footer-menu li{
		margin-right: 15px;
		font-size: 1.1em;
	}
	.panel.cta .flex{
		display: block;
	}
	.panel.cta .button{
		margin-top: 25px;
	}
	.navbar-header button{
		background: transparent;
		border: 0;
		position: relative;
		width: 40px;
		height: 29px;
		padding: 0;
		margin: 0;
	}
	.navbar-header button:focus{
		outline: none;
	}
	.navbar-header button .screen-reader{
		text-indent: -9999px;
		float: left;
	}
	.navbar{
	    position: absolute;
	    top: 40px;
	    right: 20px;
	    z-index: 9999;
	}
	.icon-bar {
	    background: #56565a;
	    display: block;
	    width: 40px;
	    height: 5px;
	    border-radius: 10px;
	    margin: 0;
	}
	.icon-bar.top {
	    top: 0;
	    right: 0;
	    -webkit-transition: -webkit-transform .4s,top .2s .4s;
	    -o-transition: -o-transform .4s,top .2s .4s;
	    transition: transform .4s,top .2s .4s;
	    position: absolute;
	}
	.icon-bar.middle {
	    top: 12px;
	    right: 0;
	    -webkit-transition: -webkit-transform .4s,top .2s .4s;
	    -o-transition: -o-transform .4s,top .2s .4s;
	    transition: transform .4s,top .2s .4s;
	    position: absolute;
	}
	.icon-bar.bottom {
	    bottom: 0;
	    right: 0;
	    -webkit-transition: -webkit-transform .4s,bottom .2s .4s;
	    -o-transition: -o-transform .4s,bottom .2s .4s;
	    transition: transform .4s,bottom .2s .4s;
	    position: absolute;
	}
	.menu-overlay .icon-bar.top {
	    top: calc(50% - 4px);
	    right: 0;
	    -webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	    -o-transform: rotate(45deg);
	    transform: rotate(45deg);
	    -webkit-transition: top .2s,-webkit-transform .4s .2s;
	    -o-transition: top .2s,-o-transform .4s .2s;
	    transition: top .2s,transform .4s .2s;
	}
	.menu-overlay .icon-bar.middle{
		opacity: 0;
	}
	.menu-overlay .icon-bar.bottom {
	    bottom: calc(50% - 0px);
	    -webkit-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	    -o-transform: rotate(-45deg);
	    transform: rotate(-45deg);
	    -webkit-transition: bottom .2s,-webkit-transform .4s .2s;
	    -o-transition: bottom .2s,-o-transform .4s .2s;
	    transition: bottom .2s,transform .4s .2s;
	}
	.main-menu {
	    -webkit-box-sizing: border-box;
	    box-sizing: border-box;
	    position: fixed;
	    top: 110px;
	    left: 0;
	    width: 100%;
	    min-height: 100%;
	    background: #fff;
	    opacity: 0;
	    visibility: hidden;
	    -webkit-transition: opacity .6s,visibility 0s .6s;
	    -o-transition: opacity .6s,visibility 0s .6s;
	    transition: opacity .6s,visibility 0s .6s;
	    z-index: 1000;
	    -webkit-box-ordinal-group: 2;
	    -webkit-order: 1;
	    -ms-flex-order: 1;
	    height: 100vh;
	    margin: 0;
	}
	.logged-in .main-menu{
		top: 110px;
	}
	.main-menu.toggle-menu{
	    opacity: 1;
	    visibility: visible;
	    -webkit-transition: opacity .6s;
	    -o-transition: opacity .6s;
	    transition: opacity .6s;
	}
	.main-menu ul{
		margin: 0;
	    padding: 0;
	    border-top: 1px solid #D6D6D9;
	}
	.main-menu ul li{
		display: block;
		margin: 0 auto!important;
		max-width: 735px;
		font-size: 1.125em;
	}
	.main-menu ul li .submenu-container{
		border: 0;
		position: relative;
		left: 0;
		display: none;
	}
	.main-menu .menu-main-container{
	    height: calc(100% - 110px);
	    overflow-x: auto;
	    overflow-y: scroll;
	    -webkit-overflow-scrolling: touch;
	}
	.main-menu ul li a, .main-menu ul li a:hover{
		border: 0;
		padding: 15px;
	}
	.menu li.toggled .submenu-container{
	    display: block!important;
	    width: 100%;
	    position: relative;
	    border-radius: 0;
	    box-shadow: none;
	    background: transparent;
	    min-width: 0;
	    left: 0;
	    z-index: auto;
	}
	.main-menu ul li .submenu-container li{
		font-size: 0.9em;
		margin: 0;
		text-align: left;
	}
	.main-menu.toggle-menu{
	    opacity: 1;
	    visibility: visible;
	    display: block;
	    -webkit-transition: opacity .6s;
	    -o-transition: opacity .6s;
	    transition: opacity .6s;
	}
	.main-menu ul li .submenu-container li a{
	    padding: 11px 15px 11px 45px;
	    border: 0;
	}
	.main-menu ul li.menu-item-has-children {
	    background: url('assets/images/plus.svg') no-repeat calc(100% - 15px) 12px;
	    background-size: 25px;
	}
	.main-menu ul li.menu-item-has-children.toggled {
	    background: url('assets/images/minus.svg') no-repeat calc(100% - 15px) 20px;
	    background-size: 25px;
	}
	.main-menu ul .sub-menu li.menu-item-has-children ul{
		display: none!important;
	}
	.main-menu ul > li.menu-item-has-children > a{
		pointer-events: none;
	}
	.main-menu ul > li.menu-item-has-children .submenu-container li.menu-item-has-children > a{
		pointer-events: auto;
	}
	.main-menu ul .submenu-container{
		left: 0!important;
	}
	.main-menu ul li .submenu-container .sub-menu{
		display: block!important;
		border: 0;
	}
	.main-menu li.current-menu-item > a, .main-menu li.current_page_item > a, .main-menu li.current-menu-parent > a{
		color: #54328D;
	}
	.main-menu ul li .submenu-container li.current_page_item > a{
		font-weight: 600;
	}
	body.menu-overlay{
		overflow: hidden;
	}
	a.logo{
		top: 15px;
	}
	a.logo img.ht-logo {
	    width: 80px;
	    height: 81px;
	    margin-right: 10px;
	}
	a.logo img.ef-logo{
		top: 0;
	}
	header{
		height: 110px;
	}
	header .static{
		position: relative;
	}
	.footer-menu ul.menu li {
	    padding: 0 8px;
	    font-size: 1em;
	}
	footer .textwidget img.tcod {
	    width: 95px;
	}
	.item img.wp-post-image{
		width: 42%;
	}
	.item .content{
		width: 58%;
		padding: 20px;
		height: 249px;
	}
	.item .content h2 {
	    font-size: 1.5em;
	}
	.item .content h2, .item .content p {
	    margin: 0 0 5px!important;
	}
	.item .content p{
		font-size: 1.2em!important;
		line-height: 1.2em!important;
	}
	.item .content .link {
	    bottom: 20px;
	    font-size: 1em;
	}
	.fb-panel{
		padding-top: 50px;
	}
	.fb-flag{
		width: 45%;
		top: -50px;
	}
	.objects .post-item{
		max-width: 33.33%;
	}
	.main-menu ul li.menu-item-has-children > a:hover:after, .main-menu ul li.menu-item-has-children.rollover > a:after{
		display: none;
	}
}

@media screen and (max-width: 767px){
	.full-width-image button, .full-width-image button:hover{
		background-size: 60px;
	}
	.item.post.sponsor{
		display: block;
	}
	.searchform input[type="text"], .searchform #searchsubmit{
		width: 100%;
		margin: 0 0 10px;
		border-radius: 0;
	}
	.searchform #searchsubmit{
		border-radius: 10px;
	}
	.iframe-wrapper{
		padding-top: 100%;
	}
	footer #menu-footer-menu li {
	    margin-right: 0;
	    width: 100%;
	    display: block;
	    text-align: left;
	    padding: 10px 15px;
	    font-size: 1em;
	}
	#hero{
		height: 500px;
	}
	.image-panel .flex {
	    height: auto;
	    padding-right: 25px;
	    padding-left: 25px;
	}
	.panel img{
		max-width: 100%;
	}
	.panel img.mob-img{
		margin-bottom: 25px;
	}
	.image-panel{
		min-height: 0;
	}
	.panel{
		padding-bottom: 20px;
	}
	.cta {
	    padding: 50px 0;
	}
	.panel.cta .button{
		display: block;
		font-size: 1.25em;
		padding: 12px;
		text-align: center;
	}
	.panel.cta{
		margin-bottom: 0;
	}
	#enews h2{
		font-size: 1.8em;
	}
	.footer-menu {
	    margin: 10px 10px 0 0;
	}
	.footer-menu ul.menu li {
	    padding: 0 5px;
	    font-size: 0.9em;
	}
	footer .a-icons{
		margin: 3px 5px 0 0;
	}
	.social p{
		display: none;
	}
	.social .menu{
		top: 0;
	}
	.social{
		margin: 20px 0;
	}
	.social .menu li{
		margin-left: 2px;
	}
	.social .menu li:first-child{
		margin-left: 0;
	}
	footer .textwidget img{
		margin-bottom: 0;
	}
	footer .heading{
		font-size: 0.9em;
		border: 0;
		padding: 10px 0;
	}
	.item img.wp-post-image{
		width: 100%;
	}
	.item .content{
		width: 100%;
		height: auto;
	}
	.item .content .link{
		position: relative;
		bottom: 0;
		margin-top: 15px;
    	display: inline-block;
	}
	.listing {
	    margin: 30px 0;
	}
	.fb-flag{
		width: 400px;
	}
	.fb-panel {
	    padding-top: 60px;
	}
	#signup-form .modal-dialog.modal-dialog {
	    width: calc(100% - 30px);
	    height: calc(100vh - 150px);
	    top: 100px;
	    max-height: 520px;
	}
	#signup-form .modal-body{
		padding: 20px;
	}
	#signup-form .modal-body .gform_wrapper h3.gform_title{
		font-size: 1.7em;
		line-height: 1.2em;
    	margin: 0 0 20px;
	}
	#signup-form .modal-body{
		height: 520px;
	}
	#signup-form .modal-body .gform_wrapper{
		width: 100%;
	}
	.gform_wrapper .gform_footer{
		margin: 20px 0 0!important;
	}
	#signup-form .modal-dialog.modal-dialog{
		top: 60px;
	}
	.modal-dialog .close{
		top: -40px;
		width: 25px;
		height: 25px;
	}
	#enews .button, .home .cta .button{
		min-width: 100%;
	}
	#enews .button{
		margin-top: 25px;
	}
	.modal-dialog.video {
	    width: calc(100% - 30px);
	    height: calc(100vh - 175px);
	    top: 75px;
	    padding: 75px 0 0;
	}
	.gform_wrapper .gform_footer, .gform_wrapper .gform_footer input[type=submit]{
		width: 100%!important;
	}
	#page-content .gform_wrapper form{
		float: left;
	}
	.objects .post-item{
		max-width: 50%;
	}
}

@media only screen and (max-width: 641px){
	.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]),
	.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]){
	    line-height: 1.2em!important;
	    min-height: 48px!important;
	}
}

@media screen and (max-width: 414px){
	.full-width-image button, .full-width-image button:hover{
		background-size: 40px;
	}
	a.logo img.ef-logo {
	    width: 160px;
	    height: 60px
	}
	#hero{
		height: 400px;
	}
	#hero h1 {
	    font-size: 2em;
	}
	#hero p {
	    font-size: 1.375em;
	}
	#hero .button {
	    min-width: auto;
	    margin-top: 10px;
	}
	.button{
		font-size: 1.25em;
	}
	.intro-content{
		margin: 30px 0 50px;
	}
	.panel{
		margin-bottom: 50px;
	}
	h2 {
	    font-size: 1.75em;
	    line-height: 1.2em;
	}
	.link {
	    font-size: 1em;
	}
	.link .arrow{
		margin-right: 15px!important
	}
	footer .heading {
	    font-size: 0.8em;
	    line-height: 1.3em;
	}
	.footer-menu ul.menu li {
	    padding: 0 5px;
	    font-size: 0.8em;
	}
	.footer-menu{
		display: block;
		margin-right: 0;
		width: 100%;
	}
	footer .a-icons{
		margin-top: 15px;
	}
	.social {
	    margin: 15px 0;
	}
	#banner {
	    height: 180px;
	}
	#banner h1{
		font-size: 2em;
		line-height: 1.2em;
	}
	#page-content {
	    margin: 30px 0;
	}
	#page-content h1, #page-content h2, #page-content h3, #page-content h4, #page-content h5, #page-content h6, #page-content p, #page-content blockquote, #page-content ul, #page-content ol,
	#page-content .gform_wrapper form, #page-content .searchform{
	    margin: 0 5% 25px;
	}
	blockquote, blockquote p{
		font-size: 1.5em;
	}
	#page-content h3{
		font-size: 1.375em;
	}
	#page-content h4{
		font-size: 1.25em;
	}
	#page-content p, #page-content li {
	    font-size: 1.25em;
	    line-height: 1.3em;
	}
	.fb-flag {
	    width: 350px;
	    top: -30px;
	}
	#enews h2{
		font-size: 1.6em;
	}
	.title-overlay{
		font-size: 1.375em!important;
	}
}

@media screen and (max-width: 375px){
	a.logo img.ht-logo{
		margin-right: 5px;
	}
	a.logo img.ef-logo {
	    width: 150px;
	    height: 55px;
	    top: 2px;
	}
	.navbar{
		right: 15px;
	}
	footer .textwidget img {
	    width: 55px;
	    min-height: 40px;
	}
	footer .textwidget img.sach{
		height: 57px;
	}
	footer .textwidget img.tcod {
	    width: 80px;
	}
	#banner {
	    height: 150px;
	}
	#banner h1{
		font-size: 1.75em;
		line-height: 1.2em;
	}
	blockquote, blockquote p{
		font-size: 1.375em;
	}
	#page-content h3{
		font-size: 1.25em;
	}
	#page-content h4{
		font-size: 1.125em;
	}
	.gform_wrapper div.validation_error, .gform_wrapper .field_sublabel_above .ginput_complex.ginput_container label,
	.gform_wrapper li.gfield.gfield_error.gfield_contains_required label.gfield_label{
		font-size: 1em!important;
	}
	#enews h2{
		font-size: 1.5em;
	}
	.title-overlay{
		font-size: 1.25em!important;
	}
}

@media screen and (max-width: 350px){
	a.logo img.ef-logo {
	    width: 120px;
	    height: 45px;
	    top: 5px;
	}
	.social .menu li {
	    width: 40px;
	    height: 40px;
	}
	#menu-social li.fb a{
		background-size: 12px;
	}
	#menu-social li.twitter a{
		background-size: 27px;
	}
	#menu-social li.ig a, #menu-social li.youtube a{
		background-size: 26px;
	}
	#menu-social li.flickr a{
		background-size: 22px;
	}
	.fb-flag{
		width: 320px;
	}
	#signup-form .modal-body .gform_wrapper h3.gform_title {
	    font-size: 1.4em;
	    line-height: 1.2em;
	    margin: 0 0 10px;
	}
	.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), textarea{
		padding: 5px 10px!important;
	}
	#signup-form .modal-dialog.modal-dialog{
		height: calc(100vh - 60px);
		max-height: 500px;
	}
	#signup-form .modal-body {
	    height: 500px;
	}
	.gform_wrapper .gform_heading{
		margin-bottom: 0;
	}
	.modal-dialog .close {
	    top: 0;
	    width: 30px;
	    height: 30px;
	    background-color: rgba(0,0,0,0.8);
	    background-size: 15px;
	    text-align: center;
	    background-position: center;
	}
	#signup-form .modal-dialog.modal-dialog {
	    top: 20px;
	}
	.title-overlay{
		font-size: 1.125em!important;
	}
}

@media screen and (max-width: 320px){
	footer .textwidget img.tcod {
	    width: 60px;
	}
	footer .textwidget img {
	    margin-right: 4px;
	    width: 50px;
	}
	footer .textwidget img.sach {
	    height: 52px;
	}
	#banner {
	    height: 120px;
	}
	#banner h1{
		font-size: 1.5em;
		line-height: 1.2em;
	}
	h2 {
	    font-size: 1.5em;
	}
	.fb-flag{
		width: 300px;
	}
}



