html {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	/* These are technically the same, but use both */
	
	font-size:20px;
  
}
*,
*:before,
*:after {
	/* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	-webkit-box-sizing: inherit;
	-moz-box-sizing: inherit;
	box-sizing: inherit;
}
body {
	background: #efefef;
	/* Fallback for when there is no custom background color defined. */
}
#top {
	position: relative;
	word-wrap: break-word;
}

.single-attachment #content {
	margin: 0 auto;
	max-width: 900px;
}
/*--------------------------------------------------------------
3.0 Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}
.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}
.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
/*--------------------------------------------------------------
4.0 Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.entry-footer:before,
.entry-footer:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after,
.nav-links:before,
.nav-links:after,
.pagination:before,
.pagination:after,
.comment-author:before,
.comment-author:after,
.widget-area:before,
.widget-area:after,
.widget:before,
.widget:after,
.comment-meta:before,
.comment-meta:after {
	content: "";
	display: table;
	table-layout: fixed;
}
.clear:after,
.entry-content:after,
.entry-footer:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after,
.nav-links:after,
.pagination:after,
.comment-author:after,
.widget-area:after,
.widget:after,
.comment-meta:after {
	clear: both;
}
/*--------------------------------------------------------------
5.0 Typography
--------------------------------------------------------------*/

body,
button,
input,
select,
textarea {
	color: #222;
	font-size: 1em;
	font-weight: normal;
	line-height: 1.78;


}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	line-height: 1.4;
	margin: 0 0 0.75em;
	padding: 0;
	letter-spacing:-0.025rem;
}
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
	padding-top: 0;
}
h1 {
	font-size: 2em;
	font-weight: 700;
}
h2 {
	
	font-size: 1.6em;
	font-weight: 700;
}
h3 {
	
	font-size: 1.2em;
	font-weight: 600;
}
h4 {
	
	font-size: 1.1em;
	font-weight: 600;
}
h5 {
	
	font-size: 1.2em;
}
h6 {
	
	font-size: 1.1em;
}
p {
	margin: 0 0 1.5em;
	padding: 0;
}
dfn,
cite,
em,
i {
	font-style: italic;
}

address {
	margin: 0 0 1.5em;
}
pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 0.9375em;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}
code,
kbd,
tt,
var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 0.9375em;
}
abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}
mark,
ins {
	background: #eee;
	text-decoration: none;
}
big {
	font-size: 125%;
}
blockquote {
	quotes: "" "";
}
q {
	quotes: "“" "”" "‘" "’";
}
blockquote:before,
blockquote:after {
	content: "";
}
:focus {
	outline: none;
}
/*--------------------------------------------------------------
7.0 Formatting
--------------------------------------------------------------*/
hr {
	background-color: #bbb;
	border: 0;
	height: 1px;
	margin: 1.5em auto 1.5em auto;
	clear:both;
}
/*--------------------------------------------------------------
8.0 Lists
--------------------------------------------------------------*/
ul,
ol {
	margin: 0 0 1.5em;
	padding: 0;
}
ul {
	list-style: disc;
	list-style-position: inside;
}
ol {
	list-style: decimal;
	list-style-position: inside;
}
li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}
dt {
	font-weight: 700;
}
dd {
	margin: 0 1.5em 1.5em;
}
/*--------------------------------------------------------------
9.0 Tables
--------------------------------------------------------------*/
table {
	border-collapse: collapse;
	margin: 0 0 1.5em;
	width: 100%;
}
thead th {
	border-bottom: 2px solid #bbb;
	padding-bottom: 0.5em;
}
th {
	padding: 0.4em;
	text-align: left;
}
tr {
	border-bottom: 1px solid #eee;
}
td {
	padding: 0.4em;
}
th:first-child,
td:first-child {
	padding-left: 0;
}
th:last-child,
td:last-child {
	padding-right: 0;
}
/* =Structure
-------------------------------------------------------------- */
/* The main theme structure */
.container                              
{ 
	position: relative; 
	max-width: 1180px; 
	width:auto;
	margin: 0 auto; 
	padding: 0; 

}

/* Structure the footer area */
#site-info {
	float: left;
	font-size: 1rem;
	font-weight: bold;
	width: 700px;
}
#site-generator {
	float: right;
	width: 220px;
}
/* Text meant only for screen readers */
.screen-reader-text {
	position: absolute;
	left: -9000px;
}

.skip-link {
	color:#FFF;
	display:none;
}
/* individual site header & navigation */
#site-header {
	width:100%;
	height:90px;
	position:relative;
	display:block;
	z-index:300;
	transition: all 0.4s ease;
	background-color:#FFF;
	margin:0;
	padding:0;
	border-bottom:1px solid rgba(255,255,255,0.2);
}
#site-header.hactive {
	
	box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 2px;
}
#site-header-guts {
	transition: all 0.2s ease;
	display: flex;
    align-items: center;
	position:relative;
	max-width:1280px;
	margin:0 auto;
}
#site-header:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: 100% 0;
    transform-origin: 100% 0;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-duration: 0.2s;
    transition-duration: 0.2s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
}

#site-header.showmessages {
	top:34px;
}
#site-logo {
	display:block;
	position:relative;
	width:auto;
	padding:0px;
	transition: all 0.2s ease;
	vertical-align:middle;
	
}

#site-logo.plain {
	line-height:2rem;
	font-size:2rem;
	padding:0px 0px 0px 10px;
	max-width:33.3333%;
}

#site-logo a {
	text-decoration:none;
	display:block;
	position:relative;
}

#site-logo:not(.plain) a {
	height:90px;
	line-height:90px;
}

#site-logo img  {
	display:block;
	position:relative;
	max-height:90px;
	max-width:300px;
	padding:10px 0px;
	width:auto;
	height:auto;
	transition: all 0.2s ease;
	vertical-align:middle;
	top:50%;
	transform:translateY(-50%);
}

#site-logo svg {
	display:block;
	position:relative;
	height:80px;
	width:auto;
	fill:#FFF!important;
}

#site-logo svg path, #site-logo svg text {
	fill:#FFF!important;
}
#mobile-btn {
	display:none;
	z-index:100001;
	text-align:right;
	vertical-align:middle;
}

.showhamburger #mobile-btn {
	display:inline-block;
}

#site-nav-launch {
	display:none;
	background-color:#FFF;
	padding:40px 40px 100px 40px;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 2px;
	overflow-y:scroll;
	height:auto;
	max-height:100vh;
}

#nav-launch-wrapper {
	transition: all 0.2s ease;
	display: flex;
    align-items: top;
	position:relative;
	margin:0 auto;
	width:100%;
}

.nav-launch-container {
	flex:1;
	padding:0 10px;
	font-size:0.9rem;
}

.nav-launch-container ul {
	list-style-type:none;
}

.nav-launch-container li {
	padding-bottom:6px;
	margin-bottom:6px;
	border-bottom:1px dotted rgba(0,0,0,0.2);
	font-size:1.1rem;
}
.nav-launch-container li:last-child {
	border-bottom:none;
}

.nav-launch-container li ul {
	list-style-type:inherit;
}
.nav-launch-container li ul li {
	margin:5px 0px 5px 0px;
	font-size:.9rem;
	border-bottom:none;
}
.nav-launch-container.small-header-menu {
	display:none;
	width:100%;
}
.nav-launch-container.small-header-menu li {
	flex:none;
}
.nav-launch-container.small-header-menu li a {
	display:block;
	padding:0 3%;
	font-size:1.4rem;
	font-weight:700;
	color:#FFF;
	line-height:3rem;
	text-decoration:none;
}
#site-nav {
	flex:1 auto;
	text-align:right;
	z-index:301;
	transition: all 0.2s ease;
	position:relative;
	margin:0px;
}
#site-nav ul li a,
#site-nav ul li a:after,
#site-nav ul li a:before {
  transition: all .2s;
}
#site-nav ul {
	list-style-type:none;
	margin:0px;
	padding:0px;
	position:relative;
	text-align:center;
	display: inline-flex;
	transition: all 0.2s ease;
	vertical-align:top;
	
}
#site-nav ul li {
	flex:1 auto;
	flex-basis:content;
	margin:0px;
	padding:0px;
}
#site-nav ul li a {
	display: block;
	position:relative;
	font-size:0.9rem;
	font-weight:700;
	text-decoration: none;
	margin:0px;
	height:90px;
	line-height:90px;
	padding:0 14px;
	transition: all 0.2s ease;
	color:#222;
}

