/*
 Theme Name: Divi Child
 Theme URI: https://www.elegantthemes.com/gallery/divi/
 Description: Divi Child Theme
 Author: Elegant Themes
 Author URI: https://www.elegantthemes.com
 Template: Divi
 Version: 1.0.0
*/
 
/* Theme customization starts here
------------------------------------------------------- */

/* Menu CSS in Ubermenu -> General Settings -> Custom CSS */

/* Global Fonts */

body #page-container h1, .et_pb_column h1,
body #page-container h2, .et_pb_column h2,
body #page-container h3, .et_pb_column h3,
body #page-container h4, .et_pb_column h4,
body #page-container h5, .et_pb_column h5,
body #page-container h6, .et_pb_column h6,
body #page-container .p-large,
body #page-container .p-med,
body #page-container .button-sm,
body #page-container .button-lg, input.wpcf7-submit,
.event-tile-text p {
  font-family: 'prenton', sans-serif;
  font-style: normal;
	font-feature-settings: 'pnum' 1;
}

body #page-container h1, .et_pb_column h1 {
	font-size: 96px;
	font-weight: 900;
}

body #page-container h2, .et_pb_column h2 {
	font-size: 72px !important;
	font-weight: 900 !important;
	line-height: 1.05 !important;
}

body #page-container h3, .et_pb_column h3 {
	font-size: 40px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	letter-spacing: -0.03em !important;
}

body #page-container h4, .et_pb_column h4 {
	font-size: 28px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.02em !important;
}

body #page-container h5, .et_pb_column h5 {
	font-size: 22px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
}

body #page-container h6, .et_pb_column h6 {
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 1.05 !important;
	letter-spacing: -0.03em !important;
}

body #page-container .p-large {
	font-size: 40px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.02em !important;
}

body #page-container .p-med {
	font-size: 28px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	letter-spacing: -0.01em !important;
}

body #page-container p,
body #page-container .p2,
body #page-container .p3 {
	font-family: 'Open Sans', Helvetica, Arial, Lucida, sans-serif;
}

body #page-container p {
	font-size: 22px !important;
	font-weight: 400 !important;
	line-height: 1.6 !important;
	letter-spacing: -0.02em !important;
}

body #page-container .p2 {
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 1.6 !important;
}

body #page-container .p3 {
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
}

body .button-lg, input.wpcf7-submit {
	font-size: 18px !important;
	font-weight: 500 !important;
	line-height: 0.83 !important;
	letter-spacing: -0.01em !important;
}

body .button-sm {
	font-size: 16px !important;
	font-weight: 500 !important;
	line-height: 0.83 !important;
	letter-spacing: -0.01em !important;
}


body .et_pb_column .exhibit-hero-heading h1 {
	font-size: 96px;
	font-weight: 900;
	text-align: center !important;
}

.cdm-video-mask .et-pb-background-video,
.cdm-video-mask .et_pb_section_video_bg {
  -webkit-mask-image: url("/wp-content/uploads/2025/04/image-mask-exhibits.svg");
          mask-image: url("/wp-content/uploads/2025/04/image-mask-exhibits.svg");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}

body .event-tile-text p {
	font-weight: 500 !important;
	font-size: 18px !important;
	line-height: 1.3 !important;
	letter-spacing: -0.03em !important;
}

body #page-container .faq-text p {
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
}


/* MOBILE FONTS */
@media (max-width: 980px) {

body #page-container h1, .et_pb_column h1 {
	font-size: 50px !important;
	font-weight: 900 !important;
}

body #page-container h2, .et_pb_column h2 {
	font-size: 40px !important;
	font-weight: 900 !important;
	line-height: 1.05 !important;
}

body #page-container h3, .et_pb_column h3 {
	font-size: 32px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	letter-spacing: -0.03em !important;
}

body #page-container h4, .et_pb_column h4 {
	font-size: 24px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.02em !important;
}

body #page-container h5, .et_pb_column h5 {
	font-size: 20px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
}

body #page-container .p-large {
	font-size: 28px !important;
	font-weight: 500 !important;
	line-height: 1.3 !important;
	letter-spacing: -0.02em !important;
}

body #page-container .p-med {
	font-size: 20px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	letter-spacing: -0.01em !important;
}

body #page-container p {
	font-size: 18px !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
}

body #page-container .p2 {
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
}

.exhibit-hero-heading h1 {
	font-size: 50px !important;
	font-weight: 900 !important;
	text-align: center;
}

}

/* END MOBILE FONTS xxxxxxxxxxxxxx */

.et_pb_icon, .et_pb_button_icon {
    font-family: 'ETmodules' !important;
}

.et_pb_button:hover .et_pb_button_icon {
    opacity: 1;
}

.outdoor h1 {
	color: #2F6E05 !important;
}

.indoor h1 {
	color: #0D2472 !important;
}

.program-hero-heading h1{
	font-size: 72px;
	font-weight: 900;
}

li {
	margin-bottom: 15px;
	font-size: 0.85em;
}

body #page-container .li-sm p, li.li-sm {
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
}


.indent-below {
	text-indent: -28px !important;
	padding-left: 20px !important;
}

/* COLORS */

.color-green {
	color: #B3F785 !important;
}

.color-lt-green {
	color: #D1FFB2 !important;
}

.color-dk-green {
	color: #2F6E05 !important;
}


.color-blue {
	color: #053EFA !important;
}

.color-lt-blue {
	color: #C7F0F6 !important;
}

.color-dk-blue {
	color: #0D2472 !important;
}

.color-purple {
	color: #6500A0 !important;
}

.color-lt-purple {
	color: #ECDAF7 !important;
}

.color-dk-purple {
	color: #47056E !important;
}

.color-white {
	color: #FFFFFF !important;
}

.color-off-white {
	color: #F7F4EE !important;
}

.color-black {
	color: #141412 !important;
}

.color-pink {
	color: #F985FF !important;
}

.color-dk-pink {
	color: #9E0AA6 !important;
}

.color-lt-pink {
	color: #FDD9FF !important;
}

.color-lt-pink {
	color: #F985FF !important;
}
#main-content {
  background-color: #F7F4EE !important;
}

.step-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.6em;
  height: 1.6em;
  border-radius: 50%;
  background: #6500a0;
  color: #f7f4ee;
  font-size: 0.95em;
  font-weight: 500;
  line-height: 1;
  flex-shrink: 0;
  vertical-align: middle;
}
	

/* XXXXXXXXXXXXX */

/* BUTTONS */

.et_pb_button.button-sm {
	padding: 16px 40px !important;
	border-radius: 65px !important;
	transition: none !important;
}

body #page-container .et_pb_section .et_pb_button.button-sm:hover {
	padding: 16px 45px 16px 55px !important;

}

.et_pb_button.button-sm:hover:before {
	transition: none !important;
	transform: rotate(180deg);
}

.et_pb_button.button-sm:before {
	transition: none !important;
	transform: rotate(180deg);
}

.et_pb_button.button-lg, input.wpcf7-submit {
	padding-top: 12px !important;
	padding-bottom: 12px !important;
	    padding-right: 48px !important;
    padding-left: 48px !important;
	border-radius: 42px !important;
	line-height: 0.83 !important;
	transition: none !important;
}

.et_pb_button.button-lg:hover:before, input.wpcf7-submit:hover:before {
	transition: none !important;
	transform: rotate(180deg);
}

.et_pb_button.button-lg:before, input.wpcf7-submit:before {
	transition: none !important;
	transform: rotate(180deg);
}

input.wpcf7-submit {
background: #47056E;
	color: #F7F4EE;
	border: 0px;
	}


