/* 
  STYLESHEET ORGANIZATION
  ------------------------------------------------------------------
  Rule order is intentionally preserved to avoid changing the cascade.

  Existing sections include:
  01. Audrey font family
  02. Global / typography / links
  03. Layout utilities / custom rows
  04. Header / desktop navigation / mobile navigation
  05. Home page hero / banner
  06. Pagination / galleries / accordions
  07. Sliders / tabs / social components
  08. Content blocks / team / events
  09. Forms / search
  10. Responsive media queries

*/

/* Audrey Font Family
   Upload the entire /fonts/ folder to your WordPress theme root.
*/
.location-card a,
.location-card a:hover,
.location-card a:focus,
.location-card a *,
.location-card a:hover *,
.location-card a:focus * {
    text-decoration: none !important;
}
#past-events-list a,
#past-events-list a:hover,
#past-events-list a:focus,
#past-events-list a:active,
#past-events-list a:hover *,
#past-events-list a:focus * {
  text-decoration: none !important;
}
.image-list a,
.image-list a:hover,
.image-list a:focus,
.image-list a:active,
.image-list a:hover *,
.image-list a:focus * {
  text-decoration: none !important;
}
.event-list a,
.event-list a:hover,
.event-list a:focus,
.event-list a:active,
.event-list a:hover *,
.event-list a:focus * {
  text-decoration: none !important;
}
a:has(> .event-wrapper),
a:has(> .event-wrapper):hover,
a:has(> .event-wrapper):focus,
a:has(> .event-wrapper):active {
  text-decoration: none !important;
}
@font-face {
  font-family: 'Audrey Text';
  src: url('../fonts/text/AudreyText-Regular.woff2') format('woff2'),
         url('../fonts/text/AudreyText-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Audrey Text';
  src: url('../fonts/text/AudreyText-Italic.woff2') format('woff2'),
         url('../fonts/text/AudreyText-Italic.woff') format('woff');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Audrey Text';
  src: url('../fonts/text/AudreyText-Bold.woff2') format('woff2'),
         url('../fonts/text/AudreyText-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Audrey Text';
  src: url('../fonts/text/AudreyText-BoldItalic.woff2') format('woff2'),
         url('../fonts/text/AudreyText-BoldItalic.woff') format('woff');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Audrey Display';
  src: url('../fonts/display/AudreyDisplay-Bold.woff2') format('woff2'),
         url('../fonts/display/AudreyDisplay-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Audrey Display';
  src: url('../fonts/display/AudreyDisplay-BoldItalic.woff2') format('woff2'),
         url('../fonts/display/AudreyDisplay-BoldItalic.woff') format('woff');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

@media only screen and (min-width: 769px) {
  #mega-menu-wrap-primary {
    background: #fffde9!important;
  }
}

.blog-item {
  padding-bottom: 175px;
}

.blog-item .card {
  position: relative;
}

.blog-item .blog-image {
  position: relative;
}

.blog-item .post-card {
  z-index: 10;
  position: absolute;
  background-color: #ffffff;
  width: 85%;
  left: 7.5%;
  margin-top: -50px;
  padding: 35px 25px 0 25px;
  box-shadow: 0px -10px 10px 0px rgba(0,0,0,0.25);
  -webkit-box-shadow: 0px -10px 10px 0px rgba(0,0,0,0.25);
  -moz-box-shadow: 0px -10px 10px 0px rgba(0,0,0,0.25);
}

.blog-item .post-card h3 {
  font-size: 24px;
  line-height: 30px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 700;
  font-style: normal;
  padding: 0!important;
  margin: 0 0 10px 0!important;
  text-transform: none;
  color: #4872ae;
}

.blog-item .post-card  p {
  margin: 0 0 10px 0!important;
}

p.blog-date {
  font-family: 'Audrey Text', sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #333333;
  font-size: 14px;
  margin: 0 0 10px 0!important;
}

.category-name {
  z-index: 100;
  position: absolute;
  text-align: center;
  width: 50%;
  left: 25%;
  padding: 10px;
  margin-top: -72px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  font-style: normal;
  color: #ffffff;
  font-size: 15px;
}

.category-name.category-one {
  background-color: rgba(218,26,0,0.95);
}

.category-name.category-two {
  background-color: rgba(74,114,174,0.95);
}

.category-name.category-three {
  background-color: rgba(255,200,41,0.95);
}

.remodal-close {
  position: absolute;
  top: 0;
  right: 0!important;
  display: block;
  overflow: visible;
  width: 50px!important;
  height: 50px!important;
  margin: 0;
  padding: 0;
  cursor: pointer;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
  text-decoration: none;
  color: #4872ae!important;
  border: 0;
  outline: 0;
  background: transparent;
}

.remodal-close:before {
  font-size: 50px!important;
  line-height: 50px!important;
  width: 50px!important;
}

a.back-link {
  font-family: 'Audrey Text', sans-serif!important;
  font-weight: 400!important;
  font-style: normal!important;
  color: #333333!important;
  text-decoration: none!important;
  border: none;
  background-color: transparent;
  border-bottom: 2px solid #ffffff!important;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
  outline: none;
}

a.back-link:hover {
  color: #4872ae!important;
  text-decoration: none!important;
  border-bottom: 2px solid #4872ae!important;
  cursor: pointer!important;
}

ul.slides {
  padding: 0!important;
  margin: 0!important;
}

.tribe-events .tribe-events-c-search__button,
.tribe-events button.tribe-events-c-search__button {
  background-color: #4872ae !important;
  color: #ffffff !important;
  border-radius: 100px !important;
}

.tribe-events-back,
.tribe-events-nav-pagination,
.tribe-events-calendar-month__calendar-event-tooltip-description {
  display: none !important;
}

.tribe-events .tribe-events-calendar-month__calendar-event-datetime > * {
  font-weight: 700 !important;
  color: #333333 !important;
}

.ics-calendar .events .time .end_time {
  font-weight: 700 !important;
}

.ics-calendar-month-grid .events .time {
  font-size: 75% !important;
}

body {
  font-family: 'Audrey Text', sans-serif;
  font-weight: 400;
  font-style: normal;
  background-color: #fffdea;
}

html, body {
  overflow-x: hidden;
}

body {
  position: relative
}

p {
  font-size: 17px;
  line-height: 25px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 400;
  font-style: normal;
  margin: 0 0 20px 0;
  color: #000000;
}

.large-line-height p {
  line-height: 40px;
}

footer p {
  font-size: 16px;
  line-height: 30px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 400;
  font-style: normal;
  margin: 0;
  color: #000000;
}

strong {
  font-weight: 700!important;
}

strong em {
  font-weight: 700!important;
  font-style: italic!important;
}

ul {
  margin: 0 0 20px 0 !important;
}

li {
  font-size: 17px;
  line-height: 25px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #333333;
}

.bulleted-list-block ul {
  margin-left: 0px;
  padding-left: 15px;
}

.bulleted-list-block ul li {
  padding-bottom: 15px;
}

a:focus,
a:active,
a.active {
  outline: 0 !important;
  text-decoration: none !important;
}

a {
  font-family: 'Audrey Text', sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #000000;
  text-decoration: none;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
}

a:hover {
  color: #000000;
  text-decoration: underline;
}

a.link-text {
  color: #db0007;
  font-size: 16px;
  line-height: 16px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 700;
  font-style: normal;
  margin: 0;
  border-bottom: none;
}

a.link-text-yellow {
  color: #ffc829;
  font-size: 16px;
  line-height: 16px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 700;
  font-style: normal;
  margin: 0;
  border-bottom: none;
}
a.link-text-black {
  color: #000000;
  font-size: 16px;
  line-height: 16px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 700;
  font-style: normal;
  margin: 0;
  border-bottom: none;
}
a.link-text-white {
  color: #ffffff;
  font-size: 16px;
  line-height: 16px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 700;
  font-style: normal;
  margin: 0;
  border-bottom: none;
}

a.link-text i {
  color: #da1a00;
  font-size: 16px;
  line-height: 16px;
  margin: 0 0 0 5px;
}

a.link-text-yellow i {
  color: #ffc829;
  font-size: 16px;
  line-height: 16px;
  margin: 0 0 0 5px;
}
a.link-text-black i {
  color: #000000;
  font-size: 16px;
  line-height: 16px;
  margin: 0 0 0 5px;
}
a.link-text-white i {
  color: #ffffff;
  font-size: 16px;
  line-height: 16px;
  margin: 0 0 0 5px;
}

a.link-text:hover {
  color: #da1a00;
	text-decoration: none!important;
}

a.link-text-yellow:hover {
  color: #ffc829;
}

a.link-text-white:hover {
  color: #ffffff;
}

.link-text,
.link-text-yellow,
.link-text-white {
  padding-left: 0;
}

.link-text:hover:after,
.link-text-yellow:hover:after,
.link-text-white:hover:after {
  margin-left: 15px;
}

.link-text:after {
  content: "";
  background: url(../img/red-arrow.svg) 100% no-repeat;
  background-size: 22px 16px;
  padding-right: 18px;
  transition: margin-left .3s ease;
  margin-left: 5px;
  padding-top: 0px;
}

.link-text-yellow:after {
  content: "";
  background: url(../img/yellow-arrow.svg) 100% no-repeat;
  background-size: 22px 16px;
  padding-right: 18px;
  transition: margin-left .3s ease;
  margin-left: 5px;
  padding-top: 0px;
}

.link-text-white:after {
  content: "";
  background: url(../img/white-arrow.svg) 100% no-repeat;
  background-size: 22px 16px;
  padding-right: 18px;
  transition: margin-left .3s ease;
  margin-left: 5px;
  padding-top: 0px;
}

.back-post a {
  border-bottom: none;
  color: #333333;
}

.back-post a:hover {
  color: #333333;
  text-decoration: underline;
  border-bottom: 2px solid #4872ae;
}

.text-overlay a.link-text {
  color: #ffc829;
  font-size: 16px;
  line-height: 16px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 700;
  font-style: normal;
  margin: 0 0 0 5px;
  border-bottom: none;
}

.text-overlay a.link-text i {
  color: #ffc829;
  font-size: 16px;
  line-height: 16px;
  margin: 0 0 0 5px;
}

.text-overlay a.link-text:hover {
  color: #f8b604;
}

h1 {
  font-size: 60px;
  line-height: 64px;
  font-family: 'Audrey Display', sans-serif;
  font-weight: 800;
  font-style: normal;
  padding: 0;
  margin: 0 0 30px 0;
  color: #000000;
}

h1:after {
  content: "";
  display: block;
  margin: 0 auto;
  width: 40px;
  padding-top: 15px;
  border-bottom: 6px solid #da1a00;
}

#volunteer-details h1 {
  font-size: 60px;
  line-height: 64px;
  font-family: 'Audrey Display', sans-serif;
  font-weight: 800;
  font-style: normal;
  padding: 0;
  margin: 0 !important;
  color: #000000;
}

#volunteer-details h1:after {
  content: "";
  display: block;
  margin: 0 auto;
  width: 40px;
  padding-top: 15px;
  border-bottom: none;
}

#volunteer-details p {
  font-size: 24px;
  line-height: 30px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 400;
  font-style: normal;
}

