@charset "UTF-8";
/************************************************

Stylesheet: Main Stylesheet

*************************************************/
/*********************
GENERAL STYLES
*********************/

/*********************
LINK STYLES
*********************/
a:link, a:visited:link {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.3); }  

/*********************
H1, H2, H3, H4, H5 P STYLES
*********************/
h1 a, .h1 a, h2 a, .h2 a, h3 a, .h3 a, h4 a, .h4 a, h5 a, .h5 a {
  text-decoration: none; }

/*********************
HEADER STYLES
*********************/
.header ul.off-canvas-list li {
  list-style: none; }

/*********************
NAVIGATION STYLES
*********************/
.top-bar .title-area {
  z-index: 1; }

.off-canvas-list ul {
  margin-left: 0; }
  .off-canvas-list ul li a {
    border-bottom: 0px; }
  .off-canvas-list ul .dropdown {
    margin-left: 20px; }

/*********************
POSTS & CONTENT STYLES
*********************/

.page-title .vcard {
  border: 0px;
  padding: 0px; }

.byline {
  color: #999; }

.entry-content img {
  max-width: 100%;
  height: auto; }

.entry-content .alignleft, .entry-content img.alignleft {
  margin-right: 1.5em;
  display: inline;
  float: left; }

.entry-content .alignright, .entry-content img.alignright {
  margin-left: 1.5em;
  display: inline;
  float: right; }

.entry-content .aligncenter, .entry-content img.aligncenter {
  margin-right: auto;
  margin-left: auto;
  display: block;
  clear: both; }

.entry-content video, .entry-content object {
  max-width: 100%;
  height: auto; }

.entry-content pre {
  background: #eee;
  border: 1px solid #cecece;
  padding: 10px; }

.wp-caption {
  max-width: 100%;
  background: #eee;
  padding: 5px; }
  .wp-caption img {
    max-width: 100%;
    margin-bottom: 0;
    width: 100%; }
  .wp-caption p.wp-caption-text {
    font-size: 0.85em;
    margin: 4px 0 7px;
    text-align: center; }

.post-password-form input[type="submit"] {
  display: inline-block;
  text-align: center;
  line-height: 1;
  cursor: pointer;
  -webkit-appearance: none;
  transition: all 0.25s ease-out;
  vertical-align: middle;
  border: 1px solid transparent;
  border-radius: 0;
  padding: 0.85em 1em;
  margin: 0 1rem 1rem 0;
  font-size: 0.9rem;
  background: #2199e8;
  color: #fff; }
  [data-whatinput='mouse'] .post-password-form input[type="submit"] {
    outline: 0; }
  .post-password-form input[type="submit"]:hover, .post-password-form input[type="submit"]:focus {
    background: #1583cc;
    color: #fff; }

/*********************
IMAGE GALLERY STYLES
*********************/
/*********************
PAGE NAVI STYLES
*********************/
.page-navigation {
  margin-top: 1rem; }

/*********************
COMMENT STYLES
*********************/
#comments .commentlist {
  margin-left: 0px; }

#respond ul {
  margin-left: 0px; }

.commentlist li {
  position: relative;
  clear: both;
  overflow: hidden;
  list-style-type: none;
  margin-bottom: 1.5em;
  padding: 0.7335em 10px; }
  .commentlist li:last-child {
    margin-bottom: 0; }
  .commentlist li ul.children {
    margin: 0; }

.commentlist li[class*=depth-] {
  margin-top: 1.1em; }

.commentlist li.depth-1 {
  margin-left: 0;
  margin-top: 0; }

.commentlist li:not(.depth-1) {
  margin-left: 10px;
  margin-top: 0;
  padding-bottom: 0; }

.commentlist .vcard {
  margin-left: 50px; }
  .commentlist .vcard cite.fn {
    font-weight: 700;
    font-style: normal; }
  .commentlist .vcard time {
    float: right; }
    .commentlist .vcard time a {
      color: #999;
      text-decoration: none; }
      .commentlist .vcard time a:hover {
        text-decoration: underline; }
  .commentlist .vcard img.avatar {
    position: absolute;
    left: 10px;
    padding: 2px;
    border: 1px solid #cecece;
    background: #fff; }

.commentlist .comment_content p {
  margin: 0.7335em 0 1.5em;
  font-size: 1em;
  line-height: 1.5em; }

.commentlist .comment-reply-link {
  float: right; }

/*********************
COMMENT FORM STYLES
*********************/
.respond-form {
  margin: 1.5em 10px;
  padding-bottom: 2.2em; }
  .respond-form form {
    margin: 0.75em 0; }
    .respond-form form li {
      list-style-type: none;
      clear: both;
      margin-bottom: 0.7335em; }
      .respond-form form li label,
      .respond-form form li small {
        display: none; }
    .respond-form form input[type=text],
    .respond-form form input[type=email],
    .respond-form form input[type=url],
    .respond-form form textarea {
      padding: 3px 6px;
      background: #efefef;
      border: 2px solid #cecece;
      line-height: 1.5em; }
      .respond-form form input[type=text]:focus,
      .respond-form form input[type=email]:focus,
      .respond-form form input[type=url]:focus,
      .respond-form form textarea:focus {
        background: #fff; }
      .respond-form form input[type=text]:invalid,
      .respond-form form input[type=email]:invalid,
      .respond-form form input[type=url]:invalid,
      .respond-form form textarea:invalid {
        outline: none;
        border-color: #fbc2c4;
        background-color: #f6e7eb;
        -ms-box-shadow: none;
        box-shadow: none; }
    .respond-form form input[type=text],
    .respond-form form input[type=email],
    .respond-form form input[type=url] {
      max-width: 400px;
      min-width: 250px; }
    .respond-form form textarea {
      resize: none;
      width: 97.3%;
      height: 150px; }

#comment-form-title {
  margin: 0 0 1.1em; }

#allowed_tags {
  margin: 1.5em 10px 0.7335em 0; }

.nocomments {
  margin: 0 20px 1.1em; }

/*********************
SIDEBARS & ASIDES
*********************/
.widget ul {
  margin: 0; }
  .widget ul li {
    list-style: none; }

/*********************
FOOTER STYLES
*********************/
.footer {
  clear: both; }

/*********************
FOUNDATION STYLES
*********************/

/*********************
PLUGIN STYLES
*********************/
.gform_body ul {
  list-style: none outside none;
  margin: 0; }

/******************************************************************

Stylesheet: Retina Screens & Devices Stylesheet

When handling retina screens you need to make adjustments, especially
if you're not using font icons. Here you can add them in one neat
place.

******************************************************************/
/******************************************************************

Stylesheet: Print Stylesheet

This is the print stylesheet. There's probably not a lot
of reasons to edit this stylesheet. 

Remember to add things that won't make sense to print at 
the bottom. Things like nav, ads, and forms shouldbe set 
to display none.
******************************************************************/
@media print {
  * {
    background: transparent !important;
    color: black !important;
    text-shadow: none !important;
    -webkit-filter: none !important;
    filter: none !important;
    -ms-filter: none !important; }
  a, a:visited {
    color: #444 !important;
    text-decoration: underline; }
    a:after, a:visited:after {
      content: " (" attr(href) ")"; }
    a abbr[title]:after, a:visited abbr[title]:after {
      content: " (" attr(title) ")"; }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }
  pre, blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr, img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p, h2, h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .sidebar,
  .page-navigation,
  .wp-prev-next,
  .respond-form,
  nav {
    display: none; } }