.et_pb_button.calendar-list-button {
	padding-right: 2em !important;
    padding-left: 2em !important;
	border-radius: 42px !important;
	transition: none !important;
	position: relative;
	left: 400px;
	top: -100px;
}

.et_pb_button.calendar-list-button:before {
	transition: none !important;
	transform: rotate(180deg);
}

body #page-container .et_pb_section .et_pb_button.button-lg.home-page-buttons {
	background-color: #ECDAF7 !important;
	color: #47056E !important;
	width: 100% !important;
	margin-bottom: 10px;
}

body #page-container a.et_pb_section .et_pb_button.button-lg.home-page-buttons:hover {
	min-width: 215px;
	background-color: #6500A0 !important;
	color: #F7F4EE !important;
}

/* DISCOVER BUTTONS */

.discover-label {
	font-family: 'prenton', sans-serif !important;
	font-size: 18px !important;
}

.discover-slide-button {
display: inline-flex; /* aligns items better than inline-block */
  align-items: center;
  padding: 3px 30px;
  border-radius: 50px;
  font-size: 16px;
  font-weight: 500;
  color: #f7f4ee !important;
  text-decoration: none;
  gap: 0.5em; /* spacing between icon and text */

}

.discover-arrow {
  height: 1.2em; 
  width: auto;
  display: inline-block;
  vertical-align: middle;
}

a.discover-slide-button {
	color: #f7f4ee !important;
}

.button-inside-exhibit {
	background: #0D2472 !important;
}

.button-outside-exhibit {
	background: #2F6E05 !important;
}

.button-lg-default {
	background: #47056E !important;
	color: #F7F4EE !important;
}

body.et-db #page-container #et-boc .et-l .et_pb_section .et_pb_button.button-lg.button-outside-exhibit:hover, body.et-db #page-container #et-boc .et-l .et_pb_section .et_pb_button.button-lg.button-inside-exhibit:hover, #page-container #et-boc .et-l .et_pb_section .et_pb_button.button-lg:hover, body.et-db #page-container #et-boc .et-l .et_pb_section .et_pb_button.button-lg.button-celebration:hover {
	padding: 12px 48px !important;
	padding-left: 58px !important;
	padding-right: 38px !important;
}



.button-default-all {
	background: #47056E !important;
}

.button-celebration {
	background: #F985FF !important;
}

.discover-link.home-feature-exhibit, .discover-link.home-feature-exhibit:hover {
	color: #f7f4ee !important;
	padding-left: 30px !important;
}

/* xxxxxxxx */

/* END BUTTONS */

.dashicons {
  vertical-align: middle;
  line-height: 1;
  font-size: 1em;
}

.open-today {
	margin-bottom: 35px
}
.word-opacity {
	opacity: 0.5;
}

.default-page-title-section {
	position: relative;
    margin-top: -120px;
    padding-top: 120px;
}


.transparent-menu-gradient {
  background-image: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0.9),
    rgba(255, 255, 255, 0.0)
  ) !important;
  height: 130px;
	 position: relative; /* keep in flow */
  z-index: 10;         /* appear above hero */
}

.divi-hide {
	display: none;
}

#home-hero-image {
  margin-top: -130px; 
  padding-top: 500px; 
  position: relative;
  z-index: 1;
}

.cdm-duck-icon img {
  transition: transform 0.3s ease;
}

.cdm-duck-icon:hover img {
  transform: rotate(15deg);
}

.custom-1-1-ratio-box {
  aspect-ratio: 1 / 1;
  width: 100%; 
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.quotation-mark {
	width: 100%;
	max-width: 45px;
	padding: 25px 0px;
}

#mr-rogers {
	padding: 10% 0px 15% 0px;
}

#menu-item-160.ham-menu-last.open-lightbox-submenu.cdm-sticky > ul.ubermenu-submenu {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  left: auto !important;
  z-index: 500 !important;
  pointer-events: auto !important;
  height: auto !important;
  /* Add more as needed if UberMenu sets other properties like top, right, etc. */
}

.ubermenu-responsive-toggle>i {
  display: none; /* Hides the default bars */
}

#ubermenu-lightbox-overlay {
	display: none;
}

.ubermenu .ham-menu-last.ubermenu-item > .ubermenu-submenu {
  min-height: 660px !important;
}


.ubermenu-responsive-toggle:before {
  content: "\f009"; /* Unicode for fa-th-large */
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 22px;
	margin-right: 10px;
  color: #141412;
  display: inline-block;
}

/* clip-path overlay */
#lbo-mask {
  -webkit-clip-path: inset(0 round 0);
  clip-path: inset(0 round 0);
}


/* Arrow icons purple on hover */
.arrow-link {
  display: inline-flex;
  align-items: start;
  text-decoration: none; 
	font-weight: 500;
}

.arrow-link .arrow-img {
	margin-right: 10px;
	width: 24px;
	height: 23px;
}

.arrow-link:hover .arrow-white.arrow-img.arrow-next {
  content: url('/wp-content/uploads/2025/04/forward-arrow-white-hover.png');
	height: 23px;
	width: 32px;
}

.arrow-link:hover .arrow-img.arrow-next {
  content: url('/wp-content/uploads/2025/04/forward-arrow-black-hover.png');
	height: 23px;
	width: 32px;
}

.arrow-link:hover .arrow-img.arrow-back {
  content: url('/wp-content/uploads/2025/06/back-arrow-black-hover.png');
	height: 23px;
	width: 32px;
}

.arrow-link:hover .purple-arrow.arrow-img.arrow-back {
  content: url('/wp-content/uploads/2025/06/back-arrow-purple-hover.png');
	height: 23px;
	width: 32px;
}

/* Footer columns */

.custom-footer-row {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
	background: #6500a0;
  /* Set a min-height if you want, but not required if content-based: */
  /* min-height: 300px; */
}