#post-detail h1 {
  font-size: 56px;
  line-height: 60px;
  font-family: 'Audrey Display', sans-serif;
  font-weight: 700;
  font-style: normal;
  padding: 0;
  margin: 0 0 60px 0;
  text-transform: none;
  color: #000000;
}

#post-detail h1:after {
  border-bottom: none;
}

#simple-header h1 {
  font-size: 60px;
  line-height: 64px;
  font-family: 'Audrey Display', sans-serif;
  font-weight: 700;
  font-style: normal;
  padding: 0;
  margin: 0 0 30px 0;
  color: #000000;
}

#simple-header h1:after {
  content: "";
  display: block;
  margin: 0 auto;
  width: 40px;
  padding-top: 15px;
  border-bottom: 6px solid #db0007;
}

h2 {
  font-size: 30px;
  line-height: 36px;
  font-family: 'Audrey Display', sans-serif;
  font-weight: 700;
  font-style: normal;
  padding: 0;
  margin: 0 0 40px 0;
  text-transform: none;
  color: #000000;
}
h2::after {
    content: "";
    display: block;
    width: 40px;
    padding-top: 15px;
    border-bottom: 6px solid #da1a00;
    margin-left: 0;
    margin-right: 0;
}

/* Center underline when heading is centered */
.text-center h2::after {
    margin-left: auto;
    margin-right: auto;
}
h2[style*="text-align: center"]::after,
h2[style*="text-align:center"]::after {
  margin-left: auto;
  margin-right: auto;
}
h2.accordion-heading {
  color: #000000!important;
}

h2.accordion-heading:after {
  border-bottom: none;
}

h2.reversed {
  font-size: 30px;
  line-height: 36px;
  font-family: 'Audrey Display', sans-serif;
  font-weight: 700;
  font-style: normal;
  padding: 0;
  margin: 0 0 40px 0;
  text-transform: none;
  color: #000000;
}

h2.reversed:after {
  content: "";
  display: block;
  margin: 0 auto;
  width: 40px;
  padding-top: 15px;
  border-bottom: 6px solid #db0007;
}

h2.yellow {
  color: #ffc829;
}

h2.yellow:after {
  border-bottom: 0px solid #da1a00;
}

h2.gray {
  color: #000000;
  font-size: 42px;
}

h2.plain-heading {
  color: #000000;
  margin: 0 0 10px 0;
}

h2.plain-heading:after {
  border-bottom: 0px solid #da1a00;
}

.text-image-block h2 {
  font-size: 50px !important;
  line-height: 54px !important;
  font-family: 'Audrey Display', sans-serif!important;
  font-weight: 700 !important;
  font-style: normal !important;
  padding: 0 !important;
  margin: 0 0 30px 0 !important;
  color: #000000 !important;
}

.text-image-block h2:after {
  content: "" !important;
  display: block !important;
  margin: 0 auto !important;
  width: 40px !important;
  padding-top: 15px !important;
  border-bottom: none !important;
}

h3 {
  font-size: 32px;
  line-height: 40px;
  font-family: 'Audrey Display', sans-serif;
  font-weight: 700;
  font-style: normal;
  padding: 0;
  margin: 0 0 15px 0;
  text-transform: none;
  color: #000000;
}

.upcoming-events-post h3,
.past-events-post h3,
.opps-posts h3 {
  color: #000000 !important;
}

#quicklinks h2 {
  color: #000000 !important;
}

#donor-posts h3,
#donor-posts h3,
#volunteer-posts h3,
#family-posts h3,
#all-posts h3 {
  color: #000000;
}

.locations h3 {
  font-size: 25px;
  line-height: 30px;
  font-family: 'Audrey Display', sans-serif;
  font-weight: 700;
  font-style: normal;
  padding: 0;
  margin: 0 0 5px 0;
  text-transform: none;
  color: #000000;
}

h4 {
  font-size: 18px;
  line-height: 24px;
  font-family: 'Audrey Display', sans-serif;
  font-weight: 700;
  font-style: normal;
  padding: 0;
  margin: 0 0 30px 0;
  text-transform: none;
  color: #000000;
}

.yellow h4 {
  color: #000000;
}

#quicklinks h4 {
  color: #000000;
}

h5 {
  font-family: 'Audrey Display', sans-serif;
  font-weight: 600;
  font-style: normal;
  text-transform: none;
  font-size: 20px;
  line-height: 30px;
  padding: 0;
  margin: 0 0 0 0;
  color: #000000;
}

h6 {
  font-family: 'Audrey Display', sans-serif;
  font-weight: 600;
  font-style: normal;
  text-transform: none;
  font-size: 18px;
  line-height: 36px;
  padding: 0;
  margin: 0 0 0 0;
  color: #000000;
}

h5.black {
  color: #000000;
}

.prehead {
  font-family: 'Audrey Text', sans-serif;
  font-weight: 600;
  font-style: normal;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 20px;
  line-height: 34px;
  padding: 0;
  margin: 0 0 10px 0;
  color: #fa3b1c;
}

.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white p {
  color: #ffffff !important;
}
h2.text-cream {
  color: #fffdea !important;
}
h2.text-cream::after {
    margin-left: auto;
  margin-right: auto;
}
.center {
  text-align: center;
}

.mobile-center {
  text-align: center;
}

.desktop-visible {
  display: none;
}

.mobile-visible {
  display: block;
}

.right {
  text-align: right;
}

.left {
  text-align: left;
}

.clear {
  clear: both;
}

.light-text,
.light-text p,
.light-text h2,
.light-text h3,
.light-text h4,
.light-text h5,
.light-text strong {
  color: #ffffff !important;
}

.light-text a {
  color: #ffffff !important;
  text-decoration: underline;
}

.dark-text,
.dark-text p,
.dark-text h2,
.dark-text h3,
.dark-text h4,
.dark-text h5,
.dark-text strong {
  color: #000000 !important;
}

.large-pad {
  padding: 75px 0 200px 0;
}

.px-5-flex {
  padding-right: 1rem !important;
  padding-left: 1rem !important;
}

.pb-6, .py-6 {
  padding-bottom: 4rem !important;
}

.pt-6, .py-6 {
  padding-top: 4rem !important;
}

.px-6 {
  padding-left: 4rem !important;
  padding-right: 4rem !important;
}

.mb-6, .my-6 {
  margin-bottom: 4rem !important;
}

.mt-6, .my-6 {
  margin-top: 4rem !important;
}

.rounded {
  border-radius: 1rem !important;
}

/* Custom Rows */

.full-row {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
  display: block;
}

.full-row.cream {
  background-color: #fffdea;
}

.full-row.purple {
  background-color: #d6c9fe;
}

.purple-top {
  position: relative;
  width: 100%;
  margin-top: -60px;
  overflow: visible;
  line-height: 0;
  z-index: 2;
}

.purple-top img {
  display: block;
  width: 100vw;
  max-width: none;
  height: auto;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}

.full-row.white {
  background-color: #ffffff;
}

.full-row.blue {
  background-color: #8ee7f8;
}

.full-row.gray {
  background-color: #f6f6f6;
}

.full-row.yellow {
  background-color: #ffc829;
}
.full-row.lavender {
  background-color: #c9c4ff;
}
.full-row.light-yellow {
  background-color: #fff5d9;
}

.yellow-bg {
  background-color: #ffc428
}

.cta-mask {
  background-color: #ffc428;
  /* use your existing yellow */
  -webkit-mask-image: url('../img/cta.svg');
  mask-image: url('../img/cta.svg');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}

.light-yellow-bg {
  background-color: #ffc428;
}

.purple-bg {
  background-color: #dccffc;
  border-radius: 30px;
}

.light-purple-bg {
  background-color: #d6cffc;
}

.gray-bg {
  background-color: #d0c9ff;
}
.lavender-bg {
  background-color: #d0c9ff;
}
.rounded-corners {
	border-radius: 30px;
}
/* No Row Gutters */

.row.no-gutters {
  margin-right: 0;
  margin-left: 0;
}

.row.no-gutters > [class^="col-"], .row.no-gutters > [class*=" col-"] {
  padding-right: 0;
  padding-left: 0;
}

/* No Container Padding */

.container-fluid.no-padding {
  padding-right: 0;
  padding-left: 0;
}

.container.no-padding {
  padding-right: 0;
  padding-left: 0;
}

.three-columns {
  margin: 0 50px;
}

.three-columns .border-right {
  border-right: none !important;
  border-bottom: 1px solid #4872ae !important;
}

/* Section */

#parallax p {
  font-size: 28px;
  line-height: 38px;
  font-weight: 600;
}

.parallax-icon {
  margin: 0 0 20px 0;
}

.parallax-icon img {
  width: 30px;
  height: auto;
}

#parallax {
  background-attachment: scroll !important;
}

/* Top Header */

#site-header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
  transition: all .5s ease;
}

#site-header.hide {
  top: -220px;
}

/* Desktop Navigation */

#notification-header {
  display: block;
  width: 100%;
  height: 60px;
  background-color: #8ee7f8;
}

#desktop-header {
  width: 100%;
  display: none;
  z-index: 98;
}

@media (min-width: 768px) {
  #desktop-header {
    top: 0;
  }
  #notification-header + #desktop-header {
    top: 60px;
    /* adjust to actual notification height */
  }
}

#desktop-header-internal {
  width: 100%;
  display: none;
  position: fixed;
  z-index: 98;
}

.site-brand {
  padding: 15px 0 15px 0;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
}

.site-brand img {
  width: 225px;
  height: auto;
  display: block;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
}

#site-navigation {
  width: 100%;
  display: block;
  float: left;
}

ul#menu-utility {
  list-style: none;
  font-family: 'Audrey Text', sans-serif;
  font-style: normal;
  font-weight: 600;
  text-transform: none;
  padding: 0;
  margin: 0 0 0 0;
  display: block;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
  text-align: right;
  float: right;
}

ul#menu-utility li {
  float: left;
  position: relative;
}

ul#menu-utility li a {
  color: #000000;
  font-size: 15px;
  font-weight: 400;
  display: block;
  line-height: 30px;
  text-decoration: none;
  margin: 10px 5px;
  padding: 0px 5px;
  letter-spacing: 0px;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
  border-bottom: none;
}

ul#menu-utility li a:hover,
ul#menu-utility li.current-menu-item a,
ul#menu-utility li.current_page_item a {
  color: #db0007;
  border-bottom: none!important;
}

