/* Google Font */
@import url("https://use.typekit.net/egy0icz.css");
@import url('/shared/styles/header.css');
@import url('/shared/styles/home2.css');
@import url('/shared/styles/content-1.css');
@import url('/shared/styles/footer.css');

/* Core Styles */
body { margin: 0; font-family: neulis-sans, sans-serif; font-size: 18px; line-height: 30px; min-height: auto !important; }
a { color: #286587; }
a:hover { color: #1C2330; }
img, a img { border: 0; }
a[id] {  scroll-margin-top: 120px; }

h1 { font-size: 48px; line-height: 54px; font-weight: 400; font-family: clarendon-urw, serif; color: #286587; }
h2 { font-size: 40px; line-height: 45px; font-weight: 400; font-family: clarendon-urw, serif; color: #286587; }
h3 { font-size: 34px; line-height: 38px; font-weight: 400; font-family: clarendon-urw, serif; color: #6A7B47; }
h4 { font-size: 28px; line-height: 32px; font-family: neulis-sans, sans-serif; font-weight: 500; color: #6A7B47; text-transform: uppercase; }
h5 { font-size: 22px; line-height: 25px; font-family: neulis-sans, sans-serif; font-weight: 500; color: #6A7B47; }

@media screen and (max-width: 600px) { 
  h1 { font-size: 38px; line-height: 42px; }
  h2 { font-size: 32px; line-height: 36px; }
  h3 { font-size: 26px; line-height: 30px; }
}

/* Buttons */
a.button { background: #DAF0F9; display: inline-block; padding: 12px 20px; color: #246688; text-decoration: none; font-weight: 500; margin: 0 4px 4px 0; text-transform: uppercase; }
a.button:hover { background: #ADDEE4; color: #000000; transition: 1s;  }

/* Horizontal Line */
hr { margin-block-start: 20px; margin-block-end: 20px; border: 0px; border-top: 1px solid #3A2B2D !important; }

/* General Styles */
.container_first { margin-top: 100px !important; }
.container { width: calc(100% - 40px); max-width: 1440px; margin: 0 auto; }
.clear { clear: both; }

/* Alerts Bar */
#headerAlert { width: calc(100% - 40px); padding: 12px 20px; background: #861818; color: #FFF; text-align: center; font-size: 20px; line-height: 24px; font-weight: 700; }
#headerAlert a { color: #FFF; text-decoration: none; display: block; }
.alertButton { display: inline-block; background: rgb(255,255,255,.1); margin: -5px 0 -5px 10px; padding: 5px 10px; }

/* Page Content */
#pageIntro { width: calc(100% - 40px); max-width: 1440px; margin: 0 auto 20px; font-size: 22px; line-height: 32px; padding: 20px 0; border-bottom: 1px solid #3A2B2D; }

#pageContent { width: calc(100% - 40px); max-width: 1440px; margin: 0 auto 40px; }
.contentColumns { display: flex; flex-wrap: wrap; }
.contentLeft { width: calc(100% - 370px); margin-right: 20px; }
.contentRight { width: 310px; padding: 20px; background: #DAF0F6; }
.contentRight h3 { color: #000000; }
#pageContent h2:first-child, #pageContent p:first-child, .contentLeft h2:first-child, .contentLeft p:first-child, .contentRight h2:first-child, .contentRight p:first-child { margin-top: 0; }
.contentRight a.button, .contentRight a.button:hover { background: #286587; color: #FFFFFF; }

@media screen and (max-width: 800px) { 
  .contentLeft { width: 100%; margin: 0 0 20px; padding: 0; }
  .contentRight { width: 100%; padding: 20px; margin: 0 -20px -20px; }
}

#myBtnContainer.filterContainer { margin: 0 0 20px; }
#myBtnContainer.filterContainer b { display: block; width: 100%; margin: 0 0 5px; }
#myBtnContainer.filterContainer .btn { font-weight: 700; color:#FFFFFF; display: inline-block; margin: 4px 8px 4px 0; background: #286587; padding: 6px 12px; text-decoration: none; border-radius: 5px; }
#myBtnContainer.filterContainer .btn:hover { transition: all 1s ease; background: #1C2330; cursor: pointer; }
#myBtnContainer.filterContainer .btn.activebtn, #myBtnContainer.filterContainer .btn.activebtn:hover { background: #1C2330; }

/* FAQ */
.faqList { margin: 0 0 40px; }
.faqList.faqListHome { margin: 0 0 20px; }
.faqQA { padding: 0; margin-bottom: 4px; border-bottom: 1px solid #E7E6E8; }
.faqQA.faqLast { border-bottom: none; }
.faqQuestion { cursor: pointer; font-weight: 700; display: flex; padding: 12px 0; }
.faqQuestionText { width: calc(100% - 30px); }
.faqQuestionIcon { text-align: right; width: 30px; }
.faqQuestionIcon i { font-size: 16px; line-height: 1.7em !important; }
.faqAnswer { padding: 0; }

input.inputSearch { width: 100%; padding: 9px; border: 1px solid #000000; font-family: neulis-sans, sans-serif; font-size: 18px; line-height: 24px; margin: 0 0 20px; }

.listItem { padding: 5px 0; border-bottom: 1px solid #DAF0F6; }
.listDetail { font-size: 15px; line-height: 23px; }
.listItem.last { border-bottom: 0; }
.listSearchHeader { width: 100%; margin: 0 0 20px; }

@media screen and (max-width: 800px) { 
  .listItem b.listFee { display: block; }
  .listDivider { display: none; }
}

/* News */
.newsItem { padding: 20px 0; border-bottom: 1px solid #DDD; }
.newsItem h3 { margin-top: 0; }
.newsItem.last { padding-bottom: 0; border-bottom: 0; }
.newsPhoto img { width: 100%; max-width: 600px; display: block; margin: 0 auto; height: auto; }
.newsVideoContainer { width: 100%; max-width: 800px; display: block; margin: 30px auto 20px; }
.newsVideo { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; }
.newsVideo iframe, .newsVideo object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* Staff */
.staffMember { margin: 0 0 20px; }
.staffMember img { width: 100%; margin: 0 0 5px; }

/* Filter */
.filterDiv { display: none; }
.show { display: flex; }
.listHidden { display: none !important; }
.active { background: #EEEEEE; }
.leftNav input[type="text"] { border: 1px solid #DDD; width: calc(100% - 10px); padding: 4px; font-size: 16px; font-family: 'Noto Sans', sans-serif; }

/* Screen Sizes */
@media screen and (max-width: 1310px) {
  .container_first { margin-top: 90px !important; }
}

@media screen and (max-width: 1250px) {
  /* Maps */
  .mapLink, .mapLink.right, .officialDirectory, .officialDirectory.right { width: calc(((100% - 20px) / 2) - 20px); margin: 0 20px 20px 0; }
  .ballotLink { width: calc((100% - 60px) / 2); }
  .mapLink.even, .officialDirectory.even { margin-right: 0; }
}
@media screen and (max-width: 700px) {
  #pageIntro { font-size: 18px; line-height: 28px; }
  body { font-size: 16px; line-height: 27px; }
  input[type="submit"] { font-size: 16px; }

  .container { width: calc(100% - 20px); max-width: calc(100% - 20px); }

  /* Page Content */
  #pageContent .introduction, .electionPage .introduction { font-size: 16px; line-height: 24px; }
  .leftNav { display: none; }
  .rightContent, .rightContentForm { width: 100%; }

}
@media screen and (max-width: 550px) {

  .newsItem img { float: none; max-width: 100%; margin: 0 0 20px 0; }
  .slicknav_menu .slicknav_icon, .slicknav_menu .slicknav_icon-bar { width: 30px !important; }
  .newsDetail img { display: block; margin: 15px auto; max-width: 400px !important; width: 100%; height: auto; float: none; }
}

/* Events */
.pageEvents { width: calc(100% + 20px); margin: 0 -10px; display: flex; flex-wrap: wrap; }
.pageEvents .event { width: calc((100% / 3) - 64px); margin: 10px; padding: 20px; border: 2px solid #DAF0F9; min-height: 120px; }
.pageEvents .event .eventImage { width: 100%; margin: 0 0 20px; }
.pageEvents .event .eventImage img { width: 100%; object-fit: contain; object-position: center; aspect-ratio: 3 / 2; }
.pageEvents .event .eventImagePlaceholder { width: 100%; margin: 0 0 20px; aspect-ratio: 3 / 2; display: flex; align-items: center; text-align: center; background: linear-gradient(rgba(255,255,255,0.1),rgba(255,255,255,0.5)), url(/images/background.png); background-size: cover; background-position: center center; }
.pageEvents .event .eventImagePlaceholder svg { display: block; width: 80px; height: 80px; margin: 0 auto; color: #000; }
.pageEvents .event a, .pageEvents .event a:hover { display: block; text-decoration: none; color: #000; }
.pageEvents .event span { display: block; color: #286587; font-weight: 700; }
.pageEvents .event b { display: block; color: #000000; font-size: 22px; font-weight: 700; margin: 10px 0; }

@media screen and (max-width: 1260px) { 
  .pageEvents .event { width: calc((100% / 2) - 64px); }
}
@media screen and (max-width: 840px) { 
  .pageEvents .event { width: calc(100% - 64px); min-height: 0; }
}

.event-overlay { width: 600px; max-width: 100%; }
.event-overlay img { max-width: 100%; }

/* 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%; }

.pageAlertContainer { background: #861818; color: #FFFFFF; padding: 10px 0; }
.pageAlert { width: calc(100% - 40px); max-width: 1440px; margin: 0 auto; }