.custom-footer-row .footer-col-1 {
  width: 50% !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.custom-footer-row .footer-col {
  width: 10%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
	opacity: 75%;
}

/* Custom image background headers */

.maintain-bg-height {
  position: relative;
  overflow: hidden;
	min-height:550px;
}

.maintain-bg-height .et-parallax-bg {
  position: absolute !important;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  height: 100%    !important;  /* always fill the section’s height */
  width:  auto   !important;  /* scale width proportionally */
}

.maintain-bg-height.et_pb_section_with_background.et_pb_parallax_off 
  .et_pb_section_background {
  background-size: auto 100% !important;     /* height = 100% of container */
  background-position: center center !important;
  background-repeat: no-repeat !important;
}


/* HOME SLIDE.JS CAROUSEL */

.carousel-init {
	  width: 95% !important;
    position: relative;
    display: block;
    overflow-x: hidden;
    margin: 0;
    padding: 0 0 0px;
}

.carousel-item {
    position: relative;
    float: left;
    height: 100%;
    min-height: 300px;
}

.coordinated-hover-column {
	display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 5%;
	padding-left: 5%;
}

.padding-adjustment {
	padding-top: 0px !important;
	padding-left: 30px !important;
	
}

.container-2-5x2 {
  aspect-ratio: 1.25 / 1;
  width: 100%;
  display: flex !important;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
	padding: 40px 40px;
}

.carousel-hover {
  position: relative;
  display: inline-block;
  z-index: 1; /* base layer */
}

.carousel-hover img {
  position: relative;
  z-index: 2; /* Ensure image sits in front */
}

.container-1-5x1 img {
	margin-top: 50px;
	aspect-ratio: 1.5 / 1;
  height: auto;
  max-height: 100%;
  width: auto;
  object-fit: contain;
  vertical-align: middle;
  display: block;
}

.carousel-hover::before, .carousel-hover::after {
  content: '';
  position: absolute;
  background-repeat: no-repeat;
  /*background-size: contain;*/
	background-size: contain;
  z-index: 0;
  transform: rotate(0deg);
  transition: transform 0.3s ease, right 0.3s ease;
  pointer-events: none;
}

/* The background image layer left */
.carousel-hover.image-inside-exhibit::before {
  bottom: 6%;
  left: 7%;
	height: 90%;
  aspect-ratio: 395 / 494;
  background-image: url('/wp-content/uploads/2025/04/image-bg-shape-lt-blue.png');
  background-position: bottom left;
}

/* The background image layer right */
.carousel-hover.image-inside-exhibit::after {
  bottom: 4%;
  right: 6%;
	height: 70%;
  aspect-ratio: 567 / 377;
  background-image: url('/wp-content/uploads/2025/04/image-bg-shape-dk-blue.png');
  background-position: bottom right;
}

.carousel-hover.image-outside-exhibit::before {
  bottom: 7.5%;
  left: 2%;
	height: 90%;
  aspect-ratio: 491 / 471;
  background-image: url('/wp-content/uploads/2025/05/image-bg-shape-lt-green.png');
  background-position: bottom left;
}

/* The background image layer right */
.carousel-hover.image-outside-exhibit::after {
  bottom: 6%;
  right: 8%;
	height: 70%;
  aspect-ratio: 567 / 377;
  background-image: url('/wp-content/uploads/2025/05/image-bg-shape-dk-green.png');
  background-position: bottom right;
}

.carousel-hover.image-celebration::before {
  bottom: 7%;
  left: 2%;
	height: 80%;
  aspect-ratio: 417 / 489;
  background-image: url('/wp-content/uploads/2025/05/image-bg-shape-lt-pink.png');
  background-position: bottom left;
}

.carousel-hover.image-celebration::after {
  bottom: 5%;
  right: 6%;
	height: 50%;
  aspect-ratio: 469 / 306;
  background-image: url('/wp-content/uploads/2025/05/image-bg-shape-dk-pink-02.png');
  background-position: bottom right;
}

.carousel-hover.image-default-all::before {
  bottom: 8%;
  left: 3%;
	height: 85%;
  aspect-ratio: 483 / 424;
  background-image: url('/wp-content/uploads/2025/05/image-bg-shape-lt-purple.png');
  background-position: bottom left;
}

/* The background image layer right */
.carousel-hover.image-default-all::after {
  bottom: 6%;
  right: 8%;
	height: 70%;
  aspect-ratio: 524 / 424;
  background-image: url('/wp-content/uploads/2025/05/image-bg-shape-purple.png');
  background-position: bottom right;
}

/* Hover effect left*/
.carousel-item:hover .carousel-hover::before {
  transform: rotate(3deg);
}

/* Hover effect right*/
.carousel-item:hover .carousel-hover::after {
  transform: rotate(-3deg);
}

.coordinated-hover-column .hover-rotate {
  transition: transform 0.4s ease;
}
.coordinated-hover-column .hover-lift {
  transition: transform 0.4s ease;
}
.coordinated-hover-column .hover-fade-in {
  opacity: 0;
	visibility: hidden;
  transition: opacity 0.4s ease;
}

.carousel-item:hover .hover-rotate {
  transform: rotate(-6deg);
}
.carousel-item:hover .hover-lift {
  transform: translateY(-8px);
}
.carousel-item:hover .hover-fade-in {
	visibility: visible;
  opacity: 1;
}

.event-tile .calendar-list-button {
  opacity: 0;
	visibility: hidden;
  transition: opacity 0.4s ease;
}

.event-tile:hover .calendar-list-button {
	visibility: visible;
  opacity: 1;
}

.et_pb_section.calendar-event-tile-section {
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
    background-color: #f7f4ee !important;
}



/* xxxxxxxxxxxxxxx */
/* CAROUSEL ON EXHIBIT TEMPLATE */

#exhibit-template-carousel .slick-prev.slick-arrow {
	position: absolute;
	display: block;
	opacity: 1 !important;
	height: 56px !important;
	width: 56px !important;
  top: 95%;
	left: 50% !important;
	transform: translateX(-175%);
}

#exhibit-template-carousel .slick-next.slick-arrow {
	position: absolute;
	display: block;
	opacity: 1 !important;
	height: 56px !important;
	width: 56px !important;
	top: 95%;
	left: 50% !important;
	transform: translateX(-5%);
}

#exhibit-template-carousel .slick-prev.slick-arrow::before {
	position: relative;
	top: 0;
	left: 0;
	display: block;
	opacity: 1 !important;
	width: 56px !important;
	content: url('/wp-content/uploads/2025/04/button-back-wh-purple-2.png') !important;
}

#exhibit-template-carousel .slick-next.slick-arrow::before {
	position: relative;
	top: 0;
	left: 0;
	display: block;
	opacity: 1 !important;
  width: 56px !important;
	content: url('/wp-content/uploads/2025/04/button-next-wh-purple-2.png') !important;
}

/* EXHIBIT ARCHIVE ITEMS */

.custom-landscape-crop-125x1 {
  aspect-ratio: 1.25 / 1;
  overflow: hidden;
  position: relative;
  display: block;
}

.custom-landscape-crop-1x1 {
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  position: relative;
  display: block;
}

.custom-landscape-crop-1x1 .et_pb_module_inner,
.custom-landscape-crop-1x1 a {
  width: 100%;
  height: 100%;
  display: block;
}

.custom-landscape-crop-1x1 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.dmach-grid-item.layout-ready {
  opacity: 1;
}

.dmach-grid-item .dmach-hover-content {
  position: absolute;
  bottom: -150%; /* Start just below image */
  left: 0;
  width: 100%;
  text-align: center;
  /*padding: 1em;*/
  background: #c7f0f6;
	border-radius: 0px 0px 7px 7px;
  color: #040403;
  opacity: 0;
  transform: translateY(0);
  transition: bottom 0.5s cubic-bezier(0.25, 1.25, 0.5, 1), opacity 0.4s ease, transform 0.4s ease;
  z-index: 2;
}

.dmach-grid-item .exhibit-image img {
  transform: scale(1.05);
  transition: transform 0.4s ease;
}

.dmach-grid-item:hover .exhibit-image img {
  transform: scale(1) !important;
}

.bc-link-whole-grid-card .home-exhibit-carousel {
    transform: scale(1.0);
    transition: transform 0.4s ease;
}


.dmach-grid-item:hover .bc-link-whole-grid-card .home-exhibit-carousel {
    transform: scale(1.05) !important;
}

/* gets rid of unknown arrow */
.et_pb_contact_field[data-type=select]:after {
    border-top-color: #faf7f1 !important;
}

/* Default state: visible */
.hide-on-hover {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

#exhibit-page-grid .grid-item-cont et_pb_section {
  background-color: #f7f4ee !important;
}
/* Hide when hovering over the post */
#exhibits-page-grid .dmach-grid-item:hover .hide-on-hover {
  visibility: hidden;
}

.dmach-hover-content {
  visibility: hidden;
  opacity: 1 !important;
}
.dmach-grid-item:hover .dmach-hover-content {
  visibility: visible;
  bottom: -30px;
  transform: translateY(-5px); /* subtle upward slide effect */
}

.mobile-exhibit-item {
	bottom: 10px;
}

.mobile-exhibit-item .discover-label {
  display: none;
}

.layout-a, .layout-b, .layout-mobile, .layout-c, .layout-d {
  display: none;
}

.layout-c, .layout-d {
	margin: 0px 0px !important;
	padding: 0px 0px !important;
}

.exhibit-page-tile-section {
  background: #f7f4ee !important;
}


.layout-a, .layout-b {
  background: #f7f4ee !important;
}