#site-nav ul li a sup {
	font-weight:500;
	font-size:0.6rem;
	vertical-align:top;
}

#site-nav ul li a:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 0px;
    bottom: 0;
    left: 0;
    right: 0;
    transition-property: height;
    transition-duration: 0.2s;
	z-index:-1;
}

#site-nav ul li a:after {
	content: "";
    position: absolute;
	width:1px;
	height:50px;
	background-color:rgba(0,0,0,0.1);
	top:50%;
	right:0;
	margin-top:-25px;
}

#site-nav ul li:last-child a:after {
	display:none;
}



#site-nav ul li a:focus-within:before, #site-nav ul li a:hover:before, #site-nav ul li.current-menu-item > a:focus-within:before, #site-nav ul li.current-page-ancestor > a:focus-within:before, #site-nav ul li.current-menu-item > a:hover:before, #site-nav ul li.current-page-ancestor > a:hover:before {
    height:6px!important;
}

#site-nav ul li.current-menu-item > a:before, #site-nav ul li.current-page-ancestor > a:before
{
   height:3px;
}

#site-nav ul li:last-child a
{
    border: none;
}

#site-nav ul ul li a:hover {
	text-decoration:underline;
}

#site-nav > ul > li:last-child > a {
    
}


#site-nav ul li.menu-item-has-children > a:after {
   /*content: ' ▾';*/
}

#site-nav li:focus-within > ul, #site-nav li:hover > ul {
    display: block;
}

#site-nav ul li.menu-item-home a, #site-nav ul li.navsearch a, #site-nav ul li.navtranslate a {
	font-family:"dashicons";
	font-weight:normal!important;
	font-size:1em;
	width:50px;
	height:90px;
	padding:0px 5px!important;
	overflow:hidden;
	text-indent:1000px;
}
#site-nav ul li.menu-item-home a:before {
	content: "\f102";
	width:50px;
	padding:0px 5px!important;
	height:90px!important;
	text-indent:0!important;
}
#site-nav ul li.navsearch a:before {
	content: "\f179";
	width:50px;
	padding:0px 5px!important;
	height:90px!important;
	text-indent:0!important;
}
#site-nav ul li.navtranslate a:before {
	content: "\f326";
	width:50px;
	padding:0px 5px!important;
	height:90px!important;
	text-indent:0!important;
}

/* level 2 list */
#site-nav ul ul {
	display: none;
	margin: 0px!important;
	padding: 0px 0px 0px 0px;
	position: absolute;
	top: 90px;
	left:inherit;
	width:auto!important;
	z-index:299;
}
#site-nav ul ul li {
	display:block;
	margin: 0!important;
	padding: 0;
}
#site-nav ul ul li a {

	text-indent:0;
	text-align:left;
	height:50px;
	line-height:50px;
	padding:0px 15px;
	font-size:0.8rem;
	font-weight:500;
	text-decoration:none;
	text-transform:none;
	letter-spacing:0px;
	text-shadow:none;
	width:inherit;
	border-right:none;
	margin:0px;
	white-space:nowrap;
	background-color:#FFF;
	color:#222;
	border-bottom:1px solid rgba(0,0,0,0.10);
}
#site-nav ul ul li a:hover {
	
}
#site-nav ul ul li:last-child a {
	border-bottom:0;	
}
/* level 3+ list */
/* level 3+ list */
#site-nav ul ul ul {
	left: 100%;
	top:inherit;
	margin-top:-50px!important;
}

#site-nav ul ul ul.edge {
	left:auto;
	right:100%!important;
}

#site-nav ul ul ul li:last-child a {
	border-bottom:0;
}

#site-nav ul li.menu-item-has-children > a:after {
   /*content: ' ▾';*/
}

.site-sub-nav {
	display:block;
	position:relative;
	width:100%;
	z-index:100;
	margin:0 auto 20px auto;
}

.site-sub-nav.sactive {
	position:fixed;
	top:90px;
	left:0;
	right:0;
}

.site-sub-nav ul {
	list-style-type:none;
	margin:0!important;
	padding:0!important;
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.site-sub-nav ul li {
	margin:0!important;
	padding:0!important;
	flex:1;
	flex-basis: 13%;
  	flex-grow: 1;
}
.site-sub-nav ul li a {
	display:block;
	position:relative;
	padding:10px;
	font-size:1rem;
	color:#FFF;
	text-decoration:none;
	vertical-align:middle;
	text-align:center;
	font-weight:700;
	border-right:1px solid rgba(255,255,255,0.2);
}
.site-sub-nav ul li.current-menu-item a {
	
}
.site-sub-nav ul li.current-menu-parent a {
	background-color:#666!important;
}
.site-sub-nav ul li:last-child a {
	border:0;
}
/*royal slider hacks */
.royalSlider > .slidetest {
display:none; 
/* or display:none depending on your needs... */
}
#splash {
	display:block;
	position:relative;
	width:100%;
	height:auto;
	padding:0;
	margin:0;
	overflow:hidden;
}

#splash.alt {
	height:90px;
	min-height:90px;
	margin-top:-90px;
	padding:0;
}

#splash.padtop {
	min-height:114px;	
}
.splashwhite {
	display:block;
	position:absolute;
	width:100%;
	height:100%;
	background-size:cover;
	background-position:center center;
	z-index:0;
	top:0;
	left:0;
	right:0;
	bottom:0;
	
}

#splash .splashwhite {
	animation: animatedBackground 5s ease-out;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
}
.splashwhite:after {
	content:"";
	width:100%;
	height:100%;
	display:block;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background-image:linear-gradient(to top, rgba(46,49,146,0.8) 60%, rgba(46,49,146,0.0));
}

.splash-center {
	display:block;
	position:relative;
	margin:0 5%;
	padding:35vh 0;	
	width:90%;
	z-index:10;
	text-align:center;
}

.splash-center input, .splash-center textarea, .splash-center select {
	max-width:100%;
	width:auto;
}

.splash-center h1,
.splash-center h2, .deck .splash-center h2 {
	display:block;
	position:relative;
	font-size:4rem;
	font-weight:700;
	max-width:100%;
	margin:0px 0px 0px 0px;
	padding:0;
	color:#FFF;
	text-shadow: rgba(0, 0, 0, 0.5) 0px 2px 2px;
}

.splash-center h2.interior {
	font-size:2rem;
}
.splash-center h2 span {
	display:block;
	text-shadow:none!important;
}
.splash-center h3, .deck .splash-center h3 {
	display:inline-block;
	position:relative;
	font-size:1.6rem;
	line-height:26px;
	font-weight:700;	
	margin:0px 0px 20px 0px;
	padding:0px;
	color:#FFF;
	text-shadow: rgba(0, 0, 0, 0.5) 0px 2px 2px;
}
.splash-center h2 a,
.splash-center h3 a {
	text-decoration:none;
	color:inherit;
	
}	


.splash-center p, .deck .splash-center p {
	display:block;
	color:#FFF;
	font-size:1.2rem;
	line-height:26px;
	font-weight:600;	
	margin:0px 0px 20px 0px;
	padding:0px;
	text-shadow: rgba(0, 0, 0, 0.5) 0px 2px 2px;
	
}
.splash-center p a, .deck .splash-center p a {
	color:#FFF!important;	
}
.splash-center li {
	color:#FFF;
	font-size:1rem;
	line-height:26px;
	font-weight:600;
	
}
#splash img {
	
	display:block;
	position:relative;
	width:100%;
}

.splash-center img {
	max-width:300px; 
	margin:0 auto
}

#splash #banner {
	display:inline-block;
}

#splash #banner img {
	width:auto!important;
	height:60px;
}