/**
 * *********************************************************************************
 * Custom CSS 7/24/2016 JTT
 * *********************************************************************************
 */

 body {
  font-family: 'Montserrat', sans-serif;
  font-style: normal;
  font-weight: 400;
  }
.fa-arrow {
  color: #f44141;
}
p, ul, li {    font-weight:300; font-family: 'Montserrat', sans-serif;}
p.lead {    
  font-family: 'Montserrat', sans-serif;
  color: #314e76;
  font-size: 1.35em;
  font-weight: 400;
  line-height: 1.5
  }
h1 {
  color: #314e76;
  font-size: 4.5em;
  line-height: 1.2;
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;}
h1 small {
  color: #f44141;
  font-size: .48em;
}
h2 {
  font-size: 2.25em;
  line-height: 1.1;
  overflow: hidden;
  padding: 2rem;
  font-weight: 500;
  font-family: 'Montserrat', sans-serif;
  }
h3 {
  font-family: 'Montserrat', sans-serif;
  font-size: 1.875em;
  font-weight: 500;
}
nav {
  position: fixed;
  z-index: 10;
  width: 100%;
  }



#detail-page #about {
  height: auto;
  padding-top: 50px;
}

#detail-page #about h1 {
  text-shadow: 
}
#detail-page a {
  color: #f44141;
}
/*TOP-BAR*/
.sticky-container, .top-bar {
    height: 54px !important;
}
.top-bar {
    padding: .5rem 0;
}
.top-bar > .hr {
  border-bottom: 1px solid #fff;
  width: 110%;
  left: -5%;
  top: 5px;
  position: absolute;
}
.top-bar-title {
    padding: .5rem 0rem .5rem 1rem; margin-right: 0;
}
.top-bar-title a {
    color: #fff;
    font-size: 1rem;
    text-transform: uppercase;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    margin-left: 5px;
    vertical-align: text-top;
}