.et_pb_de_mach_carousel .dmach_carousel_container .slick-slide {
margin: 0px 0px;
}

/* xxxxxxxxxxx */

/* Exhibit Filter Buttons Desktop */

.cdm-exhibit-filter {
    margin-bottom: 1.5rem;
}

/* Desktop buttons visible by default, select hidden */
.cdm-exhibit-filter-buttons {
    justify-content: center;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 0.5rem;
    color: #2d2d2d;
}

.cdm-exhibit-filter-select-wrapper {
    display: none;
}

.cdm-filter-btn {
    display: inline-block;
    padding: 0.4rem 1rem;
    border-radius: 999px;
    text-decoration: none;
    border: 3px solid #6500a0;
    font-weight: 600;
    font-size: 0.95rem;
    color: #141412;
}

.cdm-filter-btn:hover {
    background-color: #ECDAF7;
}

.cdm-filter-active:hover {
    background-color: #6500a0 !important;
}


.cdm-filter-active {
    background: #6500a0;
    color: #f7f4ee;
    border-color: #6500a0;
}


/* xxxxxxxxx */

/* CALENDAR PAGE */

/* Remove all default dot styles */
.owl-dot span {
  display: none;
}

/* Style the button itself as a horizontal line */
.owl-dots button.owl-dot {
  width: 48px;           /* Or whatever length you want for the stepper */
  height: 4px;           /* Thickness of the stepper */
  background: rgba(158,10,166,0.2);   /* Inactive line color */
  border-radius: 2px;    /* Rounded edges for a softer look */
  margin: 0 8px;
  padding: 0;
  outline: none;
  border: none;
  transition: background 0.3s, width 0.3s;
  cursor: pointer;
  vertical-align: middle;
  position: relative;
  box-shadow: none;
}

/* Highlight the active "step" */
.owl-dot.active {
  background: #9E0AA6 !important;  
}

/* Optional: fade out inactive lines a little */
.owl-dot:not(.active) {
  opacity: 0.6;
}

.owl-dots {
  text-align: center;
  margin-top: 20px;
}


.ecs-event:hover .decm-show-image-left  {
  transform: scale(1.05) !important;
}

.decm-show-image-left {
	aspect-ratio: 1/1;
}

.decm-show-image-left img {
	border-radius: 8px;
	margin-bottom: 0px !important;
	padding-bottom: 0px !important;
}

.decm-show-image-left {
  transform: scale(1);
  transition: transform 0.4s ease;
}

article.act-post {
    max-width: 451px !important;
    width: 100% !important;
}

body #page-container .act-post p.ecs-excerpt {
  font-weight: 400 !important;
  font-size: 18px !important;
  line-height: 1.6em !important;
}

body #page-container .et_pb_section .act-view-more {
  font-family: 'prenton', sans-serif;
  margin-left: -10px;
	opacity: 0;
}

article.act-post:hover .act-view-more {
  opacity: 1 !important;
}

body #page-container .et_pb_section .decm_event_display p.ecs-showdetail.et_pb_button_wrapper {
    margin-top: 0px !important;
}

body #page-container .et_pb_section .act-view-more:before {
  transition: none !important;
	transform: rotate(180deg);
}

.discover-link {
  font-family: 'prenton', sans-serif;
  margin-left: -10px;
	opacity: 0;
}

.discover-link:before {
	transition: none !important;
	transform: rotate(180deg);
}

.discover-blurb:hover .discover-link, .bc-link-whole-grid-card:hover .discover-link {
	opacity: 1 !important;
}

.discover-blurb img {
	transform: scale(1);
  transition: transform 0.4s ease;
}

.discover-blurb:hover img {
	 transform: scale(1.05) !important;
}

.ecs-event-list .ecs-event .act-post .wp-post-image {
  padding-bottom: 15px;
}

.ecs-eventDate {
	font-family: 'prenton',sans-serif;
font-weight: 500;
font-size: 18px;
line-height: 1.05em;
letter-spacing: -0.03em;
}


.back-to-filter-btn {
  margin-left: 1em;
  font-size: 1.2em;
  text-decoration: none;
  transition: color 0.2s;
	font-size: 0.5em;
}
.back-to-filter-btn:hover {
  color: #47056E;
}


#cdm-calendar-grid-desktop, #cdm-calendar-grid-mobile {
  display: grid;
  gap: 4px;
  max-width: 800px;
}

.cdm-calendar-days-row {
  display: contents; /* let the 7 children be direct grid items */
}

.date-passed {
  opacity: 0.4;
  pointer-events: none; /* disables clicks */
  cursor: default !important;
}


.cdm-calendar-day-header {
  text-align: center;
font-family: 'prenton',sans-serif;
font-weight: 500;
font-size: 18px;
line-height: 1.05em;
letter-spacing: -0.03em;

  background: none;
  color: #141412;
  padding: 0.5em 0;
  border-radius: 4px;
  user-select: none;
}

.cdm-day-cell {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1 / 1;
  text-align: center;
  font-family: 'prenton',sans-serif;
font-weight: 500;
font-size: 18px;
line-height: 105%;
letter-spacing: -0.03em;
  text-decoration: none;
  border-radius: 4px;
  color: white;
}

