/* FONTS LOADED LOCALLY
-------------------------------------------------- */
@font-face {
  font-family: "Nunito";
  src: url("../fonts/Nunito-Bold.ttf") format("truetype");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: "Nunito";
  src: url("../fonts/Nunito-Italic.ttf") format("truetype");
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: "Nunito";
  src: url("../fonts/Nunito-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Nunito";
  src: url("../fonts/Nunito-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Nunito";
  src: url("../fonts/Nunito-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "Playfair";
  src: url("../fonts/PlayfairDisplay-Bold.ttf") format("truetype");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: "Playfair";
  src: url("../fonts/PlayfairDisplay-Italic.ttf") format("truetype");
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: "Playfair";
  src: url("../fonts/PlayfairDisplay-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
/* FONTS PRELOADED FROM GOOGLE FONTS IN HTML HEAD
-------------------------------------------------- 
Montserrat
Raleway
Oswald
Tangerine
Berkshire+Swash
Cinzel
Expletus+Sans
 */

/* GLOBAL STYLES
-------------------------------------------------- */
body {
	font-family: 'Nunito', sans-serif;
  	padding-top: 0;
	font-weight: 300;
  	font-size: calc(16px + (19 - 16) * ((100vw - 300px) / (1600 - 300)));
  	background-color: #fff;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
	font-family: 'Playfair', serif;
    letter-spacing: -1px;
}
.middleCol > h1, .middleCol > .h1 {
	font-size: 2.41em;
}
.middleCol > h2, .middleCol > .h2 {
	font-size: 1.953em;
	margin-top: 1.5em;
}
.middleCol > h3, .middleCol > .h3 {
    font-size: 1.563em;
	margin-top: 1.2em;
}
.middleCol > h2 + h3, .middleCol > .h2 + .h3 {
	margin-top: 1em;
}
.middleCol > h4, .middleCol > .h4 {
    font-size: 1.25em;
}
a {
	outline: none;
	color: #4D506A;
}
p {
    font-size: 1em;
	margin: 0 0 16px;
}
p.lead {
	font-size: 1.2em;
}
.middleCol p > a,
.middleCol li > a {
	 text-decoration: underline;
     margin: 5px;
}
.middleCol .pagination li > a {
	text-decoration: none;
	margin: 0;
}
.middleCol p > a.btn {
    text-decoration: none;
}
p + ul,
p + ol {
	margin-top: -10px;
}
ul + p,
ol + p {
	margin-top: 2em;
}
img + p {
	margin-top: 1em;
}
b, strong {
	 font-weight: 600;
}
a.btn {
    text-decoration: none;
    white-space: normal;
}
th {
	 font-weight: 600;
}
.img-responsive {
	width: 100%;
}
a[href^="tel"] {
	color: inherit;
	text-decoration: underline;
}
small {
    font-size: .8em;
}
a:empty, li:empty {
	display: none;
}
/* IN-PAGE ANCHORS
-------------------------------------------------- */
/* .inpageanchor:before {
	 content: "";
	 display:block;
	 height: 150px;
	 margin-top: -150px;
} */
/* FONTS
--------------------------------------------------*/
.style-sans {
	font-family: 'Expletus Sans', cursive;
}
.style-handwriting {
	font-family: 'Tangerine', cursive;
}
.style-expressive {
	font-family: 'Berkshire Swash', cursive;
}
.style-roman {
	font-family: 'Cinzel', serif;
}
.style-sans.size-head {
	font-size: 8vw;
	line-height: .9em;
}
.style-expressive.size-head {
	font-size: 8vw;
	line-height: .9em;
}
.style-handwriting.size-head {
	font-size: 10vw;
	line-height: .9em;
}
.style-roman.size-head {
	font-size: 8vw;
	line-height: .9em;
}
.style-sans.size-subhead {
	font-size: 2vw;
}
.style-expressive.size-subhead {
	font-size: 2vw;
	line-height: .9em;
}
.style-handwriting.size-subhead {
	font-size: 2.5vw;
	line-height: .9em;
}
.style-roman.size-subhead {
	font-size: 1.5vw;
	line-height: .9em;
}

/* HEADER
-------------------------------------------------- */
.header-lg {
	background-position: center top;
	background-size: cover;
	height: 33vw;
	display: flex;
	padding: 2vw 6vw;
}
@media (max-width: 25.9em) { /*iphone 6+ 414px*/
	.header-lg {
		 height:50vw;
	}
}
header {
	height: 0;
}
.headeraddress {
	font-size: .9em;
	color: #fff;
	margin-top: 20px;
}
.header-caption {
	background-color: transparent;
	padding: 0;
	color: #fff;
	width: 100%;
}
.header-caption h2,
.header-caption h3 {
	margin: 10px 0;
	color:#fff;
	text-shadow: 0 1px 2px rgba(0,0,0,0.5);
}
.topbar {
	background-color: rgba(0,0,0,0.2);
	color: #fff;
	padding: 5px 0;
	font-size: .8em;
}
.topbar a {
	color: #fff;
}
.topbar .fa {
	font-size: 1.5em;
	padding: 0 5px;
}

/* CUSTOMIZE THE NAVBAR
-------------------------------------------------- */
.navbar > div.container-fluid,
.navbar > div.container,
.navbar-nav{ 
	 display: flex; 
	 justify-content: space-between; 
	 align-items: flex-end; 
}
.navbar-header { 
	 flex-basis: 20%;
	 padding: 10px 15px;
	 float: none;
}
.navbar-brand {
	height: auto;
	padding: 0 0 0 15px;
	display: block;
}
.navbar-brand > img { 
	 width: 100%; 
}
.navbar > div.container-fluid > .navbar-collapse,
.navbar > div.container > .navbar-collapse{ 
	 margin-left: auto;
}
.navbar-nav {
	 padding: 0;
	 float: none;
}
.navbar-default .navbar-nav > li > a,
.navbar-default .navbar-nav > li > a:focus {
	padding: .8vw;
	color: #fff;
    font-size: clamp(10px, 1.1vw, 16px);
	text-transform: uppercase;
	white-space: nowrap;
}
@media (max-width: 48em) {
    .navbar-nav > li {
        margin-left: 10px;
    }
}
.menu-bar {
	background-color: #111;
}
.navbar-default .navbar-social > li > a, 
.navbar-default .navbar-social > li > a:focus {
	 font-size:2em;
	 padding:10px 5px;
}
.navbar-nav .caret {
}
.navbar-default .navbar-nav > li > a.btn {
	 margin:0 2px;
	 padding:6px 8px;
}
header .navbar-right {
	 padding: 0;
}
header .navbar-social a {
	 font-size: 1.2em;
}
.navbar-default .navbar-nav > .open > a, 
.navbar-default .navbar-nav > .open > a:hover, 
.navbar-default .navbar-nav > .open > a:focus {
	background: #fff;
	/*border: 1px solid #ddd;
	border-bottom: none;
	border-radius: 6px 6px 0 0;*/
	position: relative;
	z-index: 1100;
}
.open > .dropdown-menu {
	top: 95%;
	padding: 15px 0;
	border:none;
}
.open > .dropdown-menu.mega-dropdown-menu {
	top: 99%;
	padding: 30px;
	border:none;
}
.dropdown-menu h2 {
	font-size: 1.2em;
	margin: 0;
	padding: 15px 0 0 20px;
	color: #B69D21;
	border-bottom: none;
}
.in > .topmenu {
	padding: 10px;
	margin-top: 0;
	background-color: #fff;
}
.in > .topmenu > li > a,
.in > .topmenu a {
	color: #222;
	background-color: transparent;
}
.navbar-default .navbar-collapse, .navbar-default .navbar-form {
	border-top: none;
}
/* MEGA DROP DOWN 
	http://bootsnipp.com/snippets/featured/mega-menu-with-carousel-for-stores
-------------------------------------------------- */
/*.navbar-nav>li>.dropdown-menu {
    margin-top:20px;
    border-top-left-radius:4px;
    border-top-right-radius:4px;
}*/
/*.navbar-default .navbar-nav>li>a {
    width:200px;
    font-weight:bold;
}*/
.mega-dropdown {
  position: static !important;
/*  width:100%;*/
}
.mega-dropdown-menu {
    padding: 20px 0px 40px 0;
    width: 100%;
    box-shadow: none;
    -webkit-box-shadow: none;
}
/* this code creates the dropdown pointer 
.mega-dropdown-menu:before {
    content: "";
    border-bottom: 15px solid #fff;
    border-right: 17px solid transparent;
    border-left: 17px solid transparent;
    position: absolute;
    top: -15px;
    left: 285px;
    z-index: 10;
}
.mega-dropdown-menu:after {
    content: "";
    border-bottom: 17px solid #ccc;
    border-right: 19px solid transparent;
    border-left: 19px solid transparent;
    position: absolute;
    top: -17px;
    left: 283px;
    z-index: 8;
}*/
.mega-dropdown-menu > li > ul,
.mega-dropdown-menu > li > div > div > div > ul {
  padding: 0;
  margin: 0;
}
.mega-dropdown-menu > li > ul + ul,
.mega-dropdown-menu > li > div > div > div > ul + ul {
  padding-top: 30px;
}
.mega-dropdown-menu > li > ul > li,
.mega-dropdown-menu > li > div > div > div > ul > li {
  list-style: none;
}
.mega-dropdown-menu > li > ul > li > a,
.mega-dropdown-menu > li > div > div > div > ul > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.428571429;
  color: #999;
  white-space: normal;
}
.mega-dropdown-menu > li ul > li > a:hover,
.mega-dropdown-menu > li div > div > div > ul > li > a:hover,
.mega-dropdown-menu > li ul > li > a:focus,
.mega-dropdown-menu > li div > div > div > ul > li > a:focus {
  text-decoration: none;
  color: #444;
  background-color: #f5f5f5;
}
.mega-dropdown-menu a.btn {
	color: #fff;
}
.mega-dropdown-menu > li ul > li > a.btn:hover,
.mega-dropdown-menu > li div > div > div > ul > li > a.btn:hover,
.mega-dropdown-menu > li ul > li > a.btn:focus,
.mega-dropdown-menu > li div > div > div > ul > li > a.btn:focus {
  background-color: #286090;
  color: #fff;
}
.mega-dropdown-menu .dropdown-header {
  font-size: 1.2em;
  font-weight: 600;
  padding-top: 30px;
}
.dropdown-header:nth-of-type(1) {
	padding-top: 0;
}
.mega-dropdown-menu form {
    margin:3px 20px;
}
.mega-dropdown-menu .form-group {
    margin-bottom: 3px;
}
.mega-dropdown-menu a.mega-img-link {
	 padding:0;
}
.mega-dropdown-menu a.mega-img-link:hover {
	 background-color: transparent;
}

/* CUSTOMIZE THE SPLASH CAROUSEL
-------------------------------------------------- */
.splashWrapper {
	padding-bottom: 0;
}
.carousel-inner > .item {
  background-color: transparent;
  margin: 0;
  padding: 0;
}
.carousel.carousel-fade .item {
  -webkit-transition: opacity 0.7s ease-in-out 0s;
  -moz-transition: opacity 0.7s ease-in-out 0s;
  -ms-transition: opacity 0.7s ease-in-out 0s;
  -o-transition: opacity 0.7s ease-in-out 0s;
  transition: opacity 0.7s ease-in-out 0s;
  left: 0 !important;
}
.carousel.carousel-fade .active.left, 
.carousel.carousel-fade .active.right { 
	opacity: 0; 
	z-index: 2; 
}
.carousel-caption {
	left: 10%;
	right: 10%;
	top: 5%;
	bottom: 5%;
	background-color: transparent;
	padding: 0;
	text-align: left;
	display: flex;
}
.carousel-caption h2,
.carousel-caption h3 {
	margin: 10px 0;
	color: #fff;
}
.carousel-caption a {
	color: #fff;
	text-decoration: underline;
}
.carousel-caption a.btn {
	 text-decoration: none;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
	 width:100%;
}
.splashnav > li > a {
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
	padding: 2px 15px;
}
#splashCarousel .carousel-control.right,
#splashCarousel .carousel-control.left {
	background-image: none;
	bottom: 50px;
	z-index: 999;
	width: 10%;
}

/* CAPTION POSITIONING
-------------------------------------------------- */
.caption-l14,
.carousel-caption .caption-l14 {
	width: 25%;
}
.caption-l24,
.carousel-caption .caption-l24 {
	width: 50%;
}
.caption-l34,
.carousel-caption .caption-l34 {
	width: 75%;
}
.caption-c24 {
	margin-left: 25%;
	margin-right: 25%;
	width:50%;
}
.caption-c34 {
	margin-left: 12.5%;
	margin-right: 12.5%;
	width:75%
}
.caption-r14 {
	margin-left: 75%;
	width:25%;
}
.caption-r24 {
	margin-left: 50%;
	width:50%;
}
.caption-r34 {
	margin-left: 25%;
	width:75%
}
.caption-align-left {
	text-align: left;
}
.caption-align-right {
	text-align: right;
}
.caption-align-center {
	text-align: center;
}
.caption-valign-middle {
	align-self: center;
}
.caption-valign-bottom {
	align-self: flex-end;
}
.caption-xl {
	font-size: calc(16px + (70 - 16) * ((100vw - 300px) / (1600 - 300)));
	 font-weight: 900;
	 text-shadow: 1px 1px 2px #222;
}
.caption-lg {
	font-size: calc(16px + (42 - 16) * ((100vw - 300px) / (1600 - 300)));
}
.caption-md {
	font-size: calc(14px + (30 - 14) * ((100vw - 300px) / (1600 - 300)));
}
/* CUSTOMIZE THE BLOGPOST CAROUSEL
-------------------------------------------------- */
.blogcarouselwrap {
	/*border-top: 1px solid #eee;*/
	border-bottom: 1px solid #eee;
}
.blogcarousel {
    margin-bottom: 0;
    padding: 0 40px 30px 40px;
}
.blogcarousel .carousel-inner .row {
	display: flex;
}
/* The controlsy */
.blogcarousel .carousel-control {
	/*left: -12px;*/
    height: 100%;
	width: 40px;
    /*margin-top: 9vw;*/
    color: #222;
    background: none;
    text-shadow: none;
    font-size: 1.8em;
	display: flex;
	justify-content: center;
	align-items: center;
}
.blogcarousel .carousel-control.right {
	/*right: -12px;
	left: auto;*/
	background-image: none;
}
.blogcarousel .carousel-control.left {
	background-image: none;
}
.blogcarousel .carousel-control:hover, 
.blogcarousel .carousel-control:focus {
	color: #000;
}
/* The indicators */
.blogcarousel .carousel-indicators {
	right: 50%;
	top: auto;
	bottom: -10px;
	margin-right: -19px;
}
/* The colour of the indicators */
.blogcarousel .carousel-indicators li {
	background: #cecece;
	border: 0 none;
}
.blogcarousel .carousel-indicators .active {
	background: #222222;
}
.blogCarouselItem {
	padding: 20px;
	position: relative;
	display: flex;
	flex-direction: column;
}
.blogCarouselItem p:last-of-type {
	margin-top: auto;
}
.blogCarouselItem .carousel-item-title {
    font-size: 2vw;
    font-weight: bold;
}
.blogCarouselItem h2 {
	font-size: 1.1em;
}
.blogCarouselItem h2 small {
	display: block;
	margin-top: 10px;
}
.blogCarouselItem h2 a.btn {
	display: block;
	text-align: right;
	margin-top: 10px;
	position: absolute;
	bottom: 0px;
}
.blogCarouselItem img {
	height: 15vw;
	object-fit: cover;
}
@media (max-width: 48em) {
    .blogcarousel .carousel-inner .row {
        flex-direction: column;
    }
    .blogCarouselItem img {
        height: 40vw;
    }
}
/* CONTENT FEATURES
-------------------------------------------------- */
.pageTopWrapper {
/*	background: url(../images/stpat-pano.jpg) center center no-repeat;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;*/
}
.mainContentWrapper {
	padding: 20px 0;	
}
.pageTop img {
	max-width: 100%;
	height: auto;
}
.pagetopcontainer-flex {
	height:26vw; 
	background-position:center top; 
	background-size: cover; 
	display:flex; 
	padding: 2vw 10vw;
}
.featurerow {
	 margin:40px 0;
}
.flexrow-center {
	 display:flex;
	 align-items:center;
}
.flexrow-top {
	 display:flex;
	 align-items:start;
}
.flexrow-bottom {
	 display:flex;
	 align-items:end;
}
.flexrow-stretch {
	 display: flex;
	 align-items: stretch;
}
.flexrow-center h2, .flexrow-center h3,
.flexrow-top h2, .flexrow-top h3,
.flexrow-bottom h2,.flexrow-bottom h3,
.flexrow-stretch h2,.flexrow-stretch h3 {
	margin-top:10px;
}
.flexphotorow {
	 display:flex;
	 align-items:stretch;
}
.flexphotocol {
	 display:flex;
	 background-position: center center;
	 background-size: cover;
}
.flexphotorow h2, .flexphotorow h3,
.flexphotocol h2, .flexphotocol h3 {
	 margin-top: 10px;
}
.flexrow-wrap {
	flex-wrap: wrap;
}
.flexrow-bordered > div {
	border: 1px solid #ddd;
	border-radius: 6px;
	margin: 5px;
}
@media (max-width: 48em) { 
    .flexrow-top,
	.flexrow-center,
	.flexrow-bottom,
	.flexrow-stretch,
	.flexphotorow {
		 display: block;
	}
    .flexrow-top > div,
    .flexrow-center > div,
    .flexrow-bottom > div,
    .flexrow-stretch > div {
        margin-bottom: 5px;
    }
    .flexphotocol {
	 	height: 60vw;
    }
}
.callout-border {
	 border:2px solid #ddd; 
	 padding:20px;
}
.tagline {
	font-size: 2em;
	color: #fff;
	text-align: center;
	font-style: italic;
	display: block;
}
.social-list > li > a,
.navbar-social > li > a {
    background-color: rgba(0, 0, 0, 0.2);
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
    border-radius: 50%;
    display: inline-block;
    font-size: 2em;
    height: 80px;
    padding: 16px;
    width: 80px;
    color: #fff;
}
.social-list > li > a:hover,
.navbar-social > li > a:hover {
    background-color: rgba(0, 0, 0, 0.5);
}
.pull-left.img-intext {
	margin: 0 2rem 1.5rem 0;
}
.pull-right.img-intext {
	margin: 0 0 1.5rem 2rem;
}
.fullpage {
	 display: flex;
	 align-items: flex-end;
	 height: 100vh;
	 width: 100%;
	 position: relative;
	 margin-bottom: -72px;
}
.btn-transparent {
	 background-color: transparent;
	 color: #222;
	 border: 2px solid #222;
}
.btn-transparent:hover {
	 background-color: rgba(0,0,0,.5);
}
.darkbkg .btn-transparent {
	 color: #fff;
	 border-color: #fff;
}
.nopadding {
	 padding: 0;
}
.nomargin {
	 margin:0;
}
.absolute-middle-center {
	position: absolute;
	top: 50%;
	left: 50%;
	 transform: translateX(-50%) translateY(-50%);
}
.featurephotoaction {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.featurephotoaction > a {
	background-position: center center; 
	background-size: cover;
	aspect-ratio: 4/3;
	display:flex; 
	filter: saturate(.2);
	text-decoration: none;
	color: #fff;
	padding: 2vw;
	text-shadow: 1px 1px 2px #222;
	border: 5px solid #fff;
}
.featurephotoaction > a:hover {
	filter: saturate(1);
}
.featurephotoaction > a > .photocaption {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.featurephotoaction > a > .photocaption p:last-of-type {
	margin-top: auto;
}
@media (max-width: 48em) {
    .featurephotoaction {
        display: block;
    }
	.featurephotoaction > a {
		/*min-height: 60vw; */
	}
	.featurephotoaction .caption-md {
	 	font-size: calc(14px + (80 - 14) * ((100vw - 300px) / (1600 - 300)));
	}
}
/* SECTIONS
-------------------------------------------------- */
section {
	background-color: #fafafa;
	margin: 0 -15px;
	padding: 4vw 0;
}
.section-thin {
	padding: 1vw 0;
}
.section-first {
	 margin-top:-20px;
	 padding-top: 0;
}
.section-last {
	 margin-bottom: -50px;
}
.section-light {
	 background-color: #fff;
}
.section-dark {
	 background-color:#1c1c1c;
	 background-position: center center;
	 background-size: cover;
}
.section-dark a, .section-dark p,
.section-dark h1, .section-dark h2,
.section-dark h3, .section-dark h4,
.section-dark h5, .section-dark h6 {
	 color: #fff;
}
.section-dark a.btn {
	 color: #fff;
}
.section-dark a.btn.btn-default:hover {
	 background-color: transparent;
	 color: #fff;
	 border: 1px solid #fff;
}
.section-dark *.text-muted {
	 color:#777;
}
.darkbkg {
    background-color: #333;
}
.darkbkg p,
.darkbkg a,
.darkbkg h1,
.darkbkg h2,
.darkbkg h3,
.darkbkg h4,
.darkbkg li,
.darkbkg i.fa {
    color: #fff;
}
section.nomargin {
	padding: 0;
}
section.nomargin > .row {
	margin: 0;
}
section.nomargin > .row > *[class^='col-'] {
	padding:0;
}
.sectionheading {
	border-bottom: 1px dotted #e4e9f0;
	display: block;
	margin-bottom: 25px;
}
.sectionheading h2,
.sectionheading h3,
.sectionheading h4 {
	border-bottom: 2px solid #72c02c;
	display: inline-block;
	margin: 0 0 -2px;
	padding-bottom: 5px;
}
.sectionTitle {
    text-align: center;
    text-transform: uppercase;
    margin: 20px 0;
}
p + .sectionTitle,
ul + .sectionTitle,
ol + .sectionTitle,
p + .sectionheading,
ul + .sectionheading,
ol + .sectionheading {
    margin-top: 60px;
}
/* LISTS
-------------------------------------------------- */
.list-2col {
    columns: 2;
    column-gap: 30px;
}
@media (max-width: 48em) { /*768px*/
    .list-2col {
        columns: 1;
        column-gap: 0;
    }
}
/* BLOCKQUOTES - PULLQUOTES
-------------------------------------------------- */
.pullquoteleft, .pullquoteright {
	padding: 2.6rem 2.2rem 2rem 3.6rem;
	width: 40rem;
	position: relative;
	margin: 0 2rem 2rem 0;
	float: left;
	font-size: 1.6rem;
	line-height: 1.4;
	border-left: none;
}
.pullquoteright {
	float: right;
	margin: 0 0 2rem 2rem;
}
.pullquoteleft > p, .pullquoteright > p {
	margin: 0 1em 1em;
	padding: 0;
}
.pullquoteleft:before, .pullquoteleft:after,
.pullquoteright:before, .pullquoteright:after { 
	content: open-quote;
	font-family: Georgia, serif;
	font-size: 500%;
	position: absolute;
	color: #ddd;
	z-index: -1;
}
.pullquoteleft:before, .pullquoteright:before { 
  top: .25rem;
  left: .5rem;
}
.pullquoteleft:after, .pullquoteright:after { 
  content: close-quote;
  bottom: -4.5rem;
  right: .25rem;
}
.pullquotesingle:after {
	content: close-quote;
    visibility: hidden;
}
.blockleft {
	float: left;
	border-left: none;
	border-right: 5px solid #eee;
	width: 40rem;
	margin: 2rem;
	margin-left: 0;
}
.blockright {
	float: right;
	width: 40rem;
	margin: 2rem;
	margin-right: 0;
}
.bordertb {
	border: none;
	border-top: 5px solid #eee;
	border-bottom: 5px solid #eee;
}
.blockimg {
	padding: 0;
	border: none;
}
.blockimg > img {
	width: 100%;
}
blockquote footer {
    margin: 1em;
}

@media screen and (max-width: 700px) { 
	.pullquoteleft, .pullquoteright { 
		float: none;
		width: 90%;
		margin: 0 auto;
	}
	.blockleft, .blockright {
		float: none;
		width: 90%;
		margin: 2rem auto;
	}
}

@media screen and (max-width: 480px) { 
	.pullquoteleft, .pullquoteright { 
		font-size: 1.2rem;
		padding: 2rem;
	}
	.pullquoteleft:before, .pullquoteright:before {
		top: -0.75rem;
		left: -0.5rem;
	}
	.pullquoteleft:after, .pullquoteright:after { 
		bottom: -3.5rem;
		right: 0; 
	}
}

/* SIDEBAR
-------------------------------------------------- */
.sidebar h4 {
	font-size: 1em;
	text-transform: uppercase;
	border-bottom: 3px solid #333;
    text-align: center;
}
.sidebar h5 {
	font-size: 1em;
	font-weight: bold;
}
.sidebar p {
	font-size: .9em;
}
.sidebar li {
	font-size: .9em;
	margin-bottom: 5px;
}
.sidebar ol,
.sidebar ul {
	padding-left: 20px;
}
.sidebar .btn {
	margin: 0;
}
ul.menu {
	list-style: none;
	padding-left: 0;
	margin-bottom: 40px;
}
ul.menu > li {
	padding: 5px;
	border-bottom: 1px solid #eee;
}
ul.menu > li.active {
	font-weight: bold;
}
ul.menu > li:last-child {
	border-bottom: none;
}
.sidebar dt {
	width:40%;
}
.sidebar dd {
	margin-left:50%;
}
.simplebox,
.imagebox,
.blogpostbox,
.intentionbox,
.contactbox {
	margin-bottom: 40px;
}
.contactwrapper {
	text-align: center;
}
.contactwrapper + .contactwrapper {
	margin-top: 30px;
}
.contactwrapper > img {
	display: block;
	margin: 0 auto 10px auto;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	max-width: 50%;
}
.contactname {
	font-weight: bold;
}
.contacttitle {
	font-weight: normal;
	font-style: italic;
	display: block;
	font-size: .95em;
}
.contacttext {
	padding-top: 10px;
	margin-top: 10px;
	border-top: 1px solid #ddd;
}
/* BOTTOMBAR
-------------------------------------------------- */
.bottombar {
	border-top:1px solid #ddd;
	margin: 40px 0 0;
}
.bottombar h3 {
	margin-top:20px;
	font-size: 1.2em;
}
.bottombar .contactlistdetail h3 {
	margin-top:10px;
}
.bottombar p, .bottombar li {
	font-size: .85em;
}
/* PANEL MENU
-------------------------------------------------- */
.panel.panel-menu {
	 border: none;
}
.panel-menu > .panel-heading {
	 background-color:#fff;
	 border-bottom: 1px solid #ddd;
}
.panel-menu .table,
.panel-menu table {
	 margin-bottom: 0;
}
.panel-menu .table > thead > tr > th,
.panel-menu .table > tbody > tr > th,
.panel-menu .table > tfoot > tr > th,
.panel-menu .table > thead > tr > td,
.panel-menu .table > tbody > tr > td,
.panel-menu .table > tfoot > tr > td {
	 border: none;
	 padding: 5px 5px 5px 10px;
}
/* COLLAPSABLE PANELS
-------------------------------------------------- */
.panel {
	-webkit-box-shadow: none;
	box-shadow: none;
}
.panel-collapsable > div > h4 > a {
	 text-decoration: none;
}
.panel-collapsable > div > h4 > a::before {
	 content: "-";
	 padding: 0 8px;
	 margin-right: 6px;
	 background-color: #444;
	 color: #fff;
	 font-weight: 600;
}
.panel-collapsable > div > h4 > a.collapsed:before {
	 content: "+";
	 padding: 0 6px;
	 margin-right: 6px;
	 background-color: #444;
	 color: #fff;
	 font-weight: 600;
}
/* BLOG & EVENTS
-------------------------------------------------- */
.item {
	margin-bottom: 40px;
	padding-bottom: 40px;
}
.item > .item-title {
	margin-bottom: 20px;
}
.item-title .label {
	margin: 0 2px;
}
.sidebyside h2 {
	margin-top: 10px;
}
.post-imagetop > .item-title > h2 {
	margin-top: 20px;
}
.blog .item-title > h2 {
	margin-top: 20px;
}
.facebookwrapper {
	margin: 10px 0;
	padding: 5px;
	min-height: 30px;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
}
.item > figure {
	margin-bottom: 10px;
}
.stButton .stButton_gradient,
.stButton .stArrow,
.stButton .stFb, .stButton .stTwbutton, .stButton .stMainServices {
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
.event > .media {
	padding: 15px;
}
.event .media h3 {
	margin: 0 0 10px 0;
	font-size: 1.2em;
}
.announceContainer {
	max-height: 33vh;
	overflow-y: scroll;
	border: 1px solid #ddd;
	padding: 15px;
	margin-bottom: 15px;
}
.dateblock {
	width: 12%;
	text-align: center;
	min-height: 70px;
}
.dateblock-month {
	display: block;
	font-size: .9em;
	font-weight: 600;
	letter-spacing: 0.3em;
	color: #999;
}
.dateblock-num {
	display: block;
	font-size: 2.5em;
	line-height: .5em;
}
.label-default {
	background-color: #EBE4D9;
	color: #444;
}
.event > .media > .media-body {
	padding-left: 10px;
}
.event-imageleft .media,
.event-imageright .media,
.event-simplelist .media {
	border-bottom: 1px solid #eee;
	padding-bottom: 5px;
}
.event .media-left img,
.event .media-right img {
	max-width: 200px;
}
.event-imageleft .media-left img,
.event-imageright .media-right img {
	max-width: 12vw;
	margin-bottom: 10px;
}
@media (max-width: 48em) { /* 767px width where the navbar collapses and shows drop-down icon */
    .event-imageleft .media-left img,
    .event-imageright .media-right img,
    .event .media-left img,
    .event .media-right img {
        max-width: 24vw;
    }
}
@media (max-width: 42.375em) { /*iphone 6+ 678px*/
    .media-body, .media-left, .media-right {
         display: block;
         width: 100%;
    }
    .event-imageleft .media-left img,
    .event-imageright .media-right img,
    .event .media-left img,
    .event .media-right img {
        max-width: 100%;
        width: 100%;
        margin-bottom: 10px;
    }
}
.event-imageleft .media-body h3,
.event-imageright .media-body h3,
.event-simplelist .media-body h3 {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 1.2em;
}
.event-imageleft .media-body p,
.event-imageright .media-body p,
.event-simplelist .media-body p {
	font-size: .9em;
}
.event > .media > .media-body > p {
	margin: .25em 0;
}
.event > .media > .media-body > p > small {
	font-size: 1em;
	font-style: italic;
}
.event > .media > .media-body > h3 + p {
	 margin-top:0;
	 margin-bottom:15px;
}
.event > .media > .media-body > ul {
	 margin-top:10px;
	 margin-bottom:10px;
}
.more-events a {
	margin-top:10px;
}
.flexslider + .more-events {
	display: none;
}
.event-text > p:first-of-type {
	margin-top:0;
}
.eventdateaddress {
	margin: 5px 0 15px;
	font-size: .8em;
}
.eventdateaddress p {
	margin: 0;
	font-size: .85em;
}
.eventdateaddress i {
	padding: 0 5px 0 0;
}
.eventdateaddress .address i {
	padding-left: 4px;
}
.eventdateaddress .datetime {
	color: #222;
}
.eventdateaddress .address {
	color: #666;
}
.eventdateaddress .datetime a,
.eventdateaddress .address a {
	text-decoration: none;
	margin: 0;
}
.btn-ics {
    padding: 2px 4px;
    background-color: #999;
    color: #fff;
    font-size: .8em;
    margin-right: 5px;
}
/* EVENT FLEXSLIDER
-------------------------------------------------- */
.eventSectionTitle {
    text-align: center;
    text-transform: uppercase;
}
.flex-viewport {
    padding: 0;
}
.flexslider {
    background-color: transparent;
    border: none;
}
.flexslider .slides > li > a {
    margin: 0;
}
.flexslider .slides > li > img,
.flexslider .slides > li > a > img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    border: 1px solid #ddd;
    border-radius: 6px 6px 0 0;
    border-bottom: none;
}
.flexslider .slides > li > .caption {
    padding: 15px;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 0 0 6px 6px;
    border-top: none;
    text-align: left;
}
.flexslider .slides > li > .caption h3 {
    margin-top: 0;
}
.flexslider .slides > li > .caption p {
    font-size: .9em;
    color: #666;
}
.flexslider .slides > li > .caption .date-str {
    font-size: .8em;
    color: #888;
    font-style: italic;
}
.flexslider .slides > li > .caption > p:last-of-type {
    margin-bottom: 0;
}
.flexslider .slides > li > .caption .btn-action {
    font-size: .9em;
    font-weight: 600;
    display: block;
    margin-top: 30px;
}
/* EVENT CALENDAR
-------------------------------------------------- */
.grid-calendar {
    display: grid;
    grid-gap: 5px;
    grid-template-columns: repeat(7, minmax(8vw, 1fr) ) ;
    color: #444;
    border-radius: 5px;
}
.dayname {
    text-align: center;
}
 .day {
     background-color: #fff;
     color: #444;
     border-radius: 5px;
     padding: 20px 5px 5px;
     border: 1px solid #bbb;
     position: relative;
     min-height: 8vw;
}
.daynum {
    position: absolute;
    top: 5px;
    left: 5px;
    font-size: .9em;
    color: #666;
}
a.event, p.event {
    margin:3px 0;
    padding: 3px 0;
    font-size: .7em;
    /*overflow: hidden;
    text-overflow: ellipsis;*/
    text-decoration: none;
    /*white-space: nowrap;*/
    display: block;
}
.day img {
    width: 100%;
    height: 10vw;
    object-fit: cover;
}
.day > img {
    margin-top: 5px;
}
/* SCROLL BASED ANIMATION
-------------------------------------------------- */
.animation-element {
  opacity: 0;
  position: relative;
}
.animation-element.slide-left {
  opacity: 0;
  transition: all 500ms linear;
  transform: translate3d(-100px, 0px, 0px);
}
.animation-element.slide-left.in-view {
  opacity: 1;
  transform: translate3d(0px, 0px, 0px);
}
.animation-element.zoom-in {
  opacity: 0;
  transition: all 1.5s cubic-bezier(1,.11,.15,.94);
  transform: scale(0);
}
.animation-element.zoom-in.in-view {
  opacity: 1;
  transform: scale(1);
}
/* RSS FEEDS
-------------------------------------------------- */
.blogcategorylinks li {
	 display: flex;
	 align-items: center;
	 justify-content: space-between;
}
.blogcategorylinks li .btn.btn-rss {
	 white-space: nowrap;
	 max-height: 24px;
}
.btn.btn-rss {
    font-size: .7em;
    font-weight: bold;
    padding: 2px 4px;
    background-color: orange;
    color: #fff;
    float: right;
}
ul.menu, ul.feedlist {
	list-style: none;
	padding-left: 0;
	margin-bottom: 40px;
}
ul.menu > li, ul.feedlist > li {
	padding: 5px;
	border-bottom: 1px solid #eee;
}
ul.menu > li.active, ul.feedlist > li.active {
	font-weight: bold;
}
ul.menu > li:last-child, ul.feedlist > li:last-child {
	border-bottom: none;
}
/* INTENTIONS
-------------------------------------------------- */
.table.intentions > tbody > tr > td {
	padding: 2px;
	border-top: none;
	font-size: .8em;
}
.table.intentions > tbody > tr > td.date {
	padding: 10px 0 4px 0;
	border-bottom: 1px solid #eee;
}
.table.intentions > tbody > tr > td.time {
	white-space: nowrap;
	padding-right: 10px;
/*    display: none;*/
}
/* PAGE EMBED BLOGPOSTS
-------------------------------------------------- */
.sidebyside {
	display: flex;
}
.sidebyside > div > img.img-responsive {
	height: 100%;
	object-fit: cover;
}
.item-title {
	margin-bottom: 10px;
}
/* turn blog post listing on blog page to image/text side by side instead of image on top of text */
.blog .item-list {
	display: grid;
	grid-template-columns: 33% 67%;
	grid-gap: 15px;
	margin-bottom: 45px;
	margin-right: 15px;
}
.blog .item-title > h2 {
	margin-top: 0;
}
@media (max-width: 48em) {
    .sidebyside {
         display: block;
         width: auto; /* 100% is too narrow because of negative row margins */
    }
    .sidebyside > div {
        width: 100%;
    }
    .sidebyside > div > img.img-responsive {
        max-width: 100%;
        width: 100%;
        margin-bottom: 10px;
    }
    .blog .item-list {
		display: block;
    }
    .blog .item-title > h2 {
 		margin-top: 15px;
    }
}
/* PAGE EMBED CONTACTS
-------------------------------------------------- */
.contactblock,
.contactlistblock {
	margin: 10px 0;
	overflow: hidden;
}
.contactblock:hover {
/*	-moz-box-shadow: 0px 0px 5px rgba(0,0,0,0.1);
	-webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.1);
	box-shadow: 0px 0px 5px rgba(0,0,0,0.1);*/
}
.contactimg,
.contactlistimg {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
	margin: 0;
	border: 1px solid #eee;
	border-bottom: none;
	padding-top: 100%;
}
.contactlistimg {
	height: 0;
	padding-top: 33%; /* this creates a square img */
}
.contactdetail {
	height: 200px;
	background-color: #fff;
	padding: 15px 0;
	position: relative;
}
.contactdetail h3,
.contactlistdetail h3 {
	margin-top: 0;
	margin-bottom: 0;
	font-size: calc(16px + (24 - 16) * ((100vw - 300px) / (1600 - 300)));
}
.contactdetail li,
.contactlistdetail li,
.contactimgbiodetail li {
	font-size: .9em;
}
.biobutton > i {
	padding-right: 5px;
}
.contactdetail .biobutton,
.contactlistdetail .biobutton {
	background-color: #fff;
	border-color: #fff;
	color: #666;
	padding-left: 0;
}
.contactdetail .biobutton:hover,
.contactlistdetail .biobutton:hover {
	color: #222;
}
.contactdetail .biobutton:active:hover,
.contactlistdetail .biobutton:active:hover {
	background-color: #fff;
	border-color: #fff;
	box-shadow: none;
}
.row-imgbio {
	 display:flex;
	 align-items:top;
	 margin: 0 0 30px 0;
}
.contactimgbioimg {
	padding: 0;
}
.col-sm-3.contactimgbioimg {
	 width: 25%;
}
.contactimgbiodetail > h3 {
	margin-top: 0;
	margin-bottom: 0;
}
.contactimgbiodetail ul + p,
.contactimgbiodetail ol + p {
	margin-top: 0;
}
.modal-title {
	font-weight: 600;
}
a[data-toggle="modal"] { /* for the read bio link in the table format */
	font-size: .8em;
	cursor: pointer;
}
.noemail th:nth-of-type(4),
.noemail td:nth-of-type(4) {
    display: none;
}
.nophone th:nth-of-type(3),
.nophone td:nth-of-type(3) {
    display: none;
}
.noemailandphone th:nth-of-type(3),
.noemailandphone th:nth-of-type(4),
.noemailandphone td:nth-of-type(3),
.noemailandphone td:nth-of-type(4) {
    display: none;
}
.onecontact .contactblock {
    width: 25%;
    padding-left: 15px;
    padding-right: 15px;
}
@media (max-width: 48em) {
	.contactblock,
	.contactlistblock {
	 	margin-bottom: 30px;
	 	text-align: center;
	}
    .onecontact .contactblock {
        width: 100%;
    }
	.contactlistimg {
	 	 padding-top: 100%;
	}
	.contactlistdetail h3 {
	 	margin-top: 10px;
	 	font-size: calc(16px + (40 - 16) * ((100vw - 300px) / (1600 - 300)));
	}
	.row-imgbio {
		 display:block;
	}
	.col-sm-3.contactimgbioimg {
		width: 100%;
	}
	.contactimgbiodetail > h3 {
		margin-top: 15px;
	}
}
@media (max-width: 26em) {
	.col-sm-3.contactimgbioimg {
		width: 100%;
	}
}
/* PAGE EMBED TIMES
-------------------------------------------------- */
.masstimes {
	display: flex;
	flex-grow: 1;
}
.timecol {
	flex-basis: 14.285%;
	/*width: 14.1%;
	float: left;*/
	text-align: center;
	margin: 1px;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
	/*min-height: 380px;*/
}
@media (max-width: 48em) {
	 .masstimes {
	 	 flex-wrap: wrap;
	 }
	 .timecol {
	 	 flex-basis: 24.5%;
	 }
}
@media (max-width: 36em) {
	 .masstimes {
	 	 display: block;
	 }
}
.timecol h3 {
	font-size: 1.2em;
	margin: 0;
	padding: 20px 5px;
	background-color: #333;
	color: #fff;
}
.timecol small {
	display: block;
}
.timecol h3 small {
	color: #fff;
}
.timecol li {
	padding: 10px 15px;
	text-align: left;
	font-size: .95em;
}
.timecol .massTimeIntention {
	font-size: .8em;
	font-style: italic;
	margin: 0;
}
p.massTimeIntention {
	font-size: .8em;
}
/* GALLERY VIA ISOTOPE
-------------------------------------------------- */
.isoitem img {
	margin: 5px;
	border: 1px solid #ddd;
	max-width: 100%;
	height: auto;
}
.isotope:after {
	content: '';
	display: block;
	clear: both;
}
/* FOOTER FEATURES
-------------------------------------------------- */
.sitefooter {
	padding: 30px 0;
	margin-top: 30px;
}
.sitefooter p,
.sitefooter a {
	font-size: .9em;
	color: #eee;
}
.sitefooter a:hover {
	color: #fff;
}
.sitefooter h2 {
	font-size: .9em;
	color: #fff;
	padding-bottom: 10px;
	border-bottom: 2px solid #333;
}
.sitefooter ul {
	list-style: none;
	padding-left: 0;
}
.socialrow {
	margin: 30px 0 0 0;
}
.socialrow a {
	font-size: 2em;
	padding: 0 5px;
}
.tcwclogo {
	max-width: 280px;
	margin-left: auto;
}
/* THUMBNAILS & CARDS
------------------------------------*/

/* feature box with image and caption with zoom-in hover on image */
a.thumbnail {
	margin-bottom: 15px;
}

.thumbnail-style { 
	padding: 7px;
	margin-bottom: 20px; 
}
.thumbnail-style:hover { 
	box-shadow: 0 0 8px #ddd; 
    -webkit-transition: box-shadow 0.2s ease-in-out;
    -moz-transition: box-shadow 0.2s ease-in-out;
    -o-transition: box-shadow 0.2s ease-in-out;
    transition: box-shadow 0.2s ease-in-out;
}

.thumbnail h3,
.thumbnail-style h3 {
	margin: 6px 0 8px 0;
}

.thumbnail h3 a,
.thumbnail-style h3 a {
	color: #585f69;
	font-size: 20px;
}

.thumbnail h3 a:hover,
.thumbnail-style h3 a:hover {
	text-decoration: none;
}

.thumbnail-style .thumbnail-img {
	position: relative;
	margin-bottom: 11px;
}

.thumbnail-style a.btn-more {
	right: -10px;
	bottom: 10px;
	color: #fff;
	padding: 1px 6px;
	position: absolute;
	background: #72c02c;
	display: inline-block; 
}
.thumbnail-style a.btn-more:hover {
	text-decoration: none;
	box-shadow: 0 0 0 2px #377500;
}
.thumbnail-style:hover a.btn-more {
	right: 10px;
}

.thumbnail-kenburn img {
	left: 10px;
	margin-left: -10px;
	position: relative;
   -webkit-transition: all 0.8s ease-in-out;
   -moz-transition: all 0.8s ease-in-out;
   -o-transition: all 0.8s ease-in-out;
   -ms-transition: all 0.8s ease-in-out;
   transition: all 0.8s ease-in-out;
}
.thumbnail-kenburn:hover img {
   -webkit-transform: scale(1.2) rotate(2deg);
   -moz-transform: scale(1.2) rotate(2deg);
   -o-transform: scale(1.2) rotate(2deg);
   -ms-transform: scale(1.2) rotate(2deg);
   transform: scale(1.2) rotate(2deg);
}
.thumbnail-bright img {

}
.thumbnail-bright:hover img {
	 filter: brightness(.7);
}
.overflow-hidden {
	overflow: hidden;
}

.cardwrapper {
  margin-top: 25px;
  position: relative;
  text-align: center;
}
.cardwrapper img {
  display: block;
  max-width:100%;
  width: 100%;
}
.cardwrapper .overlay {
  position: absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background-color: rgba(0,0,0,0.25);
  color: #fff;
}
.cardwrapper .overlay h2 {
  margin-top: 25%;
}
.cardwrapper .overlay:hover {
  text-decoration: none;
  background-color: rgba(0,0,0,0.5);
}
/* feature with rounded image or icon above text and button */
.featurebox > .icon { 
	text-align: center; 
	position: relative; 
}
.featurebox > .icon > .image { 
	position: relative; 
	z-index: 2; 
	margin: auto; 
	width: 120px; 
	height: 120px; 
	border: 8px solid white; 
	line-height: 120px; 
	border-radius: 50%; 
	background: #63B76C; 
	vertical-align: middle; 
}
.featurebox > .icon:hover > .image { 
	background: #333; 
}
.featurebox > .icon > .image > i { 
	font-size: 36px !important; 
	color: #fff !important; 
}
.featurebox > .icon:hover > .image > i { 
	color: white !important; 
}
.featurebox > .icon > .info { 
	margin-top: -48px; 
	background: rgba(0, 0, 0, 0.04); 
	border: 1px solid #e0e0e0; 
	padding: 15px 0 20px 0; 
	min-height: 120px; 
}
.featurebox > .icon:hover > .info { 
	background: rgba(0, 0, 0, 0.04); 
	border-color: #e0e0e0; 
	color: white; 
}
.featurebox > .icon > .info > h3.title {
	margin-top: 40px;;
}
.featurebox > .icon > .info > p { 
	color: #666; 
	line-height: 1.5em; 
	margin: 20px;
}
.featurebox > .icon:hover > .info > h3.title, 
.box > .icon:hover > .info > p, 
.box > .icon:hover > .info > .more > a { 
	color: #222; 
}
.featurebox > .icon > .info > .more a { 
	color: #222; 
	text-transform: uppercase; 
	text-decoration: none; 
}
.featurebox > .icon:hover > .info > .more > a { 
	color: #fff; 
	padding: 6px 8px; 
	background-color: #63B76C; 
}
.featurebox .space { 
	height: 30px; 
}
/* featurebox with image and text below and shadow on hover */
.featurebox-shadow {
	padding: 7px;
	margin-bottom: 20px;
	border-bottom: 4px solid #ddd;
	transition: all 0.4s ease-out 0s
}
.featurebox-shadow:hover {
	border-bottom-color: #666;
}
.featurebox-shadow .thumbnail-img {
	position: relative;
	width: 100%;
	margin-bottom: 11px;
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	display: inline-block;
	position: relative;
	transform: translateZ(0px);
	transition-duration: 0.3s;
	transition-property: transform;
}
.featurebox-shadow .thumbnail-img::before {
    background: rgba(0, 0, 0, 0) radial-gradient(ellipse at center center , rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%) repeat scroll 0 0;
    content: "";
    height: 10px;
    left: 5%;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 100%;
    transition-duration: 0.3s;
    transition-property: transform, opacity;
    width: 90%;
    z-index: -1;
}
.featurebox-shadow:hover .thumbnail-img {
    transform: translateY(-5px);
}
.featurebox-shadow:hover .thumbnail-img::before  {
    opacity: 1;
    transform: translateY(5px);
}

.featurebox-shadow .caption {
	text-align: center;
}
.featurebox-shadow .caption h3 {
	font-size: 22px;
	text-transform: uppercase;
	font-family: 'Oswald', sans-serif;
}
.featurebox-shadow:hover .caption a {
	text-decoration: none;
}
/* featurebox plain with image and text below */
.featurebox-plain {
	text-align: center;
	margin-bottom: 45px;
}
.featurebox-plain img {
	 margin-bottom: 15px;
}
.featurebox-plain .caption h3 {
	font-size: 22px;
	text-transform: uppercase;
	font-family: 'Oswald', sans-serif;
}
.featurebox-plain:hover .caption a {
	text-decoration: none;
}
/* SHADOWS
-------------------------------------------------- */
.box-shadow--2dp {
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .14), 0 3px 1px -2px rgba(0, 0, 0, .2), 0 1px 5px 0 rgba(0, 0, 0, .12)
}
.box-shadow--3dp {
    box-shadow: 0 3px 4px 0 rgba(0, 0, 0, .14), 0 3px 3px -2px rgba(0, 0, 0, .2), 0 1px 8px 0 rgba(0, 0, 0, .12)
}
.box-shadow--4dp {
    box-shadow: 0 4px 5px 0 rgba(0, 0, 0, .14), 0 1px 10px 0 rgba(0, 0, 0, .12), 0 2px 4px -1px rgba(0, 0, 0, .2)
}
.box-shadow--6dp {
    box-shadow: 0 6px 10px 0 rgba(0, 0, 0, .14), 0 1px 18px 0 rgba(0, 0, 0, .12), 0 3px 5px -1px rgba(0, 0, 0, .2)
}
.box-shadow--8dp {
    box-shadow: 0 8px 10px 1px rgba(0, 0, 0, .14), 0 3px 14px 2px rgba(0, 0, 0, .12), 0 5px 5px -3px rgba(0, 0, 0, .2)
}
.box-shadow--16dp {
    box-shadow: 0 16px 24px 2px rgba(0, 0, 0, .14), 0 6px 30px 5px rgba(0, 0, 0, .12), 0 8px 10px -5px rgba(0, 0, 0, .2)
}
/* for showing shadow behind element on hover */
.float-shadow {
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    display: inline-block;
    position: relative;
    transform: translateZ(0px);
    transition-duration: 0.3s;
    transition-property: transform;
}
.float-shadow::before {
    background: rgba(0, 0, 0, 0) radial-gradient(ellipse at center center , rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%) repeat scroll 0 0;
    content: "";
    height: 10px;
    left: 5%;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 100%;
    transition-duration: 0.3s;
    transition-property: transform, opacity;
    width: 90%;
    z-index: -1;
}
.float-shadow:hover {
    transform: translateY(-5px);
}
.float-shadow:hover::before {
    opacity: 1;
    transform: translateY(5px);
}
/* TIMELINE
-------------------------------------------------- */
.timeline {
    list-style: none;
    padding: 20px 0 20px;
    position: relative;
}
.timeline:before {
    top: 0;
    bottom: 0;
    position: absolute;
    content: " ";
    width: 3px;
    background-color: #eeeeee;
    left: 50%;
    margin-left: -1.5px;
}
.timeline > li {
    margin-bottom: 20px;
    position: relative;
}
.timeline > li:before,
.timeline > li:after {
    content: " ";
    display: table;
}
.timeline > li:after {
    clear: both;
}
.timeline > li:before,
.timeline > li:after {
    content: " ";
    display: table;
}
.timeline > li:after {
    clear: both;
}
.timeline > li > .timeline-panel {
    width: 46%;
    float: left;
    border: 1px solid #d4d4d4;
    border-radius: 2px;
    padding: 20px;
    position: relative;
    -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175);
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175);
}
.timeline > li > .timeline-panel:before {
    position: absolute;
    top: 26px;
    right: -15px;
    display: inline-block;
    border-top: 15px solid transparent;
    border-left: 15px solid #ccc;
    border-right: 0 solid #ccc;
    border-bottom: 15px solid transparent;
    content: " ";
}
.timeline > li > .timeline-panel:after {
    position: absolute;
    top: 27px;
    right: -14px;
    display: inline-block;
    border-top: 14px solid transparent;
    border-left: 14px solid #fff;
    border-right: 0 solid #fff;
    border-bottom: 14px solid transparent;
    content: " ";
}
.timeline > li > .timeline-badge {
    color: #fff;
    width: 50px;
    height: 50px;
    line-height: 50px;
    font-size: 1.4em;
    text-align: center;
    position: absolute;
    top: 16px;
    left: 50%;
    margin-left: -25px;
    background-color: #999999;
    z-index: 100;
    border-top-right-radius: 50%;
    border-top-left-radius: 50%;
    border-bottom-right-radius: 50%;
    border-bottom-left-radius: 50%;
}
.timeline > li.timeline-inverted > .timeline-panel {
    float: right;
}
.timeline > li.timeline-inverted > .timeline-panel:before {
    border-left-width: 0;
    border-right-width: 15px;
    left: -15px;
    right: auto;
}
.timeline > li.timeline-inverted > .timeline-panel:after {
    border-left-width: 0;
    border-right-width: 14px;
    left: -14px;
    right: auto;
}
.timeline-badge.primary {
    background-color: #2e6da4 !important;
}
.timeline-badge.success {
    background-color: #3f903f !important;
}
.timeline-badge.warning {
    background-color: #f0ad4e !important;
}
.timeline-badge.danger {
    background-color: #d9534f !important;
}
.timeline-badge.info {
    background-color: #5bc0de !important;
}
.timeline-title {
    margin-top: 0;
    color: inherit;
}
.timeline-body > p,
.timeline-body > ul {
    margin-bottom: 0;
}
.timeline-body > p + p {
    margin-top: 5px;
}

/* IFRAME / EMBED CONTAINER
-------------------------------------------------- */
.Flexible-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}
.Flexible-container iframe,   
.Flexible-container object,  
.Flexible-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.audio span.label + div,
.audiodata span.label + div,
.audio span.label + p + div,
.audiodata span.label + p + div {
	 margin-top:10px;
	 max-width: 100%;
}
.map-container {
	margin-bottom: 30px;
	max-height: 300px;
}
.mediarow {
	margin: 30px 0;
}
.mediarow h3 {
	margin-top: 5px;
}
.audioimg img {
	width: 100%;
	object-fit: cover;
}
/* TABLES
-------------------------------------------------- */
.no-phone thead tr th:nth-of-type(3),
.no-phone tbody tr td:nth-of-type(3) {
	display: none;
}
/* MASS TABLES
-------------------------------------------------- */
@media (max-width: 48em) {
	.table-mass tr {
		 display: grid;
		 grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
	}
	.table-responsive > .table.table-mass > tbody > tr > td {
		 white-space: normal;
	}
}
/* TABLESORTER
-------------------------------------------------- */
/* overall */
.tablesorter-default {
	width: 100%;
	color: #333;
	border-spacing: 0;
	margin: 10px 0 15px;
	text-align: left;
}

/* header */
.tablesorter-default th,
.tablesorter-default thead td {
	color: #444;
	border-collapse: collapse;
	border-bottom: #ccc 2px solid;
	padding: 0;
}
.tablesorter-default tfoot th,
.tablesorter-default tfoot td {
	border: 0;
}
.tablesorter-default .header,
.tablesorter-default .tablesorter-header {
	background-image: url(data:image/gif;base64,R0lGODlhFQAJAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAkAAAIXjI+AywnaYnhUMoqt3gZXPmVg94yJVQAAOw==);
	background-position: center right;
	background-repeat: no-repeat;
	cursor: pointer;
	white-space: normal;
	padding: 4px 20px 4px 4px;
}
.tablesorter-default thead .headerSortUp,
.tablesorter-default thead .tablesorter-headerSortUp,
.tablesorter-default thead .tablesorter-headerAsc {
	background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjI8Bya2wnINUMopZAQA7);
	border-bottom: #000 2px solid;
}
.tablesorter-default thead .headerSortDown,
.tablesorter-default thead .tablesorter-headerSortDown,
.tablesorter-default thead .tablesorter-headerDesc {
	background-image: url(data:image/gif;base64,R0lGODlhFQAEAIAAACMtMP///yH5BAEAAAEALAAAAAAVAAQAAAINjB+gC+jP2ptn0WskLQA7);
	border-bottom: #000 2px solid;
}
.tablesorter-default thead .sorter-false {
	background-image: none;
	cursor: default;
	padding: 4px;
}

/* tfoot */
.tablesorter-default tfoot .tablesorter-headerSortUp,
.tablesorter-default tfoot .tablesorter-headerSortDown,
.tablesorter-default tfoot .tablesorter-headerAsc,
.tablesorter-default tfoot .tablesorter-headerDesc {
	border-top: #000 2px solid;
}

/* tbody */
.tablesorter-default td {
	border-bottom: #ccc 1px solid;
	padding: 4px;
	vertical-align: top;
}

/* hovered row colors */
.tablesorter-default tbody > tr:hover > td,
.tablesorter-default tbody > tr.even:hover > td,
.tablesorter-default tbody > tr.odd:hover > td {
	background: #fff;
	color: #000;
}

/* table processing indicator */
.tablesorter-default .tablesorter-processing {
	background-position: center center !important;
	background-repeat: no-repeat !important;
	/* background-image: url(../addons/pager/icons/loading.gif) !important; */
	background-image: url('data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=') !important;
}

/* Zebra Widget - row alternating colors */
.tablesorter-default tr.odd td {
	background-color: #dfdfdf;
}
.tablesorter-default tr.even td {
	background-color: #efefef;
}

/* Column Widget - column sort colors */
.tablesorter-default tr.odd td.primary {
	background-color: #bfbfbf;
}
.tablesorter-default td.primary,
.tablesorter-default tr.even td.primary {
	background-color: #d9d9d9;
}
.tablesorter-default tr.odd td.secondary {
	background-color: #d9d9d9;
}
.tablesorter-default td.secondary,
.tablesorter-default tr.even td.secondary {
	background-color: #e6e6e6;
}
.tablesorter-default tr.odd td.tertiary {
	background-color: #e6e6e6;
}
.tablesorter-default td.tertiary,
.tablesorter-default tr.even td.tertiary {
	background-color: #f2f2f2;
}

/* caption */
caption {
	background: #fff;
}

/* filter widget */
.tablesorter-default .tablesorter-filter-row td {
	background: #eee;
	border-bottom: #ccc 1px solid;
	line-height: normal;
	text-align: center; /* center the input */
	-webkit-transition: line-height 0.1s ease;
	-moz-transition: line-height 0.1s ease;
	-o-transition: line-height 0.1s ease;
	transition: line-height 0.1s ease;
}
/* optional disabled input styling */
.tablesorter-default .tablesorter-filter-row .disabled {
	opacity: 0.5;
	filter: alpha(opacity=50);
	cursor: not-allowed;
}
/* hidden filter row */
.tablesorter-default .tablesorter-filter-row.hideme td {
	/*** *********************************************** ***/
	/*** change this padding to modify the thickness     ***/
	/*** of the closed filter row (height = padding x 2) ***/
	padding: 2px;
	/*** *********************************************** ***/
	margin: 0;
	line-height: 0;
	cursor: pointer;
}
.tablesorter-default .tablesorter-filter-row.hideme .tablesorter-filter {
	height: 1px;
	min-height: 0;
	border: 0;
	padding: 0;
	margin: 0;
	/* don't use visibility: hidden because it disables tabbing */
	opacity: 0;
	filter: alpha(opacity=0);
}
/* filters */
.tablesorter-default .tablesorter-filter {
	width: 95%;
	height: auto;
	margin: 4px;
	padding: 4px;
	background-color: #fff;
	border: 1px solid #bbb;
	color: #333;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: height 0.1s ease;
	-moz-transition: height 0.1s ease;
	-o-transition: height 0.1s ease;
	transition: height 0.1s ease;
}

/* ajax error row */
.tablesorter .tablesorter-errorRow td {
	text-align: center;
	cursor: pointer;
	background-color: #e6bf99;
}

/* IMAGE GALLERY
-------------------------------------------------- */
.gallery {
	 display: grid;
	 grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	 gap: 5px;
     margin: 10px 0 30px 0;
}
.gallery a {
	 display: flex;
	 justify-content: center;
	 align-content: center;
	 background-color: #ddd;
}
.gallery img {
	margin: 2px 0;
	 max-width: 100%;
	 max-height: 180px;
	 object-fit: contain;
}

/*
 * Bootstrap Image Gallery CSS 3.0.0
 * https://github.com/blueimp/Bootstrap-Image-Gallery
 *
 * Copyright 2013, Sebastian Tschan
 * https://blueimp.net
 *
 * Licensed under the MIT license:
 * http://www.opensource.org/licenses/MIT
 */

.blueimp-gallery .modal-body {
	position: relative;
	text-align: center;
	padding: 0 0 56.25% 0;
	overflow: hidden;
	cursor: pointer;
}
.blueimp-gallery .modal-footer {
	margin: 0;
}
.blueimp-gallery .modal-body img,
.blueimp-gallery .modal-body .video-content video,
.blueimp-gallery .modal-body .video-content iframe,
.blueimp-gallery .modal-body .video-content a {
	max-width: 100%;
	max-height: 100%;
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.blueimp-gallery .modal-body .video-content video {
 	display: none;
}
.blueimp-gallery .modal-body .video-playing video {
	display: block;
}
.blueimp-gallery .modal-body .video-content iframe {
	width: 100%;
	height: 100%;
	border: none;
	left: 100%;
}
.blueimp-gallery .modal-body .video-playing iframe {
	left: 0;
}
.blueimp-gallery .modal-body .video-playing img,
.blueimp-gallery .modal-body .video-playing a {
 	display: none;
}
.blueimp-gallery .modal-body .video-content a {
	cursor: pointer;
}
.blueimp-gallery .modal-body .video-content a:after {
	font-family: "Glyphicons Halflings";
	-webkit-font-smoothing: antialiased;
	content: "e029";
	font-size: 64px;
	line-height: 64px;
	width: 64px;
	height: 64px;
	position: absolute;
	top: 50%;
	margin: -32px 0 0 -32px;
}
.blueimp-gallery .modal-body .video-loading a {
	background: url(../images/loading.gif) center no-repeat;
	background-size: 64px 64px;
}
.blueimp-gallery .modal-body .video-loading a:after {
	content: none;
}
.blueimp-gallery-svgasimg > .close {
  background-image: url(/images/close.svg);
  background-color: #fff;
  border-radius: 50%;
  font-size: 0;
  line-height: 0;
}
.blueimp-gallery-svgasimg > .next {
  background-image: url(/images/next.svg);
  font-size: 0;
  line-height: 0;
}
.blueimp-gallery-svgasimg > .prev {
  background-image: url(/images/prev.svg);
  font-size: 0;
  line-height: 0;
}
/* POPOVERS
-------------------------------------------------- */
a.tooltippopover {
	border-bottom: 1px dashed #999;
	text-decoration: none;
}
.popover-content {
	font-size:.8em;
}
/* GRID
-------------------------------------------------- */
.grid-container-auto {
	display: grid;
	grid-gap: 10px;
}
.grid-container-auto, .grid-4across {
	grid-template-columns: repeat(auto-fill, minmax(22%, 1fr));
}
.grid-3across {
	grid-template-columns: repeat(auto-fill, minmax(30%, 1fr));
}
.grid-2across {
	grid-template-columns: repeat(auto-fill, minmax(45%, 1fr));
}
.grid-5across {
	grid-template-columns: repeat(auto-fit, minmax(18%, 1fr));
}
@media (max-width: 62em) { 
	.grid-container-auto, .grid-4across {
		grid-template-columns: repeat(auto-fill, minmax(45%, 1fr));
	}
	.grid-3across {
		grid-template-columns: repeat(auto-fill, minmax(30%, 1fr));
	}
	.grid-2across {
		grid-template-columns: repeat(auto-fill, minmax(45%, 1fr));
	}
	.grid-5across {
		grid-template-columns: repeat(auto-fit, minmax(45%, 1fr));
	}
}
@media (max-width: 48em) { 
	.grid-container-auto, .grid-4across {
		grid-template-columns: repeat(auto-fill, minmax(90%, 1fr));
	}
	.grid-3across {
		grid-template-columns: repeat(auto-fill, minmax(90%, 1fr));
	}
	.grid-2across {
		grid-template-columns: repeat(auto-fill, minmax(90%, 1fr));
	}
	.grid-5across {
		grid-template-columns: repeat(auto-fit, minmax(90%, 1fr));
	}
}
.grid-img {
	height: auto;
	width: 100%;
	object-fit: cover;
	aspect-ratio: 4/3;
}
.grid-img-sq,
.grid-2across .grid-img-sq,
.grid-3across .grid-img-sq {
	height: auto;
}
.grid-icon {
	max-width: 150px;
	height: auto;
	margin: 0 auto;
	padding: 15px;
}
.grid-caption h3 a,
.grid-caption h2 a {
	 text-decoration: none;
}
.grid-caption h2 {
	margin: 15px 0;
}
.grid-bordered .grid-item {
	 border: 1px solid #ddd;
	 border-radius: 6px;
}
.grid-bordered .grid-caption {
	 padding: 10px;
}
.grid-bordered .grid-img {
	 border-radius: 6px 6px 0 0;
}
.grid-container-auto i.fa {
	 border-radius: 50%;
	 padding: 5px;
	 font-size: 3em;
	 font-weight: 600;
}
.darkbkg .grid-container-auto i.fa {
	 color: #fff;
}
.grid-item {
	 display: flex;
	 flex-direction: column;
}
.grid-item > a {
	 display: block;
	 flex: 1;
}
.grid-item > .grid-caption {
	 flex: 2;
	 display: flex;
	 flex-direction: column;
	 justify-content: space-between;
}
.grid-item > .grid-caption p:last-of-type {
	margin-top: auto;
	margin-bottom: 0;
}
/* FLEX BOXES
-------------------------------------------------- */
.row-flex-vcenter {
	display:flex; 
	align-items:center;
}

.flex-row {
	display: flex;
	flex-wrap: wrap;
}
.flex-row > [class*='col-'] {
	display: flex;
	flex-direction: column;
}
.flex-row .thumbnail,
.flex-row .caption {
	flex-direction: column;
	display: flex;
	flex: 1 0 auto;
	height: auto;
	position: relative;
}
.flex-text {
	flex-grow: 1;
}
.flex-row img {
	min-width: 0;
	width: 100%;
}
/* FLEX CARDS
-------------------------------------------------- */
.card-container {
	display: flex;
	flex-wrap: wrap;
}
.card-flexh,
.card-flexv {
	display: flex;
	margin: 10px;
	border: 1px solid #ddd;
	flex-grow: 1;
}
.card-flexh {
	flex-basis: 48%; /*2 across*/
}
.card-flexv {
	flex-direction: column;
	flex-basis: 23.2%; /*4 across*/
}
.card-flexh .headimg {
	width: 40%;
	background-position: center center;
	background-size: cover;
}
.card-flexh .caption {
	display: flex;
	width: 100%;
	padding: 10px;
	flex-direction: column;
}
.card-flexh .headimg+.caption {
	width: 60%;
}
.caption-body {
	flex-grow: 1;
}
.card-flexv .headimg {
	height: 12vw;
	background-position: center center;
	background-size: cover;
}
.card-flexv .caption {
	display: flex;
	padding: 10px;
	flex-direction: column;
	flex-grow: 1;
}
.card-flexh .caption h3,
.card-flexv .caption h3 {
	 margin-top:10px;
}
.card-flexh .caption p,
.card-flexv .caption p {
	 font-size:.85em;
}
.card-flexh .caption p.caption-top,
.card-flexv .caption p.caption-top,
.card-flexh .caption p.caption-bottom,
.card-flexv .caption p.caption-bottom {
	 font-size:.75em;
	 padding:5px;
}
.card-flexh .caption p.caption-top,
.card-flexv .caption p.caption-top {
	 border-bottom: 1px solid #ddd;
}
.card-flexh .caption p.caption-bottom,
.card-flexv .caption p.caption-bottom {
	 border-top: 1px solid #ddd;
	 margin-bottom:0;
}
.btn-bottom {
	align-self: baseline;
}
@media (max-width: 75em) { /* 1199px */
	.card-flexh {
		flex-basis: 47.5%;
	}
	.card-flexv {
		flex-basis: 22%;
	}
}
@media (max-width: 64em) { /* 1024px */
	.card-flexv {
		flex-basis: 31%;
	}
}
@media (max-width: 62em) { /* 992px */
	.card-flexh {
		flex-basis: 100%;
	}
	.card-flexv {
		flex-basis: 30%;
	}
	.card-flexv .headimg {
		height: 15vw;
	}
}
@media (max-width: 25.9em) { /* 414px */
	.card-flexh .headimg {
		width: 50%;
	}
	.card-flexh .caption {
		width: 50%;
	}
	.card-flexv {
		flex-basis: 100%;
	}
	.card-flexv .headimg {
		height: 40vw;
	}
}
/* simple flex that centers last row */
.flex-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.item {
	flex: 0 0 clamp(300px, 22%, 400px);
	padding: 20px;
	margin: 10px;
}
.flex-container .item h3:first-of-type {
	margin-top: 0;
}
.flex-bordered .item {
	border:1px solid #ddd;
	background-color: #fff;
}
/* CARDS
-------------------------------------------------- */
.col-card .title {
	margin: -14px -14px 0 -14px;
	border-bottom: none;
	padding: 10px;
	border-radius: 0;
}
.col-card .subtitle {
	border-bottom: 1px solid #eee;
	padding: 10px;
	margin: 0 -14px 20px -14px;
}
.col-card .footer {
	border-top: 1px solid #eee;
	margin: 0 -5px -5px;
	padding: 10px;
}
/* UTILITY
-------------------------------------------------- */
.display-flex {
	display: flex;
}
.display-flex-col {
	display: flex;
	flex-direction: column;
}
.flex-end {
	justify-content: flex-end !important;
}
.flex-start {
	justify-content: flex-start !important;
}
.flex-center {
	justify-content: center !important;
}
.flex-wrap {
	flex-wrap: wrap !important;
}
.space-between {
	justify-content: space-between !important;
}
.align-center {
	align-items: center !important;
}
.justify-center {
	justify-content: center !important;
}
.mt2 {
	margin-top: 2em;
}
.mb0 {
	margin-bottom: 0;
}
.float-right {
	float: right;
}
.nowrap {
	white-space: nowrap;
}
.h35 {
	height: 35vw;
}
/* RESPONSIVE CSS
-------------------------------------------------- */
@media (min-width: 675px) {
    *[id*='cwwrapper_'] {display:none !important;}
    *[id*='cwucelist_'] {display:none !important;}
}
@media (max-width: 675px)  {
    .full-calendar {display: none;}
    *[id*='cwucelist_'] {position:relative !important;}
}

@media (max-width: 85.375em) { /* 1366px */
    .mega-dropdown-menu .dropdown-header {
        font-size: 1.8em;
    }
}

@media (max-width: 75em) { /* 1199px */
    .mega-dropdown-menu .dropdown-header {
        font-size: 1.8em;
    }
}

@media (max-width: 64em) { /* ipad vertical - 1024px */
    .mega-dropdown-menu .dropdown-header {
        font-size: 1.8em;
    }
}

@media (max-width: 62em) { /* 992px */
    .btn-group-lg>.btn, .btn-lg {
        font-size: 13px;
    }
    .mega-dropdown-menu .dropdown-header {
        font-size: 1.5em;
    }
}

@media (max-width: 50em) { /* windows 800px wide */
    .navbar-default .navbar-nav > li > a, 
    .navbar-default .navbar-nav > li > a:focus {
         font-size: .9em;
    }
    .mega-dropdown-menu .dropdown-header {
        font-size: 1.5em;
    }
}

@media (max-width: 48em) { /* 767px width where the navbar collapses and shows drop-down icon */
    .mainContentWrapper {
        /*padding: 15px;*/
    }
    .headeraddress {
         display: none;
    }
    .navbar-toggle {
        margin-top:15px;
        background-color:#fff;
    }
    .navbar > div.container-fluid,
    .navbar > div.container,
    .navbar-nav{
    	 display: block;
    }
    .navbar-brand {
         width: 50%;
    }
/*
    .navbar-default .navbar-nav > li > a, 
    .navbar-default .navbar-nav > li > a:focus {
         font-size: 3vw;
         padding: 5px;
    }
*/
    ul.dropdown-menu.mega-dropdown-menu.row {
        padding-top:0;
    }
    .navbar-nav .open .dropdown-menu .dropdown-header {
         padding: 5px 0;
         font-size: 1.2em;
   }
    #splashCarousel .splashnav {
         display:none;
         height:0;
    }
    #splashCarousel .carousel-control.right,
    #splashCarousel .carousel-control.left {
         bottom: 0;
    }
    .embed-responsive .embed-responsive-item, .embed-responsive embed, .embed-responsive iframe, .embed-responsive object, .embed-responsive video {
        position:relative; /* so the iframe doesn't collapse on small screens */
    }
    .audiodata {
        display: block;
    }
}

@media (max-width: 42.375em) { /* 658px */
    .media-body, .media-left, .media-right {
        display: block;
        width: 100%;
        padding: 0;
        margin-bottom: 15px;
    }
    .event .media-left img, .event .media-right img {
        max-width: 100%;
        width: 100%;
        object-fit: cover;
    }
}

@media (max-width: 25.9em) { /*iphone 6+ 414px*/
    .caption-bkg {
         padding:10px;
    }
    .caption-lg {
         font-size: calc(16px + (20 - 16) * ((100vw - 300px) / (1600 - 300)));
    }
    .caption-md {
         font-size: calc(16px + (18 - 16) * ((100vw - 300px) / (1600 - 300)));
    }
    .timecol {
         width:100%;
         height:auto;
         min-height:auto;
    }
    .timecol h3 {
         font-size:1em;
         padding: 10px;
    }
    .timecol h3 small {
         font-size:1em;
         display:inline-block;
         padding-left: 10px;
    }
}

@media (max-width: 23.5em) { /* iphone 6 - 375px */


}

@media (max-width: 22.5em) { /* iphone 6 - 360px */


}
