#tinymce { background-color: #fff; }
.ui-widget-overlay {     background-color: #fff;     }
body {font-family: 'Poppins', sans-serif;   background-color: white;}
header .container { background-color: transparent; }
header.top-header  {background-color: #fff; padding-top: 30px;     padding-bottom: 20px;}

.byline  {color: #203d76;     font-weight: 600;     padding-top: 20px; }

.row {     --bs-gutter-x: 4rem; }

.navbar { padding: 0rem 0rem 2rem;}
.navbar>.container-fluid { padding: 0; } 
a.navbar-brand {     margin-left: -12px; }

.primary-menu .menu, .primary-menu .menu a, .primary-menu .menu a.active, .primary-menu .menu a:hover, .primary-menu .menu a, .menu.nav.navbar-nav  { background-image: none; margin: 0px auto; }
.primary-menu,  .menu li li a  
   { background-image: none;  margin-left: 0px; margin-right: 0px; background-color: #fff; font-weight: 500; text-transform: uppercase;  letter-spacing: 0.05em;}
    .primary-menu a, .primary-menu a:visited { color:#000; padding-left: 12px; padding-right: 12px; font-size:1em;}

.menu a, .menu a:visited { padding: 0px 20px; font-size:1em;  font-weight: 500;  text-transform: uppercase;  letter-spacing: 0.05em;}

/* Secondary menu */
.secondary-menu,  .secondary-menu .menu a, .secondary-menu .menu   { background-image: none; margin: 0px auto; }
.secondary-menu a {     text-transform: uppercase;     font-size: 1.1em;     font-weight: 400; }
    .menu a:hover,  .menu a.active, .secondary-menu a:hover, .secondary-menu a:active { color:#4482a7; }
.nav-87013 .secondary-menu-item, .nav-105085 .secondary-menu-item, .nav-102571 .secondary-menu-item   {   border-right: 1px solid #000; }
#footer .nav-87013 .secondary-menu-item, #footer .nav-87173 .secondary-menu-item, #footer .nav-102571 .secondary-menu-item  {   border-right: none; }
.secondary-menu .menu a  {     padding: 0px 20px;     line-height: 1.2;     letter-spacing: 0.1em;}

.primary-menu .menu li li a, #footer ul.menu .details-slide .primary-menu-item { border-bottom: solid 0px #fff; background-color: #fff;  color:#616060;}
.menu .details-slide { padding-inline-start: 0px; background-color: transparent;}
.details-slide a.primary-menu-item:hover { background-color: #49bcde; }
.menu .details-slide.opened ul.details-slide {   margin-left: 100px; width: max-content;}
.details-slide .slider-2.opened { position: relative; }
.secondary-menu ul ul li { padding-left: 0px; }
.secondary-menu ul ul { padding-left: 15px;}

/*mobile menu */
a.open-menu.details-opener.xs-opener {     color: #fff;     padding: 15px;     background-color: #000; }
a.open-menu.details-opener.xs-opener:hover { color: #f37121;  }
.fa-bars:before { font-size: 1.8rem; }
.small-hidden-menu .xs-opener {border: none; background-color: #fff;    margin-top: 0px; margin-right: 0px; padding:  10px;    }
.small-hidden-menu .details-slide.menu { background-color: rgba(255,255,255,0.75); right: 10px; width: 60%; margin-top: 140px; }
.small-hidden-menu ul li { background-color: #fff;  text-align: left;  }
.small-hidden-menu ul li > a:after  { display: none; }

/*new mobile menu */
.fa-solid.fa-bars { color:#fff; font-weight: 600;  font-size: 1.5rem;  }
.navbar-toggler { padding: 10px 17px; margin-bottom: 15px; background-color:#414e83; border: none; border-radius: 0; }
.navbar-toggler:hover { color:#fff; background-color: #000; }

#main-content {  background-color: #fff;    background-image: none;}
#middle-panel { margin-bottom: 30px;    margin-top: 30px;     padding-bottom: 40px; }
   @media screen and (max-width: 600px) { #middle-panel  {  margin-bottom: 10px; }}
#right-panel  {  margin-bottom: 30px; }
   @media screen and (max-width: 600px) { #right-panel  {  margin-top: 10px; }}
#content-top { width:100%; }
  @media screen and (max-width: 600px) { #content-top { padding-right: 25px;    padding-left: 25px; }}
 #content-extra img { width:100%; }

.social {float:right;     margin-top: 20px;  margin-bottom: 20px;     margin-right: 10px; }
.social a { color: #3d5997; font-size: 2.2em; text-decoration: none;}
.social a:hover { color: #981131;  }

p { color: #000; font-size: 1.1rem; line-height: 1.9; margin-bottom: 1.5rem; }
ul li, ol li  { color: #000; font-size: 1.1rem; line-height: 1.8;  }
.intro { font-size: 1.3rem; margin-top: 1em; margin-bottom: 1em; color: #616263;}
.box ol, .box ul { margin: 6px 10px 0 10px;     padding-left: 20px; }

h1 { font-size:2.4em; color:#000; font-weight:300; margin-bottom:0.5em; line-height: 1.2;}
h1 a, h1 a:visited { color:#000; }
h2 { font-size:1.8em; color: #5b5e5e;     font-weight: 300; margin-bottom:0.4em; margin-top:1em; line-height: 1.3;} 
h2 a, h2 a:visited { color:#5b5e5e; }
h3 { font-size:1.6em; color:#636466; font-weight:500; margin-bottom:0.4em; line-height: 1.4;}
h3 a, h3 a:visited { color:#636466; }
h4 { font-size:1.4em; color:#636466;  font-weight:600; margin-bottom:0.4em; line-height: 1.4;}
h4 a, h4 a:visited { color:#636466; }
h5 { font-size:1.2em; color:#000; font-weight:600; margin-bottom:0.4em; line-height: 1.4;}
h5 a, h5 a:visited { color:#000; }
h6 { font-size:1.15em; color:#636466; font-weight:500; margin-bottom:0.4em; margin-top: 0.8em; line-height: 1.4;}
h6 a, h6 a:visited { color:#636466; }


 
.banner-image img { max-width: 370px;     padding-top: 10px; padding-bottom: 10px;}
.top-header a img:hover { opacity: 1; }
a img:hover { opacity: 0.7; filter: alpha(opacity=70); } 

a { color: #4383c7; text-decoration:none; }
a:hover, h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover { color: #1c7bb2; }

legend { font-size:1.2em; color: #636466; background-color:transparent;}
dt label { color: #4b5d61; }
.small { font-size: 1em; line-height: 1.4;}
.highlight { color:#F00; }
strong {color: inherit;     font-weight: 600; }
a strong, a strong:visited { color: #428bca; }
a strong:hover { color: #0a8de9; }
a[href$='.pdf']:before { display:none;}
figure.image figcaption {     font-style: normal; }
figure.image figcaption p {     line-height: 1.4em;     margin-bottom: 0.5rem; font-size: 1em; }

figure.image img.img-responsive, figure.image img.img-fluid {     max-width: 100%; }

/* CLASSES */
.button {   color: #000; border: 2px solid #000; padding: 10px 30px; background-color: #fff; width: 100%; display:block; text-align: center;  }
.button a, .button a:visited   { color: #000; text-decoration:none;}
.button:hover a {  color: #fff; } 
.button:hover  { background-color:#636466; border: 2px solid #636466; color:#fff;  }

.button-small a, a .button-small  {  color: #fff;       font-size: 1.2em;     padding: 20px 60px;  border-radius: 5px;     background-color: #636466;      display: inline; text-decoration: none; }
.button-small a:visited, a .button-small:visited {  text-decoration: none;}
.button-small a:hover, a .button-small:hover {  background-color: #f37121; text-decoration: none;}

.background {background-color: #ececec;  padding: .8rem .5rem 0.5rem;   text-align: center; display:block;     margin-bottom: 0em; margin-top: 0em; margin-left: 0px; margin-right: 0px;}
.background a, .background a:visited   { text-decoration:none;} 
.background a:hover  { color:#0392eb; }

.txt-color, .txt-color a:visited, .txt-color a { color:#EA5D21; }
.txt-color a:hover { color:#e76a04; }

.rule { border-bottom: 1px solid #c8cbce; padding-bottom: 10px; margin-bottom: 30px;}
.rule a, .rule a:visited   { text-decoration:none; }
.rule a:hover { color:#0392eb; text-decoration:none; }
.background.rule  { margin-bottom: 0px; }
.caption { line-height:1.4; font-size:0.9em; }
.paddingnone { padding-bottom: 0px; margin-bottom: 0px; margin-top: 0px; padding-top: 0px; }
blockquote p {  color: #575759; font-weight:500;  font-size:1.2rem; margin: 0.5em 0 1.5em 0;  padding-left: 30px; border-left: 1px solid #a09f9f; line-height: 1.8; }

/* Gallery */
.carousel-inner {      background-color: #000;     padding-top: 30px; padding-bottom: 30px;}
.slick-prev.slick-arrow { left: 35px; }

/* Collections module */
.collections-content-image {     max-width: 1000px; max-height: 800px;}

/* Extra Content banners */
.banner {  position: relative; background-color: rgb(1 2 2 / 37%);}
.top-left {  position: absolute;  top:10px;  left: 10px; width: 100%; }
.bottom-centre {  position: absolute;  bottom:0px;  left: 0px; width: 100%; }
.bannerimage img { object-fit: cover;    height: 500px; opacity: 0.8;}
   @media screen and (max-width: 992px) { .bannerimage img  {  object-fit: cover; height: 300px; }}
   @media screen and (max-width: 768px) { .bannerimage img  {  object-fit: cover; height: 300px; }}
   @media screen and (max-width: 576px) { .bannerimage img   {  object-fit: cover; height: 350px; }}



.vid-banner  {    position: relative;    display: flex;    align-items: center;    justify-content: center;    padding: 0rem;    padding-top: 0px;    padding-bottom: 0px;    color: #fff;   text-decoration: none;    height: 100%;    max-height: inherit;    min-height: auto; z-index: 1; }
.vid-bannerimage  { width: 100%; line-height: 0; }
.vid-bannerimage img, .vid-bannerimage video {    width: 100%;     height: 600px;   -o-object-fit: cover;   object-fit: cover; }
   @media screen and (max-width: 992px) { .vid-bannerimage img, .vid-bannerimage video  {   height: 300px; }}
   @media screen and (max-width: 576px) { .vid-bannerimage img, .vid-bannerimage video   {  height: 350px; }}

.bannertext, .bannersubtext {background-color: rgb(1 2 2 / 37%);}
.bannertext, .bannertext a { font-size:1.3rem; color:#fff; font-weight:500;   padding: 20px 0px 0px 0px;     margin-bottom: 0em;  text-decoration: none;}  
   @media screen and (max-width: 992px) {.bannertext, .bannertext a {  font-size: 1.1rem;  }}
.bannersubtext, .bannersubtext a { font-size:1.1rem; color:#fff; font-weight:600;   padding: 0px 0px 20px 0px;     margin-bottom: 0em;  text-decoration: none;}  

.hmpgbutton { color:#fff; margin: 20px auto; text-align: center; border: none;  padding: 8px 20px; border-radius: 5px;     line-height: 2em; display: inline; background-color: rgb(247 167 99 / 60%);  font-weight:800;}
.hmpgbutton:hover  { background-color: #f98223; color: #fff;}
.hmpgbutton a { color:#fff; padding: 2px 12px; }


/* EVENT SEARCH */
#calForm fieldset {    padding-left: 0px; margin-bottom: 0px;  }  
#calForm input.form-control  { margin-bottom: 0px; }
#event-search-btn.btn.btn-primary.submit.green .fas.fa-search  {     padding: 0px; }
.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  {color: #059c3c; }

#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;     font-weight: 500; }
.dropdown-menu.show { padding:5px; width: 170px; }
ul .dropdown-menu.show li {     line-height: 1.25; }

#event-search-calendar td.day.new-day.active.selected {     background-color: #f7b61f; }
.event-reg, .event-contact  {     display: none; }

/*Index listings*/
.pagination-form { margin-top: 0px; }
.content-header {     margin-bottom: 10px; font-size: 0.75em;}
.broadcast-module-name { margin-top: 0px; }
p.article-text a { color: #000; }
article a { text-decoration:none; }
article a p, #fd-content-broadcast p { line-height: 1.85; font-size: 1.05em;}
article {     margin-bottom: 40px; }
.signature-image {     margin-top: 3px; width:100px;      border: none;}
.read-more:hover { color:#007bff;}
img.bordered {    border: 1px solid #ccc9c9; }
h1.unimodule-page-name {     font-size: 1.6em;     color: #636466;     font-weight: 500;     margin-bottom: 0.4em;     line-height: 1.4; }
.even, .odd {     background-color: #fff;     border-bottom: 1px solid #9fa0a2; }
.row.result.even p, .row.result.odd p {  line-height: 1.6; margin-bottom: 12px; font-size: 1.05em;} 


/*RHP Index listings*/
.box {     border: none; font-size: 1.3em; }
.box ol, .box ul {     margin: 7px 10px 0px 0px;     padding-left: 0px;     font-size: 0.85em;}
.box h6 {     font-weight: 600; }
.latest-unimodule.box ul li::marker { color:#fff; }
 .latest-event.box ul li p {     font-size: 1.2em;} 
.latest-unimodule.box ul li, .latest-event.box ul li  { color:#000; font-weight: 600; line-height: 1.3;  border-bottom: 1px solid #d3cdcd; padding-bottom: 10px;   padding-top: 10px; }
.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; display: none;}

#right-panel .unimod-author, #right-panel .unimod-date {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: 0px; }
#right-panel #modules-holder .broadcast-image {   margin-left: 0px; }
#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: 0px; }

/* Site BUTTONS*/
#h2-error .btn.green { border: solid; border-radius: 60px; background-color: #028553;}

.btn.green {  color: #028553;  border: 2px solid #028553;  background-color: #fff; }
.btn.green:hover {background-color: #028553; border: 2px solid #028553; }
.btn.green:active {background-color: #028553; border: 2px solid #028553;  }

.btn.blue {  color: #0381cc;  border: 2px solid #0381cc; background-color: #fff;     border-radius: 20px; }

/* Form*/
.form-check-input { border: 2px solid rgba(0,0,0,.5); }
#form-errors-89611, #form-errors-89611 p, #form-errors-89611 a {     color: red;     font-weight: bold; }

.bootstrap-modal-btn:hover { color: #428bca; }
.bootstrap-modal-btn:before { color: #084c71; font-family: "Font Awesome 5 Pro", sans-serif; content: "\f055"; margin-right: 5px; font-size: .9em; }

a.btn.broadcast-ignore { width: inherit;}
#modules-holder ol { margin-left: 5px;}

.details-opener.opened h1:after, .details-opener.opened h2:after, .details-opener.opened h3:after, .details-opener.opened h4:after, .details-opener.opened h5:after, .details-opener.opened h6:after, .details-opener.opened p:after { color: #028553; font-family: "Font Awesome 6 Pro"; content: "\f106"; margin-right: 5px;    font-size: 25px;  float:right;}

.details-opener h1:after, .details-opener h2:after, .details-opener h3:after, .details-opener h4:after, .details-opener h5:after, .details-opener h6:after, .details-opener p:after { color: #095a8c; font-family: "Font Awesome 6 Pro"; content: "\f107"; margin-right: 5px;    font-size: 25px; float:right;}

.details-opener {border-bottom: solid grey 0.5px;     padding-bottom: 15px; }

.details-opener i.far.fa-angle-right, .details-opener i.far.fa-angle-down {     display: none; }

.small-hidden-menu .details-slide.opened    { border-bottom: 0px #fff solid; }

.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;  }

.rating_text {     float: right;     text-align: right;     font-size: 0.8em;     text-transform: uppercase;     font-weight: 600; }

/* 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; }

/* index display alts */
.mod-index-divider  { max-width: 800px; }
.unimod-links.content-header { padding-bottom: 0px;}
.broadcast-module-name { margin-top: 0px;}
#fd-content-broadcast p.card-text { line-height: 1.8; font-size: 1em;}
#fd-content-broadcast p.card-text:hover {color: #1c7bb2;}
 .broadcast-ignore-box  { position: absolute; top: 0px; right:30px; }

#event-image img.img-responsive.f-right.img-fluid {     float: left; width: 100%;}
    

/* CARDS*/
.card { border: none; background-color: transparent;   margin: 0 3% 3% 0;     width: 30%;  }
    @media screen and (max-width: 992px) { .card  { width: 45%; }}
    @media screen and (max-width: 768px) { .card  { width: 90%; }}

.card.card-theme a { text-decoration:none; }
.card.card-theme .signature-image, .card .signature-image {     object-fit: cover;     max-height: 18rem; }
.card.card-theme .card-body, .card-body, #middle-panel .card-body { padding: 1rem 0;  height: 100px; background-color: #fff; }

.card.card-theme .card-body:hover, .card-body:hover, #middle-panel .card-body:hover {   border-bottom: solid 2px #f3f2f0; }

.card-title {   color: #636466;  margin-bottom: .5rem;     font-size: 1.6em;     font-weight: 500;     line-height: 1.2; }
   .card-title a:hover { color:#086084; }

.card-body a { text-decoration: none; }
.card-theme p.card-text {  line-height: 1.7; margin-bottom: 5px;}
    .card-theme p.card-text:hover { color:#086084; }
p.card-link {  color:#4383c7; line-height: 1; font-weight:600;}
p.card-link:hover {  color:#1b87f9; }
.card.card-theme time { text-align: right;  padding-top: 5px;  color: grey;  font-size: 0.8rem;  font-weight: 700;}

.card .cta { color: #4383c7; }
.card .cta:hover { color:#045ee8; text-decoration: underline; }

.card-body p.card-text:hover { color: #1c7bb2;}

/*  pagination   */
.page-link { border: none; color: #1d5498;}
.pagination-sm .page-item:first-child .page-link, .pagination-sm .page-item:last-child .page-link { font-size: 1em;     padding-top: 0em;  }
.pagination-sm .page-link {     padding: .25rem .5rem 0rem; }
.page-item:hover .page-link {    border-bottom: solid black 3px;  }
.page-item.active .page-link {     color: #fff;     background-color: #1d5498;    border-bottom: solid black 3px;  }
.pagination-sm .page-item:first-child .page-link {     border-top-left-radius: 0rem;     border-bottom-left-radius: 0rem; }


.ProductImage-imageContainer element.style { filter: none;}

/* SPONSORS */
.sponsors {     display: flex;     flex-wrap: wrap;     justify-content: center;     gap: 2rem; } 
.sponsor {     flex: 0 0 calc(20% - 2rem); /* 5 per row on desktop */     text-align: center; }
.sponsor img {     display: block;     margin: 0 auto;     max-width: 100%;     height: auto; }

/* Tablets */
@media (max-width: 991px) {     .sponsor {
        flex: 0 0 calc(33.333% - 1.5rem); /* 3 per row */     } }
/* Mobiles */
@media (max-width: 767px) {     .sponsor {         flex: 0 0 calc(50% - 1rem); /* 2 per row */     } }

#footer, #footer .container { background-color: #3f3f44; }
#footer { padding-bottom: 300px; }
#footer p, #footer a { color: #fff; }
 #footer a:hover { color:#6ec1ec; text-decoration:none;}
  #footer a.active { color:#6ec1ec; }
#footer ul.menu { padding-left: 0px;     font-weight: 500; }
@media print {        header, header *, #comment-form-hide-btn, #right-panel    {         display: none !important;     } }


/* Index headers, Index page and Full event page */
#event-venue-content .more-dates, p.event-note, .event-dates { display: none; }
.event-cost {     border-bottom: 1px solid #bbb; }
.event-category, .event-listedby, .event-website { display: none; }
h3.event-page-name, h3.unimodule-page-name {     margin-top: 50px; border-top: solid 0.5px grey;     padding-top: 10px; margin-bottom: 0;}
.event-start-date p, .event-venue p { line-height: 1.6;     margin-bottom: 0.5rem; }
.unimod-links.content-header {     padding-left: 0; border: none;}
p.event-start, p.event-stop, p.event-venue, p.event-town {     font-weight: 500;     font-size: 1.2em; }
.sig-container {     width: 150px; }

/* ------------------------------
   Module wrapper fix (any page)
------------------------------ */
#modules-holder .custom-box {
    width: 100%;            /* fill parent column */
    max-width: 100%;        /* never exceed column width */
    box-sizing: border-box; /* padding won’t overflow */
}

/* ------------------------------
   Now Showing block
------------------------------ */
.custom-box .now-showing {
    width: 100%;            /* fill module width */
    padding: 20px 0;
    box-sizing: border-box;
    text-align: center;
}

/* Exhibition cards */
.now-showing .exhibition {
    display: block;
    margin-bottom: 2.5rem;
    padding-bottom: 10px;
    text-decoration: none;
    color: inherit;
    transition: box-shadow 0.2s ease;
}

.now-showing .exhibition:hover,
.now-showing .exhibition:focus {
    box-shadow: 0 6px 18px rgba(0,0,0,0.12);
}

/* Change text colour on hover anywhere on the card */
.now-showing .exhibition:hover .exhibition__heading,
.now-showing .exhibition:hover .exhibition__dates,
.now-showing .exhibition:focus .exhibition__heading,
.now-showing .exhibition:focus .exhibition__dates {
    color: #4383c7;
}

/* Images scale to container width */
.now-showing .exhibition__image {
    width: 100%;
    height: auto;
    display: block;
}

/* Headings and dates */
.now-showing .exhibition__heading {
    margin: 1rem 0 0.25rem;
    transition: color 0.2s ease;
}

.now-showing .exhibition__dates {
    margin: 0;
    font-size: 0.95rem;
    transition: color 0.2s ease;
}

/* CTA link styling */
.now-showing__cta a {
    font-size: 1.1rem;
    font-weight: 700;
}