@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@700&display=swap');

body { margin: 0; font-family: 'Montserrat', sans-serif; font-size: 16px; line-height: 28px; }
a { color: #006837; }
a:hover, a:active { color: #000; text-decoration: none; }
h1, h2, h3 { font-family: 'Roboto Slab', serif; }
h2 { color: #333; }
h3 { color: #006837; }
.clear { clear: both; }

.homeAuth { width: 400px; max-width: calc(100% - 20px); padding: 10px; margin: 40px auto 0; }
.homeAuth img { width: 100%; height: auto; display: block; margin: 0 0 20px; }
.homeAuth b { display: block; padding-bottom: 20px; border-bottom: 1px solid #CCC; margin-bottom: 20px; padding: 5px; }
.homeAuth .label { display: block; font-weight: 500; }
.homeAuth input[type="text"], .homeAuth input[type="password"] { width: 100%; margin: 0 0 20px; border: 1px solid #BBB; }
.button { background: #186938; width: 100px; font-weight: 700; color: #FFF; text-align: center; margin: 0 auto; }
a.button20 { background: #186938; display: inline-block; color: #FFF; padding: 0px 8px; font-size: 18px; text-decoration: none; font-weight: 700; margin: 10px 0; border-radius: 5px; }

/* Homepage Video Spot */
div#rotator.rotator {
  position: relative;
  padding: 0;
  width: 100%;
  height: 50vh;
  max-width: 100%;
  overflow: hidden;
}

div#rotator.rotator > .rotator__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  z-index: 1;
}

div#rotator.rotator > .rotator__video-overlay {
  position: relative;
  z-index: 2;
  background: rgba(56, 72, 79, 0.3);
}

/* Header */
.headerContainerTop { width: 100%; background: #d5d0c9; }
#headerTop { width: calc(100% - 40px); max-width: 1440px; margin: 0 auto; padding: 0; line-height: 30px; position: relative; }
.headerTopSearch { float: left; }
.headerNew { float: right; }
.headerNew a { background: #221f1f; color: #FFF; display: block; text-decoration: none; padding: 0 10px; font-weight: 500; }
.headerNew.alt a { background: #b4a169; color: #221f1f; }
.headerNav a:hover { background: #000; }
.headerSocial { float: right; background: #006837; padding: 0 10px; }
.headerSocial a i { margin: 0 5px; color: #FFF; }
.headerSocial a i:hover { color: #FFF; transition: 1 }
.headerTopSearch { height: 28px; padding: 0 0 0; overflow: visible; }
.headerTopSearch input { height: 28px; background: #d5d0c9; border: none; color: #000; border-bottom: 1px solid rgba(000,000,000,.4); font-family: 'Montserrat'; font-size: 14px; width: 220px; }
.headerSearch input:focus { outline: 0; border-bottom: 1px solid #FFF; }
.headerSearch input::placeholder { color: #666; }
nl-autocomplete .awesomplete ul { line-height: 20px; color: #000; width: 1000px; max-width: 90vw; z-index: 5; }

.headerContainer { width: 100%; background: #f0f0f1; }
.headerLogo { float: left; }
.headerButton { float: right; padding: 30px 0 0; }
.headerButton a { background: #006837; color: #FFF; text-decoration: none; font-weight: 700; text-transform: uppercase; padding: 1px 5px;}
#header { width: calc(100% - 40px); max-width: 1440px; margin: 0 auto; padding: 5px 0; height: 80px; overflow: hidden; }
.headerLogo img { height: 80px; width: auto; }

.sticky { position: fixed; top: 0; width: 100%; z-index: 10; }
.sticky + .pageContent { padding-top: 100px; }

/* Navigation */
.topnav { overflow: hidden; float: right; margin-top: 20px; }
/* Style the links inside the navigation bar */
.topnav a { float: left; display: block; color: #444; text-align: center; padding: 6px 12px; text-decoration: none; text-transform: uppercase; }
.topIcon { display: none; }
.dropdown { float: left; overflow: hidden; }
.dropdown .dropbtn { font-size: 16px; border: none; outline: none; color: #444; padding: 6px 12px; background-color: inherit; line-height: inherit; font-family: inherit; margin: 0; text-transform: uppercase; }
.dropdown .dropbtn i { margin-left: 5px; }
.dropdown-content { display: none; position: absolute; background-color: #006837; min-width: 160px; max-width: 250px; box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); z-index: 10; }
.dropdown-content a { float: none; color: #FFF; padding: 6px 12px; text-decoration: none; display: block; text-align: left; text-transform: none !important; font-size: 14px; line-height: 26px; }
.topnav a:hover, .dropdown:hover .dropbtn { background-color: #006837; color: #D5D0C9; }
.dropdown-content a:hover { background-color: #006837; color: #D5D0C9; }
.dropdown:hover .dropdown-content { display: block; }

/* Content */
.container.secondContent { background: #f0f0f1; padding: 20px 0; }
.container.secondContent h2:first-child { margin-top: 0; }

.pageContent { min-height:calc(100vh - 517px); }

#content, #contentIntro { width: calc(100% - 40px); max-width: 1440px; margin: 0 auto; }
#contentBlog { width: calc(100% - 40px); max-width: 1440px; margin: 0 auto; }
#contentIntro { padding: 30px 0; font-weight: 500; color: #FFF; }
#contentIntro h1 { color: #d5d0c9; margin: 0 auto .75em; line-height: 46px; }
#contentIntro a { color: #FFF; }
#contentIntro.building h1 { margin-bottom: .5em; }
#contentIntro.building h1 i { margin: 0 0 0 15px; }
.intro.building { line-height: 24px; }
a.headerLink { background: #d5d0c9; display: inline-block; padding: 0 4px; margin: 0 0 10px -4px; color: #006837 !important; font-weight: 700; }

#content.flexContent, #contentBlog.flexContent { display: -webkit-flex; display: -ms-flexbox; display: flex; overflow: hidden; padding: 0; width: 100%; }
#contentLeft { width: calc(100% - 460px); padding: 10px 20px 10px; }
#contentRight { width: 400px; padding: 10px 20px; background: #E6E6E6; }

#content img { max-width: 100% !important; height: auto !important; }
#content figure { margin: 0; max-width: 100%; height: auto !important; }
#content figcaption { font-size: 14px; line-height: 24px; margin-top: -6px; }

#content.contentBlog { padding-top: 20px; }

/* Buildings */

/* Map */
.container.map { margin: 0 0; text-align: center; padding: 40px 0 0; }
.container.schoolTimes { margin: 0 0; width: 100%; text-align: center; padding: 40px 0; background: #d5d0c9; }
.container.map h2, .container.schoolTimes h2, .container.directory h2 { font-family: 'Montserrat'; font-size: 24px; text-transform: uppercase; margin: 0 0 .5em; color: #006837; }
.container.directory h2 { margin-top: 1em; text-align: center; }
.container.map iframe { width: 100%; height: 500px; border: 0; margin: 1em 0 -7px; }

/* Board Members & Meetings */

.boardMeeting { text-decoration: none; padding: 5px 0; border-bottom: 1px solid #BBB; display: block; width: 100%; }
.boardMeeting:hover { background: #E6E6E6; }
.boardMeeting a i { margin-left: 10px; text-decoration: none; }

.boardDate, .boardAgenda, .boardMinutes { float: left; }
.boardDate { width: 50%; }
.meetingNotes { font-size: 13px; color: #666; line-height: 16px; display: block; margin: 5px 0; }
.boardAgenda, .boardMinutes { width: 25%; text-align: center; }
.hideDetail { display: none; }

/* Home */
#homeFeature { height: 0%; padding-bottom: 600px; }
nl-carousel .glide .glide__bullets { bottom: 20px; }

.homeAlert { background: #006837; color: #d5d0c9; font-size: 20px; line-height: 30px; padding: 10px; width: calc(100% - 20px); text-align: center; font-weight: 700; }

.homeCalendar { width: calc(100% - 40px); padding: 20px; max-width: 1440px; margin: 0 auto; display: flex; flex-wrap: wrap; }
.homeCalendar h2 { font-family: 'Montserrat'; font-size: 24px; text-transform: uppercase; margin: 0 0 .5em; color: #006837; }

.calendarDay { background: #d5d0c9; padding: 20px 15px 0; color: #006837; font-size: 22px; font-weight: 700; }
.calendarDate1, .calendarDate2, .calendarDate3, .calendarDate4 { border-top: 5px solid #006837; width: 33%; margin-top: -20px; padding-top: 15px; }
.calendarDate2 { border-top: 5px solid #b4a169; }
.calendarDate3 { border-top: 5px solid #f0f0f1; }
.calendarDate4 { border-top: 5px solid #221f1f; }
.calendarMonth { background: #d5d0c9; padding: 0 15px 20px; font-size: 18px; text-transform: uppercase; color: #006837; }
.calendarEvent { background: #f0f0f1; padding: 15px 20px; font-size: 14px; line-height: 23px; }
.calendarEvent a { font-weight: 700; }

.home100 { width: 100%; text-align: center; }
.home100 a { display: inline-block; background: #006837; color: #FFF; padding: 2px 20px; text-decoration: none; }
.home100.top { margin: 20px; }
.home100.bottom { margin: 40px 0 20px; }

.homeDate { width: calc(25% - 15px); margin-right: 20px; background: #f0f0f1; }
.homeDate.last { margin-right: 0; }

.homeInfo { width: 100%; display: flex; flex-wrap: wrap; }
.homeNews { background: #f0f0f1; width: calc(50% - 60px); padding: 30px; }
.homeTrending { background: #b4a169; width: calc(50% - 60px); padding: 30px; }
.homeHalfContainer { width: 100%; max-width: 660px; }
.homeHalfContainer ul { margin-bottom: 0; }
.homeHalfContainer.left { float: right; }
.homeHalfContainer.right { float: left; }
.homeHalfContainer h2 { font-family: 'Montserrat'; text-align: center; font-size: 24px; text-transform: uppercase; margin: 0 auto 15px; }
.homeHalfContainer.right h2 { color: #FFF; }

.homeTrendingIcons { display: flex; flex-wrap: wrap; }
.homeIcon { width: 33.3%; text-align: center; padding: 15px 0; }
.homeIcon a { text-decoration: none; color: #FFF; font-weight: 700; }
.homeIcon a i { font-size: 50px; line-height: 60px; }

.homeTrending.building a { color: #FFF; font-weight: 700; text-decoration: none; }
.homeTrending.building a:hover { text-decoration: underline; }
.resourceList { color: #FFF; border-bottom: 1px solid rgba(255,255,255,.2); padding: 2px 0; }

.fastFactContainer { width: 100%; background: #006837; color: #FFF; }
.fastFacts { width: 1440px; max-width: calc(100% - 40px); padding: 40px 20px 50px; margin: 0 auto; display: flex; flex-wrap: wrap; }
.fastFacts h2 { font-family: 'Montserrat'; font-size: 24px; text-transform: uppercase; margin: 0 0 40px; text-align: center; color: #FFF; }
.factInfo { width: 100%; }
.fact { width: calc(25% - 20px); padding: 0 10px; text-align: center; font-weight: 700; }
.fact:hover { color: #b4a169; transition: 0.5s; }
.fact b { display: block; font-size: 40px; line-height: 50px; margin-bottom: 10px; }
.factLink { width: 100%; text-align: center; color: #b4a169; margin-top: 30px; }
.factLink a { color: #b4a169; text-decoration: none; display: inline-block; border: 1px solid #b4a169; padding: 2px 20px; }

.homeBlogContainer { width: 100%; background: #006837; color: #FFF; }
.homeBlog { width: 1440px; max-width: calc(100% - 40px); padding: 40px 20px 50px; margin: 0 auto; display: flex; flex-wrap: wrap; }
.homeBlog h2 { font-family: 'Montserrat'; font-size: 24px; text-transform: uppercase; margin: 0 0 20px; text-align: center; color: #FFF; }
.homeBlogInfo { width: 100%; }

.homeSocial { width: calc(100% - 40px); padding: 20px 20px 0; max-width: 1440px; margin: 20px auto; overflow: hidden; }
.homeSocial h2 { font-family: 'Montserrat'; font-size: 24px; text-transform: uppercase; margin: 0 0 .5em; color: #006837; text-align: center; }
.homeSocial .homeIcons { text-align: center; margin-bottom: 30px; }
.homeSocial .homeIcons a { font-size: 42px; line-height: 50px; color: #000; }

/* Directory */
.grid-item, .grid-sizer { width: calc(20% - 20px); height: 380px; font-size: 14px; line-height: 22px; }
.grid-item b { font-size: 15px; line-height: 24px; }
.grid-item--header { width: calc(100% - 20px); font-size: 24px; font-family: 'Roboto Slab', serif; font-weight: 700; height: 50px; line-height: 50px; border-bottom: 1px solid #CCC; margin-bottom: 10px; }
.grid:after { content: ''; display: block; clear: both; }
.districtDirectory .grid-item { width: calc(100% / 3) !important; }
.grid-staff { text-align: center; }
.staff-photo { width: 200px; height: 220px; text-align: center; margin: 5px auto; display: block; background: #EEE; color: rgba(0, 104, 55, 0.2); font-size: 100px; line-height: 220px; border-radius: 5px; overflow: hidden; }
.staff-photo img { width: 200px; height: auto; margin: -30px 0 0 0; }
.staff-photo .fa { line-height: 200px; }
.staff-icons { display: block; margin: 10px auto 0; padding-top: 10px; border-top: 1px dotted #CCC; width: 200px; }
.staff-icons a:hover { color: #222; }
.staff-icons i { margin: 0 5px; }
.button-group { width: 100%; text-align: center; }
.button-group button { background: #006837; color: #FFF; font-family: 'Montserrat', sans-serif; font-size: 14px; margin: 0 0 10px; padding: 4px 10px; border: 0; }
.button-group button:hover { background: #222; }
button.is-checked { background: #222 !important; }
input#quicksearch { display: block; margin: 1.5em auto 1em; font-family: 'Montserrat', sans-serif; font-size: 20px; padding: 5px; width: calc(50% - 10px); }
.dirDivider h3 { margin: 2em 0 1em; font-size: 22px; color: #E13738; }
.dirListItem { padding: 5px 9px; background: #F4F5F7; }
.dirSecondary { background: none; }
.dirDetail { float: left; width: calc(100% / 3); }
.dirTitle { text-align: center; }
.dirEmail { text-align: right; }
.listHidden, .filterDiv, .hideDetail { display: none; }

/* Footer */
.footerContainer { width: 100%; background: #d5d0c9; }
#footer { width: calc(100% - 40px); max-width: 1440px; margin: 0 auto; padding: 20px 0; display: flex; flex-wrap: wrap; }
.footerLogo { width: 33.3%; float: left; text-align: center; }
.footerLogo img { height: 100px; width: auto; }
.footerInfo { width: 33.3%; float: left; text-align: center; font-size: 14px; line-height: 22px; padding: 17px 0 0; }
.footerInfo b { font-size: 16px; color: #006837; text-transform: uppercase; }

.subfooterContainer { background: #006837; color: #FFF; font-size: 14px; line-height: 18px; padding: 12px 0; width: 100%; }
.subfooterContainer a { color: #FFF; }
.subfooterContent { width: calc(100% - 20px); max-width: 1440px; margin: 0 auto; display: flex; }
.subfooterCopyright { width: calc(100% - 250px); }
.subfooterCredit { width: 250px; text-align: right; }
.subfooterCredit a { text-decoration: none; }
.subfooterCredit img { display: inline; width: 24px; height: auto; vertical-align: middle; margin: -4px 0 -4px 2px; }
@media screen and (max-width: 680px) {
  .subfooterContent { flex-wrap: wrap; }
  .subfooterCopyright { width: 100%; text-align: center; margin: 0 0 10px; }
  .subfooterCredit { width: 100%; text-align: center; }
}

/* Mission Statement */
.container.mission { background-position: center center !important; background-size: cover !important; }
#mission { text-align: center; padding: 50px 20px; margin: 0 auto; width: 1040px; font-size: 18px; color: #FFF; line-height: 32px; }
#mission h3 { margin: 0 auto .5em; color: #FFF; font-size: 24px; }

/* Modules - Videos */
.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; }
.embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

@media screen and (max-width: 1180px) {
  .topnav a:first-child { display: none; }
  #homeFeature { padding-bottom: 440px; }
  #mission { width: 940px; }
  .grid-item, .grid-sizer { width: calc(25% - 20px); }
  .grid-item--header { width: calc(100% - 20px); }
}

@media screen and (max-width: 1100px) {
  #header { width: 100%; }
  #headerTop { width: calc(100% - 20px); padding: 0 10px; }
  .headerSocial { margin: 0 -10px 0 0; }
  .headerLogo img { height: 80px; margin: 0 0 0 10px; }
  .topnav a, .dropdown .dropbtn { display: none; }
  .topIcon { display: block; margin: -5px 0 -5px 0; float: right; }
  .topIcon a.icon { float: right; display: block; color: #FFF; background: #006837; height: 90px; font-size: 24px; padding: 0 20px; }
  .topIcon a.icon i { line-height: 90px !important; }
  .topnav.responsive { position: absolute; float: none; text-align: left; width: 100%; margin: 85px 0 -10px; background: #f0f0f1; z-index: 100; }
  .topnav.responsive a { float: none; display: block; text-align: left; }
  .topnav.responsive .dropdown {float: none;}
  .topnav.responsive .dropdown-content {position: relative; max-width: none !important;}
  .topnav.responsive .dropdown .dropbtn { display: block; width: 100%; text-align: left; }
  #homeFeature { padding-bottom: 340px; }
  #mission { width: 840px; }
}
@media screen and (max-width: 1000px) {
  .grid-item, .grid-sizer { width: calc(33.3% - 20px); }
  .grid-item--header { width: calc(100% - 20px); }
}
@media screen and (max-width: 900px) {
  #mission { width: calc(100% - 100px); }
  .homeDate { width: calc(50% - 15px); margin: 7.5px; background: #f0f0f1; }
  .homeDate.last { margin-right: 7.5px; }
  .fact { width: 50%; padding: 20px 0; }
}
@media screen and (max-width: 850px) {
  .homeTrending, .homeNews { width: calc(100% - 40px); padding: 20px; }
  .homeHalfContainer { float: none !important; margin: 0 auto; }
}

@media screen and (max-width: 800px) {
  #content.flexContent { display: block; padding: 0; width: 100%; }
  #contentLeft { width: calc(100% - 40px); padding: 10px 20px; display: block; }
  #contentRight { width: calc(100% - 40px); padding: 10px 20px; display: block; }
}

@media screen and (max-width: 550px) {
  .homeDate { width: 100%; margin: 0 0 15px; }
  .homeDate.last { margin-right: 0; }
  .homeIcon { width: 50%; }
}

@media screen and (max-width: 480px) {
  #header { height: 60px; }
  .headerLogo img { width: 275px; height: auto; margin: 0; }
  .topIcon a.icon { height: 70px; }
  .topIcon a.icon i { line-height: 70px !important; }
  .topnav.responsive { margin-top: 65px; }
  .sticky + .pageContent { padding-top: 80px; }
}

/* Events Widgets */
.widgetEventBox { width: calc((100% - 170px) / 5); padding: 10px 12px 10px; margin: 0 10px 0 0; background: #FFF; color: #000; float: left; font-size: 12px; line-height: 19px; border-radius: 5px; border: 1px solid #DDD; }
.widgetEventBox.boxNo5 { margin: 0; }
.widgetEventBox:hover { background: #F6F6F6; }
h3.widgetEventHeader a { display: block; text-decoration: none; text-transform: uppercase; font-size: 14px; letter-spacing: 1px; padding: 0 0 5px; border-bottom: 1px solid #22336B; }
.widgetDate { display: block; font-weight: 700; font-size: 14px; text-align: center; }
.widgetEvent { display: block; margin: 12px 0 0; color: #666; }
.widgetEvent a { color: #006837; text-decoration: none; font-weight: 700; }
.widgetEvent a.mapLink { color: #006837; margin-left: 2px; }
.calEventBox { width: calc(1420px / 7); padding: 5px; background: #FFF; font-size: 12px; line-height: 19px; }
.calEventBox.box0 { margin-left: 0; }
.calEventBox:hover { background: #F6F6F6; padding: 4px; border: 1px solid #006837; }
.calDate { display: block; border-bottom: 1px dotted #BBB; font-weight: 700; }
.calEvent { display: block; margin: 15px 0 0; }
.calEvents { min-height: 100px; }
.calDivider { clear: both; height: 20px; }
.headerBox, .headerBox:hover { background: #006837; color: #FFF; font-weight: 700; padding: 5px; border: 0; }
.emptyBox, .emptyBox:hover { background: #EEE; padding: 5px; border: 0; }
.calRow { display:flex; border-spacing: 1px; }
#calendarHeader h2 { float: left; }
.nextMonth { float: right; line-height: 31px; margin: 17px 0 0; width: 300px; text-align: right; }
.nextMonth a, #calendarFooter a { text-decoration: none; }
.lastMonth { float: left; line-height: 22px; margin: 0; width: 150px; }
.printMonth { float: left; width: calc(100% - 300px); text-align: center; }
#calendarFooter { width: 100%; margin: 17px 0; padding: 17px 0 0; border-top: 1px solid #EEE; }
#calendarFooter .nextMonth { margin: 0; line-height: 22px; }

.fancybox-slide iframe { width: 100%; display: block; margin-top: 20px; border: 0; }
.event-overlay { width: 600px; max-width: 100%; }
.widgetEvent a:hover { text-decoration: underline; }

@media screen and (max-width: 1120px) {
.calRow { display: block; width: 100%; border-spacing: 0; }
.calEventBox { width: calc(100% - 10px); display: block; margin-bottom: 10px; }
.calEvents { min-height: 0; }
.headerBox, .emptyBox { display: none !important; }
}

@media screen and (max-width: 900px) {
  /* Events Widget */
  .widgetEventBox { width: calc((100% - 134px) / 4); }
  .widgetEventBox.boxNo4 { margin: 0; }
  .boxNo5 { display: none; }
}

@media screen and (max-width: 700px) {
  .widgetEventBoxes { width: 100%; margin: 0; }
  .widgetEventBox { width: calc(100% - 26px); margin: 0 0 10px 0; }
  .grid-item, .grid-sizer { width: calc(50% - 20px); }
  .grid-item--header { width: calc(100% - 20px); }
}

@media screen and (max-width: 520px) {
  .grid-item, .grid-sizer { width: 100%; }
  .footerLogo, .footerInfo { width: 100%; }
  .footerInfo { order: 2; }
  .footerLogo { order: 1; }
}

/* Blog */

.homeNewsFeatureBoxes { width: calc(100% + 40px); margin: 10px -10px -10px; position: relative; display: flex; flex-wrap: wrap; }
.homeNewsFeatureBox { width: calc(25% - 20px); margin: 10px; position: relative; height: 300px; background-position: center center; background-size: cover; border-bottom: 4px solid #b4a169; }
.homeNewsFeatureBox a { display: block; background: rgba(0, 0, 0, .4); position: absolute; bottom: 0; left: 0; width: calc(100% - 20px); padding: 5px 10px; color: #FFF; text-decoration: none; font-weight: 700; font-size: 20px; }
.homeNewsFeatureBox a .readMore { font-size: 14px; line-height: 20px; font-weight: 400; }

.blogHeader { display: flex; align-items: center; }
.blogHeaderInfo { order: 1; width: calc(100% - 420px); margin-right: 20px; }
.blogPhoto { order: 2; width: 400px; padding: 0; }
.blogPhoto img { width: auto; height: auto; max-width: 400px; max-height: 400px; display: block; }
figure.easyimage.easyimage-side { float: right; width: 50%; margin: 0 0 10px 10px; }
figure img { width: 100%; height: auto; }

@media screen and (max-width: 900px) {
  .homeNewsFeatureBox { width: calc(50% - 20px); }
}

@media screen and (max-width: 750px) {
  .blogHeader { display: block; }
  .blogHeaderInfo { float: none; width: 100%; margin: 20px 0 0; }
  .blogPhoto { float: none; width: 100%; margin: 0; }
  .blogPhoto img { margin: 0 auto; }
  figure.easyimage.easyimage-side { float: none; width: 400px; margin: 10px auto; }
}