#splash .splash-video-wrapper {
	position: absolute;
	top: 0;
	bottom: 0;
	left:0;
	right:0;
	width: 100%;
	height: 100%; 
	overflow: hidden;
	display:block;
	z-index:0;
}

#splash .splash-video-wrapper video {
	/* Make video to at least 100% wide and tall */
	min-width: 100%;
	min-height: 100%; 

	/* Setting width & height to auto prevents the browser from stretching or squishing the video */
	width: auto!important;
	height: auto!important;

	/* Center the video */
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	object-fit: cover;
    position: absolute;
	z-index:-1;
}

#splash .splashvideowhite {
	width:100%;
	height:100%;
	display:block;
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background-size:cover;
	background-position:center center;
	z-index:10;
}

.video-container {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 100%;
	height: 100%; 
	overflow: hidden;
}
.video-container video {
	/* Make video to at least 100% wide and tall */
	min-width: 100%; 
	min-height: 100%; 

	/* Setting width & height to auto prevents the browser from stretching or squishing the video */
	width: auto;
	height: auto;

	/* Center the video */
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.blog-entry {
		
	margin-bottom:20px;
	position:relative;
}

.blog-date {
	font-size:.8rem;
	color:#777;
	margin-bottom:15px;
}
.blog-date span {
	
}

/* =Content
-------------------------------------------------------------- */
main {
	position:relative;
}

#the-content {
	display:block;
	position:relative;
	width:auto;
}

#the-content:after {
	content:"";
	display:block;
	position:absolute;
	bottom:0;
	width:100%;
	height:100%;
	z-index:-1;
	background-color:#efefef;
	background-image:url('../img/content-bg.jpg');
	background-repeat:no-repeat;
	background-position:bottom center;
	background-size:100% auto;
	opacity:0.9;
}

#the-content .container {
	display: flex;
	flex-wrap: wrap;
}

.one-column #the-content .container,
.woocommerce #the-content .container {
	display:block;
	flex:none;
}

#the-content.wrap-one-column {
	display:block;
}

#container {
	flex-grow: 1;
	flex-shrink: 1;
	flex-basis: 30ch;
	min-width: 66.6666%;
}

#container #content {
	max-width:100%;
}

#container.one-column #content {
	min-width:100%;
}

#container:not(.one-column) #content {
	max-width:95%;
}

#content {
	padding:30px 0px;
	overflow-wrap: break-word;
	display:block;
	posiiton:relative;
}
#content,
#content input,
#content textarea,
.deck {
	color: #222;
}
#content img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}
#content p,
#content dd,
#content pre,
#content hr {
	margin-bottom: 24px;
}
#content ul li, #content ol li {
	margin:0px 0px 5px 20px;
}

.deck ul li, .deck ol li {
	margin-bottom:10px;
}

#content ul,
#content ol,
.deck ul,
.deck ol {
	font-size:.95rem;
	list-style-position: inside;
}
#content ul ul,
#content ol ol,
#content ul ol,
#content ol ul {
	margin-bottom: 0;
	
}
#content pre,
#content kbd,
#content tt,
#content var {
	font-size: .8rem;
	line-height: 1.6rem;
}
#content code {
	font-size: .7rem;
}
#content dt,
#content th {
	color: #222;
}
#content h1,
#content h2,
#content h3,
#content h4,
#content h5,
#content h6,
.deck h1,
.deck h2,
.deck h3,
.deck h4 {
	line-height: 1.5em;
	margin: 0 0 15px 0;
}

#subnav {
	position:relative;
	display:block;
	border-bottom:1px dotted rgba(255,255,255,0.30);
	
}

#subnav ul {
	display:flex;
	flex-wrap:wrap;
	list-style-type:none;
	margin:0;
	padding:0;
}

#subnav ul li {
	flex:1 0 21%;
	
	border-right:1px dotted rgba(255,255,255,0.30);
}
#subnav ul li:last-child {
	border:0;
}
#subnav ul li a {
	display:block;
	text-align:center;
	position:relative;
	color:#FFF!important;
	text-decoration:none;
	padding:30px;
}

#subnav ul li a:hover {
	background-color:rgba(0,0,0,0.10);
}

#subnav h3 {

	text-transform:uppercase;
	font-weight:700;
}


.entry-title a:link,
.entry-title a:visited {
	
	text-decoration: none;
}
.entry-title a:active,
.entry-title a:hover {
	
}
.blog-entry .entry-title a {
	text-decoration:underline;
}
.entry-meta {
	color: #888;
	font-size: .8rem;
	margin-bottom:10px;
}
.entry-utility {
	clear: both;
	color: #888;
	font-size: .8rem;
	margin-bottom:20px;
}
.entry-meta a,
.entry-utility a {
	color: #888;
}
/*--------------------------------------------------------------
16.0 Media
--------------------------------------------------------------*/
img,
video {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}
/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	margin-bottom: 1.5em;
	max-width: 100%;
}
/* Remove bottom on embeds that wrapped in paragraphs via wpautop. */
p > embed:only-child,
p > iframe:only-child,
p > object:only-child {
	margin-bottom: 0;
}
/* SVG Icons base styles */
.icon {
	display: inline-block;
	fill: currentColor;
	height: 1em;
	position: relative; /* Align more nicely with capital letters */
	top: -0.0625em;
	vertical-align: middle;
	width: 1em;
}
/*--------------------------------------------------------------
16.1 Galleries
--------------------------------------------------------------*/

.gallery {
	display:flex;
	position:relative;
	justify-content: space-between;
	flex-wrap:wrap;
	margin-bottom:30px;
}

.gallery-item {
	display:block;
	position:relative;
	width:auto;
	text-align:center;
	margin:1.5%;
}

.gallery.gallery-columns-1 .gallery-item {
	flex:none;
	max-width:97%;
}

.gallery.gallery-columns-2 .gallery-item {
	flex:0 0 47%;
}

.gallery.gallery-columns-3 .gallery-item {
	flex:0 0 30.3333%;
}

.gallery.gallery-columns-4 .gallery-item {
	flex:0 0 22%;
}

.gallery.gallery-columns-5 .gallery-item {
	flex:0 0 17%;
}

.gallery.gallery-columns-6 .gallery-item {
	flex:0 0 13.6666%;
}

.gallery.gallery-columns-7 .gallery-item {
	flex:0 0 11.2857%;
}

.gallery.gallery-columns-8 .gallery-item {
	flex:0 0 9%;
}

.gallery-item .gallery-icon {
	display:block;
	position:relative;
	width:100%;
}

.gallery-item .gallery-icon a {
	
	display:block;
	position:relative;
	width:100%;
	text-align:center;
}

.gallery-item .gallery-icon a img {
	display:block;
	position:relative;
	width:100%;
}

.gallery-item .gallery-caption {
	display:block;
	position:relative;
	margin-top:10px;
	font-size:1rem;
	font-weight:900;
}

/* =Navigation
-------------------------------------------------------------- */
.navigation {

	font-size: .8rem;
}
.navigation a {
	display:inline-block;
	padding:0 6px;
	border-right:1px solid #efefef;
	
}
.navigation a:last-child {
	border:0;
}
.navigation a:visited {
	color: #888;
	
}
.navigation a:active,
.navigation a:hover {
	
}
.nav-previous {
	float: left;
	width: 50%;
}
.nav-next {
	float: right;
	text-align: right;
	width: 50%;
}
#nav-above {
	margin: 0 0 18px 0;
}
#nav-above {
	display: none;
}
.paged #nav-above,
.single #nav-above {
	display: block;
}
#nav-below {
	margin: 20px 0 0 0;
}

/* =Widget Areas
-------------------------------------------------------------- */

.widget-area {
	flex-basis: 9rem;
  	flex-grow: 1;
	position:relative;
	display:inline-block;
	padding:30px 0px 0px 30px;
	z-index:1;
	font-size:0.9rem;
	width:auto;
	height:auto;
}

.widget-area .widget-container {
	padding:0 0 30px 0;
	margin-bottom:0 0 30px 0;
	border-bottom:1px solid #ccc;
	
}