.top-bar-title a:hover { color: #fff; }
.is-dropdown-submenu {
  min-width: 100%;
  }


.menu > li > a {
  color: #ffffff;
  text-transform: uppercase;
  font-family: 'Montserrat', sans-serif;
  font-weight: 300;
  opacity: 1;
  transition: opacity .25s ease-in-out;
  -moz-transition: opacity .25s ease-in-out;
  -webkit-transition: opacity .25s ease-in-out;
  }


.menu > li > a:hover {
  opacity: .5;
  }
  
.menu .active>a {
  color: #fefefe;
  background: #314e76;
}
ul.dropdown.menu.medium-horizontal>li.is-dropdown-submenu-parent>a:after {
     display: inline-block;
    border: 0;
    border-right: 2px solid #f44141;
    border-bottom: 2px solid #f44141;
    width: 10px;
    height: 10px;
    transform: rotate(45deg);
    top: 36%;
  }

ul.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  border-color: #ffffff transparent transparent;
  }
ul.dropdown.menu.medium-horizontal>li.opens-left>.is-dropdown-submenu {
  border: none;
  }

.is-accordion-submenu-parent>a:after {
  display: inline-block;
  font: normal normal normal 14px/1 'Iusa';
  font-size: .75rem;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  content: '\f000';
  transform: rotate(90deg);
  top: 38%;
  margin-left: 15px;
  border: none;
  color: #f44141;
  }

.is-accordion-submenu-parent[aria-expanded=true]>a:after {
  -webkit-transform: rotate(270deg) scaleY(-1);
    top: 60%;
  -webkit-transform-origin: 50% 50%;
  transform: rotate(270deg) scaleY(-1);
  transform-origin: 50% 50%;
  }

li.is-submenu-item.is-dropdown-submenu-item a {
  text-transform: none;
  }
ul.submenu li {
  padding-left: 20px;
}
h2.text-center span {
  display: inline-block;
  position: relative;
  }

h2.text-center span:before,
h2.text-center span:after {
    content: "";
    position: absolute;
    height: 5px;
    border-bottom: 2px solid #efefef;
    top: 50%;
    transform:translateY(-50%);
    width: 1100px;
}

h2.text-center span:before {
    right: 100%;
    margin-right: 10px;
}

