/**
 * Blocks
 *  - base styles for block templates.
 ============================================================================ */
.block {
  margin: 26px 0;
  margin: 1.625rem 0;
}

/**
  * Calendar block styles
  ============================================================================ */
#block-calendar,
#block-framework-calendar {
  width: 46.5%;
  float: right;
  margin-left: 1.625rem;
}

.cw3-date-image {
  display: block;
  width: 50px;
  height: 50px;
  background-color: #13294b;
  margin: 0 !important;
  border-radius: 10px 0 0 10px;
}

.cw3-date-image .date .date-month {
  font-family: "Source Sans Pro", "Source Sans", sans-serif !important;
  font-size: 16px !important;
  color: #fff !important;
  font-weight: bold !important;
  padding: 4px 8px 2px 8px !important;
  text-transform: uppercase;
  text-align: center;
}

.cw3-date-image .date .date-day {
  font-family: "Source Sans Pro", "Source Sans", sans-serif !important;
  font-size: 20px !important;
  line-height: 1.0rem;
  color: #fff !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  text-align: center;
}

.cw3-wrapper .cw3-content {
  float: none !important;
}

.cw3-wrapper .cw3-content {
  margin: 1.0rem 0 !important;
}

.cw3-wrapper .cw3-time div {
  font-family: "Source Sans Pro", "Source Sans", sans-serif !important;
  font-size: 16px !important;
  color: #333 !important;
  font-style: normal !important;
  font-weight: 700;
  margin: 0px 5px 0px 0px !important;
  line-height: 1.25rem;
}

.cw3-wrapper .cw3-content ul li .cw3-content {
  margin-left: 60px !important;
  align-items: flex-start;
}

.cw3-wrapper .cw3-content .cw3-title-with-date a {
  font-family: "Source Sans Pro", "Source Sans", sans-serif !important;
  font-size: 16px !important;
  color: #004c97 !important;
}

.cw3-wrapper .cw3-content  .cw3-title-with-date {
  line-height: 1.5rem;
}

.cw3-wrapper .cw3-content .cw3-title-with-date a:hover,
.cw3-wrapper .cw3-content .cw3-title-with-date a:focus {
  color: #13294b !important;
}

/* Full Calendar */

#block-full-calendar {
  width: 100%;
  clear: both;
}

#block-full-calendar .block__content ul {
  display: flex;
  justify-content: space-between;
}

#block-full-calendar .block__content li {
  padding: 0;
  min-width: 0;
  min-height: 0;
  -ms-flex: 1;
  text-align: center;
}

#block-full-calendar .cw3-date-image {
  float: none !important;
  margin: 0 auto !important;
}

#block-full-calendar .cw3-wrapper .cw3-content ul li .cw3-content {
  margin-left: 0px !important;
  align-items: flex-start;
}

/* Future Events Page*/
.future-calendar ul {
  list-style: none;
  padding-left: 0 !important;
}

.future-calendar ul ul{
  list-style: disc !important;
  padding-left: 2.9375rem !important;
}

.future-calendar li div > :first-child {
  background-color: #fff !important;
}

.future-calendar li:first-child {
  border-top: 3px solid #D2D2D2;
  padding-top: 1.0rem;
}

.future-calendar li li:first-child {
  border-top: none;
  padding-top: 1.0rem;
}

.future-calendar li {
  border-bottom: 3px solid #D2D2D2;
  margin: 1.0rem 0;
  padding-bottom: 1.0rem;
}

.future-calendar li li {
  border-bottom: none;
  margin: 0;
  padding-bottom: 0;
}


.future-calendar li div :first-child a {
  color: #004c97 !important;
  font-size: 16px !important;
  font-weight: 700;
}

.future-calendar li div :first-child a:hover,
.future-calendar li div :first-child a:focus {
  color: #13294b !important;
}

.future-calendar li div, .future-calendar li div p {
  color: #333 !important;
  font-size: 16px !important;
}

.future-calendar #pc-4279 #edu-il-ws-4279-1-wrapper .edu-il-ws-4279-1-time {
  font-weight: 700;
}

/**
  * Content Blocks styles
  ============================================================================ */
#content-blocks {
  padding: 1.625rem 0;
  position: relative;
}

#content-blocks .regions {
  margin: 0 auto;
}

#content-blocks .button {
  position: absolute;
  bottom: 0px;
}

#content-blocks .relative-button {
  position: relative;
}

#content-blocks .contextual-region {
  position: inherit;
}

/**
  * Solid Content Block styles
  ============================================================================ */
#solid-blocks {
  background-color: #13294b;
  margin: 50px 0 25px 0;
  padding: 25px 0;
}

#solid-content-blocks-top {
  background-color: #13294b;
  margin: 1px 0 0 0;
  padding: 25px 0;
}

#solid-content-blocks-top .regions {
  background-color: #13294b;
  }

#solid-blocks h2,
#solid-content-blocks-top h2 {
  color: #fff;
  margin-bottom: 50px;
  font-weight: bold;
}

#solid-blocks .regions {
  background-color: #13294b;
  margin: 0 auto;
}

/**
  * Sub-content Blocks styles
  ============================================================================ */
#subcontent {
  padding: 1.625rem 0;
  position: relative;
  border-top: 5px solid #e84a27;
}

#subcontent .regions {
  margin: 0 auto;
}

#subcontent .news-listing h3 {
  text-transform: none;
  font-weight: 600;
}

.news-listing ul {
  margin-top: -25px;
}

.news-listing li {
  padding: 25px 0px;
  border-bottom: 3px solid #D2D2D2;
}

.news-listing li:last-child {
  border-bottom: none;
}

.news-listing a {
  text-decoration: none;
}

.readmore {
  padding-top: 0.5rem;
  text-decoration: underline;
  display: inline-block;
}

/**
  * Bonus Content styles
  ============================================================================ */

#bonus {
  border-top: 5px solid #13294b;
  width: 100%;
}