.widget-area:before {
	content: "";
	display:block;
	position:absolute;
	width:100%;
	height:100%;
	left:0;
	right:0;
	top:0;
	bottom:0;
	background-image:linear-gradient(to right, rgba(0,0,0,0.05), rgba(0,0,0,0.0));
	z-index:-1;
}

.widget-area:after {
	content: "";
	display:block;
	position:absolute;
	width:100%;
	height:100%;
	left:0;
	right:0;
	top:0;
	z-index:-2;
	box-shadow: inset 7px 0 7px 1px rgba(0,0,0,0.05);
}

.widget-area ul {
	list-style: none;
	margin-left: 0;
	
}
.widget-area ul ul {
	list-style: square;
	margin-left: 1.3em;
}

.widget-area ul li.customSideNav ul li a {
	font-size:0.9rem;
	font-weight:900!important;
	text-decoration:none;
}

.widget-area ul li.customSideNav ul li a:before {
	content: "< ";
}

.home-widget-launch {
	display:block;
	position:relative;
	color:#FFF;
	height:auto;
	padding:0;
	
	top:-75px;
	z-index:12;
}

.home-widgets {
	
	display:flex;
	color:#FFF;
	position:relative;
	margin-bottom:-75px;
	border-radius:10px!important;
	padding:0;
	overflow:hidden;
	box-shadow: rgba(0, 0, 0, 0.5) 0px 2px 2px;
}

.home-widgets .widget-container {
	flex:1;
	color:#FFF;
	padding:20px;
	margin:0;
	position:relative;
}

.home-widgets .widget-title {
	color:#FFF!important;
}


.home-widgets p {
	font-size:.9rem;
	color:#FFF;
}
.home-widgets a {
	color:#FFF;
}

.home-widgets img {
	display:block;
	width:100%;
	height:auto;
}

.widget-container {
	padding:0px 0px 0px 0px;
	margin:0px 0px 20px 0px;
	position:relative;
}
.widget-container img {
	display:block;
	width:auto;
}

.widget-container ul {
	margin:0px!important;
	padding:0px!important;	
}
.widget-container li {
	list-style-type:none;
	margin:4px 0px!important;
	padding:4px 0px!important;
	border-bottom:1px solid rgba(0,0,0,0.10);
}
.widget-container li:last-child {
	border-bottom:none;	
}

.widget-title {
	margin-bottom:20px;
	font-size:1.1rem;
	font-weight:700;
}

.general-grid {
	display:flex;
	position:relative;
	justify-content: space-between;
	flex-wrap:wrap;
}

.general-grid .grid-box {
	flex:0 0 47%;
	margin:1.5%;
}

.general-grid .grid-box.smaller {
	flex:0 33.3333%;
}

.general-grid .grid-box.smallest {
	flex:0 25%;
}

.grid {
	display:grid;
	grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 30px;
	position:relative;
	width:100%;
}

.grid-item {
	
	padding:0px;
	display:block;
	position:relative;	
	text-decoration:none!important;
	border:1px solid #EFEFEF;
}

.grid-item.wide {
	display:block;
	width:inherit;
	margin:0;
	
}

.grid-item-pop {
	position: relative;
	background: #FFF;
	padding: 20px;
	width: auto;
	max-width: 80%;
	margin: 20px auto;
}

.grid-item-content {
	position:relative;
	display:block;
	height:auto;
	padding:10px;
	
}
.grid-item-content ul {
	list-style-type:none;
	margin:0px;
	padding:0px;	
}
.grid-item-content li {
	font-size:.7rem;
	margin:0px 0px 5px 0px;
	padding:0px 0px 0px 0px;
	line-height:20px;
	clear:both;
	
}
.grid-item-content h3 {
	font-size:1rem!important;
	line-height:1em!important;
	margin-bottom:0px!important;
	letter-spacing:0px!important;
	font-weight:700!important;
	
	
}
.grid-item-content a h3  {
	text-decoration:none;
	
	font-weight:800!important;
	margin-bottom:5px!important;
}
.grid-item p {
	font-size:.9rem;
	line-height:20px;
	margin-bottom:0!important;
}
.grid-item small {
	color:#999;
	font-size:.5rem;	
}
.grid-item-img {
	position:relative;
	display:block;
	width:100%;
	height:auto;	
}
.grid-item img {
	width:100%!important;
	height:auto!important;
	display:block;	
	
}
.grid-tag p {
	line-height:40px;
	font-size:.7rem;
}

#articles, .articles, .alm-reveal {
	position:relative;
	
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	flex-basis:auto!important;
	max-width:none!important;
	min-width:100%;
	width:auto;
	margin:auto auto 30px auto;
	padding:auto;
}

.article-block {
	flex:0 48%;
	margin:1.5% 0;
	box-shadow: rgba(0, 0, 0, 0.2) 0px 2px 2px;
	background-color:#FFF;
}

.article-block.smaller {
	flex: 0 31.3333%;
}

.article-block a {
	text-decoration:none!important;
}

.article-block .splashwhite {
	display:block;
	z-index:1!important;
	transition: all 0.2s ease;
	filter: opacity(0);
}

.article-block a:hover .splashwhite {
	filter: opacity(1);
}

.article-image {
	position:relative;
	width:100%;
	height:auto;
	text-align:center;
	background-color:#222;
	margin:0px;
	padding:0px;

	z-index:0;
	
}
.article-image img {
	display:block;
	position:relative;
	width:100%;
	height:auto;
	margin:0 auto;
	vertical-align:top;
	

	transition: filter 0.3s ease-in;
}
.article-content {
	display:block;
	position:relative;
	padding:20px;
	background-color:#ffffff;
	margin:0;
	text-decoration:none;
}
.article-content h3, .article h3 {
	position:relative;
	display:block;
	white-space:wrap;
	text-align:left;
	font-size:1.1rem;
	line-height:1.4rem;
	font-weight:700;
	margin-bottom:0;
	color:#222!important;
}

.article-content p, .article p {
	font-size:0.9rem;
	color:#222!important;
}
.article-block a:hover img {
	blur:100px;
}
.article-content .tags {
	position:relative;
	display:block;
	font-size:0;
	text-align:left;
}
.article-content .tags ul {
	list-style-type:none;
	margin:0px;
	padding:0px;
}
.article-content .tags ul li {
	display:inline-block;
	color:#FFF;
	margin:0px!important;
	font-size:10px;
}

.article-block.width-20 {
	width:19%;
}

.article-block.width-50 {
	width:49%;	
}
.article-block.width-100 {
	width:99%;
}
.article-block.width-fill {
	margin:0px;
	padding:5px;
	display:block;	
	width:100%;
	max-height:inherit;
	overflow:hidden;
	white-space:normal;
}
.article-block.width-fill h3 {
	font-size:.8rem;
	line-height:14px;
	white-space:inherit;
}
.article-block.width-100 h3 {
	font-size:1.1rem;
	line-height:22px;
}

.article-jump {
	display:block;
	width:100%;
	padding:0;
	margin:0;
	background-color:#222;
}

.article-jump ul {
	list-style-type:none;
	margin:0!important;
	padding:0!important;
	display:grid;
	grid-template-columns: 1fr 1fr!important;
    grid-gap: 0px!important;
}

.article-jump ul li {
	display:inline-block;
	padding:0!important;
	margin:0!important;
}

.article-jump ul li a {
	display:block;
	height:50px;
	width:100%;
	line-height:50px;
	padding:0px 30px;
	text-align:center;
	text-decoration:underline;
	color:#FFF;
	box-shadow:none!important;
	font-weight:700;
	border-radius:0;
}

.article-pop {
	display:block;
	position:absolute;
	left:0;
	right:0;
	top:calc(100% - 50px);
	bottom:0;
	background-color:rgba(255,255,255,1);
	padding:15px;
	text-decoration:none;
	transition: 0.3s ease-in-out;
}
.article-pop h3 {
	font-size:.9rem!important;
	line-height:1.1rem!important;
	margin-bottom:10px!important;


}
.article-pop p {
	font-size:.8rem;
}
.article-block:hover .article-pop {
	top:30%;
}
.tab-content{
	display: block;
}
.tab-content.hidden{
	display: none;
}

