.filters {
  margin: 2em 0;
  width: 100%;
  display: block;
}

#vol-filter {
  position: relative;
}

#vol-filter #filter-categories {
  /* float: left; */
  width: 200px;
  position: relative;
}

#vol-filter #filter-day {
  float: left;
  width: 200px;
  position: relative;
}

#vol-filter .childcare {
  float: left;
  width: 16%;
  height: 100%;
  position: relative;
  padding: 0 1.5%;
  color: #ffffff;
  font-size: 14px;
  border-right: 1px solid #666666;
  box-shadow: 1px 0px 1px -1px rgba(255, 255, 255, 0.4);
}

#vol-filter .childcare-inner {
  padding-top: 1em;
  overflow: hidden;
}

#vol-filter #filter-childcare {
  float: right;
}

#vol-filter .zip {
  float: left;
  width: 24%;
  /*height: 99%;*/
  /*plus padding for 100% height*/
  position: relative;
  /*padding: 1% 1% 0 1%;*/
  padding: 10px 1% 0 1%;
}

#vol-filter .zip-inner {
  background: #ffffff;
  padding: 2%;
  border: 1px solid #dadada;
  border-radius: 5px;
  overflow: hidden;
}

#vol-filter #filter-zip {
  float: left;
  width: 75%;
  height: 18px;
  line-height: 18px;
  font-size: 13px;
  color: #999999;
  border: 0;
  padding: 0;
  outline: 0;
  background: none;
}

#vol-filter #vol-filter-submit {
  float: right;
  width: 12px;
  height: 16px;
  border: 0;
  background: url(../_img/groupfinder_submit.png);
  display: block;
  text-indent: -9999px;
  cursor: pointer;
}

/*************************************************************************
 * List View
 *************************************************************************/
/* Use Flexbox for items now */
#volunteerOpps .items {
  display: block;
  padding: 0 0 4em;
}

#volunteerOpps .items article {
  width: 100%;
  margin: 0 0 4em;
  text-align: center;
}

@media (min-width: 48em) and (max-width: 63.99em) {
  /* Funny BP, but it will keep the nth-child rules from creating havoc at the next BP... */
  #volunteerOpps .items {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: start;
            justify-content: flex-start;
    padding: 0 0 4em;
  }
  #volunteerOpps .items article {
    flex-basis: 48%;
    padding: 0;
    margin-bottom: 4em;
    margin-left: 2%;
    margin-right: 2%;
    text-align: left;
  }
  #volunteerOpps .items article:first-child,
  #volunteerOpps .items article:nth-child(2n+1) {
    margin-left: 0;
  }
  #volunteerOpps .items article:nth-child(2n) {
    margin-right: 0;
  }
}

@media (min-width: 64em) {
  #volunteerOpps .items {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: start;
            justify-content: flex-start;
    padding: 0 0 4em;
  }
  #volunteerOpps .items article {
    flex-basis: 30.666666667%;
    padding: 0;
    margin-bottom: 4em;
    margin-left: 2%;
    margin-right: 2%;
    text-align: left;
  }
  #volunteerOpps .items article:first-child,
  #volunteerOpps .items article:nth-child(3n+1) {
    margin-left: 0;
  }
  #volunteerOpps .items article:nth-child(3n) {
    margin-right: 0;
  }
}

#volunteerOpps .items article .button-container {
  margin-bottom: 0;
  margin-top: 1em;
}

#volunteerOpps .items article .button-container .btn {
  margin: 0;
  text-transform: uppercase;
  white-space: wrap;
}

#volunteerOpps .items article h3 {
  line-height: 1.35;
}

#volunteerOpps .items article .more {
  display: block;
  opacity: 1.0;
  transition: opacity .25s ease-in-out;
  -moz-transition: opacity .25s ease-in-out;
  -webkit-transition: opacity .25s ease-in-out;
}

#volunteerOpps .items article .more:hover {
  opacity: 0.82;
}

#volunteerOpps .items article .more > img {
  margin-bottom: 1em;
  -webkit-backface-visibility: hidden;
}