ul#menu-utility li.yellow-tab a {
  color: #000000;
  font-size: 15px;
  font-weight: 600;
  display: block;
  line-height: 30px;
  text-decoration: none;
  background-color: #f5bf44;
  margin: 0 10px 0 10px;
  border-radius: 0 0 12px 12px;
  padding: 10px 20px;
  letter-spacing: 0px;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
  border-bottom: none !important;
}

ul#menu-utility li.yellow-tab a:hover, ul#menu-utility li.current-menu-item.yellow-tab a {
  color: #000000;
  text-decoration: none;
  background-color: #8ee7f8;
  border-bottom: none !important;
}

ul#menu-utility-mobile {
  list-style: none;
  font-family: 'Audrey Text', sans-serif;
  font-style: normal;
  font-weight: 600;
  text-transform: none;
  padding: 0;
  margin: 0 0 0 0;
  display: block;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
  text-align: right;
  float: right;
}

ul#menu-utility-mobile li {
  float: left;
  position: relative;
}

ul#menu-utility-mobile li a {
  display: block;
  line-height: 40px;
  text-decoration: none;
  margin: 0;
  padding: 0;
  letter-spacing: 0px;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
}

ul#menu-utility-mobile li.yellow-tab a {
  color: #000000;
  font-size: 13px;
  font-weight: 600;
  display: block;
  line-height: 40px;
  text-decoration: none;
  background-color: #ffc829;
  margin: 0;
  border-radius: 0 0 10px 10px;
  padding: 0px 20px;
  letter-spacing: 0px;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
  border-bottom: none !important;
}

ul#menu-utility-mobile li.yellow-tab a:hover {
  color: #000000;
  background-color: #f8b604;
  border-bottom: none !important;
}

ul#mega-menu-primary {
  margin: 0px 0px 0px 0px !important;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-453 > a.mega-menu-link,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-450 > a.mega-menu-link {
  border-bottom: none;
  margin: 5px 5px;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-453 > a.mega-menu-link:hover,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-450 > a.mega-menu-link:hover,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-453.mega-current_page_item > a.mega-menu-link,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-450.mega-current_page_item > a.mega-menu-link {
  border-bottom: none;
  margin: 5px 5px;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
  line-height: 40px;
  height: 40px;
  padding: 0px 10px 0px 10px;
  margin: 0 5px;
  vertical-align: baseline;
  width: auto;
  display: block;
  color: #000000;
  font-size: 15px;
  text-align: center;
  float: left;
  font-family: 'Audrey Text', sans-serif;
  font-style: normal;
  font-weight: 600;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus {
  background-color: transparent!important;
  color: #db0007;
  font-size: 15px;
  margin: 0 5px;
  text-align: center;
  float: left;
  font-family: 'Audrey Text', sans-serif;
  font-style: normal;
  font-weight: 600 !important;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-toggle-on > a.mega-menu-link {
  background-color: transparent!important;
  color: #000000;
  font-size: 15px;
  text-align: center;
  float: left;
  font-family: 'Audrey Text', sans-serif;
  font-style: normal;
  font-weight: 600 !important;
}

.custom-html-widget {
  padding: 20px 0px !important;
}

div.textwidget.custom-html-widget div.feature-box div.feature-logo img {
  max-width: 50% !important;
  height: auto !important;
}

#utility-navigation {
  display: block;
  float: right;
  padding: 0;
  margin: 0;
  width: 100%;
}

#main-navigation {
  display: block;
  float: right;
  padding: 0;
  margin: 38px 0 0 0;
  width: 100%;
}

ul.mega-sub-menu {
  margin: 50px 0 0 0 !important;
}

ul.mega-sub-menu li.mega-menu-row ul.mega-sub-menu {
  margin: 0 !important;
}

li.mega-blue-tab a.mega-menu-link {
  color: #000000 !important;
  display: block;
  line-height: 50px !important;
  height: 50px !important;
  text-decoration: none;
  background-color: #8ee7f8 !important;
  margin: 0px 0px 0px 2px !important;
  border-radius: 12px 12px 0 0 !important;
  padding: 0px 25px !important;
  letter-spacing: 0px !important;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
}

/* Blue tab - normal hover */

body #mega-menu-wrap-primary #mega-menu-primary > li.blue-tab:hover > a.mega-menu-link {
  color: #000000 !important;
  background-color: #ffbc0d !important;
}

/* Blue tab - keep active while mega menu is open */

body #mega-menu-wrap-primary #mega-menu-primary > li.blue-tab.mega-toggle-on > a.mega-menu-link {
  color: #000000 !important;
  background-color: #ffbc0d !important;
}

/* Current page */
.upcoming-events-post > a,
.upcoming-events-post > a:hover,
.upcoming-events-post > a:focus,
.upcoming-events-post > a:active,
.full-row.purple > .container > a,
.full-row.purple > .container > a:hover,
.full-row.purple > .container > a:focus,
.full-row.purple > .container > a:active {
  text-decoration: none !important;
}
body #mega-menu-wrap-primary #mega-menu-primary > li.blue-tab.mega-current-menu-item > a.mega-menu-link,
body #mega-menu-wrap-primary #mega-menu-primary > li.blue-tab.mega-current-menu-ancestor > a.mega-menu-link {
  color: #000000 !important;
  background-color: #ffbc0d !important;
}
li.mega-red-tab a.mega-menu-link {
  color: #ffffff !important;
  font-size: 15px;
  font-weight: 600;
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 10px;
  line-height: 50px !important;
  height: 50px !important;
  text-decoration: none;
  background-color: #db0007 !important;
  margin: 0 0 0 2px !important;
  border-radius: 12px 12px 0 0 !important;
  padding: 0 25px !important;
  letter-spacing: 0 !important;
  transition: all .3s;
}

li.mega-red-tab a.mega-menu-link::after {
  content: "" !important;
  display: block !important;
  width: 18px;
  height: 16px;
  flex: 0 0 18px;
  background: url("../img/new-heart.svg") center / contain no-repeat !important;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-red-tab a.mega-menu-link:hover,
li.mega-current-menu-item.mega-red-tab a.mega-menu-link {
  color: #ffffff !important;
  background-color: #91187d !important;
}
li.header-btn a {
  font-family: 'Audrey Text', sans-serif;
  font-weight: 300 !important;
  display: inline-block;
  text-align: center;
  background-color: #fa4326;
  color: #ffffff;
  text-transform: uppercase;
  min-width: 125px;
  letter-spacing: 1px !important;
  -webkit-border-radius: 100px;
  -moz-border-radius: 100px;
  border-radius: 100px;
  padding: 0px 30px 0px 30px !important;
  margin: 0 0 0 40px !important;
}

li.header-btn a:hover {
  background-color: #ffffff !important;
  color: #fa4326 !important;
}

/* Mobile Navigation */

#mobile-header {
  width: 100%;
  display: block;
  position: fixed;
  z-index: 98;
  box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.15);
}

.site-brand-mobile {
  padding: 15px 0;
  margin: 0 10px;
  text-align: center;
  width: 100%;
}

.site-brand-mobile img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0;
}

a#mobile-menu-toggle, a#mobile-menu-toggle:hover {
  border-bottom: none !important;
}

#mobile-menu-toggle {
  display: block;
  cursor: pointer;
  padding: 0;
  margin: 45px 0 0 0;
  width: 40px;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
}

#mobile-menu-toggle div {
  width: 40px;
  margin: 0 auto;
  height: 40px;
  position: relative;
}

#mobile-menu-toggle span {
  display: inline-block;
  width: 40px;
  height: 2px;
  border-radius: 0px;
  background: #666666;
  position: absolute;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
  -webkit-transform-origin: center;
  -moz-transform-origin: center;
  transform-origin: center;
  margin: 0;
  z-index: 9999;
}

#mobile-menu-toggle span.top {
  top: 0px;
  width: 40px;
}

#mobile-menu-toggle span.middle {
  top: 10px;
  width: 40px;
}

#mobile-menu-toggle span.bottom {
  top: 20px;
  width: 40px;
}

#mobile-menu-toggle.menu-is-active span {
  -webkit-transition: -webkit-transform 0.5s ease-in-out 0.3s, top 0.25s ease-in-out, opacity 0.25s ease-in-out;
  -moz-transition: -moz-transform 0.5s ease-in-out 0.3s, top 0.25s ease-in-out, opacity 0.25s ease-in-out;
  transition: transform 0.5s ease-in-out 0.3s, top 0.25s ease-in-out, opacity 0.25s ease-in-out;
  background: #666666;
}

#mobile-menu-toggle.menu-is-active {
  -webkit-transition: -webkit-transform 0.5s ease-in-out 0.3s, top 0.25s ease-in-out, opacity 0.25s ease-in-out;
  -moz-transition: -moz-transform 0.5s ease-in-out 0.3s, top 0.25s ease-in-out, opacity 0.25s ease-in-out;
  transition: transform 0.5s ease-in-out 0.3s, top 0.25s ease-in-out, opacity 0.25s ease-in-out;
  background: #ffffff;
}

#mobile-menu-toggle.menu-is-active span.top, #toggle-menu.menu-is-active span.middle {
  top: 10px;
  width: 35px;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  transform: rotate(135deg);
}

#mobile-menu-toggle.menu-is-active span.middle {
  opacity: 0;
}

#mobile-menu-toggle.menu-is-active span.bottom {
  top: 10px;
  width: 35px;
  -webkit-transform: rotate(225deg);
  -moz-transform: rotate(225deg);
  transform: rotate(225deg);
}

#mobile-nav-container {
  background: #ffffff;
  z-index: 900;
  overflow: auto;
  padding: 0;
  color: #000000;
  font-family: 'Audrey Text', sans-serif;
  font-style: normal;
  font-weight: 700;
  display: none;
  position: fixed;
  top: 95px;
  bottom: 0;
  width: 100%;
}

#mobile-nav-container-notification {
  background: #ffffff;
  z-index: 900;
  overflow: auto;
  padding: 0;
  color: #000000;
  font-family: 'Audrey Text', sans-serif;
  font-style: normal;
  font-weight: 700;
  display: none;
  position: fixed;
  top: 173px;
  bottom: 0;
  width: 100%;
}

#menu-mobile-menu i {
  font-size: 22px;
}

ul#menu-mobile-menu {
  width: 100%;
  list-style: none;
  margin: 40px 20px;
  padding: 40px;
  text-align: left;
}

ul#menu-mobile-menu li {
  width: 100%;
  border-top: 1px solid #ffffff;
}

ul#menu-mobile-menu > li a {
  display: block;
  width: 100%;
  font-size: 28px;
  line-height: 30px;
  padding: 10px 0px;
  color: #4f72a9;
  font-family: 'Audrey Text', sans-serif;
  font-style: normal;
  font-weight: 700;
  border-bottom: none !important;
}

ul#menu-mobile-menu > li a {
  display: block;
  width: 100%;
  font-size: 28px;
  line-height: 34px;
  padding: 10px 0px;
  color: #4f72a9;
  font-family: 'Audrey Text', sans-serif;
  font-style: normal;
  font-weight: 700;
}