h2.text-center span:after {
    margin-left: 10px;
}
#campaigns h1 { font-size: 2.25em; font-weight: 500; }
#campaigns h1 small {font-weight: 400;}
h4 a {color:#314e76;}

.title-bar {
  padding: 1rem 0.5rem 1rem 0.5rem;
  }

.title-bar img {
  float: left;
  margin-top: 5px;
  }


/*ABOUT*/

#about h1, 
#about p, 
#about a { color: #fff; }

#about {
  background-size: cover !important;
  height: 480px;
}

#home-page #about {
  position: relative;
  text-shadow: 1px 1px #000;
  }
#home-page #about > .row {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  }
#home-page #about p {
  font-size: 1.25rem;
}
#sub-page{
  padding-top: 30px;
  } 

/*CAMPAIGN*/
#home-page #campaigns > .row {
  position: relative;
  }
#campaigns > .row {
  background: #fff;
  -webkit-box-shadow: 0px -17px 40px -9px rgba(0,0,0,0.11);
  -moz-box-shadow: 0px -17px 40px -9px rgba(0,0,0,0.11);
  box-shadow: 0px -17px 40px -9px rgba(0,0,0,0.11);
  }
#campaign-page #about {
  height: 300px;
  }
#campaign-page #campaigns > .row {
  margin-top: -200px;
  }
#campaign-page #campaigns .row.small-up-1.medium-up-2 {
  /*margin-bottom: -150px;*/
  margin-bottom: 0;
  }

footer {
  background-color: #314e76;
  text-align: center;
  padding: 40px 0 20px 0;
  }

footer .callout {
  background: none;
  color: #fff;
  border: 1px solid #f44141;
  }

footer p,
footer a,
footer a:hover {
  color: #fff;
  }

footer a:hover {
  opacity: .8;
  }
footer p { font-family: 'Montserrat', sans-serif;}
footer p a {
  font-weight: 500; font-family: 'Montserrat', sans-serif;
}
.top-bar, .top-bar ul {
  background-color: #314e76;
  }

.top-bar img {
  margin-top: 10px;
  }
section {
  padding: 0px 0 40px 0;
  }
#campaigns .callout {
  overflow: hidden;
  padding: 1rem;
  margin: 0;
  border: none;
  -webkit-box-shadow: 2px 2px 21px 0px rgba(0,0,0,0.1);
  -moz-box-shadow: 2px 2px 21px 0px rgba(0,0,0,0.1);
  box-shadow: 2px 2px 21px 0px rgba(0,0,0,0.1); 
  }

.callout img {
  margin-bottom: 0;
  }

.callout .main-section {
  width: 100%;
  }

#campaigns .callout .overlay {
  position: absolute;
  background: rgba(49,78,118, .8);
  bottom: 0;
  left: 0;    
  height: 60px;
  width: calc(100% - 2rem);
  padding: 2rem;
  margin: 1rem;
  transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -webkit-transition: .25s ease-in-out;
  padding: 10px 15px 15px 15px;
  }

#campaigns .callout .overlay a.button {
  bottom: -30px;
  position: relative;
  }
#campaigns .callout .overlay h3 a {
  color: #fff;
  /*border-bottom: 1px solid #fff;*/
  margin-right: 10px;
 font-size: .75em;
  }

#campaigns .callout .overlay p {
  display: block;
  color: #fff;
  font-weight: 500;
  }

#campaigns .callout:hover .overlay {
  height: calc(100% - 2rem);
  }
#campaigns .callout .overlay span.button.hollow {
  border: 2px solid #f44141;
  width: 35px;
  height: 35px;
  position: relative;
  margin-bottom: 0;
  }

#campaigns .callout .overlay span.button.hollow:hover,
#campaigns .callout .overlay span.button.hollow:focus {
  border: 2px solid #f44141;
  }