/* =Footer
-------------------------------------------------------------- */
#site-footer {
	padding:100px 0px;
	text-align:center;
	position:relative;
	display:block;
	height:auto;
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center center;
	background-color:#FFF;
	font-size:0.9rem;
}

.whitecover {
	position:absolute;
	z-index:0;
	top:0;
	left:0;
	right:0;
	bottom:0;
}

.footer-logo {
	position:relative;
	display:block;
	text-align:center;
	margin:30px 0px 80px 0px;
	padding:0;
	z-index:1;
	width:auto;
}
.footer-logo img, .footer-logo svg {
	display:block;
	position:relative;
	max-width:400px;
	width:auto;
	height:auto;
	margin:0px auto;
}

#footer-widgets {
	display:flex;
	position:relative;
	margin:0px;
	padding:0px;	
	text-align:left;
	z-index:1;
}

#footer-widgets .widget-container {
	flex:1;
	padding:0 10px;
	margin:0 10px;
	border-right:1px solid rgba(255,255,255,0.1);
	text-align:center;
}

#footer-widgets .widget-container:last-child {
	border:0;
}

#site-footer ul#footer-widgets .widget-title a {
	text-transform:uppercase;
	text-decoration:none;
}


#site-footer hr {
	opacity:0.10;
}
#copyright {
	display:block;
	text-align:center;
	margin:30px auto;
	padding:0 30px;
	z-index:1;
	
}
#copyright p {
	font-size:.7rem;
	margin-bottom:10px;
}


/* =Mobile Safari ( iPad, iPhone and iPod Touch )
-------------------------------------------------------------- */
pre {
	-webkit-text-size-adjust: 140%;
}
code {
	-webkit-text-size-adjust: 160%;
}
#access,
.entry-meta,
.entry-utility,
.navigation,
.widget-area {
	-webkit-text-size-adjust: 120%;
}
#site-description {
	-webkit-text-size-adjust: none;
}
.top {
	position:absolute;
	right:30px;
	font-size:.5rem;
	text-transform:uppercase;
	text-decoration:none!important;	
}
.top:after {
	content:'↑';
	color:#CFCFCF;	
	
}

.entry-title span {
	font-size:1.1rem!important;
	font-weight:normal!important;	
}
.entry-excerpt {
	font-size:.8rem;
	text-align:center;
	font-style:italic;
	padding-bottom:20px;
	margin-bottom:20px;
	border-bottom:1px dotted #999;	
}



/* clearfix */
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
 
.clearfix {
	display: block;
}
 
html[xmlns] .clearfix {
	display: block;
}
 
* html .clearfix {
	height: 1%;
}

/* general */



.circle {
	border-radius: 50%;
	width:80%;
	height:auto;
	margin:0 auto 30px auto;
}
.center {
	text-align:center;	
}
.content-buffer {
	padding:30px 0px;	
}

/* return to top */
#back-top {
	position: fixed;
	bottom: 28px;
	right:80px;
	z-index:299;
	-webkit-transform: translate3d(0,0,0)!important;
	display:none;
	text-align:center;
	padding:20px 0 0 0;
	
	
}
#back-top a {
	display:block;
	padding:20px 20px 0px 20px ;
	background-color:rgba(0,0,0,0.10);
}

#back-top a span {
	text-indent:-10000px;
	width:30px;
	height:30px;
	border: solid white;
	border-width: 0 3px 3px 0;
	display: inline-block;
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}
#back-top a:hover {
	opacity:1;
}
img.tinythumb {
	width:auto!important;
	height:auto!important;
	max-width:32px;
}
.locator-container {
	position:relative;
	display:block;
	text-align:left;
	padding:0 0 36px 0;
}

.locator-container:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
.sidebar {
  float:left;
  width:33.3333%;
  height:auto;
  top:0;left:0;
  overflow:hidden;
  border-right:1px solid rgba(0,0,0,0.25);
	height:600px;
}
#map {
	display:block;
	position:relative;
	min-height:400px;
}
.mapboxgl-marker {
  border: none;
  cursor: pointer;
  height: 56px;
  width: 56px;
  background-image: url(../img/marker.png);
}

/* Marker tweaks */
.mapboxgl-popup {
  padding-bottom: 0px;
}

.mapboxgl-popup-close-button {
  
}
.mapboxgl-popup-content {
  padding:0;
  width:180px;
}
.mapboxgl-popup-content-wrapper {
  padding:1%;
}


.mapboxgl-popup-content div {
  padding:0px;
}

.mapboxgl-container .leaflet-marker-icon {
  cursor:pointer;
}

.mapboxgl-popup-anchor-top > .mapboxgl-popup-content {
  margin-top: 15px;
}

.mapboxgl-popup-anchor-top > .mapboxgl-popup-tip {
  border-bottom-color: #91c949;
}
.map {
	width:66.6666%;
	float:left;
	
	text-align:left;
}
.small-map {
	display:block;
	width:100%;
	height:300px;
	text-align:left;
}

.listings {
	height:100%;
  overflow:auto;
  padding-bottom:60px;
}

.listings .item {
  display:block;
  border-bottom:1px solid #eee;
  padding:10px;
  text-decoration:none;
}

.listings h3 {
	font-size:130%!important;
}

.listings .item:last-child { border-bottom:none; }
.listings .item .title {
  display:block;

  font-weight:700;
}

.listings .item .title small { font-weight:400; }
.listings .item.active .title,
.listings .item.active {
  background-color:#f8f8f8;
}
#memberships {
	padding:40px 0px;	
	
}

.memberships {
	padding:5px 0px;	
	position:relative;
	font-size: 0;
	text-align:center;
}
.member {
	display:inline-block;
	width:auto;
	position:relative;
	text-align:center;
	vertical-align:middle;
	margin:10px;
}
.member img {
	width:auto!important;
	height:auto!important;
	display:block;	
	margin:auto auto;
	max-height:140px;
	max-width:200px;
	padding:0px;
 	
}

.membershipssmall {
	display:inline-block;
	width:auto;
	padding:0px;	
	margin:0;
	position:relative;
	font-size: 0;
	text-align:left;
	
}
.membersmall {
	display:inline-block;
	width:auto;
	position:relative;
	text-align:left;
	vertical-align:middle;
	margin:-20px 5px 0 0;
}
.membersmall img {
	width:auto!important;
	height:auto!important;
	display:block;	
	margin:auto auto;
	max-width:100px;
	max-height:40px;
	padding:0px;
 	
}

.member-filters {
	display:block;
}

/* decks */
.decks {
	position:relative;
	display:block;
}
.deck {
	display:block;
	position:relative;
	width:100%;
	height: auto;
	padding:0;
	margin:0;
	background-color:#FFFFFF;
	background-size:cover;
	background-position:center;
	
}

.deck.alt {
	background-color:#f8f8f8;	
}

.deck.plain {
	padding:30px 0px;
	border-top:1px solid #ddd;
	border-bottom:1px solid #ddd;
}
.deck.noimage {
	
}

.deck.hasimage {
	background-color:#FFF!important;
	
}

.deck-collage {
	position:relative;
	display:block;
	margin:40px 0px 0px 0px;
	padding:10px 0 0 0;
	border-bottom:1px solid #efefef;
}

.deck .gallery-caption {
	display:none!important;
}

.collage-content {
	position:relative;
	display:block;
	width:60%;
	padding:30px 30px 30px 0px;
}

.collage-images {
	position:relative;
	display:block;
}
.collage-images img {
	position:relative;
	display:block;
	width:100%;
	height:auto;
}

.collage-image-container {
	
	position:relative;
	display:block;
	width:100%;
	border:5px solid #FFF;
	box-shadow:0px 5px 5px 0px rgba(0,0,0,0.40);
}



.collage-image-primary {
	position:relative;
	display:block;
	width:66.6666%;
	z-index:1;
	margin:20px 0 0 0;
}