ul#menu-mobile-menu > li:nth-child(2) a, ul#menu-mobile-menu > li:nth-child(3) a {
  border-top: #4f72a9 dashed 2px !important;
}

ul#menu-mobile-menu > li a.active-menu {
  color: #ed4e2e;
}

ul#menu-mobile-menu > li a:hover {
  color: #335c97;
  border-bottom: none !important;
  cursor: pointer !important;
}

#menu-mobile-menu ul.sub-menu {
  display: none;
  padding: 0px 30px 30px 10px;
}

#menu-mobile-menu ul.sub-menu li {
  display: block;
  width: 100%;
  border-top: none !important;
}

#menu-mobile-menu ul.sub-menu li a {
  color: #4f72a9;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 600 !important;
  text-transform: uppercase;
  font-size: 18px;
  line-height: 25px;
  padding: 5px 0;
  display: block;
  vertical-align: middle;
  min-width: 100%;
  border-top: none !important;
}

#menu-mobile-menu ul.sub-menu li a:hover {
  color: #335c97;
  border-bottom: none !important;
  cursor: pointer !important;
}

body.noscroll {
  overflow: hidden;
  position: fixed;
}

.header-fix {
  width: 100%;
  display: block;
  height: 155px;
}

.header-fix-notification-bar-on {
  width: 100%;
  display: block;
  height: 218px;
}

.notification-slide {
  padding: 17px 0;
}

.notification-divider {
  color: #000000;
  padding: 0 10px;
}

.flexslider-2 li span.copy {
  color: #000000;
  font-weight: 700;
}

.flex-direction-nav {

}

a.notification-link {
  color: #000000;
  border: none!important;
}

.overlay {
  width: 100%;
  height: 100%;
  background: rgb(27, 49, 79);
  background: linear-gradient(90deg, rgba(27, 49, 79, 0.75) 0%, rgba(27, 49, 79, 0.1) 70%);
  z-index: 100;
  position: absolute;
  top: 0;
}

.overlay2 {
  width: 100%;
  height: 100%;
  background: rgba(72, 114, 174, 0.85);
  z-index: 100;
  position: absolute;
  top: 0;
}

.overlay-content {
  position: relative;
  z-index: 200;
}

.program-icon {
  padding: 0 25px;
  margin: 0 0 25px 0;
}

.program-icon img {
  max-width: 50%;
  height: auto;
}

.program-number {
  font-size: 46px;
  line-height: 46px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 700;
  font-style: normal;
  padding: 0;
  margin: 0 0 5px 0;
  text-transform: none;
  color: #000000;
}

.program-detail {
  font-size: 18px;
  font-weight: 700;
}

/* =========================================================
   Home Page Hero Slider
   ========================================================= */

.home-hero {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: #c9c4ff;
}

.home-hero .flexslider {
  position: relative;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.home-hero .flexslider .flex-direction-nav {
display: none;
}
.home-hero .slides {
  margin: 0;
  padding: 0;
}

.home-hero .slides > li {
  position: relative;
  min-height: clamp(650px, 49.6vw, 1015px);
  overflow: hidden;
  background: #d0c9ff;
}

/* =========================================================
   ANNOUCEMENT BANNER
   ========================================================= */

.lights-of-love-banner {
  background: linear-gradient(90deg, #ffbc0d 0%, #ffba08 100%);
  padding: 3.5rem 0;
}

.lights-of-love-banner__container {
  max-width: 1180px;
}

.lights-of-love-banner__panel {
  background: #fffde9;
  border-radius: 30px;
  padding: 40px;
}

.lights-of-love-banner__image img {
  display: inline-block;
  width: auto;
  max-width: 95%;
  max-height: 220px;
	padding: 0 20px;
}

.lights-of-love-banner__title {
font-size: 30px;
    line-height: 36px;
    font-family: 'Audrey Text', sans-serif;
    font-weight: 700;
    font-style: normal;
    padding: 0;
    margin: 0 0 40px 0;
    text-transform: none;
    color: #000000;
}

.lights-of-love-banner__content {
font-size: 17px;
    line-height: 25px;
    font-family: 'Audrey Text', sans-serif;
    font-weight: 400;
    font-style: normal;
    margin: 0;
    color: #000000;
}

.lights-of-love-banner__copy {
  display: inline;
}

.lights-of-love-banner__link {
  display: inline-flex;
  align-items: center;
  margin-left: 1rem;
  color: #e60012;
  font-size: 1.25rem;
  line-height: 1.2;
  font-weight: 700;
  white-space: nowrap;
  text-decoration: none;
}

.lights-of-love-banner__link:hover,
.lights-of-love-banner__link:focus {
  color: #b8000e;
  text-decoration: none;
}

.lights-of-love-banner__arrow {
  margin-left: .35rem;
  font-size: 1.8rem;
  line-height: 1;
  transform: translateY(-1px);
}

.lights-of-love-banner__placeholder {
  padding: 2rem 1rem;
  border: 1px dashed #999;
  color: #666;
  font-size: .875rem;
}

@media (max-width: 1199.98px) {
  .lights-of-love-banner__panel {
    padding: 2.5rem 3rem;
  }

  .lights-of-love-banner__title {
    font-size: 2.5rem;
  }

  .lights-of-love-banner__content {
    font-size: 1.4rem;
  }
}

@media (max-width: 767.98px) {
  .lights-of-love-banner {
    padding: 2rem 0;
  }

  .lights-of-love-banner__panel {
    border-radius: 28px;
    padding: 2rem 1.5rem;
    text-align: center;
  }

  .lights-of-love-banner__image img {
    max-height: 180px;
  }

  .lights-of-love-banner__title {
    font-size: 2rem;
  }

  .lights-of-love-banner__content {
    font-size: 1.2rem;
  }

  .lights-of-love-banner__link {
    display: flex;
    justify-content: center;
    width: max-content;
    margin: 1rem auto 0;
  }
}

/* =========================================================
   Masked Hero Image
   ========================================================= */

.home-hero .slide-background {
  position: absolute;
  /* Always lock image to browser's bottom-right corner */
  right: 0;
  bottom: 0;
  /*
   * Approximately matches the screenshot:
   * 1070px wide on a 2047px viewport.
   */
  width: 50vw;
  /*
   * Preserve the exact aspect ratio of the supplied SVG:
   * viewBox="0 0 820 694.7"
   */
  aspect-ratio: 820 / 694.7;
  height: auto;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  /*
   * CHANGE THIS PATH to wherever the SVG lives in your theme.
   *
   * Example:
   * /wp-content/themes/YOUR-THEME/assets/images/RMHC_Photo_Mask_Thumb.svg
   */
  -webkit-mask-image: url("https://rmhctriangle.org/wp-content/uploads/2026/10/hero-mask.svg");
  mask-image: url("https://rmhctriangle.org/wp-content/uploads/2026/10/hero-mask.svg");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: right bottom;
  mask-position: right bottom;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  z-index: 1;
}

/* =========================================================
   Hero Content
   ========================================================= */

.home-hero .slide-content {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 0;
  display: flex;
  align-items: center;
  transform: none;
}

.home-hero .slide-content .container {
  position: relative;
  z-index: 2;
}

.home-hero .slide-copy {
  position: relative;
}

/* =========================================================
   Main Heading
   ========================================================= */

.home-hero .slide-content h1 {
  max-width: 650px;
  padding: 0;
  margin: 0 0 clamp(30px, 3vw, 55px);
  color: #000000;
  font-family: 'Audrey Display', sans-serif;
  font-size: clamp(54px, 4.15vw, 85px);
  font-weight: 700;
  font-style: normal;
  line-height: 1.08;
  letter-spacing: -0.035em;
  text-transform: none;
  text-shadow: none;
}

.home-hero .slide-content h1:after {
  display: none;
  content: none;
}

/* =========================================================
   Secondary Copy
   ========================================================= */

.home-hero .slide-content .slide-eyebrow {
  max-width: 650px;
  padding: 0;
  margin: 0 0 42px;
  color: #000000;
  font-family: 'Audrey Text', sans-serif;
  font-size: clamp(22px, 1.55vw, 32px);
  font-weight: 700;
  font-style: normal;
  line-height: 1.2;
  text-shadow: none;
}

/* =========================================================
   Button
   ========================================================= */

.home-hero .slide-content .button-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 64px;
  padding: 15px 34px;
  background: #db0007;
  color: #ffffff;
  border: 0;
  border-radius: 10px;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 600;
  text-decoration: none;
  transition: background-color 0.2s ease,
    transform 0.2s ease;
}

.home-hero .slide-content .button-primary:hover,
.home-hero .slide-content .button-primary:focus {
  color: #ffffff;
  background: #91187d;
  text-decoration: none;
  transform: translateY(-1px);
}

/* =========================================================
   FlexSlider Cleanup
   ========================================================= */

.home-hero .flex-direction-nav,
.home-hero .flex-control-nav {
  z-index: 5;
}

/* =========================================================
   Large Screens
   ========================================================= */

@media (min-width: 1600px) {
  .home-hero .slide-background {
    /*
     * Keeps the masked image at roughly the same proportion
     * as your 2047px-wide reference image.
     */
    width: 50vw;
  }
}

/* =========================================================
   Laptop / Smaller Desktop
   ========================================================= */

@media (max-width: 1199px) {
  .home-hero .slides > li {
    min-height: 680px;
  }
  .home-hero .slide-background {
    width: 50vw;
  }
  .home-hero .slide-content h1 {
    max-width: 560px;
  }
  .home-hero .slide-copy {
    max-width: 52%;
  }
}

/* =========================================================
   Tablet
   ========================================================= */

@media (max-width: 991px) {
  .home-hero .slides > li {
    min-height: 720px;
  }
  .home-hero .slide-content {
    padding-top: 55px;
  }
  .home-hero .slide-copy {
    max-width: 55%;
  }
  .home-hero .slide-background {
    width: 64vw;
  }
  .home-hero .slide-content h1 {
    font-size: clamp(46px, 6vw, 64px);
  }
  .home-hero .slide-content .slide-eyebrow {
    font-size: 22px;
  }
}

/* =========================================================
   Mobile
   ========================================================= */

@media (max-width: 767px) {
  .home-hero .slides > li {
    min-height: 760px;
    padding-bottom: 0;
  }
  .home-hero .slide-content {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    display: block;
    padding: 40px 0 0;
  }
  .home-hero .slide-copy {
    max-width: 100%;
  }
  .home-hero .slide-content h1 {
    max-width: 100%;
    margin-bottom: 22px;
    font-size: clamp(42px, 12vw, 58px);
    line-height: 1.02;
  }
  .home-hero .slide-content .slide-eyebrow {
    margin-bottom: 25px;
    font-size: 20px;
  }
  /*
   * On mobile the image remains attached to the bottom-right,
   * but gets much larger relative to the viewport.
   */
  .home-hero .slide-background {
    width: 92vw;
    max-width: none;
  }
}

/* =========================================================
   Small Mobile
   ========================================================= */

@media (max-width: 480px) {
  .home-hero .slides > li {
    min-height: 720px;
  }
  .home-hero .slide-background {
    width: 105vw;
    right: -8vw;
  }
  .home-hero .slide-content h1 {
    font-size: 44px;
  }
  .home-hero .slide-content .button-primary {
    min-height: 56px;
    padding: 13px 22px;
    font-size: 16px;
  }
}

/* Banner */

#banner {
  position: relative;
  z-index: 1;
  overflow: visible;
  margin-bottom: 40px;
}