/* Base background colors */
.hours-930-430 { background-color: #47056E; }
.hours-930-400 { background-color: #053EFA; }
.hours-930-100 { background-color: #F985FF; }
.hours-closed { background-color: #47056E; opacity: 0.2; pointer-events: none; /* disables clicks */
  cursor: default !important;}
.hours-unknown { background-color: #141412;}

/* Override for today */
.cdm-today {
  background-color: #D1FFB2 !important;
  color: #141412;
}

/* Override for selected day */
.cdm-selected {
  background-color: #F7F4EE !important;
  color: #141412;
}

/* Border colors based on hour type */
.border-hours-930-430 { border: 5px solid #47056E; }
.border-hours-930-400 { border: 5px solid #053EFA; }
.border-hours-930-100 { border: 5px solid #F985FF; }
.border-hours-unknown { border: 5px solid #141412; }
.border-hours-closed { border: 5px solid rgba(71, 5, 110, 0.2); }

/* tweak overlap of today + selected */
.cdm-selected.cdm-today {
  background-color: #F7F4EE !important;
  border-style: dashed; /* or just use solid still */
}


#cdm-prev-month-desktop, #cdm-month-label-desktop, #cdm-next-month-desktop {

font-family: 'prenton', sans-serif;
font-weight: 700;
font-size: 28px;
line-height: 1.2em;
letter-spacing: -0.02em;

}

#cdm-prev-month-mobile, #cdm-month-label-mobile, #cdm-next-month-mobile {

font-family: 'prenton', sans-serif;
font-weight: 700;
font-size: 28px;
line-height: 1.2em;
letter-spacing: -0.02em;
margin-right: 10px;
}


#cdm-month-nav-desktop, #cdm-month-nav-desktop {
  display: flex;
  justify-content: left;
  align-items: center;
	gap: 15px;
}
#cdm-month-nav-desktop button, #cdm-month-nav-mobile button {
  padding: 0px 0px;
	background: none;
	border: none;
	cursor: pointer;
}

#cdm-prev-month-mobile:disabled, #cdm-prev-month-desktop:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}

.event-tile {
  background: #f7f4ee;
  width: 100%;
  max-width: 950px;
  position: relative;
  z-index: 0;
  width: 100%;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.event-tile .et_pb_button.event-tile-button.hover-rotate {
	background-color: #ECDAF7 !important;	
	margin-bottom: 10px !important;
	text-align:center;
	padding: 4px 10px !important;
	border-radius: 4px !important;
}

.et_pb_de_mach_thumbnail:hover img, .dmach-grid-item:hover .event-tile-image img {
  transform: scale(1.05) !important;
}

.dmach-grid-item .event-tile  .event-tile-image img {
		max-width: 215px !important;
	width: 100%;
	border-radius: 4px !important;
  transform: scale(1);
  transition: transform 0.4s ease;
}

a.event-tile-text, body #page-container .event-tile-text p {
	font-size: 18px !important;
	color: #47056E !important;
	font-weight: 500 !important;
	line-height: 1.05em;
	letter-spacing: -0.03em !important;
	font-family: 'prenton', sans-serif;
  font-style: normal;
	font-feature-settings: 'pnum' 1;
}

/* xxxx END CALENDAR PAGE xxxx */

/* IMAGE GALLERIES */

/* hide nav dots */
.et-pb-controllers {
	display: none;
}

/* position nav arrows */
.et-pb-slider-arrows a.et-pb-arrow-prev, .et-pb-slider-arrows a.et-pb-arrow-next {
	opacity: 1 !important;
}

.et-pb-slider-arrows a.et-pb-arrow-prev:hover, .et-pb-slider-arrows a.et-pb-arrow-next:hover {
	transition: none !important;
	-webkit-transition: none !important;
}


.et-pb-slider-arrows a.et-pb-arrow-prev,.et-pb-slider-arrows a.et-pb-arrow-prev:hover {
	top: 105% !important; 
	left: 50% !important;
	transform: translateX(-140%);
}

.et-pb-slider-arrows a.et-pb-arrow-next,.et-pb-slider-arrows a.et-pb-arrow-next:hover {
  top: 105% !important; 
	left: 50% !important;
	transform: translateX(20%);
	
}

/* Hide default arrow icons */
.et-pb-slider-arrows a.et-pb-arrow-prev:before,
.et-pb-slider-arrows a.et-pb-arrow-next:before {
  display: none !important;
}

.et_pb_video_play {
	background-image: url('/wp-content/uploads/2025/05/button-play-wh-green.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 80px;    /* Adjust based on your image size */
  height: 80px;
  display: block;
  text-indent: -9999px;  /* Hide any remaining text */
}

.outdoor-exhibit-video .et_pb_video_play {
	background-image: url('/wp-content/uploads/2025/05/button-play-wh-green.png');
}

.indoor-exhibit-video .et_pb_video_play {
	background-image: url('/wp-content/uploads/2025/05/button-play-wh-blue.png');
}

.default-video .et_pb_video_play {
	background-image: url('/wp-content/uploads/2025/06/button-play-wh-purple.png');
}

.celebration-video .et_pb_video_play {
	background-image: url('/wp-content/uploads/2025/06/button-play-pink.png');
}

/* Custom back arrow */
.et-pb-slider-arrows a.et-pb-arrow-prev {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 56px;    /* Adjust based on your image size */
  height: 56px;
  display: block;
  text-indent: -9999px;  /* Hide any remaining text */
}



/* Custom next arrow */
.et-pb-slider-arrows a.et-pb-arrow-next {
  background-image: url('/wp-content/uploads/2025/05/button-next-wh-green.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 56px;    /* Adjust as needed */
  height: 56px;
  display: block;
  text-indent: -9999px;
}

.outdoor-carousel .et-pb-slider-arrows a.et-pb-arrow-prev {
	background-image: url('/wp-content/uploads/2025/05/button-back-wh-green.png');
}

.indoor-carousel .et-pb-slider-arrows a.et-pb-arrow-next {
	background-image: url('/wp-content/uploads/2025/05/button-next-wh-blue.png');
}

.indoor-carousel .et-pb-slider-arrows a.et-pb-arrow-prev {
	background-image: url('/wp-content/uploads/2025/05/button-back-wh-blue.png');
}

.outdoor-carousel .et-pb-slider-arrows a.et-pb-arrow-next {
	background-image: url('/wp-content/uploads/2025/05/button-next-wh-green.png');
}

.celebration-carousel .et-pb-slider-arrows a.et-pb-arrow-prev {
	background-image: url('/wp-content/uploads/2025/04/button-back-wh-purple-2.png');
}

.celebration-carousel .et-pb-slider-arrows a.et-pb-arrow-next {
	background-image: url('/wp-content/uploads/2025/04/button-next-wh-purple-2.png');
}

.date-time-row {
	width: 100%;
	max-width: 686px !important;
}

.tribe-events-view--summary {
    display: none !important;
}

/* xxxxxxxxxxxxxxxx */

/* Row is a flex container */
#page-container .et-db #et-boc .et-l .et_pb_row.sponsor-logo-row {
  display: flex !important;
  flex-wrap: nowrap;
  width: 100% !important;
  align-items: stretch;
	padding: 0px;
	margin: 0px;
	padding-left: 0px !important;
	padding-right: 0px !important;
	margin-left: 0px !important;
	margin-right: 0px !important;
}

/* Columns are equal height and center contents */
.sponsor-logo-row .et_pb_column {
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex: 1 1 25%;
}

/* Image module stretches to fill column */
.sponsor-logo-row .et_pb_image {
  display: flex !important;
  align-items: center;
  justify-content: center;
  height: 100%;
}

/* Image wrapper participates in flex centering */
.sponsor-logo-row .et_pb_image_wrap {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

/* Image displays correctly */
.sponsor-logo-row .et_pb_image_wrap img {
  max-width: 100%;
	width: auto;
  height: auto;
  display: block;
	padding: 8px;
}


.sponsor-logo-row-3 {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center;
    align-items: stretch;
    width: 100% !important;
    gap: 1em;  /*optional, for space between logos */
}
.sponsor-logo-row-3 > .et_pb_column {
    flex: 0 1 20%;    /* 5 per row by default (for 5 logos), overrides Divi's 1/5 widths */
    max-width: 20%;
    box-sizing: border-box;
}

.dtd-callout {
	font-family: 'prenton',sans-serif;
	background: #6500A0 !important;
	color: #F7F4EE !important;
}

.dtd-callout .search-title {
  text-align: left !important;
  font-size: 22px !important;
}

.dtd-callout button {
	background-color: #ECDAF7 !important;
	color: #47056E !important;
	border-radius: 35px !important;
	padding: 10px 25px !important;
}

.dtd-footer,.dtd-footer a {
	color: #F7F4EE !important;
	font-size: 0.85em;
}

/* STICKY PAGE ANCHOR MENUS */

/* Position the vertical menu */
#floating-anchor-container .floating-anchor-menu {
  position: fixed;
  top: 80px;      /* adjust for your header */
  left: 10%;      /* or right: 20px; if you want it on the right */
  z-index: 9999;
  background: transparent;
  padding: 10px;
  border-radius: 8px;
	display: none;
}

/* Show state — just change opacity */
.floating-anchor-menu.visible {
  display: block !important;
}

.side-menu-anchor {
	color: rgba(20,20,18,0.75);
	padding: 8px 12px;
	background: none;
	display: block;
	margin: -12px 0px !important;
}

.side-menu-anchor.active {
  background: #ECDAF7;
  color: #47056E;
	border-radius: 30px;
	padding: 8px 12px;
}

.floating-anchor-menu.hidden {
  display: none !important;
}

@media (min-width: 980px) {

  .switch-columns .carousel-hover {
    order: 2 !important;
  }

  .switch-columns .coordinated-hover-column {
    order: 1 !important;
  }
}

/* Remove common spacing artifacts inside the Divi Text module */
.open-hours-copy p:last-child {
  margin-bottom: 0;
}

/* Ensure the holiday block doesn't add extra spacing */
.open-hours-copy .open-hours-copy-holiday {
  margin-top: 0;
  padding-top: 0;
}

/* If your normal content ends with headings/lists that add margin */
.open-hours-copy .open-hours-copy-normal > *:last-child {
  margin-bottom: 0;
}

.hours-copy-white h5 {
	color: #F7F4EE;
}

body #page-container .et-l--footer .footer-pink-header h6.open-hours-copy-title {
  font-weight: 700 !important;
  color: #9E0AA6;
}

body #page-container .et-l--footer .footer-lt-pink-header h6.open-hours-copy-title {
  font-weight: 700 !important;
  color: #F985FF;
}

body #page-container .et-l--footer .open-hours-copy h5 {
  color: #F7F4EE;
}

body #page-container .et-l--footer .mobile-desktop-footer-menu-row .open-hours-copy h5 {
  color: #141412;
}


/* EVENT CELEBRATION PAGES */

.decorative-button {
	pointer-events: none !important;
}

.event-copy-column {
  position: relative;
  padding-left: 60px;  /* Adjust to fit your icon size + spacing */
}

.event-page-icon {
  position: absolute;
  left: -40px;
  top: 70px;
  transform: translateY(-50%);
  /* Size/circle styles (already set from earlier): */
  width: 48px;
  height: 48px;
  background: #FDD9FF;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.event-page-icon img {
  width: 24px;
  height: 24px;
}

.series-page-icon {
  position: absolute !important;
  left: 10px;
  top: 20px;
  transform: translateY(-50%);
  /* Size/circle styles (already set from earlier): */
  width: 48px;
  height: 48px;
  background: #ECDAF7;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.event-page-icon img, .event-page-icon img {
  width: 24px;
  height: 24px;
}

.decm-show-detail-center, body #page-container .conditional-date .et_pb_text_inner h6, body #page-container .conditional-time .et_pb_text_inner h6 {
	font-family: 'prenton',sans-serif;
font-weight: 500;
font-size: 18px;
font-family: 'prenton',sans-serif;
font-weight: 500 !important;
font-size: 18px;
line-height: 1em;
letter-spacing: -0.03em;
}

