@import url('//fonts.googleapis.com/css?family=Lato:400,400i,700,700i|Spectral:600,600i&display=swap');


/************ 

TEMPLATE NOTES

Light Blue: #6098c9; rgba(96,152,201,1)
Blue: #303882; rgba(48,56,130,1) - top right header links
Yellow: #e6d977; rgba(230,217,119,1) - read more buttons
Gold: #cfbb75; rgba(207,187,117,1) - links
Gold: #ccb566; rgba(207,187,117,1) - links
Gold Overlay: #a8996a, rgba(168,153,106,0.4) - 40% overlay on quicklinks and "get our latest email"
Gradient Overlay: #a8996a; background: linear-gradient(0deg, rgba(168,153,106,0.9) 60%, rgba(168,153,106,0) 100%);

************/

body {color: #333; font-size: 1.1rem; font-family: 'Lato', sans-serif; }

h1, h2, h3, h4, h5, h6 { margin: .75rem 0; line-height: 1.3; font-weight: normal;}
p { line-height: 1.3; font-size: 1.1rem; font-family: 'Lato', sans-serif; }

h1 { font-family: 'Spectral', serif; color: #6098c9; font-size: 2.5rem;}
h2, .page-header h2 { font-family: 'Spectral', serif; color: #6098c9; font-size: 2rem; border-bottom: 1px solid #333;  line-height: 1.3; margin: 0; padding: 0;}
h3 { font-family: 'Spectral', serif; color: #ccb566; font-size: 2rem;}
h4 { font-family: 'Spectral', serif; background: #303882; font-size: 1.75rem; color: white; border-radius: .2rem; padding: .1rem .4rem;}
h5 { font-family: 'Spectral', serif; color: #ccb566; font-size: 1.5rem; text-transform: uppercase;}
h6 { font-family: 'Lato', sans-serif; color: #303882; font-size: 1.6rem; font-style: italic;}
a { color: #ccb566; }
a:hover { color: #6098c9; }

blockquote {
	color: #333;     
	padding: 0 0 0 15px;
	margin: 0 0 20px;
	border-left: 5px solid #d5d5d5;
	font: italic 16px/22px Georgia, Serif;
	line-height: 1.2;
	font-size: 1.3rem;
}

address {
	font-style: italic;
	font-weight: bold;
	font-size: 1.2rem;
	line-height: 1.2;
}

/************ BUTTONS  ************/
.readon, .button, .btn, p.readmore .btn, .bottombutton   { 
  color: #303882; 
  font-size: 1rem;
  text-transform: none;
  font-weight: normal;
  background: #e6d977; 
  padding: .7rem 1.3rem; 
  border-radius: .5rem; 
  margin: 0;
  display: inline-block;
  font-weight: 500;
  line-height: 1.125rem;
  border: none;
  transition: all .2s ease-in;
}

.readon:hover, .button:hover, .btn:hover,  p.readmore .btn:hover, .bottombutton:hover {background: #cfbb75; color: #303882; }

.btn .icon-chevron-right { display: none;}

/************ TABLES  ************/
.fancytable th {color: white; background: #303882; border: 1px solid #303882;}
.infotables th {color: white; background: #303882; border: 1px solid #303882;}
.fancytable td { border: 1px solid #303882;}
.infotables td { border: 1px solid #303882;}

/************ ALERT ************/
.alert .g-content {padding: 0; margin: 0;}
.alert {border: none; padding: 0; margin: 0; background-color: #FFCFCF; color: #FF0000;}
.alert h1, .alert h2, .alert h3, .alert h4, .alert h5, .alert h6, .alert p { margin-left: 20px; color: red; background: transparent;}

/************ HOMELAYOUT  ************/
.homelayout .hiddenhome { display: none; }
#g-feature:before { border: none; }
.homelayout p.buttonheading { margin: 0; padding: 0; }

/************ SECTION SPACING  ************/
#g-navigation, #g-feature, #g-extension, #g-bottom, #g-footer { padding: 0 8%; }

/************ HEADER  ************/
#g-top { padding: 0% 8%; background: url(../images/template/header.jpg) 100% 0% no-repeat; background-size: cover; }
#g-top .logo .g-content { margin: 0; padding: 1.35rem; }

@media only screen and (max-width: 767px) { 
	.g-logo img { width: 92%;} 
	#g-top .g-block.visible-phone .g-content { margin: 0; }
	#g-top { background: url(../images/template/header-mobile.jpg) 100% 0% no-repeat; border-bottom: 1px #6098c9 solid; }
}

/************ TOP ICONS  ************/
.g-iconmenu {display: flex; width: 100%;  margin: 0 0 0 auto;}
.g-iconmenu > a  { color: #303882;  flex:1; border-left: 1px #303882 solid; padding: 10px;}
.g-iconmenu > a:hover { background: rgba(96,152,201,0.25); }
.g-iconmenu > a:first-child { border-left: none;}
.g-iconmenu span { display: block; text-align: center; }
.g-iconmenu .g-iconmenu-text {  line-height: 1.1; font-size: 1vw; letter-spacing: 1px; font-weight: bold; }
.g-iconmenu .g-iconmenu-icon {  font-size: 1.5rem; }
.g-iconmenu img { height: 2vw; padding-bottom: 10px;}

/************ CENTER TOP ICONS VERTICALLY  ************/
.g-block.icons { display: flex; justify-content: center; align-items: center; }

/************ MENU  ************/
#g-navigation .g-content { margin: 0; padding: 0;}
.g-main-nav .g-toplevel > li > .g-menu-item-container, .g-main-nav .g-toplevel > li:hover > .g-menu-item-container, .g-main-nav .g-toplevel > li.active > .g-menu-item-container { color: white; }
.g-main-nav .g-standard > .g-dropdown, .g-main-nav .g-fullwidth > .g-dropdown { margin-top: 0px;}
.g-main-nav .g-toplevel > li:hover, .g-main-nav .g-toplevel > li.active {   background: rgba(0,0,0,.1); }
.g-main-nav .g-sublevel > li:hover, .g-main-nav .g-sublevel > li.active {   background: rgba(0,0,0,.1); }
#g-navigation { padding-bottom: 0px; }
.g-main-nav .g-toplevel > li > .g-menu-item-container { text-align: center;  padding: 0.625rem 0.75rem;  }
.g-main-nav .g-toplevel > li.g-parent .g-menu-parent-indicator {display: none; }
.g-main-nav .g-toplevel > li > .g-menu-item-container, .g-main-nav .g-sublevel > li > .g-menu-item-container {font-size: 1rem; }

.g-main-nav ul.g-toplevel {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-around;
}
.g-main-nav .g-standard .g-fade.g-dropdown { z-index: 10;}
.g-main-nav .g-dropdown { border-radius: 0 0 6px 6px;}

.g-main-nav .g-standard > .g-dropdown.g-dropdown-right, .g-main-nav .g-fullwidth > .g-dropdown.g-dropdown-right { left: 0; }

/************ OFFCANVAS MENU  ************/
.g-offcanvas-toggle {color: #303882; }
#g-offcanvas #g-mobilemenu-container .g-toplevel > li > .g-menu-item-container > .g-menu-item-content, #g-offcanvas #g-mobilemenu-container .g-sublevel > li > .g-menu-item-container > .g-menu-item-content {font-weight: normal; }
#g-offcanvas .g-menu-item-title {color: white; }
#g-offcanvas #g-mobilemenu-container ul > li > a.g-menu-item-container:hover {background: rgba(0,0,0,0.15); }
#g-offcanvas #g-mobilemenu-container ul > li.g-menu-item-link-parent > .g-menu-item-container > .g-menu-parent-indicator {border: none; background: none; }
#g-offcanvas #g-mobilemenu-container ul > li.g-menu-item-link-parent > .g-menu-item-container > .g-menu-parent-indicator:hover {border: none; background: none; }

@media only screen and (max-width: 767px) { 
	.g-offcanvas-toggle { top: 20px; left: 20px; }
	.mobile-menu .g-content { margin-bottom: 5.5%; }

	.icons-mobile .g-content { margin: 1%; padding: 0.5rem; border-top: 1px rgba(255,255,255,0.5) solid;}
	.g-iconmenu {width: 100%; flex-direction: column;  }
	.g-iconmenu img { height: 7vw; padding-right: 10px;}
	.g-iconmenu .g-iconmenu-text {  font-size: 2.2vw; line-height: 3;}
	.g-iconmenu > a  { color: white !important; border: none; margin: 5px 0 5px 0; display: flex; padding: 0 10px;}
	.icons-mobile
}

/************ SIDE MENU  ************/
#g-aside .moduletable[class*="box"] { padding: 0; }
#g-aside .g-content { padding-left: 0; padding-right: 0px;}
.moduletable .nav.menu li a { width: 100%; border-radius: 0; padding: 10px 20px; color: white; font-weight: normal;}
.moduletable .nav.menu li{ transition: all .2s ease-in; border-radius: 3px; width: 100%; padding: 0; margin: 0;}
.moduletable .nav.menu, .moduletable .unstyled { border: none; padding: 0; margin: 0; display: block;  background: #6098c9;  border-radius: 0; }
.moduletable .nav.menu li:last-child {  padding-bottom: 0;  margin-bottom: 30px;}
.moduletable .nav.menu .nav-child li:last-child {  margin-bottom: 0px;}
.moduletable .nav .nav-child { margin-top: 0px;}
.moduletable .nav.menu .nav-child li { border: none; margin-left: 20px; padding-right: 20px;}

.moduletable .nav.menu li.current.active a, .moduletable .nav.menu li a:hover { 
	color: #303882;
	background: #e6d977;
	font-weight: normal;
}

/************ ROTATOR FULL WIDTH  ************/
#g-showcase .g-content { margin: 0; padding: 0; }
.layout-slideshow .sprocket-features-img-container img { float: none; width: 100%;  height: 42vw !important; object-fit: cover; object-position: center; }

/************ BIGGER ARROWS ON SLIDESHOW ************/
.layout-slideshow .sprocket-features-arrows .arrow span { font-size: 6rem; line-height: 0px; width: 25px;}

.sprocket-features.layout-slideshow.arrows-onhover .sprocket-features-arrows .arrow { background: none; box-shadow: none; color: white; text-shadow: 2px 2px 5px rgba(0,0,0,0.75);}
.sprocket-features.layout-slideshow.arrows-onhover .sprocket-features-arrows .arrow { font-size: 5rem; }
.arrows-active .sprocket-features-img-list {margin: 0px; }
.arrows-onhover .sprocket-features-arrows .arrow.prev span { margin-left: 0;}
.arrows-onhover .sprocket-features-arrows .arrow.next span { margin-right: 0;}

@media only screen and (max-width: 767px) {
	.sprocket-features-pagination, .sprocket-features-arrows { display: none;}
}

/************ PAGINATION ************/
.layout-slideshow .sprocket-features-pagination li { padding: 10px; }

/************ QUICKLINK PICS  ************/
.quicklinkpics {display: flex; margin-top: 0.5%; }
.quicklinkpics > div {
	flex: 1; 
	height: 180px; 
	position: relative; 
}

.quicklinkpics > div:first-child { margin-right: 0.65%; }
.quicklinkpics > div:last-child { margin-left: 0.65%; }

.quicklinkpics > div > a { 
  position: absolute; 
  top: 0; bottom: 0; right: 0; left: 0; 
  font-size: 1.6rem; 
  background: rgba(168,153,106,0.4);
  color: white;
  text-shadow: 1px 1px 1px rgba(0,0,0,0.8), 0px 0px 8px rgba(0,0,0,0.9), 0px 0px 50px rgba(0,0,0,0.9);
}
.quicklinkpics > div > a > div { 
  position: absolute; 
  top: 0; bottom: 0; right: 0; left: 0; 
  margin: 5%; 
  font-family: 'Spectral', serif; 
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;	
}

.quicklinkpics > div:hover > a > div { margin: 0; border: 1px rgba(255,255,255,.1) solid; }

.quicklinkpics > div:hover {
}
.quicklinkpics > div:hover > a {background: rgba(168,153,106,0.8);}

.quicklinkpics > div > div > img {
  object-fit: cover; 
  object-position: center;
  height: 200px;
  width: 100%;
}

@media only screen and (max-width: 767px) {
	.quicklinkpics { display: block; border-top: 10px #ffffff solid;}
	.quicklinkpics > div > a, .quicklinkpics > div > a > div { position: relative; }
	.quicklinkpics > div > div > img { height:  90px; width:  120px;}
	.quicklinkpics > div > a > div img { max-height: 90px; padding: 10px 0; }
	.quicklinkpics > div { display: flex; margin: 10px; }
	.quicklinkpics > div:first-child { margin-right: 10px; }
	.quicklinkpics > div:last-child { margin-left: 10px; }
	.quicklinkpics > div:hover > a { background: #6098c9;  }
	.quicklinkpics > div > a { background: #cfbb75; flex:1; text-shadow: none; }
	.quicklinkpics > div { height: auto; border-bottom: 1px #ffffff solid;}
	.quicklinkpics > div > a > div { border: none; }
	.quicklinkpics > div > a { display: flex;  align-items: center; justify-content: flex-start; }
	.quicklinkpics > div > a > div {  margin: 0 0 0 20px;}
	.quicklinkpics > div:hover > a > div {margin: 0 0 0 20px; border: none; }
}

/************ WECLOME & MASS TIMES  ************/
#g-feature h1 { margin-top: 0px; margin-bottom: 1rem; letter-spacing: 1.5px; font-size: 2.7rem; }
#g-feature .welcome img { width: 33%; margin-right: 10px; margin-bottom: 20px; }


/************ GET OUR LATEST EMAIL (FLOCKNOTE SIGN UP)  ************/
#g-expanded { height: 250px; background: url(../images/template/background.jpg) 50% 50% no-repeat; background-size: cover; }
#g-expanded .g-content { height: 250px; margin: 0; padding: 0; display: flex; justify-content: center; align-items: center; }
#g-expanded p:last-child { margin-bottom: 0; }
#g-expanded h3 { color: white; font-family: 'Spectral', serif; font-size: 1.6rem; text-shadow: 1px 1px 1px rgba(0,0,0,0.8), 0px 0px 8px rgba(0,0,0,0.9), 0px 0px 25px rgba(0,0,0,0.9); }
#g-expanded a.button { box-shadow: 0px 0px 25px rgba(0,0,0,0.35); }

/************ MODULE TITLES  ************/
#g-feature h3.g-title, #g-extension h3.g-title { color: #6098c9; margin-bottom: 0px; padding-bottom: 0px; font-size: 1.75rem; line-height: 1.3;}

/************ MODULE READ MORE  ************/
#g-extension a.readon { background: none; text-transform: uppercase; font-weight: bold; text-align: left; padding: 0; transition: all 0s ease-in; }
#g-extension a.readon:hover { background: none; color: #ccb566; }

/************ HIGHLIGHTED NEWS  ************/
.highlights .sprocket-strips-s-content { margin: 0; }
.highlights h4.sprocket-strips-s-title a { color: #6098c9; }
.highlights h4.sprocket-strips-s-title a:hover { color: #3d709e; }
.highlights .sprocket-strips-s-block:first-child .sprocket-strips-s-item { margin-right: 20px; }
.highlights .sprocket-strips-s-block:last-child .sprocket-strips-s-item { margin-left: 20px; }
.highlights .sprocket-strips-s-item img { margin-bottom: 15px; }

/************ HIGHLIGHTED NEWS & LATEST NEWS  ************/
.highlights h4.sprocket-strips-s-title, .latest h4.sprocket-strips-s-title { background: none; padding: 0; font-size: 1.5rem; }
.highlights .sprocket-strips-s-item img, .latest .sprocket-strips-s-item img { width: 100%; object-fit: cover; object-position: center; }
.highlights .sprocket-strips-s-item img { height: 17vw !important; }
.highlights .roksprocket-ellipsis, .latest .roksprocket-ellipsis { display: none; }
.highlights .sprocket-strips-s-text p, .latest .sprocket-strips-s-text p { margin: 12px 0 0 0 !important; }

/************ LATEST NEWS  ************/
.latest h4.sprocket-strips-s-title a { color: #cfbb75; }
.latest h4.sprocket-strips-s-title a:hover { color: #b2a163; }
.latest .sprocket-strips-s-item img { height: 13vw !important; margin-bottom: 0px;}
.latest .sprocket-strips-s-pagination li { padding: 6px !important; background: #6098c9; border-radius: 0; }
.latest .sprocket-strips-s-arrows .arrow { background: rgba(96,152,201,0.35); color: #6098c9; opacity: 1; }
.latest .sprocket-strips-s-block { margin-bottom: 0px; }
.latest .sprocket-strips-s-nav { margin-top: -10px; }
.latest .sprocket-strips-s-text {font-weight: normal;}

/************ UPCOMING EVENTS  ************/
.rme-badge {
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-family: 'Lato', sans-serif; font-weight: bold ;
	background: #6098c9; 
	border-radius: 3px; 
	color: white; 
	padding: 5px 0px; 
	width: 55px; 
	float: none; 
	margin-bottom: 0px;
	
}
.rme-items { display: block;}
.rme-description { flex: 1;}
.rme-day, .rme-month { text-transform: none;}
.rme-day { font-size: 1.3rem;}
.rme-month { font-size: 1.2rem; }
.rme-title { font-size: 1rem; font-weight: normal;}
.rme-time { font-size: .9rem; font-weight: 300;}
.rme-items li { 
	display: flex; 
	background: none; 
	border: none; 
	margin: 7.5px 0px; 
	padding: 7.5px 0px;
}

@media only screen and (max-width: 767px) {
	.rme-items li { margin-top: 0px; margin-bottom: 0px; padding-top: 5px; padding-bottom: 5px;}
	.rme-title { font-size: .9rem; }
	.rme-time { font-size: .8rem; }
	.rme-day { font-size: 1.5rem;}
}

/************ BOTTOM PICS  ************/
.bottompics {display: flex;}
.bottompics > div {
	flex: 1; 
	height: 270px; 
	position: relative; 
	transition: all .35s ease-in-out;
	margin: 10px;
}

.bottompics > div:first-child { margin-left: 0px;}
.bottompics > div:last-child { margin-right: 0px;}

.bottompics > div > a { 
  position: absolute; 
  top: 0; bottom: 0; right: 0; left: 0; 
  height: 270px; 
  background: linear-gradient(0deg, rgba(168,153,106,0.85) 33%, rgba(168,153,106,0.45) 66%, rgba(168,153,106,0) 100%);
  transition: all .35s ease-in-out;
}

.bottomtext  { 
  position: absolute; 
  bottom: 10%; right: 10%; left: 10%;  
  margin: 0; 
  text-align: left;	
  transition: all .35s ease-in-out;
}

.bottomtitle { 
  color: white; 
  font-family: 'Spectral', serif;
  text-shadow: 1px 1px 1px rgba(0,0,0,0.8), 0px 0px 8px rgba(0,0,0,0.9), 0px 0px 50px rgba(0,0,0,0.9);
  font-size: 1.6rem;
  line-height: 1.2;
  margin-bottom: 5px;
}

.bottompics > div:hover > a {background: linear-gradient(0deg, rgba(168,153,106,0.95) 33%, rgba(168,153,106,0.65) 66%, rgba(168,153,106,0.25) 100%);}

.bottompics > div > div > img {
  object-fit: cover; 
  object-position: center;
  height: 270px;
  width: 100%;
}

@media only screen and (min-width: 1500px) {
	.bottompics > div, .bottompics > div > a, .bottompics > div > div > img { height:  22vw; }
}

/************ BOTTOM PICS MOBILE  ************/
@media only screen and (max-width: 767px) {
	.bottompics {display: block;}
	.bottompics > div { margin: 15px 0; }
	.bottompics > div, .bottompics > div > a, .bottompics > div > div > img { height: 200px;}
	.bottompics > div > a { background: linear-gradient(0deg, rgba(168,153,106,0.8) 45%, rgba(168,153,106,0) 100%); }
}

/************ FOOTER ************/
#g-footer a { color: white;  }
#g-footer a:hover { color: #303882;  }
#g-footer { background: #6098c9 url(../images/template/footer-icon.jpg) 15% 0% no-repeat; background-size: contain; }
#g-footer .admin .g-content { margin: 0; padding: 0; }
#g-footer a .fa.fa-lock { color: #e6d977; }
#g-footer a:hover .fa.fa-lock { color: #303882; }
#g-footer h3 { margin-bottom: 0px; }

/************ MOBILE ADJUSTMENTS  ************/
@media only screen and (max-width: 767px) {
	#g-feature .g-block:last-child .g-content { margin-top: 0px; padding-top: 0px; }
	.highlights .sprocket-strips-s-item img { height: 180px !important; margin-top: 20px; }
	.highlights .sprocket-strips-s-block:first-child .sprocket-strips-s-item { margin-right: 0px; }
	.highlights .sprocket-strips-s-block:last-child .sprocket-strips-s-item { margin-left: 0px; }
	.latest .sprocket-strips-s-item img { height: 120px !important; width: 85%; margin-top: 20px; }
	#g-extension .g-content { margin-bottom: 0px; padding-bottom: 0px; }
	#g-extension h3.g-title { text-align: center; }
	#g-extension .rokminievents3 { display: flex; justify-content: center; }
	.bottomtitle { font-size: 1.35rem; }
	#g-footer h3 { line-height: 1; margin-bottom: 5px; }
	#g-footer { background: #6098c9 url(../images/template/footer-mobile.jpg) -10% 0% no-repeat; background-size: contain; }
}

/************ LISTS TITLES ************/
h4.sprocket-lists-title.padding { color: #6098c9; }