#campaigns .callout .overlay span.button.hollow i {
  color: #fff;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  position: absolute;
}
  

a:hover { color:#f44141 ; }
/*HR*/
hr { border-bottom: 2px solid #ffffff;}
/*BUTTON*/
.round {
  border-radius: 5000px;
  }
.button.hollow {
  text-transform: uppercase;
  font-weight: 500;
  border: 2px solid #f44141;
  color: #fff ;
  }
a.button.hollow:hover {
  opacity: .7;
  border: 2px solid #f44141;
  color: #fff ;
  }
#campaign-page a.button.hollow{color:#f44141;}
.button.hollow:not(.round){
  padding: .5rem 2.5rem;
  }

/*News Section*/
#news .media-object.callout {
  border: none;
  -webkit-box-shadow: 2px 2px 21px 0px rgba(0,0,0,0.1);
  -moz-box-shadow: 2px 2px 21px 0px rgba(0,0,0,0.1);
  box-shadow: 2px 2px 21px 0px rgba(0,0,0,0.1); 
  }

#news .media-object.callout:last-child {
  margin-bottom: 0;
  /*margin-bottom: -130px;*/
  }

#news .media-object.callout h3 a {
  color:#314e76;
  font-size: 1.5rem;
  }

#news .media-object-section {    display: inline-block;}
#news .media-object-section:first-child {
    padding-right: 1rem;
    width: 100px;
    background: #314e76;
  }
#news span.button.hollow.round {
  width: 60px;
  height: 60px;
  margin-top: 30px;
  margin-left: 20px;
  position: relative;
  }
#news a.button.hollow {
    color: #f44141;
  }
#news span.button.hollow:hover,
#news span.button.hollow:focus {
    color: #fff;
    border-color: #f44141;
  }
#news span.button.hollow.round i {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  position: absolute;
  font-size: 1.5rem;
  }
#news hr { border-bottom: 2px solid #efefef; }
#news h3 {line-height: 1;}
#news h3 small{ color:#f44141; text-transform:uppercase; font-size: .9em; font-weight: 400;}
.narrow {
  padding-left: .9375rem;
  padding-right: .9375rem;
  }




#about-page #content > .row {
  background: #fff;
  -webkit-box-shadow: 0px -17px 40px -9px rgba(0,0,0,0.11);
  -moz-box-shadow: 0px -17px 40px -9px rgba(0,0,0,0.11);
  box-shadow: 0px -17px 40px -9px rgba(0,0,0,0.11);
  margin-top: -100px;
  }

#about-page #campaigns > .row {
  background: #fff;
  -webkit-box-shadow: initial;
  -moz-box-shadow: initial;
  box-shadow: initial;
  }

#about-page .row.small-up-1.medium-up-2 {
  margin-bottom: 0;
  /*margin-bottom: -150px;*/
  }


/*News page*/

#news-page #news > .row {
  background: #fff;
  -webkit-box-shadow: 0px -17px 40px -9px rgba(0,0,0,0.11);
  -moz-box-shadow: 0px -17px 40px -9px rgba(0,0,0,0.11);
  box-shadow: 0px -17px 40px -9px rgba(0,0,0,0.11);
  margin-top: -200px;
}
#news-page #news h1 {
  font-size: 3em;
  font-weight: 500;
  padding: 2rem 0; 
}
#campaign-page ul,
#news-page ul,
#about-page ul {
  padding: 1rem 1.5rem;
}
#campaign-page ul li,
#news-page ul li,
#about-page ul li  {
  padding: .5rem 0;
}