article header {
  /*background: url(../_img/groupfinder_article_more.png) no-repeat 100% 50%;*/
  cursor: pointer;
  padding-right: 12.5%;
  /*don't creep on the arrow*/
}

article .previewText p {
  margin-bottom: 0;
}

article .details {
  display: none;
  border-top: 1px solid #ffffff;
  padding-top: 2.5%;
  margin-top: 2.5%;
  text-align: center;
}

.serveThird {
  padding: 2em;
  text-align: center;
}

.whereText h4 {
  margin-top: 0;
}

.whereText p {
  margin-bottom: 1em;
}

/*************************************************************************
 * Detail View
 *************************************************************************/
#volunteerOpps .return {
  margin-bottom: 2em;
  white-space: normal;
}

#volunteerOpps .return > span {
  vertical-align: -1px;
}

article.detail {
  padding: 0;
  border: none;
  background: none;
}

article.detail header h1,
article.detail header h3 {
  margin-bottom: 5px;
}

article.detail header {
  cursor: default;
  padding: 0;
  margin-bottom: 2em;
}

article.detail header section {
  display: block;
  width: 100%;
}

article.detail p.meta span.sep {
  color: #3c3c3c;
  font-weight: 700;
}

article.detail header aside {
  float: right;
  width: 29%;
  padding: 2.5%;
}

/* article.detail header aside #map-display {
	width: 96%;
	height: 160px;
	padding: 2%;
	margin-bottom: 1em;
	background: #ffffff;
	-moz-box-shadow: 1px 1px 1px rgba(0, 0, 0, .15);
	-webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, .15);
	box-shadow: 1px 1px 1px rgba(0, 0, 0, .15);
}

article.detail header aside #map-display #gmap {
	width: 100%;
	height: 100%;
}

article.detail header aside .map-directions {
	display: block;
	padding: 1em .5em;
	text-align: center;
	color: #ffffff;
	font-size: 14px;
	text-transform: uppercase;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, .25);
	line-height: 1;
	background-color: #666666;
	background-image: url(../_img/groupfinder_bg_btn.png);
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-moz-box-shadow: 1px 1px 1px rgba(0, 0, 0, .15);
	-webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, .15);
	box-shadow: 1px 1px 1px rgba(0, 0, 0, .15);
} */
article.detail .details {
  display: block;
  border-top: none;
  margin: 0 0 4em;
  text-align: left;
}

article.detail .details section {
  width: 100%;
  margin-bottom: 2em;
  text-align: left;
  box-sizing: border-box;
}

article.detail .details aside {
  width: 100%;
  box-sizing: border-box;
  text-align: center;
}

@media (min-width: 48em) {
  article.detail .details {
    display: -webkit-box;
    display: flex;
    border-top: none;
    margin: 0 0 4em;
    text-align: left;
  }
  article.detail .details section {
    flex-basis: 70%;
    padding: 0 3% 0 0;
    margin-bottom: 0;
    box-sizing: border-box;
    text-align: left;
  }
  article.detail .details aside {
    flex-basis: 30%;
    box-sizing: border-box;
    text-align: center;
  }
}

article.detail .details aside #contact-info {
  padding: 2em;
}

article.detail .details aside #contact-info .emailIcon {
  display: block;
  margin: 0 auto;
  font-size: 1.25em;
  width: 32px;
  height: 32px;
  text-align: center;
  border-radius: 100%;
  background: #ffffff;
}
article.detail .details aside h4,
article.detail .details aside h5 {
  text-align: center;
  line-height: 1.35;
}

article.detail .details aside .buttons p {
  margin: 0;
  line-height: 1;
}

article.detail .details #contact-form {
  margin-top: 2em;
  display: block;
  padding-top: 2rem;
}

.button-container {
  display: inline-block;
}

.serveThird .iconBox {
  display: block;
  width: 100%;
  margin-bottom: 1.5em;
  text-align: center;
}

