:root {
    --primary-color: #c6311d;          /* red */
    --secondary-color:#5c5858;     /* warm mid grey */

    --heading-color: #6c6c6c;          /* h2, h4, h6 grey */
    --hover-color: #c6311d;   /* red */

    --button-color: #c6311d;   /* red */
    --background-color: #ececec;    /* light grey*/

    /* Adjust this one value to resize the background pattern everywhere.
       Smaller number = smaller/denser tiles. Larger number = bigger tiles. */
    --header-pattern-size: 1200px;
    --header-pattern-size-mobile: 1000px;
}


#tinymce { background-color: #fff; }
.ui-widget-overlay {     background-color: #fff;     }
body { font-family: 'open sans', sans-serif; }
#skiptocontent a {   position: absolute;   left: -9999px; }
#skiptocontent a:focus {   left: 0; }

/* HEADER */

.top-header {
    background-color: #c83c2d;
    background-image: url("/uploads/sites/mix//theme/images//Mix_pattern_ext2.png");
    background-repeat: repeat;              /* tiles continuously in all directions */
    background-position: top left;
    background-size: var(--header-pattern-size) auto; /* adjustable tile size */
    padding: 30px 0;
}
.top-header .container { background-color: transparent; }
@media (max-width: 575.98px) {
    .top-header {         background-size: var(--header-pattern-size-mobile) auto;     } }

/* Logo */
.top-header a img { padding-top: 0; padding-bottom: 0;      max-width: 180px;}
.top-header a img:hover { opacity: 1; }
.top-header a img:hover, .top-header a img:focus {     opacity: 1; }

a img:hover, a img:focus {     opacity: 0.7; /* Global image hover */ }

.navbar { padding: 0; } 
nav .container { padding-left: 0; }
.primary-menu .menu, .primary-menu .menu a, .secondary-menu, .secondary-menu .menu a { background-image: none; }
.menu a  { padding: 15px 10px; font-weight: 600; }
.primary-menu,  .small-hidden-menu ul li, .menu li li a  { background-image: none;  margin-left: 0; margin-right: 0; background-color: #c6311d; }
    .primary-menu a, .primary-menu a:visited { color:#fff;     font-weight: 600; font-size: 1.15em;     letter-spacing: 0.02em;  padding-left: 17px; padding-right: 17px; text-transform: uppercase; }
    .menu a:hover,  .menu a.active  { color:#fff; background-color:#5c5858; text-decoration:none; }

.secondary-menu .menu a { padding-left: 17px; padding-right: 17px;}
.secondary-menu, .secondary-menu-item, .small-hidden-menu .details-slide.menu .secondary-menu-item { color:#fff;   background-color: #5c5858;}
    .secondary-menu a, .secondary-menu a:visited { color:#fff; }
    .secondary-menu a:hover, .secondary-menu-item a:hover, .small-hidden-menu .details-slide.menu .secondary-menu-item:hover { background-color: #c6311d; }
    .secondary-menu a.active, .secondary-menu-item a.active, .small-hidden-menu .details-slide.menu .secondary-menu-item.active  { background-color: #c6311d; }

/* Child menus */
.menu li li {  float: none; }
.primary-menu-item ul {  position: absolute;  z-index: 999; }
.menu li > a:after {  font-family: "Font Awesome 6 Pro"; content: " \f107"; } 
.menu li > a:only-child:after { content: ''; }

/*mobile menu hamburger*/
.small-hidden-menu .xs-opener { border: none;  background-color:#5c5858; margin-top: 30px; margin-right: 20px; padding:  20px;    }
.small-hidden-menu .xs-opener:hover { color: #fff; background-color: #c6311d; }
.fa-bars:before { font-size: 2rem; }

/*mobile menu */
.small-hidden-menu .details-slide.menu { background-color: rgba(255,255,255,0.75);  padding-left: 0; margin-top: 100px;}
.small-hidden-menu  li { line-height: 1em; }

#main-content {  background-color: #fff; }
#middle-panel { padding: 0 30px 0 0; margin-bottom: 30px;    margin-top: 48px; }
   @media screen and (max-width: 600px) { #middle-panel  { margin-bottom: 10px; padding-left: 15px;}}
#right-panel  {  margin-bottom: 30px; }
   @media screen and (max-width: 600px) { #right-panel  {  margin-top: 10px; }}
#content-top,  #content-extra .img-responsive, #content-bottom .img-responsive { width:100%; }#content-bottom { border-bottom: 1px solid #614c4d; margin-bottom: 20px; }

/* ---------------- Search ---------------- */
#search {
    width: 100%;
    max-width: 100%;
    margin-top: 20px;
    margin-bottom: 0;
}

#search fieldset {
    min-height: 20px;
    margin-bottom: 0;
    background-color: #c6311ec2;
    border: none;
    border-radius: 20px;
    padding: 5px 0;
    display: flex;
    align-items: center; }

#search-text {     font-size: 1rem; font-weight: 700;     flex: 1 1 auto;     min-width: 0; /* prevents overflow on small screens */  }

#search input.form-control {
    border: none;
    background-color: transparent;
    border-radius: 0;
    box-shadow: none;
    padding-left: 12px;
    padding-top: 4px;
    color: #fff;
}

#search input.form-control:focus {
    outline: none;
    outline-offset: -2px;
    color: #fff; }

#search-btn {
    background-color: transparent;
    border: none;
    color: #fff;
    padding: 5px 10px;
    flex: 0 0 auto;
}

#search-btn:hover,
#search-btn:focus {
    color: #fdd86f;
}

#search-btn:focus {
    color: #fdd86f;
    outline: 2px solid #fdd86f;
    outline-offset: 2px;
}

.far.fa-search {
    font-size: 1.2rem;
font-weight: 700;
}


/* ---------------- Social icons ---------------- */
.social {     margin-top: 10px;     margin-bottom: 2px;     display: flex;     justify-content: flex-end;     flex-wrap: wrap;     gap: 10px; }
.social a {     display: flex;     align-items: center;     justify-content: center;     text-align: center;     color: #fff;     font-size: 30px;     height: 50px;
    width: 50px;     border-radius: 50%;     background-color: #c6311d;     text-decoration: none;     padding-top: 0; margin-left: 0;     margin-bottom: 0; }
.social a:hover, .social a:focus {     background-color: #614c4d;     color: #fff;     outline: 2px solid #614c4d;     outline-offset: 2px; text-decoration: none; }
.social a i {     margin-top: 0; }

/* ---------------- Donate button ---------------- */
#donate-but {     color: #ffffff;     display: flex;     justify-content: flex-end;     margin-top: 10px;     margin-bottom: 10px; }
#donate-but a {     color: #fff;     font-size: 1.15rem;     font-weight: 600;     line-height: 1.3;     background-color: #c6311d;     border: 2px solid #c6311d;
    padding: 7px 40px;     text-align: center;     border-radius: 60px;     margin-bottom: 0.4em;     display: inline-block;     text-decoration: none; }

#donate-but a:hover, #donate-but a:focus {     background-color: #614c4d;     border: 2px solid #614c4d;     outline: 2px solid #614c4d;     outline-offset: 2px; }

/* ---------------- Mobile tweaks ---------------- */
@media (max-width: 575.98px) {
    .top-header {
        padding: 16px 0;
    }
    .top-header a img {
        max-width: 130px;
    }
    #search,
    .social,
    #donate-but {
        justify-content: center;
        display: flex;
    }
    #donate-but a {
        padding: 7px 28px;
        font-size: 1rem;
    }
    .social a {
        height: 44px;
        width: 44px;
        font-size: 18px;
    }
}


p { color: #000;  line-height: 1.8; font-size: 1.2rem; margin-bottom: 1.5rem; font-weight:500; }
ul li, ol li  { line-height: 1.6; margin-bottom: 0.7em; font-size: 1.2rem; }
.intro { font-size: 1.6em; margin-top: 1em; margin-bottom: 1em; font-weight:500; }
.box ol, .box ul { margin: 6px 10px 0 10px;     padding-left: 20px; }

h1 { font-size:2.5em; color:#c6311d; font-weight:500; margin-bottom:0.233em; line-height: 1.4;}
h1 a, h1 a:visited { color:#c6311d;  text-decoration:none; }
h2 { font-size:1.8em; color:#383838; font-weight:600; margin-top:0.8em; margin-bottom:0.1em;  line-height: 1.4;}
h2 a, h2 a:visited { color:#383838;  text-decoration:none;}
h3 { font-size:1.5em; color:#c6311d; font-weight:500; margin-bottom:0.4em; line-height: 1.4;}
h3 a, h3 a:visited { color:#c6311d;  text-decoration:none; }
h4 { font-size:1.2em; color:#383838; font-weight:700; margin-bottom:0.4em; line-height: 1.35;}
h4 a, h4 a:visited { color:#383838;  text-decoration:none;}
h5 { font-size:1.1em; color:#c6311d; font-weight:600; margin-bottom:0.4em; line-height: 1.4;}
h5 a, h5 a:visited { color:#c6311d;  text-decoration:none;}
h6 { font-size:1.0em; color:#57574b; font-weight:700; margin-bottom:0.4em; margin-top: 0.8em; line-height: 1.4;}
h6 a, h6 a:visited { color:#57574b;  text-decoration:none;}

a { color: #0a61e2; text-decoration:underline;}
a:hover { color:#0160ba; text-decoration:underline; }
h1 a:hover, h2 a:hover,  h3 a:hover,  h4 a:hover,  h5 a:hover,  h6 a:hover {  text-decoration:none; }

strong {color: inherit;}
a strong, a strong:visited { color: #0a61e2; }
a strong:hover, strong a:hover { color: #0a61e2; }

legend { font-size:1.2em; color: #c6311d; background-color:transparent;}
dt label { color: #383838; font-weight:600; }
.small { font-size: 1em; line-height: 1.4;}
.highlight { color:#F00; }

/* CLASSES */

/* BUTTONS — class is applied directly to the <a>, no wrapper spans */
a.button {
 display: block;   width: 100%;
  text-align: center;   color: var(--button-color);   font-size: 1.3em; text-decoration: none;
  background-color: #fff;
  border: 2px solid var(--button-color);   border-radius: 10px;
  padding: 10px 30px;  margin-top:20px; margin-bottom:20px; 
  cursor: pointer;    }

a.button:visited { color: var(--button-color); }
a.button:hover {   background-color: var(--button-color);   color: #fff; }

/* Small button — inherits .button, overrides a few properties */
a.button.button-small {   display: inline-block;   width: auto;
  color: #fff;  font-size: 0.9em;   border: none;
  padding: 6px 18px;   background-color: var(--primary-color);    }

a.button.button-small:hover, a.button.button-small:active {   background-color: var(--secondary-color);   color: #fff; }


.background { padding: 1rem .5rem 0.2rem; background-color: #ececec;  text-align: center; display:block;     margin-bottom: 0; margin-top: 0; margin-left: 0; margin-right: 0;}
.background a, .background a:visited   {text-decoration:underline;  }
.background a:hover  { color:#0271bf; }

.rule { border-bottom: 3px solid #a8a9a8; padding-bottom: 10px; margin-bottom: 30px;}
.rule a, .rule a:visited   { text-decoration:none; }
.rule a:hover { color:#0a58ca; }

.background.rule  { margin-bottom: 0; }
.caption { line-height:1.4; font-size:0.9em; }
.paddingnone { padding-bottom: 0; margin-bottom: 0; margin-top: 0; padding-top: 0; }
blockquote {   font-weight: 600;
    margin: 2em 0;
    padding-left: 0;
    font-style: italic; }
blockquote p {  color:#c6311d; font-size:1.3em; }

.video-wrapper { position: relative;  width: 100%;  padding-bottom: 56.25%; /* 16:9 aspect ratio*/
  height: 0;   overflow: hidden;   border-radius: 0;    }
.video-wrapper iframe {   position: absolute;   top: 0;   left: 0;   width: 100%;   height: 100%;   border: 0; }

/* GallerySlideshow */
.carousel-inner { background-color:  #00000038;     padding-top: 30px; }
.slick-prev.slick-arrow { left: 35px; }

/* Site BUTTONS*/
.btn.green {  color: #028553;  border: 2px solid #028553;  background-color: #fff; padding: 3px 5px 1px 5px; }
.btn.green:hover, .btn.green:active { background-color: #028553; border: 2px solid #028553; }
.btn.blue {  color: #0381cc;  border: 2px solid #0381cc; background-color: #fff;     border-radius: 20px; }
.modal-header button.close {     border: none;     border-radius: 50px;     background-color: #b3c9e7; }
.modal-footer button.btn.btn-default.btn-primary { background-color: #397bb8;     border-color: #397bb8; }

.sharethis-inline-share-buttons{ padding-bottom: 20px;     padding-top: 10px; }

/* CARDS*/
.card { border: none; margin: 0 3% 3% 0; background-color: transparent;  width: 22%;  }
  @media screen and (max-width: 1200px) { .card  { width:30%; }}
    @media screen and (max-width: 992px) { .card  { width: 45%; }}
    @media screen and (max-width: 768px) { .card  { width: 70%; padding-bottom: 25px; }}
    @media screen and (max-width: 576px) { .card  { width: 80%; padding-bottom: 25px; }}

.card.card-theme .signature-image, .card .signature-image { object-fit: cover; max-height: 11rem;}
    @media screen and (max-width: 992px) { .card.card-theme .signature-image, .card .signature-image { max-height: 12rem; }}   
.card.card-theme .card-body, .card-body   { padding: 0.3rem 0 0 0;  margin-bottom: 10px;   height: 95px; }
.card.card-theme time { text-align: right; padding-top: 5px;    color: grey; font-size: 0.8rem;     font-weight: 800;}
p.module-type-label {     text-align: right;     line-height: 2;     text-transform: uppercase;     font-size: 0.8rem;     color: #000;     margin-bottom: 0; font-weight: 600;}
h5.card-title { font-size: 1.7em; font-weight: 700; line-height: 1.2; margin-bottom: 0.5rem; }
h5.card-title a {color: #4D4A4A;  }
h5.card-title a:hover { color:#386EA8; }
.card-body a { text-decoration: none; }
.card-theme p.card-text { display:none; font-size: 1.2em;     line-height: 1.5; }
/* .card-theme p.card-text { display:none; } ALSO USED FOR CREATOR ON COLLECTION MODULE*/

.card .cta { color: #4383c7; }
.card .cta:hover { color:#045ee8; text-decoration: underline; }

/* BASIC CARDS sig-image-left with heading & text-right*/
.basic-layout .content-header .basic-category {  display: block; } /*add the categories*/
.basic-layout img { max-height: 10rem;  width: 100%; } 
.card.mb-3.basic-layout { width: 100%; }
.card.mb-3.basic-layout .signature-image {max-height: 10rem; margin-bottom: 5px; }
.card.basic-layout .card-body { overflow: hidden; height: 11rem;  padding: 0;    border-radius: 0;}
.card-body h3 { font-size: 1.8em; } 

/* Collections module */
.collections-content-image {     max-width: 1000px; max-height: 800px;}

/* Index display alts*/
.pagination-form { margin-top: 0; }
.content-header {     margin-bottom: 10px; }
.broadcast-module-name { margin-top: 0; }
p.article-text a { color: #000; }
p.article-text a:hover { color: #0c62b9;}

a.btn.broadcast-ignore { width: inherit;}
#modules-holder ol { margin-left: 5px;}

/* Forms */
p.select-group-header { margin: 0.375rem 0px 8px;     color: #436c71;     font-weight: 700; }
form label.checkbox { margin-bottom: .5em;     margin-right: 3em; } 
#middle-panel fieldset { padding-left: 0; }
.form-check-input {     width: 1.5em;     height: 1.5em;    border: 1px solid #5f8692;}
label.btn { padding-left: 30px; color: black; background-color: #fff; border: none; padding: 3px 8px; }

/* Event Search -  search words*/
#calForm input.form-control, #filter.form-control {    margin-bottom: 0; }
#calForm fieldset {  padding-left: 0;   margin-bottom: 0; }
.search-words {     border-bottom: 1px solid #babbbb;     padding-bottom: 10px;     margin-bottom: 50px; }
.search-words .btn {     font-weight: 500;     color: #636466; }
.search-words .btn:hover, .search-words .btn:focus {     color: #059c3c;  border: 1px solid #059c3c;   }

/* Event tabs and dropdowns */
#event-details .event-dates .dropdown.active a, #event-details .event-dates .dropdown.active .dropdown-menu .active a, #event-details .event-dates .active a  {     background-color: #fff; }
.dropdown-menu.show {     padding: 5px;     width: 170px; }
.dropdown-menu.show li {  line-height: 1.25; }

/*  pagination   */
.page-link { border: none; color: #1d5498;}
.page-item:hover .page-link {    border-bottom: solid black 3px;  }
.page-item.active .page-link {     color: #fff;     background-color: #1f96aa;    border-bottom: solid black 3px;  }
.pagination-sm .page-item:first-child .page-link {     border-top-left-radius: 0rem;     border-bottom-left-radius: 0rem; }
.pagination-container .chngr-jump {     width: 50px; border: #e5e5e5 1px solid;}

/*RHP Index listings*/
.box {     border: none; font-size: 1.3em; }
.box ol, .box ul {     margin: 7px 10px 0 0;     padding-left: 0;     font-size: 0.9em;}
.latest-unimodule.box ul li::marker { color:#fff; }
.latest-event.box ul li p {  font-size: 1em; }
.latest-unimodule.box ul li, .latest-event.box ul li p { color:#000; font-weight: 500; line-height: 1.3;  border-bottom: 1px solid #d3cdcd; padding-bottom: 6px; margin-top:6px; }
.latest-unimodule.box ul li a, .latest-event.box ul li p a { color:#000; }
.box ol li a:hover, .box ul li a:hover, .latest-event.box ul li p a:hover {  text-decoration: none;  color: #036d8e; }
.events-siteID {  font-weight: 400; line-height: 1.6; }
 
#right-panel .unimod-author, #right-panel .unimod-date, #right-panel .row.row-cat-location {display: none;}
#right-panel .unimodule-page-name { font-size: 1.2em;     margin-bottom: 0em;}
#right-panel article h3 { font-size: 1.5em; }
#right-panel .unimod-links.content-header {    border: none;     padding: 0px;     margin: 0; }
#right-panel #modules-holder .broadcast-image {   margin-left: 0; }
#right-panel .signature-image {    width: 50px;  }
#right-panel .content-header h4 {   font-size: 1.2em; margin-top: 0em; padding-top: 0.5rem;}
#right-panel .broadcast-module-name {   font-size: 0.6em;  }
#right-panel article a p {     line-height: 1.6;     font-size: 0.9rem; }
#right-panel .unimod-header {     margin-bottom: 0; }

.bootstrap-modal-btn:hover { color: #428bca; }
.bootstrap-modal-btn:before { color: #084c71; font-family: "Font Awesome 6 Pro", sans-serif; content: "\f055"; margin-right: 5px; font-size: .9em; }

a.btn.broadcast-ignore-site, a.btn.broadcast-ignore {     text-decoration: none; width: inherit;}

/*Open Close containers*/ 
.details-opener.opened h1:before, .details-opener.opened h2:before, .details-opener.opened h3:before, .details-opener.opened h4:before, .details-opener.opened h5:before, .details-opener.opened h6:before, .details-opener.opened p:before { color: #028553; font-family: "Font Awesome 6 Pro"; content: "\f056"; margin-right: 5px;}
.details-opener h1:before, .details-opener h2:before, .details-opener h3:before, .details-opener h4:before, .details-opener h5:before, .details-opener h6:before, .details-opener p:before { color: #095a8c; font-family: "Font Awesome 5 Pro"; content: "\f055"; margin-right: 5px; }
.details-slide.opened    { border-bottom: 2px #5c5858 solid;    margin-bottom: 40px; }
.primary-menu-item ul  {     padding-left: 0; }
.small-hidden-menu .details-slide.opened    { border-bottom: 0px #fff solid; }

.modal-header button.close {     color: #074b77;     font-family: "Font Awesome 6 Pro";
    content: "\f057";     margin-right: 5px;     font-size: 15px;     float: right;     border: solid 1px #074b77;     background-color: white;     border-radius: 40px;     padding: 0px 6px;
    font-weight: 400; }

.rating_text {     float: right;     text-align: right;     font-size: 0.8em;     text-transform: uppercase;     font-weight: 600; }

/* specifically for Accessibility */
.icon-asterisk.fa.fa-asterisk.red { color:red; font-size:80%; font-weight:900;  }   
.textsize { display: none; }

.map-responsive {  overflow:hidden;  padding-bottom:56.25%; position:relative; height:0;  }
.map-responsive iframe {  left:0;  top:0; height:100%; width:100%;  position:absolute;  }
.googlemaps {  overflow:hidden;     padding-bottom:56.25%;     position:relative;     height:0; }
.googlemaps iframe{     left:0;     top:0;     height:100%;     width:100%;     position:absolute; }

/* ALERTS */
.event-expired.alert.alert-danger.alert-dismissable p { margin-bottom: 0em; color: #b38899; }
.event-expired.alert.alert-danger.alert-dismissable .far.fa-exclamation-triangle { display:none; } 
.alert-danger {     --bs-alert-color: #842029;     --bs-alert-bg: #dbced3;     --bs-alert-border-color: #dbced3;     border-radius: 0;     padding: 5px; }
.event-expired.alert.alert-danger.alert-dismissable button.close {     border: none;     background-color: #dbced3; float: right;     border: solid #cf95ac 1px;     border-radius: 40px;     color: #cf95ac; }


#footer, #footer .container { background-color: #5c5858; }
#footer { padding-top: 20px; padding-bottom: 100px; }
#footer p, #footer a { color: #fff; }
#footer .menu { font-size: 0.9em;     font-weight: 600; letter-spacing: 0.05em; }
#footer .secondary-menu-item { text-transform: capitalize; }
#footer .primary-menu-item:hover, #footer .primary-menu-item.active,   #footer .secondary-menu-item:hover, #footer .secondary-menu-item.active { background-color: #c6311d; border-bottom: none; }

@media print {        header, header *, #comment-form-hide-btn, #right-panel    {         display: none !important;     } }