.collage-image-2,
.collage-image-3,
.collage-image-4
{
	position:absolute;
}
.collage-image-2 {
	top:-40px;
	width:40%;
	right:0;
	z-index:2;
	transform: rotate(5deg);
}

.collage-image-3 {
	top:90%;
	width:36%;
	left:62%;
	z-index:3;
	transform: rotate(3deg);
}

.collage-image-4 {
	top:50%;
	width:25%;
	right:30px;
	z-index:4;
	transform: rotate(-2deg);
}

.jump-nav a {
	color:#FFF;
}
/* testimonials */

.testimonials-curve {
	position: absolute;
	overflow: hidden;
	height: 30px;
	width:100%;
	background-color:transparent;
	z-index:10;
	
}

.testimonials-curve::before {
	border-radius: 100%;
	position: absolute;
	right: -60px;
	left: -60px;
	top: -60px;
	content: '';
	bottom: 0;
}

.testimonials {
	display:block;
	padding:30px 0px;
	text-align:center;
}
.testimonial {
	display:block;
}
.testimonial h3 {
	font-size:1.1rem;
}
.testimonial p {
	margin-bottom:0px;
	font-size:.8rem;
	
}
.opaque {
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	-khtml-opacity: 0.5;
	opacity: 0.5;	
}
.gradient {
	background: -moz-linear-gradient(45deg, #f8f8f8 0%, #efefef 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(45deg, #f8f8f8 0%,#efefef 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(45deg, #f8f8f8 0%,#efefef 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f8f8f8', endColorstr='#efefef',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.divchild {
	display:none;
	
}

/* ads */

.ads {
	display:block;
	position:relative;
	text-align:center;
	width:100%;
	margin:0px auto;
}

.ads .ad img {
	display:block;
	width:100%;
	height:auto;
}

.ads.home, .ads.footer {
	max-width:728px;
}

.ads.home {
	padding:10px 0px;
}

.ads.sidebar {
	margin: 0 auto 30px auto;
}

.ad {
	display:block;
	position:relative;
	margin:0px auto;
	width:100%;
	text-align:center;
	line-height:normal;
}

.ad a {
	
	line-height:normal;
}

/* social */
#social-block {
	display:block;
	font-size: 1.2rem;
}
ul.social-icons {
	list-style-type:none;
	margin:0;
	padding:0;
	font-size:0;
	text-align:left;
	display:block;
}

#site-footer ul.social-icons {
	text-align:center;
}
ul.social-icons li {
	display:inline;
	margin:0px 10px;
}
ul.social-icons li a.social-icon {
	
	display: inline-block;
	height: 60px;
	
	text-align: center;
	width: 60px;
}
ul.social-icons li a.social-icon .icon {
	height: 40px;
	top: 10px;
	width: 40px;
	vertical-align: top;
	color:#222;
	fill:#222;
}

ul.social-icons.darker li a.social-icon .icon, ul.social-icons li a:hover.social-icon .icon {
	color:#FFF!important;
	fill:#FFF!important;
}

ul.threecol {
  
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}

#searchbox {
	display:none;
	position:absolute;
	text-align:center;
	padding:20px 0px;
	top:90px;
	width:100%;
}

#searchbox form {
	display:block;
	position:relative;
}

#crumbs, #breadcrumbs {
    display:block;
	font-size:.7rem!important;
	padding-bottom:10px;
	border-bottom:1px solid #efefef;
}
  
#crumbs .separator, #breadcrumbs .separator {
    font-size:.7rem;
    font-weight:100;
    color:#ccc;
}

/* forms */


#the-content label {
	width:auto;
	max-width:100%!important;
	font-size:.8rem;
	font-weight:600;
	display:block;
	position:relative;
}

#the-content input:not(.button),
#the-content input:not(.wpcf7-submit),
#the-content input:not([type=submit]),
#the-content input:not([type=button]){
	font-size:.9rem;
	font-weight:600;
	padding:5px;
	border:1px solid #ccc;
}


#the-content textarea {
	font-size:.9rem;
	font-weight:600;
	padding:5px;
	height:100px;
	border:1px solid #ccc;
}

/* showhides */

#content h3.showhider a {
	display:block;
	position:relative;
	padding-top:15px;
	border-top:1px solid #efefef;
	padding-right:50px;
}

#content h3.showhider a:before, #content h3.showhider a:after {
	content: "";
	display: block;
	width: 20px;
	height: 5px;
	background: #ccc;
	position: absolute;
	top: 50%;
	transition: transform .5s;
}

#content h3.showhider a:before {
	right: 21px;
	border-top-left-radius: 10px;
	border-bottom-left-radius: 10px;
	transform: rotate(45deg);
}

#content h3.showhider a:after {
	right: 10px;
	transform: rotate(-45deg);
}

#content h3.showhider a.on:before {
	transform: rotate(-45deg);
}

#content h3.showhider a.on:after {
	transform: rotate(45deg);
}

.foot {
	display:block!important;
}

.brandingLogo {
	margin-top:30px!important;
}

/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
	background-color: #f1f1f1;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	-webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/* sticky */
.sticky #site-header {
	position:fixed;
	background-color:transparent;
}
.sticky.isdark .hamburger-inner {
	background-color:#fff;
	
}

.sticky.isdark .hamburger.is-active .hamburger-inner,
.sticky.isdark .hamburger.is-active .hamburger-inner::before,
.sticky.isdark .hamburger.is-active .hamburger-inner::after,
.sticky.isdark .hamburger-inner, 
.sticky.isdark .hamburger-inner::before, 
.sticky.isdark .hamburger-inner::after {
    background-color: #fff; 
	box-shadow: rgba(0, 0, 0, 0.5) 0px 2px 2px;
}

.sticky.isdark #site-header.hactive .hamburger,
.sticky.isdark #site-header.hactive .hamburger.is-active .hamburger-inner,
.sticky.isdark #site-header.hactive .hamburger.is-active .hamburger-inner::before,
.sticky.isdark #site-header.hactive .hamburger.is-active .hamburger-inner::after,
.sticky.isdark #site-header.hactive .hamburger-inner, 
.sticky.isdark #site-header.hactive .hamburger-inner::before, 
.sticky.isdark #site-header.hactive .hamburger-inner::after {
	box-shadow:none!important;
}

.sticky.isdark #site-nav ul li a:after {
	background-color:rgba(255,255,255,0.2);
}

.sticky #site-nav a {
	color:#FFF;
	text-shadow: rgba(0, 0, 0, 0.5) 0px 2px 2px;
}

.sticky #site-header.hactive #site-nav > ul > li > a {
	text-shadow:none;
}

.sticky #site-logo.plain {
	color:#FFF;
	text-shadow: rgba(0, 0, 0, 0.5) 0px 2px 2px;
}


.sticky #splash.alt {
	height:90px;
	min-height:90px;
	margin-top:0;
}


/* hamburgers */

.hamburger {
  padding: 15px 15px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
	 
  overflow: visible; }
  .hamburger:hover {
    opacity: 0.7; }
  .hamburger.is-active:hover {
    opacity: 0.7; }
  .hamburger.is-active .hamburger-inner,
  .hamburger.is-active .hamburger-inner::before,
  .hamburger.is-active .hamburger-inner::after {
    background-color: #222; }

.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: 0; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 40px;
    height: 4px;
    background-color: #222;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -10px; }
  .hamburger-inner::after {
    bottom: -10px; }
.hamburger--slider .hamburger-inner {
  top: 2px; }
  .hamburger--slider .hamburger-inner::before {
    top: 10px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s; }
  .hamburger--slider .hamburger-inner::after {
    top: 20px; }

.hamburger--slider.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(45deg); 
	box-shadow:none;}
  .hamburger--slider.is-active .hamburger-inner::before {
    transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0); 
	box-shadow:none;
	  
    opacity: 0; }
  .hamburger--slider.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(-90deg); 
	box-shadow:none; }


.showdark .hamburger-inner {
	background-color:#fff;
	
}