.banner-content {
  position: relative;
  overflow: visible;
}

.banner-image-mask {
  position: relative;
  width: calc(100% + 160px);
  margin-left: -80px;
  aspect-ratio: 1350 / 450;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center 65%;
  -webkit-mask-image: url('../img/banner-mask.svg');
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  mask-image: url('../img/banner-mask.svg');
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
}

#banner-text h1 {
  font-family: 'Audrey Display', sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: 58px !important;
  line-height: 65px !important;
  color: #000000 !important;
  padding: 0;
  margin: 0 0 10px 0;
}

#banner-text h1:after {
  border-bottom: none !important;
}

#banner-text h1 span {
  display: block;
  font-family: 'Audrey Display', sans-serif;
  font-weight: 600;
  font-style: normal;
  text-transform: uppercase;
  font-size: 18px !important;
  line-height: 18px !important;
  color: #000000 !important;
  padding: 0;
  margin: 0 0 10px 0;
}

.flex-direction-nav a {
  border-bottom: none !important;
}

.featured-event-photo {
  display: block;
  overflow: hidden;
  border-radius: 20px;
}

.featured-event-photo img, #featured-event .featured-event-photo img {
  display: block;
  transition: transform .75s;
}

.featured-event-photo:hover img, #featured-event:hover .featured-event-photo img {
  transform: scale(1.1);
  transform-origin: 50% 50%;
}

.single-event-photo {
  display: block;
  overflow: hidden;
  border-radius: 20px;
}

.single-event-photo img, .single-event-post .single-event-photo img {
  display: block;
  transition: transform .75s;
}

.single-event-photo:hover img, .single-event-post:hover .single-event-photo img {
  transform: scale(1.1);
  transform-origin: 50% 50%;
}

.post-image {
  display: block;
  overflow: hidden;
  border-radius: 20px;
}

.post-image img, .all-posts .post-image img {
  display: block;
  transition: transform .75s;
}

.post-image:hover img, .all-posts:hover .post-image img {
  transform: scale(1.1);
  transform-origin: 50% 50%;
}

.opps-image {
  display: block;
  overflow: hidden;
  border-radius: 20px;
}

.opps-image img, .opps-posts .opps-image img {
  display: block;
  transition: transform .75s;
}

.opps-image:hover img, .opps-posts:hover .opps-image img {
  transform: scale(1.1);
  transform-origin: 50% 50%;
}

.volunteer-posts .post-image img {
  display: block;
  transition: transform .75s;
}

.volunteer-posts:hover .post-image img {
  transform: scale(1.1);
  transform-origin: 50% 50%;
}

.donor-posts .post-image img {
  display: block;
  transition: transform .75s;
}

.donor-posts:hover .post-image img {
  transform: scale(1.1);
  transform-origin: 50% 50%;
}

.family-post .post-image img {
  display: block;
  transition: transform .75s;
}

.family-post:hover .post-image img {
  transform: scale(1.1);
  transform-origin: 50% 50%;
}

.featured-post-image {
  display: block;
  overflow: hidden;
  border-radius: 20px;
}

.featured-post-image img, #featured-post .featured-post-image img {
  display: block;
  transition: transform .75s;
}

.featured-post-image:hover img, #featured-post:hover .featured-post-image img {
  transform: scale(1.1);
  transform-origin: 50% 50%;
}

.location-item {
  display: block;
  overflow: hidden;
  border-radius: 30px;
}

.location-item img, .location-card .location-item img {
  display: block;
  transition: transform .75s;
}

.location-item:hover img, .location-card:hover .location-item img {
  transform: scale(1.1);
  transform-origin: 50% 50%;
}

html {
  scroll-behavior: smooth;
}

.mega-menu-row {
  max-width: 1140px !important;
}

.opp-wrap select, .tabbable select {
  width: 100% !important;
  border: none !important;
  height: 44px;
  color: #4872ae;
  font-size: 15px;
  text-transform: uppercase;
  font-weight: 600;
  background-color: #ffffff !important;
}

*:focus {
  outline: none !important;
}

.single-volunteer button {
  font-family: 'Audrey Text', sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #333333;
  text-decoration: none;
  border: none;
  background-color: transparent;
  border-bottom: 2px solid #ffffff;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
  outline: none;
}

.single-volunteer button:hover {
  color: #4872ae;
  text-decoration: none;
  border-bottom: 2px solid #4872ae;
  cursor: pointer;
}

.tabbable {
  display: block;
  width: 100%;
  float: left;
  padding: 0;
  margin: 0;
}

ul.nav {
  list-style: none;
  width: 100%;
  margin: 0;
  border-bottom: 2px dashed #7eda49;
  float: left;
  padding: 9px 0px 7px 0px;
}

ul.nav li.tab-selector {
  list-style: none;
  float: left;
}

ul.nav li.tab-selector a {
  color: #000000;
  font-size: 15px;
  text-transform: uppercase;
  font-weight: 600;
  border-bottom: 4px solid transparent;
  padding: 10px 20px;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
}

ul.nav li.tab-selector a:hover, ul.nav li.tab-selector a.active {
  color: #000000;
  font-size: 15px;
  text-transform: uppercase;
  font-weight: 600;
  border-bottom: 4px solid #7eda49;
  padding: 10px 20px;
}

.red-heart {
  background: url(../img/large-heart-icon-red.png) no-repeat center center;
  background-size: cover;
  width: 110px;
  height: 110px;
  position: absolute;
  left: 90px;
  bottom: -10px;
  z-index: 99;
}

html.pum-open.pum-open-overlay.pum-open-scrollable {
  position: fixed !important;
  height: 100% !important;
  width: 100% !important;
  top: 0 !important;
  left: 0 !important;
}

/* Pagination */

.pagination {
  clear: both;
  padding: 20px 0;
  position: relative;
  line-height: 30px;
}

.pagination span {
  display: block;
  float: left;
  text-decoration: none;
  width: auto;
  text-transform: uppercase;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 1px;
  line-height: 30px;
  margin: 0 0 0 5px;
}

.pagination a {
  width: 30px;
  height: 30px;
  line-height: 30px;
  border-radius: 30px;
  text-align: center;
  font-weight: 700;
  margin: 0 0 0 5px;
  background: #efefef;
  border-bottom: none !important;
}

.pagination a:hover {
  color: #fff;
  background: #4872ae;
  border-bottom: none !important;
}

.pagination .current {
  width: 30px;
  height: 30px;
  line-height: 30px;
  border-radius: 30px;
  text-align: center;
  background: #4872ae;
  color: #fff;
  font-weight: 700;
  margin: 0 0 0 5px;
}

.table-bordered td, .table-bordered th {
  border: 1px solid #80807f !important;
}

.contact-photo {
  width: 75%;
  margin: 0 auto;
}

/* Gallery/Filtering */

.opp-wrap, #opp-list {
  overflow: hidden;
}

#filters {
  margin: 0 0 20px 0;
  padding: 0;
  list-style: none;
}

#filters li {
  float: left;
}

#filters li span {
  display: block;
  text-decoration: none;
  transition: all ease-in-out 0.25s;
  text-align: center;
  cursor: pointer;
  padding: 15px 20px;
  margin: 0px 2px -1px 0;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #333333;
  border-radius: 0;
  font-size: 15px;
  text-transform: uppercase;
  border-bottom: 4px solid transparent;
}

#filters li:hover span {
  color: #4872ae;
}

#filters li span.active {
  color: #4872ae;
  border-bottom: 4px solid #4872ae;
}

.opp-item, .blog-item {
  float: left;
  width: 100%;
  position: relative;
  z-index: 10;
  display: none;
}

.card.opp-box {
  width: 100%;
  padding: 40px 20px;
  position: relative;
  background: #f5f5f5;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
  min-height: 200px;
}

.card.opp-box:hover {
  background: #ffc829;
  cursor: pointer!important;
}

.card.opp-box h3 {
  font-size: 20px;
  line-height: 30px;
  font-weight: 400;
}

.card.opp-box h3 strong {
  font-size: 20px;
  line-height: 30px;
  font-weight: 700;
}

.card.opp-box .card-body {
  padding: 0px!important;
  background-color: transparent!important;
}

/* Accordion */

[data-toggle="collapse"] .fa:before {
  content: "\f068";
}

[data-toggle="collapse"].collapsed .fa:before {
  content: "\f067";
}

#accordion_1, #accordion_2 {
  margin: 0;
}

#accordion_1 button.btn.btn-link, #accordion_2 button.btn.btn-link {
  color: #4872ae !important;
  background-color: transparent;
  display: block;
  width: 100%;
  text-decoration: none !important;
  word-wrap: break-word;
  white-space: normal !important;
}

#accordion_1 button.btn.btn-link i, #accordion_2 button.btn.btn-link i {
  position: absolute;
  right: 20px;
  top: 25px;
  border: none;
  border-radius: 20px;
  width: 40px;
  height: 40px;
  line-height: 35px;
}

.btn:not(:disabled):not(.disabled).active, .btn:not(:disabled):not(.disabled):active {
  text-decoration: none !important;
}

.card {
  background-color: transparent;
  border: none;
  border-radius: 0;
}

.card-header {
  padding: .50rem 0;
  margin: 10px 0 0 0;
  background-color: #f6f6f6;
  border: none;
  text-align: center;
}

#accordion_1 button.btn.btn-link:hover, #accordion_2 button.btn.btn-link:hover {
  text-decoration: none !important;
}

.card-header h5 {
  font-size: 17px;
  line-height: 25px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 600;
  margin: 2px 15px 5px 10px;
  padding: 0px;
  color: #4872ae !important;
  text-transform: none;
  text-align: left;
}

.card-body {
  padding: 40px 35px 1px 35px;
  background-color: #ffffff;
}

.three-columns .card-body {
  padding: 40px 35px 1px 0px;
  background-color: #ffffff;
}

.card-body p, .card-body li {
}

.google-maps {
  position: relative;
  padding-bottom: 50%;
  height: 0;
  overflow: hidden;
}

.google-maps iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

.parking {
  padding: 30px 30px 5px 30px;
}

.share-wrapper {
  display: block;
}

.share-title {
  display: inline !important;
  float: left;
}

.share-title {
  padding: 0 10px 0 0;
  line-height: 40px;
}