/*END EVENT PAGES */

.et-db .et-l .et_pb_contact_field[data-filtertype="acfselectmulitple"]:after,
.et-db .et-l .et_pb_contact_field[data-filtertype="select"]:after,
.et-db .et-l .et_pb_contact_field .divi-acf-map-inline-radius-wrapper:after,
.et-db .et-l .et_pb_contact_select:after {
  display: none !important;
}

/* PEOPLE TILES */

body #page-container .people-tile .dmach-acf-item-container .dmach-acf-item-content p.dmach-acf-value {
  font-size: 18px !important;
  font-weight: 400;
  line-height: 1.2em !important;
}

body #page-container .people-tile .board-position-class .dmach-acf-item-container .dmach-acf-item-content p.dmach-acf-value {
  font-weight: 500 !important;
}

.people-section {
  background: #f7f4ee;
  padding-top: 20px !important;
  padding-bottom: 20px !important;
  margin-top: 0px;
  margin-bottom: 0px;
}

.people-tile {
  background: #f7f4ee;
}

/* Particle bubbles */
#particles-js {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 1; /* Behind your content, adjust as needed */
  pointer-events: none; /* So it doesn't block clicks */
}

/* LOGO ROW */
.logo-row {
  display: flex;
  justify-content: center;
  align-items: stretch;  /* ensure columns fill the height */
 
}

.logo-row .logo-col {
  flex: 1 1 0;
  aspect-ratio: 1 / 1;         /* Makes it square */
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 0;                /* Prevents overflow */
  background: transparent;      /* Optional: add background if you want */
}

.logo-row-vert-center .logo-col {
  flex: 1 1 0;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 0;                /* Prevents overflow */
  background: transparent;      /* Optional: add background if you want */
}

.logo-row .logo-col img, .logo-row-vert-center .logo-col img {
  max-width: 100%;              /* Adjust as needed */
  max-height: 100%;
  width: auto;
  height: auto;
  display: block;
  margin: auto;
  object-fit: contain;
}

/*FORM STYLES*/

/* Make text fields and textareas 100% width of their container */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="radio"],
.wpcf7 textarea {
    /*width: 100%; */
    max-width: 100%;
    box-sizing: border-box;
}

/* Optional: Responsive padding and font-size for textareas */
.wpcf7 textarea {
    min-height: 120px;
    resize: vertical;
}

/* If you want spacing between fields */
.wpcf7 input,
.wpcf7 textarea {
    margin-bottom: 1em;
}

input.text, input.title, input[type=email], input[type=password], input[type=tel], input[type=text], select, textarea {
    background-color: #fff;
    border: 2px solid #fff;
	border-radius: 4px;
    padding: 2px;
    color: #4e4e4e;
    font-size: 18px;
    font-family: 'prenton', sans-serif;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
    padding-right: 10px;
	  margin-right: 15px;
	  margin-bottom: 15px;
}

input.text:hover, input.title:hover, input[type=email]:hover, input[type=password]:hover, input[type=tel]:hover, input[type=text]:hover, select:hover, textarea:hover {
    border: 2px solid #F985FF;
}

span.wpcf7-list-item { display: table-row; }
span.wpcf7-list-item * { display: table-cell; }

span.wpcf7-list-item-label {
	padding-left: 10px;
}

input[type="radio"] {
	accent-color: #47056E !important;
  transform: scale(1.3); /* 1.3x bigger */
  margin-right: 0.8em;   /* optional: keep label aligned */
}

/* CF7 radio buttons inline */
.wpcf7-radio .wpcf7-list-item, .wpcf7-checkbox .wpcf7-list-item {
  display: inline-flex;
  align-items: center;
  margin-right: 1.5em;
}

.wpcf7-radio .wpcf7-list-item label, .wpcf7-checkbox .wpcf7-list-item label {
  display: inline-flex;
  align-items: center;
  gap: 0.4em;
  cursor: pointer;
  white-space: nowrap;
}

.wpcf7-radio .wpcf7-list-item input[type="radio"], .wpcf7-checkbox .wpcf7-list-item input[type="checkbox"] {
  margin: 0;
  flex-shrink: 0;
}

.submit-button-cf7 {
  background-image: none !important;
  transition: background-image 0.2s;
  padding-left: 3em !important; /* space for icon */
  background-repeat: no-repeat !important;
  background-position: 15px center !important;
}

.submit-button-cf7:hover {
  background-image: url('/wp-content/uploads/2025/04/forward-arrow.png') !important;
	background-size: auto 60% !important;
	background-color: #6500A0 !important;
}

.divi-location-fullwidth .divi-filter-item, .divi-location-fullwidth .et_pb_de_mach_search_posts_item p.et_pb_contact_field.divi-filter-item {
    background-color: #F7F4EE !important;
}

.item-list{
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.item-list li{
  margin: 0 0 .35em 0; /* spacing between lines */
}
.item-list li:last-child{
  margin-bottom: 8px;
}

.no-bullets ul {
  list-style: none !important;
  padding: 0 !important;
}

.no-bullets li::marker {
  content: "" !important;
}


/**MOBILE MENU STYLES ***************************/

body {
  overflow-x: hidden;
  scroll-behavior: smooth;
}


#dm_nav {
		display: none;
}

#open-button {
	position: absolute;
	top: 25px !important;
	right:30px !important;
}

#open-button.is-active::before {
	color: #F7F4EE !important;
}

#open-button.is-active {
	top: 85px !important;
}

.menu-text {
	font-size: 18px;
	font-weight: 400;
	line-height: 1.05;
	letter-spacing: -0.03em;
	font-family: 'prenton', sans-serif;
  font-style: normal;
}

.home-page-mobile-menu .menu-text {
	color: #F7F4EE;
}