@media screen and (max-width: 39.9375em) {
  .row.narrow {padding-right: 0; padding-left: 0;}
  .column.narrow {padding-right: .625rem; padding-left: .625rem;}
  .sticky { position: fixed; z-index: 5;}
  h1{ font-size: 2.25em;}
  h3 { font-size: 1em; }
  #campaigns .row.small-up-1.medium-up-2 .column {
    padding: .6rem 0.25rem; }
  #campaigns .callout .overlay {height: 55px; }
  #campaigns .callout:hover .overlay { height: 55px; }
  h2.text-center span:before, h2.text-center span:after { height: 0px; border-bottom: none; width: 0; }
  h2.text-center { border-bottom: 2px solid #efefef; padding: 2rem 0 1rem 0; }
  #campaigns .callout .overlay h3 a {margin-right: 5px; }

}
@media screen and (min-width: 40em) {

h3 {font-size: 1.25em;}
.menu > li > a {font-size: .9em;}

.top-bar-title {
  padding: 0.1rem 1rem; margin-right: 0;
  }

.top-bar-title a {
  color: #fff;
  font-size: 1.3rem;
  margin-left: 0; 
  }

#sub-page {
  padding-top: 70px;
  }
#news h3 small{ font-size: .7em;}
#news .media-object.callout h3 a {
  font-size: 1.9375rem;
  }
#news .media-object-section:last-child {
  width: calc(100% - 100px - 1rem);
  padding: 1rem 0 1rem 1rem;
  }
ul.submenu li {
  padding-left: 0;
  }
#campaigns h1 {
  font-size: 3em;
  }

}
  

@media screen and (max-width: 64em) {
  #campaigns .callout .overlay{
    height: 55px;
    width: calc(100% - 1.6rem);    padding: 10px 0px 15px 15px;
    }
  #campaigns .callout:hover .overlay{
    height: 55px;
    }
  #campaigns .row.small-up-1.medium-up-2 .column {
    padding: .4rem;
    }
  #campaigns .callout { padding: .8rem;}
  #campaigns .callout .overlay {margin: .8rem;}
  #campaigns .callout .overlay h3 {font-size: 1rem;}

}

@media screen and (min-width: 64em) {

#campaigns .callout:hover .overlay a.button {
  bottom: auto;
  position: relative;
  }
#campaigns .row.small-up-1.medium-up-2 .column {
  padding: .9375rem;
  }
h3 {font-size: 1.65em; }
.top-bar-title {
  padding: 0 1rem;
  }

.top-bar-title a {
  color: #fff;
  font-size: 1.5rem;
  }
section#campaigns {
  padding: 40px 0 40px 0;
  }
#home-page #about {
  position: initial;
  padding-top: 100px;
  }

#home-page #about p {
  font-size: 1.4rem;
}
#home-page #about >.row {
  position: initial;
  transform: initial;
}
#home-page #about a:hover {
    color: #f44141;
    opacity: 1;
}
#home-page #campaigns {
  margin-top: -100px;
  }
#campaigns .callout .overlay p {
  display: block;
  color: #fff;
  }

#campaigns .callout .overlay {
  height: 65px;
  padding: 15px;
  }
.narrow {
  padding-left: 50px;
  padding-right: 50px;
  }

.menu > li > a {font-size: 1em;}
}











/********* 2018 updates *********/
.voteorg-promo { background-color:  #112e51; padding: 1em; font-weight:  bold; color:  #02bfe7; font-size: 1.3em; }
.voteorg-promo a { color:  #02bfe7; }
.voteorg-promo i { color: #fc2755; margin: 0.4em 0.25em 2em 0; float: left; }
.voteorg-promo span { text-decoration:underline; }
.voteorg-promo img { max-width: 1.5em; float: right; }

.voteorg-promo-super-button { background-color:  #112e51; padding: 1em 2em; }
.voteorg-promo-super-button .display-checkbox { font-weight: bold; color:  #fc2755; }
.voteorg-promo-super-button .display-text { font-weight: bold; color:  #02bfe7; }
.voteorg-promo-super-button .display-arrow { font-weight: bold; color:  #ffffff; }

#campaigns h3 { font-size: 1.9375rem; }




@media screen and (max-width: 39.9375em) {
	#campaigns h3 { font-size: 1.5rem; }
}