/* =========================================================
   Sponsor / Timeline Sliders
   ========================================================= */
#all-posts .all-posts > a,
#all-posts .all-posts > a:hover,
#all-posts .all-posts > a:focus {
  text-decoration: none !important;
}
.full-row .container > a:has(#featured-post),
.full-row .container > a:has(#featured-post):hover,
.full-row .container > a:has(#featured-post):focus {
  text-decoration: none !important;
}
.slide-btn {
  text-align: center;
  box-sizing: border-box;
  padding: 20px;
  background-color: transparent;
  border: none;
  cursor: pointer;
}
.slider-sponsors .slide-btn {
  box-sizing: border-box;
  margin: 0 5px;
  background-color: #fff;

  aspect-ratio: 1 / 1;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 20px;
  text-align: center;
}

.slider-sponsors .slide-btn img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}
/* Sponsor slider */

.slider-nav .slick-slide {
  position: relative;
  opacity: .3;
}

.slider-nav .slick-slide.slick-current {
  opacity: 1 !important;
}

.slider-nav .slick-slide.slick-current::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 7px;
  height: 4px;
  background: #7eda49;
  z-index: 5;
}

.slider-dots {
  border-bottom: 2px dashed #7eda49;
  margin-top: -10px;
}

/* Timeline slider */

.slider-nav-timeline .slick-slide {
  opacity: .3;
}

.slider-nav-timeline .slick-slide.slick-current {
  border-bottom: 4px solid #7eda49;
  opacity: 1 !important;
  margin-top: -11px;
}

.simple-slide .slick-dots {
  bottom: -60px;
}

.simple-slide .slick-dots li button {
  background: url(../img/heart-icon-red.png) no-repeat center center;
  background-size: 18px 18px;
  text-indent: -9999px;
  overflow: hidden;
  width: 18px !important;
  height: 18px !important;
}

.simple-slide .slick-dots li.slick-active button {
  background: url(../img/heart-icon-blue.png) no-repeat center center;
  background-size: 18px 18px;
  text-indent: -9999px;
  overflow: hidden;
  width: 18px !important;
  height: 18px !important;
}

/* Tabs */

.tabs {
  width: 100%;
}

ul.tabHead, ul.tabBody {
  list-style: none;
  padding: 0;
  margin: 0;
}

.tabHead {
  display: block;
  background-color: transparent;
  border-bottom: 2px dashed #7eda49;
}

.tabHead li {
  cursor: pointer;
  padding: 15px 20px;
  margin: 0px 2px -3px 0;
  background-color: transparent;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 600;
  font-style: normal;
  display: inline-block;
  color: #000000;
  border-radius: 0;
  font-size: 15px;
  text-transform: uppercase;
}

.tabHead li.open {
  background-color: transparent;
  color: #000000;
  border-bottom: 4px solid #7eda49;
}

.tabBody li {
  display: none;
  padding: 0px;
  overflow: auto;
}

.tabBody li.open {
  display: block;
}

/* Social */

.common-social p {
  margin: 0 0 15px 0;
}

.common-social {
  text-align: left;
  display: block;
  margin: 10px 0 50px 0;
}

.common-social [class*="fab fa-"] {
  background-color: transparent;
  border-radius: 0;
  display: inline-block;
  height: 26px;
  line-height: 26px;
  margin: auto 20px auto 0px;
  width: 26px;
  font-size: 26px;
  text-align: center;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
}

.common-social a.fa-facebook-f,
.common-social a.fa-linkedin-in,
.common-social a.fa-twitter {
  text-decoration: none !important;
  color: #636466;
  border-bottom: none !important;
}

.common-social a.fa-facebook-f:hover,
.common-social a.fa-linkedin-in:hover,
.common-social a.fa-twitter:hover {
  border: none;
  text-decoration: none !important;
  color: #fa3b1c;
  border-bottom: none !important;
}

.equal {
  min-height: 215px;
}

.equal-small {
  min-height: 50px;
}

.equal-photo {
  height: 235px;
  border-radius: 30px;
}

/* =========================================================
   Social + Newsletter Section
   ========================================================= */

.social-connect-row {
  align-items: stretch;
  margin-left: -8px;
  margin-right: -8px;
}

/* ---------------------------------------------------------
   Columns / Main Gap
   --------------------------------------------------------- */

.social-connect-left,
.social-connect-right {
  height: auto !important;
  padding-left: 8px;
  padding-right: 8px;
}

.social-connect-left {
  display: flex;
  flex-direction: column;
}

.social-connect-right {
  display: flex;
}

/* ---------------------------------------------------------
   Purple Follow Us Card
   --------------------------------------------------------- */

.social-connect-copy {
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
}

/* ---------------------------------------------------------
   Social Image Row
   --------------------------------------------------------- */

.social-connect-left ul.social-feed {
  display: flex;
  width: 100%;
  gap: 16px;
  margin: 16px 0 0 0 !important;
  padding: 0;
  list-style: none;
}

.social-connect-left ul.social-feed li,
.social-connect-left ul.social-feed li:last-child {
  flex: 1 1 0;
  width: auto;
  float: none;
  margin: 0;
  padding: 0;
  border-radius: 20px;
  overflow: hidden;
  aspect-ratio: 1 / 1;
}

.social-connect-left ul.social-feed li img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ---------------------------------------------------------
   Yellow Newsletter Card
   --------------------------------------------------------- */

.social-connect-signup {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  overflow: hidden;
}

/* ---------------------------------------------------------
   Mobile
   --------------------------------------------------------- */

@media (max-width: 767px) {
  .social-connect-row {
    margin-left: 0;
    margin-right: 0;
  }
  .social-connect-left,
  .social-connect-right {
    padding-left: 0;
    padding-right: 0;
  }
  .social-connect-right {
    margin-top: 16px;
  }
  .social-connect-copy,
  .social-connect-signup,
  .social-connect-left ul.social-feed li {
    border-radius: 20px;
  }
}

/* =========================================================
   Feature Box
   ========================================================= */
.linked-boxes .feature-box {
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1 / 1;
  height: auto;
  margin: 0;
  box-sizing: border-box;
  background-color: #ffffff;
  padding: 20px 30px;
  overflow: hidden;
  -webkit-transition: transform .3s ease;
  -moz-transition: transform .3s ease;
  transition: transform .3s ease;
  -webkit-mask-image: url("../img/rmh_rec_1_1_rgb_gd.svg");
  mask-image: url("../img/rmh_rec_1_1_rgb_gd.svg");
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}
.feature-box {
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1 / 1;
  height: auto;
  margin: 0;
  box-sizing: border-box;
  background-color: #fffde9;
  padding: 20px 30px;
  overflow: hidden;
  -webkit-transition: transform .3s ease;
  -moz-transition: transform .3s ease;
  transition: transform .3s ease;
  -webkit-mask-image: url("../img/rmh_rec_1_1_rgb_gd.svg");
  mask-image: url("../img/rmh_rec_1_1_rgb_gd.svg");
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}
.feature-box-cta {
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: center;
  width: 100% !important;
  max-width: none !important;
 aspect-ratio: 1.176 / 1;
  height: auto;
  margin: 0;
  box-sizing: border-box;
  background: #fffde9;
  padding: 20px 30px;
  overflow: hidden;
  -webkit-transition: transform .3s ease;
  -moz-transition: transform .3s ease;
  transition: transform .3s ease;
  -webkit-mask-image: url("../img/rmh_rec_1_1_rgb_gd.svg");
  mask-image: url("../img/rmh_rec_1_1_rgb_gd.svg");
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}
/* =========================================================
   Entire Box Link Overlay
   ========================================================= */

.feature-box-link {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10;
  display: block;
  width: 100%;
  height: 100%;
  border: 0 !important;
  text-decoration: none !important;
}

/* =========================================================
   Feature Box Hover
   ========================================================= */

.feature-box.has-link {
  cursor: pointer;
}

.feature-box.has-link:hover {
  transform: translateY(-10px);
}

/* =========================================================
   Feature Logo
   ========================================================= */

.feature-logo {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  margin: 0;
  text-align: center;
}

.feature-logo img {
  display: block;
  width: auto;
  max-width: 100px;
  height: auto;
  margin: 0 auto;
}

/* =========================================================
   Feature Description
   ========================================================= */

.feature-description {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  margin: 15px 0 0;
  text-align: center;
}

.feature-description p {
  display: block;
  width: 100%;
  margin: 0 0 20px 0 !important;
  color: #000000 !important;
  font-family: 'Audrey Text', sans-serif;
  font-size: 17px !important;
  line-height: 24px !important;
  font-weight: 400 !important;
  font-style: normal !important;
  white-space: normal !important;
}

/* =========================================================
   Image + Text Block
   ========================================================= */

.image-text-section {
  position: relative;
}

.text-image-block {
  position: relative;
}

/* =========================================================
   Shaped Image
   ========================================================= */

.shaped-image {
  width: 100%;
  height: 400px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1080 1080' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M1073.7493,1034.4062c-1.5773,36.2517-9.8222,45.5938-49.2181,45.5938-223.9065-17.6367-681.9777-18.0428-972.266,0-34.6686-1.5778-46.1591-10.3152-46.5509-38.6846C20.9425,696.9331,18.6034,375.7482,0,65.0142,0,38.2199,8.0414,29.2989,33.5256,22.2311,115.6772-.5527,987.174-10.5697,1041.3824,15.3935c23.3452,7.2136,22.777,31.2076,24.4896,65.483,17.0867,341.9787,17.332,658.7691,7.8773,953.5297Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1080 1080' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M1073.7493,1034.4062c-1.5773,36.2517-9.8222,45.5938-49.2181,45.5938-223.9065-17.6367-681.9777-18.0428-972.266,0-34.6686-1.5778-46.1591-10.3152-46.5509-38.6846C20.9425,696.9331,18.6034,375.7482,0,65.0142,0,38.2199,8.0414,29.2989,33.5256,22.2311,115.6772-.5527,987.174-10.5697,1041.3824,15.3935c23.3452,7.2136,22.777,31.2076,24.4896,65.483,17.0867,341.9787,17.332,658.7691,7.8773,953.5297Z'/%3E%3C/svg%3E");
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

@media (max-width: 767.98px) {
  .shaped-image {
    height: 360px;
    margin-bottom: 40px;
  }
}

/* =========================================================
   Content
   ========================================================= */

.image-text-content {
  position: relative;
}

/* =========================================================
   Text Link
   ========================================================= */

.image-text-link {
  margin-top: 30px;
}

/* =========================================================
   Buttons
   ========================================================= */

.image-text-buttons {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 15px;
  margin-top: 30px;
}

/* =========================================================
   Mobile
   ========================================================= */

@media (max-width: 767.98px) {
  .shaped-image {
    height: 450px;
    margin-bottom: 40px;
  }
  .image-text-content {
    margin-top: 0 !important;
  }
  .image-text-buttons {
    gap: 10px;
  }
}

.image-text-section:not(:has(+ .image-text-section)) {
  padding-bottom: 60px !important;
}

.picture-frame {
  padding: 20px;
  border-radius: 50px;
}

.simple-slide .slick-list {
  overflow: visible;
}

.card-box {
  display: block;
  width: 100%;
  margin: 0 auto;
  background: #ffffff;
  border-radius: 0px;
  padding: 40px 40px 40px 40px;
  box-shadow: 0px 0px 18px 0px rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: 0px 0px 18px 0px rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 0px 0px 18px 0px rgba(0, 0, 0, 0.15);
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
}

.card-box h4 {
  font-size: 24px;
  line-height: 35px;
}

/* Team Block */

.team-box {
  display: block;
  position: relative;
  margin: 0;
  padding: 0;
  width: 100%;
  overflow: hidden;
}

.team-photo {
  position: relative;
  margin: 0;
  padding: 0;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
}

.text-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 100;
  background: rgba(208, 201, 255, 0.85);
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
  display: flex;
  justify-content: center;
  align-items: center;
}