/* Hide default hamburger lines */
.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
  display: none !important;
}

/* Replace with Font Awesome icon */
.hamburger::before {
  font-family: "Font Awesome 5 Free";
  content: "\f009";
  font-weight: 900;
  font-size: 18px;
	margin-left: 6px;
  color: #141412;
  display: block;
  text-align: center;
	position: absolute;
	top: -15px;
	left: 0%;
}

.home-page-mobile-menu .hamburger::before {
	color: #F7F4EE !important;
}

/* Close icon */
.is-active.hamburger::before {
  font-family: "Font Awesome 5 Free";
  content: "\f00d";
	top: -16px;
}

.dm-circle-expand #dm-menu.nav li.menu-item-has-children {
    margin: 0px 0px;
}

#dm-menu.nav li.menu-item-has-children {
    max-width: 100%;
    margin: auto;
}

.menu-wrap nav a {
	font-family: 'prenton', sans-serif;
  font-style: normal;
}

.menu-wrap .nav #menu-item-2296.buy-tickets-mobile > a {
	padding: 10px 10px !important;
	border-radius: 25px 25px !important;
	background-color: #ECDAF7 !important;
	color: #47056E !important;
	font-size: 18px !important;
	font-weight: 500 !important;
	margin: 20px 30px  !important;
	text-align: center;
}

#dm-menu .mobile-lg-text a, #dm-menu .sub-menu .mobile-lg-text a {
	font-size: 24px !important;
	font-weight: 500;
	line-height: 1.05;
	letter-spacing: 0.02em;
}

*#dm-menu .mobile-gap-below {
	padding-bottom: 40px !important;
}

.close-submenu {
  display: none !important;
}

.back-arrow-img {
  width: 32px;
  vertical-align: middle;
  margin-right: 6px;
}

.back-arrow-text {
  font-family: 'prenton', sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.05%;
	color: #F7F4EE;
}

li.custom-back-button-li {
	margin-bottom: 30px !important;
}


html, body, body.dm-nav-open {
  overflow-x: hidden !important;
	max-width: 100vw !important;
}

@media only screen and (max-width: 980px) {	
#dm_nav {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  max-width: 100vw !important;
  max-height: 100vh !important;
  transform: translateX(-100%) !important;
  transition: transform 0.3s ease;
  z-index: -1 !important;
}
	
#dm_nav.active {
  transform: translateX(0) !important;
  z-index: 10000 !important;
}

  #dm_nav .sub-menu {
    display: none !important;
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }
	
  /* full-screen menu wrapper */
#dm_nav.active {
    position: fixed !important;
    top:      0 !important;
    left:     0 !important;
    width:   100vw !important;
    height:  100vh !important;
    overflow: hidden !important;   
    transform: none !important;
    transition: none !important;
    z-index: 10000 !important;
  }

  #dm_nav.active .scroll_section {
    height: 100% !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

#dm_nav ul.sub-menu {
    position: absolute !important;
    top:    0 !important;
    left:   0 !important;
    width: 100% !important;
    height:100% !important;
    background: inherit !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    visibility: hidden !important;
    opacity:    0 !important;
    transform:  none !important;
    transition: none !important;
    z-index: 10001 !important;
  }

  #dm_nav.active
    li.menu-item-has-children.visible > ul.sub-menu
  {
    visibility: visible !important;
    opacity:    1 !important;
  }


  #dm_nav.active .close-submenu,
  #dm_nav.active .custom-back-button {
    position: absolute !important;
    top:  1rem !important;
    left: 1rem !important;
    z-index: 10002 !important;
    cursor: pointer;
  }

body.dm-nav-open {
  overflow: hidden !important;
  height:   100vh  !important;
}

  #dm_nav.active ul.sub-menu {
    background-color: #47056E !important;
  }

  #dm_nav.active li.menu-item-has-children.visible > ul.sub-menu {
    opacity:    1 !important;
    visibility: visible !important;
  }

#dm_nav.active {
  background-color: #47056E !important;
}

#dm_nav .sub-menu {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  transform: translateX(0) !important;
  transition: none !important;
  pointer-events: none !important;
}

#dm_nav .visible > .sub-menu {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
}

.sub-menu {
  transform: translateX(100%);
  transition: transform 0.3s ease;
}

#dm_nav .sub-menu {
  transform: none !important;
  transition: none !important;
}

#dm_nav,
#dm_nav .menu-wrap__inner,
#dm_nav .sub-menu {
  max-width: 100vw !important;
  overflow-x: hidden !important;
  box-sizing: border-box !important;
}

#dm_nav .sub-menu {
  transform: none !important;
  transition: none !important;
}
	
.cdm-duck-link {
  position: absolute;
  display: block;
  max-width: 25px;
	width: 25px;
  top: 8px;
  right: calc(30px + 70px + 12px); /* your tuned value */
  z-index: 100;
}

.cdm-duck-link img {
  width: 100%;
  height: 100%;
  display: block;
}

.menu-wrap {
	padding: 2.5em 0em 0 1.5em !important;
}
}
/* END MOBILE MENU STYLE */

/*MOBILE STYLES*/