.showdark .hamburger.is-active .hamburger-inner,
.showdark .hamburger.is-active .hamburger-inner::before,
.showdark .hamburger.is-active .hamburger-inner::after,
.showdark .hamburger-inner, 
.showdark .hamburger-inner::before, 
.showdark .hamburger-inner::after {
    background-color: #fff; 
	box-shadow: rgba(0, 0, 0, 0.5) 0px 2px 2px;
}

.showdark #site-header.hactive .hamburger,
.showdark #site-header.hactive .hamburger.is-active .hamburger-inner,
.showdark #site-header.hactive .hamburger.is-active .hamburger-inner::before,
.showdark #site-header.hactive .hamburger.is-active .hamburger-inner::after,
.showdark #site-header.hactive .hamburger-inner, 
.showdark #site-header.hactive .hamburger-inner::before, 
.showdark #site-header.hactive .hamburger-inner::after {
	box-shadow:none!important;
}

.showdark #site-nav ul li a:after {
	background-color:rgba(255,255,255,0.2);
}
/* buttons */
.woocommerce #content input.button, .woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce-page #content input.button, .woocommerce-page #respond input#submit, .woocommerce-page a.button, .woocommerce-page button.button, .woocommerce-page input.button,
.button, a.button, input.submit, input[type=submit], input[type=button], input.wpcf7-submit,
a.simplefavorite-button {
	color: #FFF!important;
	font-size: 1rem!important;
	font-weight:700!important;
	line-height:50px;
	padding: 0px 30px!important;
	text-decoration:none;
	cursor: pointer;
	display: inline-block;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	transition: all 0.2s;
	overflow: hidden;
	position: relative;
	border:0;
	border-radius:10px;
	text-shadow:none!important;
	background-color:transparent;
	opacity:1!important;
	box-shadow: rgba(0, 0, 0, 0.5) 0px 2px 2px;
	z-index:1;
}

.button:hover, a.button:hover, input.submit:hover, input[type="submit"]:hover, input[type="button"]:hover, input.wpcf7-submit:hover, a.simplefavorite-button:hover {
	color:#FFF;
}

.button:before, a.button:before, input.submit:before, input[type="submit"]:before, input[type="button"]:before, input.wpcf7-submit:before, a.simplefavorite-button:before {
	content: '';
	position: absolute;
	z-index: -2;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right:0;
	bottom:0;
}

.button:after, a.button:after, input.submit:after, input[type="submit"]:after, input[type="button"]:after, input.wpcf7-submit:after,a.simplefavorite-button:after {
	content: '';
	position: absolute;
	z-index: -1;
	-webkit-transition: all 0.4s;
	-moz-transition: all 0.4s;
	transition: all 0.4s;
	width: 100%;
	height: 0;
	bottom: 0;
	left: 0;
}

.button:hover:after, a.button:hover:after, input.submit:hover:after, input[type="submit"]:hover:after, input[type=button]:hover:after, input.wpcf7-submit:hover:after, a.simplefavorite-button:hover:after {
	height:100%;
}

.button.alt:before{
	dispay:none!important;
}
.button.alt {
	border:1px solid;
}

.simplefavorites-button {
	cursor:pointer!important;
}

table.calendar {
	width: 100%; 
  border-collapse: collapse; 
}
table.calendar th	{
	background: #CCC; 
  font-weight: bold; 
  text-align:center;
}
table.calendar td, table.calendar th {
	border: 1px solid #ccc; 
	font-size:13px!important;
	line-height:18px!important;
	width:14.2875%;
	position:relative;
	vertical-align:top;
	padding:5px 10px 5px 5px;
}

table.calendar a {
	display:block;
	padding-bottom:8px;
	margin-bottom:4px;
	border-bottom:1px solid #efefef;	
}

table.calendar a:last-child {
	border-bottom:none;	
}

table.calendar tr {
	background-color:#fefefe!important;	
}
.calendar-day {
	position:absolute;
	top:5px;
	right:5px;	
	color:#666;
	font-size:10px!important;
	font-weight:bold!important;
}

table.calendar .calendar-content {
	min-height:120px;	
}

.events-nav {
	font-size:0;
	text-align:center;
	position:relative;
	display:block;
}

.events-nav h2 {
	font-size:30px;
	font-weight:normal;
	text-transform:uppercase;	
}

.events-nav a {
	display:block;
	font-size:30px;
	text-decoration:none;
	margin:0px;
	padding:0px;
}

.navleft {
	width:auto;
	display:inline-block;	
}
.navcenter {
	width:auto;
	display:inline-block;	
	padding:0px 20px;
}

.navcenter h3 {
	font-size:17px!important;
}
.navright {
	width:auto;
	display:inline-block;	
}


/* animations */

.fade-in {
	opacity: 1;
	animation-name: fadeInOpacity;
	animation-iteration-count: 1;
	animation-timing-function: ease-in;
	animation-duration: 1s;
}

@keyframes animatedBackground {
  from {
	transform:scale(1);
  }
  to {
	transform:scale(1.1);
  }
}

@keyframes fadeInOpacity {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

/* =Print Style
-------------------------------------------------------------- */
@media print {
	body {
		background: none !important;
	}
	#the-content {
		clear: both !important;
		display: block !important;
		float: none !important;
		position: relative !important;
	}
	#header {
		border-bottom: 2pt solid #000;
		padding-bottom: 18pt;
	}
	#colophon {
		border-top: 2pt solid #000;
	}
	#site-title,
	#site-description {
		float: none;
		line-height: 1.4em;
		margin: 0;
		padding: 0;
	}
	#site-title {
		font-size: .8rem;
	}
	.entry-content {
		font-size: .8rem;
		
	}
	.entry-title {
		font-size: 1.1rem;
	}
	#access,
	#branding img,
	#respond,
	.comment-edit-link,
	.edit-link,
	.navigation,
	.page-link,
	.widget-area {
		display: none !important;
	}
	#container,
	#header,
	#footer {
		margin: 0;
		width: 100%;
	}
	#content,
	.one-column #content {
		margin: 24pt 0 0;
		width: 100%;
	}
	#site-info,
	#site-generator {
		float: none;
		width: auto;
	}
	#colophon {
		width: auto;
	}
	img#wpstats {
		display: none;
	}
	#site-generator a {
		margin: 0;
		padding: 0;
	}
	#entry-author-info {
		border: 1px solid #e7e7e7;
	}
	#main {
		display: inline;
	}
	.home .sticky {
		border: none;
	}
}
/* #Tablet (Portrait)
================================================== */

	@media only screen and (min-width: 980px) and (max-width: 1179px) {
		
		#site-header .container,
		.container,
		#the-content .container,
		.deck .container,
		#attorney-landing .container,
		.home-widget-launch .container,
		#splash .container,
		#site-footer .container {
			max-width:88%;
			padding:0px;
			height:auto;
			margin:0 6%;
			position:relative;
			min-height:inherit;
		}
		
		
		#site-nav ul li a,
		#tab ul li a {
			font-size:.8rem;
		}
		

		
		#the-content:before {
			height:120px;
			margin-top:-120px;
		}
		
		.site-sub-nav ul li {
			flex-basis: 25%;
		}
		.site-sub-nav ul li a {
			 border-bottom:1px solid rgba(255,255,255,0.2);
		 }
    
	}
	
	
	
	