.text-overlay a {
}

.team-photo:hover .text-overlay {
  opacity: 1;
  cursor: pointer;
}

/* Upcoming Events Section */

.stroke-frame {
  border-radius: 20px;
}

.small, small {
  font-size: 15px !important;
  line-height: 24px !important;
  font-weight: 600 !important;
  padding: 0 !important;
  display: block;
}

a small {
  color: #000000!important;
}

blockquote p {
  color: #91187d;
  font-size: 22px;
  line-height: 30px;
  margin: 0 0 0 30px;
}

blockquote {
  background: url(../img/heart-icon-blue.png) no-repeat left 4px;
  background-size: 24px 22px;
  margin-bottom: 36px!important;
	margin-top: 36px!important;
}

ul.event-list {
  display: block;
  padding: 0;
  margin: 0;
  list-style: none;
  width: 100%;
}

ul.event-list li {
  display: block;
  padding: 0;
  margin: 0 0 20px 0;
  border-bottom: 1px solid #ffffff;
  list-style: none;
  width: 100%;
}

ul.event-list li:last-child {
  display: block;
  padding: 0;
  margin: 0 0 20px 0;
  border-bottom: 0px solid #ffffff;
  list-style: none;
  width: 100%;
}

/* Events Template */

#featured-event h2 {
  font-size: 58px;
  line-height: 64px;
  color: #000000;
  font-weight: 700;
  margin: 30px 0 10px 0;
}

#featured-post h2 {
  font-size: 58px;
  line-height: 64px;
  color: #000000;
  font-weight: 700;
  margin: 0px 0 10px 0;
}

#featured-event h2:after, #featured-post h2:after {
  content: "";
  display: block;
  margin: 0 auto;
  width: 0px;
  padding: 0;
  border-bottom: none;
}

.featured-date-time, .featured-post-category-date {
  font-size: 14px;
  line-height: 20px;
  font-weight: 700;
  color: #000000;
  margin: 0 0 30px 0;
}

.featured-post-category-date {
  margin: 0 0 10px 0;
  text-transform: uppercase;
}

.event-sidebar {
  background: #5aecf8;
  border-radius: 30px;
  padding: 40px 40px 20px 40px;
}

.photo-border {
  border-bottom: 3px solid #ffffff;
  border-right: 3px solid #ffffff;
}

#cta-box-overlay {
  padding: 0 0 140px 0;
}

#cta-box {
  margin: 0;
  z-index: 10;
}

#cta-box h2, #cta-box-2 h2 {
  color: #000000;
  margin: 0 0 30px 0
}

#cta-box h2:after, #cta-box-2 h2:after {
  content: "";
  display: block;
  margin: 0 auto;
  width: 0px;
  padding: 0;
  border-bottom: none;
}

.top-border {
  border-top: 1px solid #cccccc;
  margin-top: 40px;
  padding-top: 40px;
}

/* Social Section */

ul.social-feed {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
  width: 100%;
}

ul.social-feed li {
  margin: 0;
  padding: 0;
  list-style: none;
  width: 50%;
  float: left;
}

ul.social-feed li:last-child {
  margin: 0;
  padding: 0;
  list-style: none;
  width: 50%;
  float: left;
}

/* Social Section */

.social {
  display: block;
  width: 100%;
  padding: 0;
  margin: 8px 0 0 0;
}

.social [class*="fa-brands fa-"] {
  background-color: #db0007;
  border-radius: 0px;
  color: #ffffff;
  display: inline-block;
  height: 30px;
  line-height: 30px;
  margin: auto 5px auto 0px;
  width: 30px;
  font-size: 13px;
  text-align: center;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  transition: all .3s;
}

.fa-brands, .fab {
  font-family: "Font Awesome 6 Brands" !important;
}

a.fa-brands {
  text-decoration: none !important;
  border-bottom: none !important;
}

a.fa-brands:hover {
  background-color: #f8b604;
  text-decoration: none !important;
  border-bottom: none !important;
}

.copyright {
  font-size: 15px;
  line-height: 24px;
  color: #000000;
}

.copyright a {
  font-size: 15px;
  line-height: 24px;
  color: #000000;
  text-decoration: none;
  border-bottom: none !important;
}

.copyright a:hover {
  font-size: 15px;
  line-height: 24px;
  color: #000000;
  border-bottom: none !important;
  text-decoration: underline !important;
}

.yellow-top-border {
  border-top: 6px solid #ffc829;
}

footer {
  position: relative;
  z-index: 20;
  margin-top: -100px;
}

footer .purple-top {
  position: relative;
  z-index: 21;
}

footer .purple-top img {
  display: block;
  width: 100%;
  height: auto;
}
.footer-brand {
  padding: 0 20px 0 0;
}

.footer-brand img {
  max-width: 50%;
  height: auto;
}

ul.footer-nav {
  display: block;
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.footer-nav li {
  display: block;
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.footer-nav li a {
  font-size: 16px;
  line-height: 30px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 400;
  font-style: normal;
  margin: 0 0 40px 0;
  color: #000000;
  border-bottom: none;
}

ul.footer-nav li a:hover {
  color: #000000;
  text-decoration: underline!important;
}

ul.footer-nav li.yellow-link a {
  font-size: 16px;
  line-height: 30px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 600;
  font-style: normal;
  margin: 0 0 40px 0;
  color: #000000;
}

ul.footer-nav li.yellow-link a i {
  font-size: 12px;
  line-height: 30px;
  padding: 0 0 0 5px;
}

/* Forms */
body > *:has(+ footer) {
  padding-bottom: 150px;
}
.nf-form-fields-required {
  display: none !important;
}

.nf-form-content {
  padding: 0px !important;
}

.nf-form-content input:not([type=button]), input.pw-window {
  background: #ffffff !important;
  border: none !important;
  border-radius: 100px;
  box-shadow: none;
  color: #333333;
  transition: all .5s;
  padding: 10px 30px !important;
}

input.pw-window {
  margin: 0 10px;
}

.nf-form-content input.ninja-forms-field {
  border-radius: 100px!important;
}

.nf-form-content input[type=submit] {
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 10px!important;
  background-color: #db0007 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  border: 2px #db0007 solid !important;
  transition: all .5s;
  width: 100% !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 50px !important;
}

.nf-form-content input[type=submit]:hover {
  background: #91187d !important;
  color: #ffffff !important;
  text-decoration: none !important;
  border: 2px #91187d solid;
  cursor: pointer;
}

.contact-form .nf-form-content input:not([type=button]) {
  background: #ffffff !important;
  border: none;
  border-radius: 100px !important;
  box-shadow: none;
  color: #333333;
  transition: all .5s;
  padding: 10px 30px !important;
}

select {
  background-color: white;
  border: thin solid #ccc;
  border-radius: 100px;
  display: inline-block;
  font: inherit;
  line-height: 1.5em;
  padding: 0.5em 3.5em 0.5em 1em;
  margin: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
}

select.minimal {
  background-image: linear-gradient(45deg, transparent 50%, gray 50%),
    linear-gradient(135deg, gray 50%, transparent 50%),
    linear-gradient(to right, #ccc, #ccc);
  background-position: calc(100% - 20px) calc(1em + 2px),
    calc(100% - 15px) calc(1em + 2px), calc(100% - 2.5em) 0.5em;
  background-size: 5px 5px, 5px 5px, 1px 1.5em;
  background-repeat: no-repeat;
}

select.minimal:focus {
  background-image: linear-gradient(45deg, #4c73aa 50%, transparent 50%),
    linear-gradient(135deg, transparent 50%, #4c73aa 50%),
    linear-gradient(to right, #ccc, #ccc);
  background-position: calc(100% - 15px) 1em, calc(100% - 20px) 1em,
    calc(100% - 2.5em) 0.5em;
  background-size: 5px 5px, 5px 5px, 1px 1.5em;
  background-repeat: no-repeat;
  border-color: #4c73aa;
  outline: 0;
}

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}

.contact-form .nf-form-content textarea {
  background: #ffffff !important;
  border: none !important;
  border-radius: 25px;
  box-shadow: none;
  color: #333333;
  transition: all .5s;
  padding: 10px 30px !important;
}

.contact-form .nf-form-content input[type=submit] {
  background: #db0007 !important;
  border: none !important;
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
  transition: all .5s;
  width: 180px !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 50px !important;
  float: right;
  border-radius: 10px !important;
}

.contact-form .nf-form-content input[type=submit]:hover {
  background: #91187d !important;
  color: #ffffff !important;
}

.nf-field-label .nf-label-span, .nf-field-label label {
  font-size: 14px;
  line-height: 20px;
  color: #4f4f4f;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
}

.list-radio-wrap .nf-field-element li label {
  font-size: 17px!important;
  line-height: 25px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #333333;
  text-transform: none;
  text-align: left!important;
}

.nf-form-content .listcheckbox-wrap li, .nf-form-content .listradio-wrap li {
  margin-bottom: 0 !important;
  line-height: 0;
}

.nf-form-content select.ninja-forms-field:not([multiple]) {
  border-radius: 100px !important;
  border: none!important;
}

.nf-form-content .list-select-wrap .nf-field-element>div {
  background: #ffffff!important;
  border-radius: 100px!important;
  color: #333333;
}

.remodal-overlay {
  background: rgba(42, 73, 118, 0.95)!important;
}

.nf-form-content .list-select-wrap>div select {
  background: #f5f5f5 !important;
}

.listcheckbox-container .nf-field-element label {
  font-size: 17px!important;
  line-height: 25px!important;
  font-family: 'Audrey Text', sans-serif!important;
  font-weight: 400!important;
  font-style: normal!important;
  color: #333333!important;
  text-transform: none!important;
  text-align: left!important;
}

.nf-form-content label {
  font-size: 14px!important;
}

.remodal h4 {
  font-size: 28px!important;
  margin: 0 0 30px 0!important;
}

.nf-form-content .list-select-wrap .nf-field-element > div,
.nf-form-content input:not([type=button]),
.nf-form-content textarea {
  border: none !important;
}

.nf-form-content textarea.ninja-forms-field {
  background: #ffffff;
  border: none !important;
  border-radius: 25px;
  box-shadow: none;
  color: #333333;
  transition: all .5s;
  padding: 10px 30px !important;
}

.nf-error.field-wrap .nf-field-element:after {
  background: #da1a00 !important;
  border-radius: 50px !important;
  top: 2px !important;
  right: 2px !important;
  bottom: 2px !important;
  height: 46px !important;
  width: 46px !important;
  line-height: 50px !important;
}

.nf-error .nf-error-msg {
  font-size: 15px !important;
}

.nf-error-field-errors {
  display: none !important;
}

label {
  color: #fa3b1c;
  margin-bottom: 0.5rem;
  font-size: 16px;
  line-height: 16px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 700;
  text-transform: uppercase;
}

.form-control {
  display: block;
  width: 100%;
  padding: 1rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.75rem;
  transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
  margin-bottom: 20px;
}

textarea {
  height: 200px;
}

.button-primary,
.btn-primary,
.loadMoreBtn,
.btn-wrap {
  font-size: 14px;
  line-height: 14px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 400;
  display: inline-block;
  text-align: center;
  background-color: #db0007;
  color: #ffffff;
  text-transform: none;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  padding: 15px 30px 15px 30px;
  margin: 15px 0 15px 0;
  -webkit-transition: background 500ms ease;
  transition: background 500ms ease;
  text-decoration: none;
  border: 2px #db0007 solid;
  min-width: 160px;
}

.button-primary:hover,
.btn-primary:hover,
.loadMoreBtn:hover,
.btn-wrap:hover {
  background-color: #91187d;
  color: #ffffff;
  text-decoration: none !important;
  border: 2px #91187d solid;
}

.btn-yellow {

  background-color: transparent;
  color: #db0007;
  text-decoration: none !important;
  border: 2px #db0007 solid;
}

.btn-yellow:hover {
  background-color: #91187d;
  color: #ffffff;
  text-decoration: none !important;
  border: 2px #91187d solid;
}

.btn-red {
  margin: 0 0 15px 0;
  background-color: #db0007;
  color: #ffffff;
  text-decoration: none !important;
  border: 2px #da1a00 solid;
}

.btn-red:hover {
  background-color: #91187d;
  color: #ffffff;
  text-decoration: none !important;
  border: 2px #91187d solid;
}

.btn-red-outline {
  margin: 0;
  background-color: transparent !important;
  color: #c61801 !important;
  text-decoration: none !important;
  border: 2px #c61801 solid;
}

.btn-red-outline:hover {
  background-color: #c61801 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  border: 2px #c61801 solid !important;
  cursor: pointer;
}

.btn-blue,
.loadMoreBtn,
.btn-wrap {
  margin: 0 0 15px 0;
  background-color: #db0007!important;
  color: #ffffff!important;
  text-decoration: none !important;
  border: 2px #db0007 solid;
}

.btn-blue:hover,
.loadMoreBtn:hover,
.btn-wrap:hover {
  background-color: #91187d!important;
  color: #ffffff!important;
  text-decoration: none !important;
  border: 2px #91187d solid;
  cursor: pointer;
}

.btn-blue-outline {
  margin: 0 0 15px 0;
  background-color: transparent !important;
  color: #db0007 !important;
  text-decoration: none !important;
  border: 2px #db0007 solid;
}

.btn-blue-outline:hover {
  background-color: #91187d !important;
  color: #ffffff !important;
  text-decoration: none !important;
  border: 2px #91187d solid !important;
  cursor: pointer;
}

.btn-wide {
  min-width: 225px;
}

#mobile-nav-container .button-primary,
#mobile-nav-container .btn-red,
#mobile-nav-container-notification .button-primary,
#mobile-nav-container-notification .btn-red {
  margin: 0 !important;
  width: 100% !important;
}

.load-more-btn, .load-more-btn-2 {
  margin: 40px 0 0 0;
  display: block;
  width: 100%;
  float: left;
  text-align: center;
}

#loadMore {
  margin: 0 auto 50px auto;
  display: block;
}

.searchform .button-primary {
  margin: 0 !important;
}

/* Search Bar */

#search-toggle {
  color: #000000;
  margin: 14px 0 0 10px;
}

#search-btn {
  position: fixed;
  top: 1em;
  right: 1em;
  background-color: rgba(0, 0, 0, 0.8);
  padding: 10px;
  border-radius: 2px;
  color: #FFF;
}

#search-btn:hover {
  background-color: rgba(0, 0, 0, 0.5);
  cursor: pointer;
}