@media (max-width: 980px) {
	
	.word-opacity {
	opacity: 1;
}

	.quotation-mark {
	width: 50%;
	max-width: 25px;
	padding: 10px 0px;
}

.carousel-item:hover .hover-fade-in {
    visibility: hidden !important;
	opacity: 0 !important;
}
	
.carousel-item:hover .hover-lift {
   transform: translateY(0px) !important;
}


.carousel-item:hover .hover-rotate {
    transform: translateY(-20px) rotate(-6deg);
}

	
#mr-rogers {
	padding: 2% 0px 25% 0px;
}
	
	/* Responsive: 2 rows of 2 columns each */
  .sponsor-logo-row {
    flex-wrap: wrap;
  }

  .sponsor-logo-row .et_pb_column {
    flex: 1 1 50%;      /* 2 columns per row */
    max-width: 50%;
		margin-right: 0px !important;
  }
	
	#dm_nav {
		display: block;
	}
	
	.no-wrap-row .et_pb_column {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  .no-wrap-row {
    display: flex !important;
    flex-wrap: nowrap !important;
  }
	
/* HOME Featured Slides Mobile */
	
.coordinated-hover-column {
	margin-left: 0px !important;
	padding-left: 0px !important;
	max-width: 325px !important;
	border-radius: 0px 0px 20px 20px;
}

.container-2-5x2 {
  aspect-ratio: initial;
	padding: 0px 0px !important;
	margin-bottom: 0px !important;
}

.container-1-5x1 img  {
	 margin-top: 0px;
	 max-height: none;
	 min-height: 0px;
	 aspect-ratio: initial;
	 border-radius: 20px 20px 0px 0px; }

/* The background image layer left */
.carousel-hover.image-inside-exhibit::before {
  background-image: none;
}
	
/* The background image layer left */
.carousel-hover.image-outside-exhibit::before {
  background-image: none;
}

/* The background image layer right */
.carousel-hover.image-inside-exhibit::after {
  background-image: none;
}
	
/* The background image layer right */
.carousel-hover.image-outside-exhibit::after {
  background-image: none;
}

.coordinated-hover-column .hover-rotate, .coordinated-hover-column:hover .hover-rotate {
	/*position: absolute !important;*/
	top: 0px;
  left: 0px;
  transform: translateY(-20px) rotate(-6deg);
}
.coordinated-hover-column:hover .hover-lift {
  transform: translateY(0px);
}
.coordinated-hover-column:hover .hover-fade-in {
	visibility: hidden;
  opacity: 0;
}
	
	.carousel-mobile-arrow {
		position: absolute !important;
		bottom: 24px;
		left: 24px;
		margin-top: 12px;
	}
	
/* ── Ensure the Code Module and its inner wrapper fill the column ── */
  #home-carousel-section-id .et_pb_row .et_pb_column
    .et_pb_module.et_pb_code,
  #home-carousel-section-id .et_pb_row .et_pb_column
    .et_pb_code_inner {
    display:   block !important;
    width:     100%   !important;
    max-width: 100%   !important;
  }

  /* ── Slider container fills its column, allows overflow for peeking ── */
  #home-carousel-section-id .et_pb_row .et_pb_column
    .home-carousel-slider.slick-slider {
    width:     100%    !important;
    max-width: 100%    !important;
    margin:    0 auto  !important;
    overflow:  visible !important;
  }

  /* ── Let the “mask” overflow so adjacent slides can peek ── */
  .home-carousel-slider.slick-slider .slick-list {
    overflow: visible   !important;
    position: relative  !important;
    padding:  0         !important;
  }

  /* ── Force the track into a tight horizontal flex row ── */
  .home-carousel-slider.slick-slider .slick-track {
    display:         flex        !important;
    flex-wrap:       nowrap      !important;
    justify-content: flex-start !important;
  }

  /* ── Each slide wrapper sizes to its content, no extra gutters ── */
  .home-carousel-slider.slick-slider .slick-slide {
    flex:    0 0 auto !important;
    width:   auto     !important;
    margin:  0        !important;
    padding: 0        !important;
  }

  /* ── Your actual “card” stacks its two columns, caps at 325px, and remains fluid ── */
  .home-carousel-slider.slick-slider .carousel-slide {
    display:        flex      !important;
    flex-direction: column   !important;
    width:          100%      !important; /* fluid down to viewport width */
    max-width:      325px     !important; /* your design cap */
    margin:         0 auto    !important; /* center within each slide */
  }

  /* ── Inside the card, force the two divs to stack and fill 100% ── */
  .home-carousel-slider.slick-slider .carousel-slide
      .container-2-5x2,
  .home-carousel-slider.slick-slider .carousel-slide
      .coordinated-hover-column {
    width:     100%   !important;
    max-width: 100%   !important;
    margin:    0      !important;
    padding:   0      !important;
  }
	
/* END Featured Slides Mobile */
	
/* home exhibits carousel mobile */
	.dmach_carousel_container .slick-list {
padding: 0 30% 0 0 !important;
}

/* exhibits page */

/* Exhibit Filter Dropdown Mobile */

.cdm-exhibit-filter-buttons {
        display: none;
    }
    .cdm-exhibit-filter-select-wrapper {
        display: block;
    }
    #cdm-exhibit-filter-select {
        width: 100%;
        padding: 0.5rem;
        background-color: #6500A0 !important;
	appearance: none;            /* Chrome, Safari, modern browsers */
    -webkit-appearance: none;    /* iOS Safari */
    -moz-appearance: none;       /* Firefox */

    background-image: url(/wp-content/uploads/2025/05/chevron-down-sm.png);
    background-repeat: no-repeat;
    background-position: 95% 50%;      /* Your desired icon position */
    background-size: 16px;             /* Adjust to icon dimensions */

    padding-right: 2rem;               /* Make space so text doesn't overlap icon */
	border-radius: 8px;
        margin-bottom: 0.3rem;
        font-weight: 600;
        font-size: 0.9rem;
	color: #F7F4EE !important;
	font-family: 'prenton', sans-serif;
	font-size: 16px;
	font-weight: 600;
	text-align: left;

}


/* xxxxxxxxx */
	
	.search_filter_cont .divi-filter-item {
		background-color: #F7F4EE !important;
	}
	
	.contact-box h3 {
		font-size: 24px !important;
	}
	
	.contact-box {
		min-height: 200px !important;
	}
	
	.contact-box-2 h3 {
		font-size: 24px !important;
	}
	
	.contact-box-2 {
		min-height: 300px !important;
	}
	
.maintain-bg-height {
	max-height: 500px !important;
		min-height: 1px !important;
	}
	
/* CALENDAR MOBILE */

	.event-tile {
		max-width: 300px !important;
	}

	#our-events {
		margin-left: auto !important;
		margin-right: auto !important;
		padding-left: 0px !important;
	}
	
	.dmach-grid-item .event-tile  .event-tile-image img {
		max-width: 300px !important;
	}
	
	.et_pb_de_mach_thumbnail:hover img, .dmach-grid-item:hover .event-tile-image img {
  transform: scale(1) !important;
}
	
	.hover-rotate.event-tile-text.event-tile-button {
		position: static !important;
		transform: none !important;
	}
	
.main-events-loop .grid-posts.loop-grid {
  align-self: center;
  justify-self: center;
}

	body #page-container .et_pb_section .act-view-more {
	opacity: 1 !important;
}
	
  .act-view-more .discover-label   {
    display: none;
  }
	
	.act-view-more::before {
    min-width: 24px !important;
  }
	
/* END CALENDAR */
	
.et_pb_column.event-copy-column {
	margin-bottom: 30px !important;
	max-height:80px !important;}
	
/* MOBILE STRUCTURE */
	.et_pb_section {
        padding: 0px 0px;
    }

	.scaling-hero-image {
		transition: none !important;
	width: 100%;
	min-height: 300px;
	width: 100%;
	overflow: hidden;
	}
	
.scaling-hero-image img {
  width: 100% !important;
	min-height: 300px !important;
	object-fit: cover;
	object-position: center;
 }
	
.outdoor-exhibit-video .et_pb_video_play, .indoor-exhibit-video .et_pb_video_play, .default-video .et_pb_video_play {
  width: 60px; 
  height: 60px;
}
	
	.ecs-event.ecs-event-posts.celebrations_ecs_category {max-width: 451px !important}
	
p.divi-filter-result-count.result_count_right {
  margin-right:15px;
}
	
} /*END MOBILE 980px */

@media (max-width: 385px) {
/* very small phone adjustment */
	.quotation-mark {
	padding: 5px 0px;
}
}

@media (min-width: 1151px) and (max-width: 1500px) {
#floating-anchor-container .floating-anchor-menu {
  left: 1%;      /* or right: 20px; if you want it on the right */
}
}
	
	@media (min-width: 1051px) and (max-width: 1150px) {
#floating-anchor-container .floating-anchor-menu {
  left: 5px;      /* or right: 20px; if you want it on the right */
}
}

@media (max-width: 1050px) {
#floating-anchor-container .floating-anchor-menu {
  position: static !important;
	display: block !important;
}
	
.side-menu-anchor.active {
  background: none !important;
	border-radius: 30px;
	padding: 8px 12px;
	color: rgba(20,20,18,0.75);
}
}

@media (max-width: 767px) {

.cdm-video-mask .et-pb-background-video,
.cdm-video-mask .et_pb_section_video_bg {
  -webkit-mask-image: url("/wp-content/uploads/2025/04/image-mask-exhibits-mobile.svg");
          mask-image: url("/wp-content/uploads/2025/04/image-mask-exhibits-mobile.svg");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}
	
.sponsor-logo-row-3.et_pb_row.et_pb_row_5col > .et_pb_column,
    .sponsor-logo-row-3.et_pb_row > .et_pb_column,
    .sponsor-logo-row-3 > .et_pb_column {
        flex: 0 1 50% !important;
        max-width: 50% !important;
        width: 50% !important;
        box-sizing: border-box !important;
        display: flex !important;        /* Makes sure they behave as flex-items */
        justify-content: center;         /* Centers image horizontally if needed */
			
			gap: 0em;  /*optional, for space between logos */
    }
    .sponsor-logo-row-3 > .et_pb_column:last-child {
        flex-basis: 100% !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}