@charset "UTF-8";
/*  typography */
@import url("https://use.typekit.net/hnl4gif.css");
body {
  line-height: 1.2;
  font-family: freight-micro-pro, serif;
  -webkit-font-smoothing: antialiased;
  font-feature-settings: 'onum' 1;
  font-size: 15px;
  color: #313131; }
  body strong {
    font-weight: 700; }

p, .paragraph {
  font-weight: 400;
  color: #313131;
  font-size: 18px;
  line-height: 1.65;
  font-family: freight-micro-pro, serif; }

h1, h2, h3, h4, h5, h6 {
  color: #1e1e4b;
  font-family: hero-new, sans-serif;
  font-weight: 700;
  line-height: 1.2; }

h1, .h1 {
  font-size: 55px; }
  @media (max-width: 575px) {
    h1, .h1 {
      font-size: 35px; } }
h2, .h2 {
  font-size: 40px; }
  @media (max-width: 575px) {
    h2, .h2 {
      font-size: 30px; } }
h3, .h3 {
  font-size: 25px; }
  @media (max-width: 575px) {
    h3, .h3 {
      font-size: 20px; } }
h4, .h4 {
  font-size: 20px; }
  @media (max-width: 575px) {
    h4, .h4 {
      font-size: 18px; } }
h5, .h5 {
  font-size: 18px; }
  @media (max-width: 575px) {
    h5, .h5 {
      font-size: 16px; } }
h6, .h6 {
  font-size: 16px; }
  @media (max-width: 575px) {
    h6, .h6 {
      font-size: 14px; } }
code {
  color: #501966; }

div.pd-text a {
  color: maroon; }

div.pd-text a:not(.btn) {
  background-image: linear-gradient(0deg, rgba(0, 102, 136, 0.2) 10%, transparent 0); }

.content p a:not(.btn):hover, .content li a:not(.btn):hover {
  background-image: linear-gradient(0deg, rgba(0, 102, 136, 0.2) 35%, transparent 0); }

/* Button style */
.btn {
  font-size: 16px;
  font-family: hero-new, sans-serif;
  padding: 15px 40px;
  border-radius: 3px;
  font-weight: 500;
  border: 0;
  position: relative;
  z-index: 1;
  transition: background-color .5s ease;
  overflow: hidden; }
  .btn:focus {
    outline: 0;
    box-shadow: none !important; }
  .btn:active {
    box-shadow: none; }

.btn-sm {
  font-size: 14px;
  padding: 10px 35px; }

.btn-xs {
  font-size: 12px;
  padding: 5px 15px; }

.btn-primary {
  background: #006688;
  color: #fff; }
  .btn-primary::before {
    background: #fff; }
  .btn-primary:active {
    background: #006688 !important;
    color: #006688; }
    .btn-primary:active::before {
      height: 80%; }
  .btn-primary:hover {
    background-color: #004055; }

.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #032740;
  border-color: #032740; }

.btn-secondary {
  background: #fff;
  color: #054571;
  border: 1px solid #fff; }
  .btn-secondary::before {
    background: #054571; }
  .btn-secondary:active {
    background: #054571;
    color: #fff;
    border: 1px solid #fff; }
  .btn-secondary:hover {
    background: #065489;
    color: #fff;
    border: 1px solid #fff; }

.btn-primary-outline {
  border: 1px solid #054571;
  color: #054571;
  background: transparent; }
  .btn-primary-outline::before {
    background: #fff; }
  .btn-primary-outline:hover {
    background: rgba(5, 69, 113, 0.2);
    color: #054571; }
  .btn-primary-outline:active {
    background: #054571;
    color: #fff; }

.btn-primary-gradient {
  background-image: linear-gradient(to right bottom, #054571 0%, #a01c1c 51%, #054571 100%);
  transition: 0.5s;
  background-size: 200% auto; }
  .btn-primary-gradient:hover {
    background-position: right center; }

.btn-primary-white {
  border: 1px solid #054571;
  color: #054571;
  background: white; }
  .btn-primary-white::before {
    background: #fff; }
  .btn-primary-white:hover {
    background: rgba(255, 255, 255, 0.8);
    color: #054571; }
  .btn-primary-white:active {
    background: #054571;
    color: #fff; }

.btn-emphasis-bounce {
  animation-name: bounce1;
  animation-timing-function: linear;
  animation-duration: 0.5s;
  animation-iteration-count: 3; }

@keyframes bounce1 {
  0% {
    transform: translateY(0); }
  25% {
    transform: translateY(-3px); }
  50% {
    transform: translateY(0); }
  75% {
    transform: translateY(3px); }
  100% {
    transform: translateY(0px); } }

.fixed-top {
  z-index: 10; }

body {
  background-color: #fff;
  overflow-x: hidden; }

::selection {
  background: #0763a2;
  color: #fff; }

ol,
ul {
  list-style-type: none;
  margin: 0 0 15px 0; }

img {
  vertical-align: middle;
  border: 0; }

a,
a:hover,
a:focus {
  text-decoration: none; }

a {
  color: inherit; }

p img {
  max-width: 100%; }

a,
button,
select {
  cursor: pointer;
  transition: .2s ease; }
  a:focus,
  button:focus,
  select:focus {
    outline: 0; }

a:hover {
  color: #054571; }

a.text-primary:hover {
  color: #054571 !important; }

a.text-light:hover {
  color: #054571 !important; }

h4 {
  transition: .2s ease; }

a h4:hover {
  color: #054571; }

.slick-slide {
  outline: 0; }
  .slick-slide .slider-caption {
    color: white;
    font-weight: 700;
    background: linear-gradient(0deg, #054571 50%, transparent 0); }

.section {
  padding-top: 90px;
  padding-bottom: 90px; }
  .section-sm {
    padding-top: 40px;
    padding-bottom: 40px; }
  .section-title {
    margin-bottom: 30px; }

.bg-cover {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat; }

.border-primary {
  border-color: #ededf1 !important; }

/* overlay */
.overlay {
  position: relative; }
  .overlay::before {
    position: absolute;
    content: '';
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background: #1a1a37;
    opacity: .7; }

.outline-0 {
  outline: 0 !important; }

.d-unset {
  display: unset !important; }

.bg-primary {
  background: #054571 !important; }

.bg-secondary {
  background: #1a1a37 !important; }

.bg-gray {
  background: #f8f8f8; }

.text-primary {
  color: #054571 !important; }

.text-color {
  color: #313131; }

.text-light {
  color: #c8c8c9 !important; }

.text-lighten {
  color: #d6d6e0 !important; }

.text-muted {
  color: #68686e !important; }

.text-dark {
  color: #1e1e4b !important; }

.font-secondary {
  font-family: hero-new, sans-serif; }

.mb-10 {
  margin-bottom: 10px !important; }

.mb-20 {
  margin-bottom: 20px !important; }

.mb-30 {
  margin-bottom: 30px !important; }

.mb-40 {
  margin-bottom: 40px !important; }

.mb-50 {
  margin-bottom: 50px !important; }

.mb-60 {
  margin-bottom: 60px !important; }

.mb-70 {
  margin-bottom: 70px !important; }

.mb-80 {
  margin-bottom: 80px !important; }

.mb-90 {
  margin-bottom: 90px !important; }

.mb-100 {
  margin-bottom: 100px !important; }

.pl-150 {
  padding-left: 150px; }

.zindex-1 {
  z-index: 1; }

@media (max-width: 991px) {
  .overflow-md-hidden {
    overflow: hidden; } }

.vertical-align-middle {
  vertical-align: middle; }

.icon-md {
  font-size: 36px; }

/* page title */
.page-title-section {
  padding: 200px 0 80px;
  background-size: cover; }
  .page-title-section.page-title-section-tight {
    padding: 180px 0 30px;
    background-color: #1a1a37; }
  .page-title-section .page-subheader {
    font-weight: 700; }

.custom-breadcrumb li.nasted {
  position: relative;
  padding-left: 25px; }

/* /page title */
.list-styled {
  padding-left: 25px; }
  .list-styled li {
    position: relative;
    margin-bottom: 15px; }
    .list-styled li::before {
      position: absolute;
      content: "";
      height: 10px;
      width: 10px;
      border-radius: 50%;
      background: #054571;
      left: -25px;
      top: 5px; }

textarea.form-control {
  height: 200px;
  padding: 20px; }

#map_canvas {
  height: 500px; }

.post-thumb-sm {
  max-width: 100px; }

/* pagination */
.pagination {
  font-family: hero-new, sans-serif;
  justify-content: center; }
  .pagination .page-item {
    margin: 0 10px; }
    .pagination .page-item.active .page-link {
      background: #054571;
      color: #fff;
      border-color: #054571; }
    .pagination .page-item:first-child .page-link, .pagination .page-item:last-child .page-link {
      border-radius: 0; }
    .pagination .page-item .page-link {
      color: #313131; }

.footnotes ol {
  list-style-type: decimal; }
  .footnotes ol li p {
    font-size: 90%; }

.frontpage-content p a, .frontpage-content li a {
  color: maroon; }
  .frontpage-content p a:not(.btn), .frontpage-content li a:not(.btn) {
    background-image: linear-gradient(0deg, rgba(0, 102, 136, 0.2) 10%, transparent 0); }
    .frontpage-content p a:not(.btn):hover, .frontpage-content li a:not(.btn):hover {
      background-image: linear-gradient(0deg, rgba(0, 102, 136, 0.2) 35%, transparent 0); }

.frontpage-content .whats-new-badge {
  padding: 5px 8px;
  border: 1px solid #054571;
  color: #1a1a37; }

.frontpage-content .frontpage-audience-card li {
  line-height: 1.4; }

.content hr {
  clear: both; }

.content p a, .content li a {
  color: maroon; }
  .content p a:not(.btn), .content li a:not(.btn) {
    background-image: linear-gradient(0deg, rgba(0, 102, 136, 0.2) 10%, transparent 0); }
    .content p a:not(.btn):hover, .content li a:not(.btn):hover {
      background-image: linear-gradient(0deg, rgba(0, 102, 136, 0.2) 35%, transparent 0); }

.content p > img {
  margin: 20px 0; }

.content aside {
  max-width: 100%;
  padding: 10px 20px;
  border-top: 2px solid #054571;
  border-bottom: 2px solid #054571;
  background-color: #f8f9fe; }
  .content aside p {
    font-size: 1.4em;
    font-style: italic; }
  @media (min-width: 500px) {
    .content aside {
      float: right;
      width: 50%;
      margin-left: 20px; } }
.content a.btn {
  text-decoration: none; }

.content a.btn-outline-primary {
  color: maroon;
  border: 1px solid #054571; }

.content a.btn-outline-primary:hover {
  color: white;
  transition: background-color 1.0s, color 1.0s;
  background-color: #054571; }

.content .callout {
  width: 90%;
  text-align: center;
  border: 3px solid #054571;
  border-left-width: 8px;
  border-right-width: 8px;
  box-shadow: 3px 3px 0 0 rgba(213, 77, 0, 0.37);
  margin: 0 auto;
  padding: 10px;
  font-size: 1.4em;
  font-weight: 700;
  color: #054571; }

.content h1, .content h2, .content h3, .content h4, .content h5, .content h6 {
  scroll-margin-top: 240px;
  scroll-snap-margin-top: 240px; }

.content h1, .content h2 {
  position: relative; }
  .content h1::before, .content h2::before {
    content: "➣";
    position: absolute;
    left: -35px;
    top: 5px;
    font-size: 80%; }

.content h3, .content h4 {
  position: relative; }
  .content h3::before, .content h4::before {
    content: "‣";
    position: absolute;
    left: -25px; }

.content h1,
.content h2,
.content h3,
.content h4,
.content h5,
.content h6 {
  margin-bottom: 10px; }

.content h2:not(:first-of-type) {
  margin-top: 40px; }

.content h3:not(:first-of-type), .content h4:not(:first-of-type) {
  margin-top: 25px; }

.content ol {
  padding-left: 20px; }

.content ul:not(.list-unstyled) {
  padding-left: 0; }
  .content ul:not(.list-unstyled) li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 5px;
    list-style-type: none;
    font-size: 17px;
    line-height: 1.55; }
    .content ul:not(.list-unstyled) li::before {
      content: "⊛ ";
      font-size: 80%;
      margin-left: -12px;
      position: relative;
      bottom: 2px; }

.content figure {
  max-width: 100%;
  padding: 10px 20px;
  border-top: 2px solid #054571;
  border-bottom: 2px solid #054571;
  background-color: #f8f9fe; }
  .content figure img {
    margin-left: auto;
    margin-right: auto;
    display: block; }
  .content figure.constrast-120 img {
    filter: contrast(1.2); }
  @media (min-width: 500px) {
    .content figure.figure-right {
      float: right;
      width: 50%;
      margin-left: 20px; }
    .content figure.figure-left {
      float: left;
      width: 50%;
      margin-right: 20px; } }
  .content figure figcaption {
    padding: 10px 5px; }
  .content figure figcaption p {
    font-family: hero-new, sans-serif;
    font-weight: 300;
    font-size: 0.9em;
    line-height: 1.5em;
    margin: 0; }
  .content figure img {
    max-width: 100%; }

.content .standard-carousel {
  border-top: 2px solid #054571;
  border-bottom: 2px solid #054571;
  background-color: #333;
  margin: 30px 0; }
  .content .standard-carousel .carousel-control-next, .content .standard-carousel .carousel-control-prev {
    color: #054571 !important; }
  .content .standard-carousel .carousel-inner {
    height: 450px; }
    .content .standard-carousel .carousel-inner .carousel-item {
      height: 100%; }
      .content .standard-carousel .carousel-inner .carousel-item p {
        background-color: rgba(250, 250, 250, 0.7);
        font-weight: 300;
        font-size: 0.9em;
        margin: 0; }
      .content .standard-carousel .carousel-inner .carousel-item img {
        height: 100%;
        object-fit: contain; }

.content table {
  text-align: left;
  width: 100%;
  max-width: 100%;
  margin-bottom: 1rem;
  border: 1px solid #dee2e6; }
  .content table th,
  .content table td {
    padding: .75rem;
    vertical-align: top;
    border: 1px solid #dee2e6; }
  .content table thead {
    background: #eff1fd; }
  .content table tbody {
    background: #f8f9fe; }
    .content table tbody td {
      text-align: left !important; }

.content .alert a {
  text-decoration: underline; }

.content blockquote {
  background-color: #eeeeee;
  padding: 1em;
  border-left: 2px solid #ccc; }
  .content blockquote p {
    margin-bottom: 0.5em;
    color: #313131; }

.content pre {
  padding: 10px 20px;
  background: #f8f9fe; }

.teacher-thumb-sm {
  height: 85px;
  width: 85px;
  object-fit: cover; }

.card-img-top {
  max-height: 175px;
  object-fit: cover; }

.page-card .card-img-top {
  max-height: 150px;
  object-fit: cover; }

.store-card .card-img-top {
  max-height: 375px; }

.staff-list-card {
  text-align: center; }
  .staff-list-card img.staff-headshot-circle.card-img-top {
    height: 200px;
    max-height: 200px;
    width: 200px;
    object-fit: cover;
    border-radius: 100px;
    margin-bottom: 20px; }
  .staff-list-card p {
    font-size: 14px;
    line-height: 14px; }

.course-listing h6 {
  font-family: freight-micro-pro, serif; }

.course-listing img {
  width: 140px;
  height: 100px;
  object-fit: cover; }

.media h1:before, .media h2:before, .media h3:before, .media h4:before {
  content: ""; }

.frontpage-searcher .frontpage-searcher-callout-outer {
  margin: 0 20px -100px 20px;
  padding: 0;
  background-image: url("https://iiif.digitalcommonwealth.org/iiif/2/commonwealth:1257b946v/2146,2271,1920,521/,600/0/default.jpg");
  background-size: cover; }
  .frontpage-searcher .frontpage-searcher-callout-outer .frontapge-searcher-callout-inner {
    width: 100%;
    text-align: center;
    padding: 20px 10px 130px 10px;
    background-color: rgba(0, 0, 0, 0.5); }
  .frontpage-searcher .frontpage-searcher-callout-outer h2 {
    color: white; }
  .frontpage-searcher .frontpage-searcher-callout-outer p > a {
    text-decoration: underline; }
    .frontpage-searcher .frontpage-searcher-callout-outer p > a:hover {
      color: white;
      text-decoration: none; }

.frontpage-searcher .input-group {
  border: 5px solid #054571; }

.frontpage-searcher .form-control {
  font-size: 1.75rem; }

.frontpage-searcher .btn {
  border-radius: 0; }

.airtable-embed {
  margin: 20px 0 40px 0; }

.donation-card p {
  font-size: 1.0em; }

.rounded-pill {
  font-family: hero-new, sans-serif;
  font-weight: 400;
  padding: 8px 15px;
  color: #6c757d; }

.event-tag-listing img {
  width: 128px;
  height: 64px;
  object-fit: cover; }

.alt-gallery-card .badge {
  background-color: #e2ecf3;
  color: #1a1a37; }

span.popupTooltip {
  background-image: linear-gradient(0deg, rgba(5, 70, 113, 0.3) 100%, transparent 0);
  border-radius: 8px;
  padding: 2px 8px;
  z-index: 1000;
  cursor: pointer; }

span.popupTooltip:hover {
  background-image: linear-gradient(0deg, rgba(5, 70, 113, 0.1) 100%, transparent 0);
  z-index: 1000; }

div.iiif-popup {
  position: absolute;
  background: #1a1a37;
  padding: 5px;
  color: #1a1a37;
  max-height: 410px;
  max-width: 410px;
  min-width: 50px;
  min-height: 50px;
  display: none;
  z-index: 1000;
  box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.7);
  border-radius: 2px; }

div.iiif-popup img {
  border: none;
  max-width: 400px;
  max-height: 400px;
  z-index: 1000; }

.top-header {
  font-size: 12px;
  transition: transform .2s ease;
  transform-origin: top;
  font-weight: 600; }
  .top-header.hide {
    transform: scaleY(0);
    transform-origin: top; }

.navigation {
  background: linear-gradient(to right, transparent 50%, #054571 50%);
  transition: .2s ease; }
  @media (max-width: 991px) {
    .navigation {
      background: #1a1a37; } }
.navbar-brand {
  max-width: 70%; }

@media (max-width: 991px) {
  .navbar-collapse {
    background: #1a1a37; } }

.navbar-nav {
  padding-left: 50px;
  background: #054571; }
  @media (max-width: 991px) {
    .navbar-nav {
      padding-left: 0;
      background: #1a1a37; } }
.nav-bg {
  background-color: #1a1a37; }

.nav-item {
  margin: 0 15px;
  position: relative; }
  .nav-item .nav-link {
    font-family: hero-new, sans-serif;
    font-weight: 600; }
  @media (min-width: 991px) {
    .nav-item:first-child {
      margin-left: 0; } }
  @media (min-width: 991px) {
    .nav-item:last-child {
      margin-right: 0; } }
  .nav-item::before {
    position: absolute;
    left: 0;
    bottom: 0;
    height: 6px;
    width: 100%;
    content: "";
    background: #fff;
    transform: scaleY(0);
    transform-origin: top;
    transition: transform .3s ease; }
  .nav-item:hover::before, .nav-item.active::before {
    transform: scaleY(1);
    transform-origin: bottom; }

.navbar-dark .navbar-nav .nav-link {
  color: #fff; }

link:focus,
.navbar-dark .navbar-nav .nav-link:hover {
  color: #fff; }

.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.active,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .show > .nav-link {
  color: #fff; }

.navbar-expand-lg .navbar-nav .nav-link {
  padding: 40px 0px; }
  @media (max-width: 991px) {
    .navbar-expand-lg .navbar-nav .nav-link {
      padding: 20px; } }
.sticky {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 5;
  background: #fff;
  box-shadow: 0 2px 5px #0000000d; }

.navbar #logo-navbar {
  max-height: 80px;
  width: auto; }

.navbar .dropdown:hover .dropdown-menu {
  visibility: visible;
  opacity: 1;
  transform: translateY(0); }

.navbar .dropdown-menu {
  box-shadow: 0px 3px 9px 0px rgba(0, 0, 0, 0.12);
  border-bottom: 5px solid #054571;
  padding: 15px;
  top: 96px;
  border-radius: 0;
  display: block;
  visibility: hidden;
  transition: .3s ease;
  opacity: 0;
  transform: translateY(20px);
  background: #fff; }
  @media (max-width: 991px) {
    .navbar .dropdown-menu {
      display: none;
      opacity: 1;
      visibility: visible;
      transform: translateY(0);
      transform-origin: unset; } }
  .navbar .dropdown-menu.show {
    visibility: hidden; }
    @media (max-width: 991px) {
      .navbar .dropdown-menu.show {
        visibility: visible;
        display: block; } }
.navbar .dropdown-item {
  position: relative;
  color: #1e1e4b;
  transition: .2s ease;
  text-transform: capitalize;
  font-family: hero-new, sans-serif; }
  @media (max-width: 991px) {
    .navbar .dropdown-item {
      text-align: center; } }
  .navbar .dropdown-item:not(:last-child) {
    margin-bottom: 10px; }
  .navbar .dropdown-item:hover {
    color: #054571;
    background: transparent; }

.sitename-footer {
  text-transform: uppercase;
  font-size: 90%;
  letter-spacing: 3px; }

.copyright p {
  font-family: hero-new, sans-serif;
  font-size: 10px; }

.section-sidebar .section-toplevel-link {
  position: relative;
  width: auto;
  display: inline-block; }
  .section-sidebar .section-toplevel-link::before {
    position: absolute;
    left: 0;
    bottom: -5px;
    height: 4px;
    width: 100%;
    content: "";
    background: #1a1a37;
    transform: scaleY(0);
    transform-origin: top;
    transition: transform .3s ease; }
  .section-sidebar .section-toplevel-link:hover::before, .section-sidebar .section-toplevel-link.active::before {
    transform: scaleY(1);
    transform-origin: bottom; }

.paneltruck-section {
  padding-bottom: 100px;
  background-color: #1a1a37; }

.paneltruck-iframe {
  border: 0;
  width: 100%;
  height: calc(100vh - 200px); }

.hero-section {
  padding: 250px 0 120px; }

.hero-button {
  background-color: rgba(255, 255, 255, 0.8);
  font-weight: 700;
  margin-top: 5px; }
  .hero-button:hover {
    background-color: rgba(229, 229, 247, 0.8);
    color: inherit; }

.hero-slider .prevArrow,
.hero-slider .nextArrow {
  position: absolute;
  bottom: -123px;
  z-index: 9;
  padding: 15px;
  color: rgba(255, 255, 255, 0.5);
  border: 0;
  font-size: 30px;
  transition: all linear .2s;
  background: transparent; }
  .hero-slider .prevArrow:focus,
  .hero-slider .nextArrow:focus {
    outline: 0; }
  .hero-slider .prevArrow:hover,
  .hero-slider .nextArrow:hover {
    color: #054571; }

.hero-slider .prevArrow {
  right: 60px; }

.hero-slider .nextArrow {
  right: 0; }

.hero-slider .slick-dots {
  position: absolute;
  left: 0;
  bottom: -100px;
  padding-left: 0; }
  .hero-slider .slick-dots li {
    display: inline-block;
    margin: 0 6px; }
    .hero-slider .slick-dots li.slick-active button {
      background: #054571; }
    .hero-slider .slick-dots li button {
      color: transparent;
      padding: 0;
      overflow: hidden;
      height: 10px;
      width: 10px;
      background: rgba(255, 255, 255, 0.5);
      border: 0;
      outline: 0; }

/* banner feature */
.feature-icon {
  font-size: 50px;
  color: #054571;
  display: inline-block; }

.feature-blocks {
  position: relative;
  top: -100px; }

/* /banner feature */
/* course */
.card-btn {
  font-size: 12px;
  padding: 5px 10px; }

.flex-basis-33 {
  flex-basis: 33.3333%; }

.hover-shadow {
  transition: .3s ease; }
  .hover-shadow:hover {
    box-shadow: 0px 4px 25px 0px rgba(27, 39, 71, 0.15); }

.donation-footer-buttons {
  box-shadow: 0 0 5px 5px rgba(0, 0, 0, 0.05) inset;
  background-color: rgba(0, 0, 0, 0.1); }

.frontpage-feature {
  box-shadow: 0 0 5px 5px rgba(0, 0, 0, 0.4) inset; }
  .frontpage-feature .frontpage-feature-callout {
    border: 5px solid #054571;
    background-color: rgba(255, 255, 255, 0.85);
    box-shadow: 5px 5px 0 0 #1a1a37; }
    .frontpage-feature .frontpage-feature-callout h3 {
      display: inline;
      background-image: linear-gradient(0deg, rgba(213, 77, 0, 0.37) 30%, transparent 0); }

.cta .cta-popper-outer {
  z-index: 100; }

.cta .cta-popper {
  border: 3px solid #054571;
  box-shadow: 4px 4px 0 0 rgba(213, 77, 0, 0.37);
  text-align: center;
  background-color: white;
  height: auto; }

.cta .cta-body {
  background-color: #eee;
  margin-top: -10px;
  padding-top: 15px;
  border: 1px solid rgba(213, 77, 0, 0.37); }
  @media (min-width: 992px) {
    .cta .cta-body {
      margin-bottom: -20px;
      margin-left: -50px;
      margin-top: 20px;
      padding-top: 5px; } }
  .cta .cta-body ul {
    margin: 5px;
    padding-left: 0; }
    @media (min-width: 992px) {
      .cta .cta-body ul {
        margin: 15px 10px 15px 63px; } }
  .cta .cta-body li {
    font-size: 1.2em;
    margin-bottom: 10px; }

/* events */
.card-date {
  position: absolute;
  background: #054571;
  font-family: hero-new, sans-serif;
  text-align: center;
  padding: 10px;
  color: #fff;
  top: 0;
  left: 0;
  text-transform: uppercase; }
  .card-date span {
    font-size: 40px; }

/* /events */
/* teacher */
.teacher-info {
  width: 70%;
  bottom: 0;
  right: 0; }

/* footer */
.newsletter {
  background-image: linear-gradient(to right, transparent 50%, #054571 50%);
  margin-bottom: -170px;
  position: relative;
  z-index: 1; }
  .newsletter-block {
    padding-left: 50px; }
    @media (max-width: 575px) {
      .newsletter-block {
        padding-left: 15px; } }
.input-wrapper {
  position: relative; }
  .input-wrapper button {
    position: absolute;
    right: 25px;
    top: 50%;
    transform: translateY(-50%); }

.form-control {
  height: 60px;
  background: #fff;
  border-radius: 0;
  padding-left: 25px; }
  .form-control:focus {
    border-color: #054571;
    box-shadow: none; }

.newsletter-block .form-control {
  height: 55px; }

.bg-footer {
  background-color: #182b45; }

.logo-footer {
  margin-top: -20px;
  display: inline-block; }

.footer {
  border-color: #494a43 !important;
  padding-top: 50px; }
  .footer a:hover {
    color: #cd0000; }

/* /footer */
.filter-controls li {
  cursor: pointer;
  transition: .1s ease; }
  .filter-controls li.active {
    font-weight: 600;
    color: #054571; }
  .filter-controls li:hover {
    color: #054571; }

.tag-list a {
  background: #f8f9fe;
  color: #313131; }
  .tag-list a:hover {
    color: maroon; }