.serveThird .iconBox > .icon {
  font-size: 4em;
  color: #660ba2;
}

.whereText {
  display: inline-block;
  vertical-align: top;
  width: 64%;
}

.serveThird .whereText {
  width: 100%;
}

/* Serve Wide */
.serveWide {
  display: block;
  padding: 2em;
  text-align: center;
}

.serveWide .iconBox {
  display: block;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 2em;
}

.serveWide .iconBox > .icon {
  font-size: 5em;
}

.serveWide .whereText {
  display: block;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 2em;
}

.serveWide .button-container {
  display: block;
  width: 100%;
  box-sizing: border-box;
}

@media (min-width: 64em) {
  .serveWide {
    display: -webkit-box;
    display: flex;
    padding: 3em;
    -webkit-box-align: center;
            align-items: center;
    text-align: left;
  }
  .serveWide .iconBox {
    flex-basis: 17%;
    box-sizing: border-box;
    margin-bottom: 0;
  }
  .serveWide .iconBox > .icon {
    font-size: 5em;
  }
  .serveWide .whereText {
    flex-basis: 62%;
    box-sizing: border-box;
    padding-right: 4em;
    margin-bottom: 0;
  }
  .serveWide .button-container {
    flex-basis: 25%;
    box-sizing: border-box;
  }
}

.serveWide p {
  margin-bottom: 0;
}

.highlight {
  display: block;
  text-align: center;
  padding: 2em;
  margin: 0 0 4em;
}

.highlight .button-container .btn {
  white-space: normal;
  line-height: 1.35;
  display: block;
  width: 100%;
}

@media (min-width: 48em) {
  .highlight {
    text-align: left;
    padding: 3em;
  }
  .highlight .button-container .btn {
    display: inline-block;
    width: auto;
  }
}

/*************************************************************************
 * GRID STYLES - remove this if site has existing styling
*************************************************************************/
.div-row {
  width: 100%;
  position: relative;
  margin-bottom: 0;
}

.div-row::after {
  content: '';
  display: block;
  clear: both;
}

@media (min-width: 47.9375em) {
  .div-row {
    margin-bottom: 2em;
  }
  .highlight > .div-row {
    margin-bottom: 0;
  }
}

.div-row .div-col {
  float: none;
  width: 100%;
  margin: 0 0 2em 0;
  padding: 0;
}

@media (min-width: 47.9375em) {
  .div-row .div-col {
    float: left;
    margin: 0 0 0 4%;
  }
}

@media (min-width: 47.9375em) {
  .div-row .div-col:first-child {
    margin-left: 0 !important;
  }
}

.div-row .div-col p:last-child {
  margin: 0;
}

.div-row .div-col p img,
.div-row .div-col div img,
.div-row .div-col p iframe,
.div-row .div-col div iframe,
.div-row .div-col p object,
.div-row .div-col div object,
.div-row .div-col p video,
.div-row .div-col div video {
  margin-bottom: 1em;
}

#volunteerOpps iframe, #volunteerOpps .fluid-width-video-wrapper iframe {
  border: none !important;
}

@media (min-width: 47.9375em) {
  .div-row.one-half .div-col {
    width: 48%;
  }
}

@media (min-width: 47.9375em) {
  .div-row.one-third .div-col {
    width: 30.66666666666667%;
  }
}

@media (min-width: 47.9375em) {
  .div-row.one-fourth .div-col {
    width: 22%;
  }
}

@media (min-width: 47.9375em) {
  .div-row.two-third .div-col {
    width: 72%;
  }
}

@media (min-width: 47.9375em) {
  .div-row.two-third .div-col:first-child {
    width: 24%;
  }
}

@media (min-width: 47.9375em) {
  .div-row.two-third.right .div-col {
    width: 24%;
  }
}

@media (min-width: 47.9375em) {
  .div-row.two-third.right .div-col:first-child {
    width: 72%;
  }
}

/**************************************************************************
 * HTML 5 considerations
 *************************************************************************/
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
  display: block;
}

audio, canvas, video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}