/*  #Mobile (Portrait)
================================================== */
    /* Note: Design for a width of 320px */

    @media only screen and (max-width: 979px) {
		#detector { display: none; }
		
		#the-content .container,
		#site-header .container,
        .container, 
		.deck .container,
		#site-footer .container,
		#splash .container,
		.home-widget-launch .container {
			max-width:88%;
			padding:0px;
			height:auto;
			margin:0 6%;
			position:relative;
			min-height:inherit;
			display:block;
			
		}
		#the-content:before {
			height:50px;
			margin-top:-50px;
		}
		
		#the-content {
			padding:0;
		}
		
		#container:not(.one-column) #content {
			max-width:100%;
		}
		
		#primary,
		#secondary,
		#container,
		#content {
			float: none;
			padding:30px 0px 30px 0px;
			margin:0px;
			display:block;
			position:relative;
		}
		
		#site-logo {
			padding-left:5px;
			
		}
		
		#site-logo.plain {
			max-width:75%;
		}
		
		#site-logo img {
			max-width:240px;
		}
		#footer-widgets {
			display:block;
		}
		
		.splash-center {
			padding:20vh 0;
		}
		
		.splash-center h1, .splash-center h2, .deck .splash-center h2 {
			font-size:2.4rem;
		}
		
		.home-widgets {
			
			padding:0px;
			display:block;
			position:relative;
		}
		
		.home-widget-launch:before {
			height:40px;
			margin-top:-40px;
		}
		
		#nav-launch-wrapper {
			display:block;
		}
		
		.nav-launch-container.small-header-menu {
			display:block;
		}

		#site-nav ul li:not(.navsearch){
			display:none;
		}
		
		#site-nav ul li.navsearch a {
			font-size:1.4rem;
		}
		
		.site-sub-nav ul li {
			flex-basis: 50%;
		}
		.site-sub-nav ul li a {
			 border-bottom:1px solid rgba(255,255,255,0.2);
		 }

		.grid-item, .grid-item-image, .grid-item-33, .plain-grid-item {
			float:none!important;
			width:auto!important;
			height:auto!important;
			margin:10px auto!important;
			display:block!important;
			position:relative!important;
			
		}
		
		.grid-item-img, .grid-item-agent-img {
			max-height:inherit!important;
		}
		
		.grid-item-img.kill {
			display:none;
		}
		
		
		fieldset {
			width:90%;
			margin:0 auto;	
		}
		
		
		.alignleft,
		img.alignleft {
			display: block;
			float: none;
			margin:10px auto;
		}
		.alignright,
		img.alignright {
			display: block;
			float: none;
			margin:10px auto;
		}
		.aligncenter,
		img.aligncenter {
			display: block;
			float: none;
			margin:10px auto;
		}

		
		
		
		.left_33, 
		.large-footer-container,
		.left_25,
		.left_66,
		.left_auto,
		.left_inline,
		.left_10,
		.right_33,
		.right_66,
		.right_50,
		.left_50,
		.grid-nav fieldset,
		.grid-nav legend
		#subsections ul li, 
		#site-footer ul#footer-widgets li,
		#site-footer ul#footer-widgets li:last-child,
		.block-content,
		.block-image,
		.widget-container,
		.large-footer-widgets ul li.large-footer-container
		{
			width:inherit!important;
			float:none;	
			margin:0px auto;
			border:none!important;
			display:block;
		}
		
		.widget-area {
			width:inherit;
			margin:0;
			border:none;
			display:block;
			border-top:1px solid #cccccc;
			
		}
		
		.widget-area:before {
			background-image:linear-gradient(to bottom, rgba(0,0,0,0.05), rgba(0,0,0,0.0));
		}
		
		
		.widget-area:after {
			display:none;
		}
		
		.widget-container {
			padding:0px 0px 10px 0px;
			margin:0px 20px 20px 20px;
			position:relative;
			border-bottom:1px solid rgba(255,255,255,0.20);
		}
		.collage-content {
			width:100%;
			margin-top:80px;
			padding-left:2%;
		}
		
		#site-footer ul#footer-widgets li ul{
			width:100%;
			margin:0px;
			padding:0px;
		}
		
		.general-grid {
			display:block;
		}
		
		
		.article-jump ul {
			display:block;
		}
		
		.article-jump ul li {
			display:block;
			
		}
		
		.member img {
			max-height:60px;
		}
		
		.membersmall img {
			max-height:40px;
		}
		
		#copyright {
			height:auto;
		}
		
		.sidebar {
			width:inherit;
			float:none;
			
			display:block;
			height:260px;
			min-height:inherit;
			margin-bottom:30px;
		}

		.map {
			width:inherit;
			float:none;
			height:80vh;
			display:block;
		}
		
		table, thead, tbody, th, td, tr { 
			display: block; 
		}
	
		/* Hide table headers (but not display: none;, for accessibility) */
		th { 
			position: absolute;
			top: -9999px;
			left: -9999px;
		}

		tr { min-height:inherit!important }

			td, table.calendar td { 
			/* Behave  like a "row" */
			border: none;
			border-bottom: 1px solid #eee; 
			position: relative;
			padding-left: 50%; 
			width:auto;
			height:auto;
			min-height:inherit!important;
			padding:10px;
		}

		 table.calendar th {
			display:none; 
		 }

		 table.calendar tr.header {
			display:none!important; 
		 }

		table.calendar .calendar-content
		{
		  min-height:inherit!important;
		}

		.calendar-day {
			position:relative;
			top:auto;
			right:auto;	
			display:inline-block;
			width:30px;
		}

		td:before { 
			/* Now like a table header */
			position: absolute;
			/* Top/left values mimic padding */
			top: 6px;
			left: 6px;
			width: 45%; 
			padding-right: 10px; 
			white-space: nowrap;
		}
		
		#searchbox {
			z-index:100;
		}
		
		#subnav ul {
			display:block;
		}

		.footer-logo {
			margin:0px 0px 60px 0px;
		}
		.footer-logo img, .footer-logo svg {
			max-width:280px;
		}
		
		.collage-image-3 {
			top:40%;
			width:30%;
			left:42%;
			z-index:3;
			transform: rotate(3deg);
		}
		
		.sticky #site-header {
			position:relative;
		}
		
		.sticky #splash.alt {
			height:auto;
			min-height:inherit;
		}
		
		 #mobile-btn {
			 display:block;
		 }
		
		
    }

 @media only screen and (max-width: 760px) {
	.article-block, .article-block.smaller {
		display:block;
		flex:none;
		max-width:inherit;
		width:100%;
		margin:20px auto;
	}
	 
	 .site-sub-nav {
		 display:none;
	 }
	 
	 .site-sub-nav ul li {
			flex-basis: 100%;
		 	
		}
	 .site-sub-nav ul li a {
		 border-bottom:1px solid rgba(255,255,255,0.2);
	 }
	 
	 #back-top {
		right:50%;
		width:inherit;
		text-align:center;
		bottom:10%;
		margin-right:-34px;
	}
	 
 	.ads {
		margin:30px auto;
	}
	 
	 #mobile-btn {
		 display:block;
	 }
	 
	 .gallery {
		 display:block;
		 text-align:center;
	 }
	 
	 .gallery-item {
		 width:auto!important;
		 flex:none!important;
		 margin:10px auto!important;
	 }
	 
	
}

/* No Js */
.no-js #site-nav ul {
	display:block!important;
}
.no-js #mobile-btn {
	display:none!important;
}
/*--------------------------------------------------------------
18.0 SVGs Fallbacks
--------------------------------------------------------------*/
.svg-fallback {
	display: none;
}
.no-svg .svg-fallback {
	display: inline-block;
}
.no-svg .dropdown-toggle {
	padding: 0.5em 0 0;
	right: 0;
	text-align: center;
	width: 2em;
}
.no-svg .dropdown-toggle .svg-fallback.icon-angle-down {
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1;
	-webkit-transform: rotate(180deg); /* Chrome, Safari, Opera */
	-ms-transform: rotate(180deg); /* IE 9 */
	transform: rotate(180deg);
}
.no-svg .dropdown-toggle.toggled-on .svg-fallback.icon-angle-down {
	-webkit-transform: rotate(0); /* Chrome, Safari, Opera */
	-ms-transform: rotate(0); /* IE 9 */
	transform: rotate(0);
}
.no-svg .dropdown-toggle .svg-fallback.icon-angle-down:before {
	content: "\005E";
}
/* Social Menu fallbacks */
.no-svg .social-navigation a {
	background: transparent;
	color: #222;
	height: auto;
	width: auto;
}
/* Show screen reader text in some cases */
.no-svg .next.page-numbers .screen-reader-text,
.no-svg .prev.page-numbers .screen-reader-text,
.no-svg .social-navigation li a .screen-reader-text,
.no-svg .search-submit .screen-reader-text {
	clip: auto;
	font-size: 1rem;
	font-weight: 400;
	height: auto;
	position: relative !important; /* overrides previous !important styles */
	width: auto;
}