#search-overlay {
  display: none;
  z-index: 9999;
}

.block {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: auto;
  text-align: center;
  background: rgba(27, 67, 178, .95);
  border: none !important;
  margin: 0;
}

.block:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: 0;
}

.centered {
  display: inline-block;
  vertical-align: middle;
  width: 90%;
  padding: 10px 15px;
  color: #FFF;
  border: none;
  background: transparent;
}

#search-box {
  position: relative;
  width: 100%;
  margin: 0;
}

#close-btn {
  position: fixed;
  top: 1em;
  right: 1em;
  font-size: 26px;
}

#close-btn:hover {
  color: #ffffff;
  cursor: pointer;
}

#search-bar {
  position: absolute;
  top: 90px;
  width: 100%;
  z-index: 999;
  background: #eaeaea;
  padding: 15px 0 15px 0;
  display: none;
}

.searchform .form-group input#s {
  padding-right: 250px !important;
}

.searchform .form-group input::placeholder {
  color: #ffffff !important;
}

.searchform .form-group input#s {
  background-color: transparent;
  border: none;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  display: block;
  width: 100%;
  opacity: 1;
  color: #fff !important;
  font-size: 24px;
  line-height: 1.33333;
  margin: 0 auto;
  padding: 15px 90px 15px 20px !important;
}

.searchform .form-group label {
  display: block;
  width: 100%;
  margin-bottom: 0;
}

.searchform .form-group {
  width: 100% !important;
  margin: 0 !important;
  padding: 5px 0 !important;
  position: relative !important;
  border-bottom: 3px rgba(255, 255, 255, 1) solid !important;
}

.searchform .form-group label {
  display: block;
  width: 100%;
  margin-bottom: 0;
}

.searchform .form-group .input-group-btn {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.searchform .form-inline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.pum-container {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
}

.pum-content {
  padding: 0 !important;
  margin: 0 !important;
}

#popup-form {
  padding: 45px 0;
  background-color: #ffbc0d;
  border-radius: 30px;
}

#popup-form .nf-form-content input:not([type=button]) {
  background: #ffffff !important;
  border: none !important;
  border-radius: 100px !important;
  box-shadow: none;
  color: #000000;
  transition: all .5s;
  padding: 10px 30px !important;
}

#popup-form .nf-field-label label {
  font-size: 14px;
  line-height: 14px;
  font-family: 'Audrey Text', sans-serif;
  font-weight: 400;
  color: #000000;
  text-transform: none !important;
  text-align: left !important;
}

.ninja-forms-req-symbol {
  color: #000000 !important;
}

#popup-form .nf-form-content input[type=submit] {
  font-size: 14px !important;
  line-height: 14px !important;
  font-family: 'Audrey Text', sans-serif!important;
  font-weight: 800 !important;
  display: inline-block !important;
  text-align: center !important;
  background-color: #db0007 !important;
  color: #ffffff !important;
  text-transform: none;
  -webkit-border-radius: 100px !important;
  -moz-border-radius: 100px !important;
  border-radius: 100px !important;
  padding: 15px 30px 15px 30px !important;
  margin: 0 0 20px 0 !important;
  -webkit-transition: background 500ms ease;
  transition: background 500ms ease;
  text-decoration: none;
  border: 2px #ffc829 solid !important;
  min-width: 160px !important;
}

#popup-form .nf-field-container {
  margin-bottom: 15px !important;
}

/* Media Queries */

@media (min-width: 544px) {
  .equal-photo {
    height: 225px;
  }
  #desktop-header {
    display: none;
  }
  #mobile-header {
    display: block;
  }
}

@media (min-width:768px) {
  .three-columns .border-right {
    border-right: 1px solid #4872ae !important;
    border-bottom: none !important;
  }
  .equal-photo {
    height: 245px;
  }
  .social [class*="fa-brands fa-"] {
    border-radius: 0px;
    height: 36px;
    line-height: 36px;
    margin: auto 5px auto 0px;
    width: 36px;
    font-size: 16px;
  }
  .mobile-center {
    text-align: left;
  }
  #desktop-header {
    display: none;
  }
  #mobile-header {
    display: block;
  }
  .desktop-visible {
    display: none;
  }
  .mobile-visible {
    display: none;
  }
}

@media (min-width:992px) {
  .equal-photo {
    height: 245px;
  }
  .social [class*="fa-brands fa-"] {
    border-radius: 0px;
    height: 36px;
    line-height: 36px;
    margin: auto 5px auto 0px;
    width: 36px;
    font-size: 16px;
  }
  #parallax {
    background-attachment: fixed !important;
  }
  .three-columns {
    margin: 0px;
  }
  .three-columns .border-right {
    border-right: 1px solid #4872ae !important;
    border-bottom: none !important;
  }
  .px-5-flex {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  #desktop-header {
    display: block;
  }
  #mobile-header {
    display: none;
  }
  .desktop-visible {
    display: block;
  }
  .mobile-center {
    text-align: left;
  }
  .footer-brand img {
    max-width: 100%;
    height: auto;
  }
}

@media (min-width:1200px) {
  .equal-photo {
    height: 275px;
  }
  .social [class*="fa-brands fa-"] {
    border-radius: 0px;
    height: 36px;
    line-height: 36px;
    margin: auto 5px auto 0px;
    width: 36px;
    font-size: 16px;
  }
  #parallax {
    background-attachment: fixed !important;
  }
  .three-columns {
    margin: 0px;
  }
  .three-columns .border-right {
    border-right: 1px solid #4872ae !important;
    border-bottom: none !important;
  }
  .px-5-flex {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .mobile-center {
    text-align: left;
  }
  #desktop-header {
    display: block;
  }
  #mobile-header {
    display: none;
  }
  .desktop-visible {
    display: block;
  }
  .mobile-visible {
    display: none;
  }
  .slide-background {
    height: 700px;
  }
  .footer-brand img {
    max-width: 100%;
    height: auto;
  }
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-megamenu > ul.mega-sub-menu {
  z-index: 999;
  border-radius: 0;
  background: rgba(255, 188, 13, 0.92);
  border: 0;
  padding: 40px 0px 40px 0px;
  position: absolute;
  width: 100%;
  max-width: none;
}
