/* Sadly, this does not work inside a media query */
/* I'll leave it there as a note

:root {
  --sf-global-mobile-min-width: 768px;
  --sf-global-mobile-max-width: 767px;
  --sf-global-tablet-max-width: 1024px;
  --sf-global-tablet-min-width: 1025px;
}

*/

/* Layout ** ** ** ** */

/* .entry-content section {
    background: #f3f3f3;
}
.entry-content section:first-child .elementor-container {
    background: #f3f3f3;
    padding-top: 35px;
}
.entry-content section:last-child .elementor-container {
    background: #f3f3f3;
    padding-bottom: 35px;
}
.entry-content section .elementor-container .elementor-container {
    background: #f3f3f3;
    padding: 0;
} */

.entry-content p + ul {
  margin-top: -1.5rem;
}

#primary {
  margin: 0;
  background: #fff;
  padding: 0 !important;
}

.hentry {
  margin-bottom: 0px;
}

/* Create a margin to avoid the element to touch the borders */
/* 10px desktop, 10px mobile as elementor default*/
.entry-content > .elementor > .elementor-section:not(.elementor-section-full_width) {
  padding-left: 10px;
  padding-right: 10px;
}

@media (max-width: 767px) {
  .ast-container {
    max-width: 768px;
    padding: 0;
  }
  #primary {
    float: none;
    width: auto;
    margin: 0;
    padding: 0;
  }
  .uael-close-custom-top-right {
    top: 70px;
  }
}

@media (min-width: 768px) {
  .ast-container {
    /* max-width: 1440px; */
    padding: 0;
  }
  #primary {
    /* float: none;
    width: auto;
    margin: 0 60px; */
    /* padding: 49px 60px; */
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  #primary {
    /* margin: 0 20px;
    padding: 0; */
  }
	.smartfilter-container * {
		border: none;
	}
	.smartfilter-container {
		max-width: 30%;
		margin-right: 15px;
		float: left;
	}
  .smartfilter-container select {
    width: 100%;
  }
	.smartfilter-container + section {
		float: left;
		max-width: 67%;
	}
	.smartfilter-container + section + section {
		float: left;
		width: 100%;
	}
}

.body-new-blog-single-template-2024 .ast-container {
  min-width: 100%;
}
.body-new-blog-single-template-2024 .ast-container .tag-new-blog-single-template-2024.ast-article-single.format-standard {
  padding: 0!important;
}

.elementor-text-editor p:last-child {
  margin-bottom: 0;
}

.sf-btn-ada a {
  min-width: 170px;
  min-height: 49px;
  border-radius: 24.5px;
  border: solid 1px var(--e-global-color-primary);
  background-color: var(--e-global-color-primary);
  font-size: 1rem;
  font-weight: 600;
  text-align: center;
  color: #fff;
}
.sf-btn-ada a:hover {
  text-decoration: underline;
}


/* == Buttons overrides == */

body .elementor-button-wrapper .elementor-button-link {
  white-space: nowrap;
}
body .elementor-button-wrapper .elementor-button-text:after {
  font-family: "Six-Flags" !important;
  content: "\e903";
  font-size: .75em;
  margin-left: 8px;
}


body .elementor-button-wrapper .elementor-button:focus {
  /* background-color: #1b67ec; */
}

body .elementor-widget-posts .elementor-post__read-more:hover {
  text-decoration: underline;
}

body .elementor-button.elementor-size-xs {
  font-size: 0.875rem;
  font-weight: 400;
  padding: 9px 20px 8px 20px;
  min-height: 28px;
  min-width: 110px;
}
@media screen and (min-width: 1024px) {
  body .elementor-button.elementor-size-xs {
    font-size: 1rem;
    min-width: 90px;
  }
}

/* CTAs */
body
  .elementor-widget-eael-cta-box
  .elementor-widget-container
  .cta-button.elementor-button-fullwidth,
body .elementor-button.elementor-button-fullwidth {
  width: 100%;
}
body
  .elementor-element
  .elementor-widget-eael-cta-box
  .elementor-widget-container
  .eael-call-to-action
  .cta-button:not(.cta-secondary-button) {
  background: var(--e-global-color-primary);
  color: #fff;
}

body
  .elementor-element
  .elementor-widget-eael-cta-box
  .elementor-widget-container
  .eael-call-to-action
  .cta-button:not(.cta-secondary-button):hover,
body .elementor-button-wrapper .elementor-button:hover {
  
}

/* read more */
body .elementor-widget-posts .elementor-post__read-more {
  background-color: var(--e-global-color-primary) !important;
  font-size: 1rem;
  padding: 8px;
  display: inline-block;
  box-shadow: none;
  width: 100%;
  border-radius: 18.2px;
  margin-bottom: 5px;
  font-weight: normal;
  text-align: center;
  color: #ffffff;
}

/* Button info */

body .elementor-button.elementor-button-info:hover,
body .elementor-element.elementor-button-info .elementor-button:hover {

  /* text-decoration: underline; */
}

/* Button Success (Green) */
body .elementor-element.elementor-button-success .elementor-button {
  background: #7BBC55;
}
body .elementor-element.elementor-button-success .elementor-button:hover {
  background: #5aa5dc;
}

/* Button Info (Transparent) */
body .elementor-element.elementor-button-info .elementor-button {
  background: transparent;
  color: #000;
}
body .elementor-element.elementor-button-info .elementor-button:hover {
  background: transparent;
  color: #5aa5dc;
}

/* Button Red (warning) */
body .elementor-element.elementor-button-warning .elementor-button {
  background: transparent;
  border: 2px solid #d8372f;
  color: #d8372f;
}
body .elementor-element.elementor-button-warning .elementor-button:hover {
  background: transparent;
  border: 2px solid #5aa5dc;
  color: #5aa5dc;
}

/* Button Orange (danger) */
body .elementor-element.elementor-button-danger .elementor-button {
  background: #e4813b;
}
body .elementor-element.elementor-button-danger .elementor-button:hover {
  background: #5aa5dc;
}

/* Button Primary */
body .elementor-element.elementor-button-primary-link .elementor-button {
  background: transparent;
  border: 2px solid #fff;
  color: #fff;
}
body .elementor-element.elementor-button-primary-link .elementor-button:hover {
  background: transparent;
  border: 2px solid #F6C544;
  color: #F6C544;
}

/* Button Info (Transparent) */
body .elementor-element.elementor-button-secondary-link .elementor-button {
  background: transparent;
  color: #fff;
}
body .elementor-element.elementor-button-secondary-link .elementor-button:hover {
  background: transparent;
  color: #F6C544;
}

@media screen and (max-width: 768px) {
  body.single-park
    .elementor-widget-eael-cta-box
    .elementor-widget-container
    .eael-call-to-action {
    display: flex;
    flex-direction: column;
  }
  body .elementor-widget-eael-cta-box .elementor-widget-container .cta-button {
    margin: 0 auto;
    min-width: 70%;
    text-align: center;
  }
}

body .elementor-posts h2.elementor-post__title a {
  color: black;
}

/** Custom styling for opening hours */
@media screen and (max-width: 768px) {
  .jet-calendar-grid td.jet-calendar-week__day {
    padding: 3px;
  }
  .jet-calendar-grid .jet-calendar-week__day-content {
    display: block !important;
  }

  .jet-calendar-grid
    .jet-calendar-week__day-content
    .jet-listing-dynamic-link__link,
  .jet-calendar-grid
    .jet-calendar-week__day-content
    .jet-listing-dynamic-field__content {
    font-size: 1rem;
  }

  .jet-calendar-grid
    .jet-calendar-week__day-content
    .elementor-widget-wrap.elementor-element-populated {
    padding: 5px;
  }

  .jet-calendar-grid .jet-calendar-week__day-mobile-trigger {
    background-color: #f47b1e !important;
    border-radius: 50%;
  }
}

.sf-hours-mobile {
  background: #fff;
  box-shadow: 0px 0px 10px #ccc;
}
.sf-hours-mobile .elementor-column {
  width: 50% !important;
}
.sf-hours-mobile .sf-hours-time .elementor-widget-wrap {
  padding-left: 0px !important;
  padding-right: 0px !important;
}
.sf-hours-mobile
  .sf-hours-time
  .elementor-container
  > .elementor-inner-column:first-child::after {
  content: "-";
  font-size: 1.5rem;
}

/** Landing Pages - Align Buttons and Background Color */
.category-landing-listing .elementor-post {
  position: relative;
  padding-bottom: 45px;
  overflow: inherit;
}
.category-landing-listing .elementor-post .elementor-post__read-more {
  position: absolute;
  bottom: 0px;
}
.single-park .content-area.primary .cta-button {
  background: var(--e-global-color-secondary) !important;
  color: #ffffff !important;
}
.single-park .content-area.primary .cta-button:hover {
  background-color: var(--e-global-color-secondary) !important;
  color: #ffffff !important;
  text-decoration: underline;
}

/** Event Pages - Remove Category and Author */
.ast-single-post-order {
  display: none;
}

/** Remove footer link style on hover for subheaders */
body
  .ubermenu-fatfooter
  .ubermenu-item-has-children.ubermenu-item-level-2
  > a.ubermenu-target:hover
  > .ubermenu-target-text {
  cursor: default;
  text-decoration: none;
}
.eael-call-to-action h2.title,
.elementor-posts h2.elementor-post__title {
  font-size: 1.75rem;
  font-weight: bold;
  margin-top: 10px;
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .eael-call-to-action h2.title,
  .elementor-posts h2.elementor-post__title {
    font-size: 2rem;
    margin-top: 0;
    margin-bottom: 10px;
  }
}

/* CUSTOM STYLING FOR FAQS */
.wp-faqp-main .wp-faqp-title {
  line-height: 1;
  margin: 0;
  padding: 10px !important;
  border-bottom: 1px solid #d4d4d4;
  display: flex;
  align-items: baseline;
}

body .wp-faqp-accordion.wp-faqp-design-1 .wp-faqp-main {
  background-color: #fff;
}

.wp-faqp-main.wp-faqp-open .wp-faqp-title {
  border-bottom: none;
}

.wp-faqp-main.wp-faqp-open .wp-faqp-cnt-wrp {
  border: 1px solid #d4d4d4;
}

.wp-faqp-main .wp-faqp-title h4,
.elementor-tab-title .elementor-toggle-title {
  font-weight: bold;
  text-transform: none;
  color: #0a0a0a;
}
.wp-faqp-main .wp-faqp-title::before {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 10px;
}
.wp-faqp-main.wp-faqp-open .wp-faqp-title::before {
  content: "\f0d8";
}
.wp-faqp-accordion-list [data-accordion] > [data-control]::after {
  display: none;
}
.wp-faqp-accordion .wp-faqp-main-wrp .wp-faqp-main .wp-faqp-title h4 {
  font-size: 14px !important;
}
@media screen and (min-width: 768px) {
  .wp-faqp-accordion .wp-faqp-main-wrp .wp-faqp-main .wp-faqp-title h4 {
    font-size: 16px !important;
  }
}
.wp-faqp-accordion .wp-faqp-main,
.wp-faqp-cat-title {
  margin-bottom: 0 !important;
}
.wp-faqp-main-wrp {
  margin-bottom: 30px;
}
.wp-faqp-accordion .wp-faqp-main .wp-faqp-title:focus-visible h4 {
  outline: 1px dotted !important;
}

/* CUSTOM STYLING FOR Elementor accordion */
.elementor-toggle-item .elementor-tab-content {
  border: 1px solid #d4d4d4;
}

/* CUSTOM STYLING FOR COVID BANNER ALERT */
.covid-banner .elementor-alert {
  background: white;
  border: white;
  color: black;
  font-size: 0.875rem;
  line-height: 1.15rem;
}
.covid-banner .elementor-alert-description {
  font-size: 0.875rem;
  margin-top: 4px;
}

/* CUSTOM STYLING FOR HEADER MENU */
.header-mainmenu .header-menu-close:before {
  content: "" !important;
}
@media screen and (min-width: 970px) {
  .header-mainmenu .header-menu-close {
    display: none;
  }
}


/* CUSTOM STYLE FOR TOP HERO IMAGE */

/* .sf-img-events-card img {
  max-height: 270px;
  object-fit: cover;
  object-position: center;
} */

@media screen and (min-width: 1025px) {
  .sf-page-hero img {
    max-height: 380px;
    object-fit: contain;
    object-position: center;
  }
  .sf-page-hero.full-img img {
    object-fit: cover;
  }
  .sf-img-events-card img {
    max-height: 380px;
  }
}

.sf-text--red,
.sf-text--red p,
.sf-text--red a {
  color: var(--e-global-color-primary);
}

#primary .sf-text--decoration a {
  text-decoration: underline;
  color: var(--e-global-color-secondary);
}
#primary .sf-text--decoration a:hover {
  text-decoration: none;
}

#primary .sf-text--decoration.sf-text-primary a {
  color: var(--e-global-color-secondary);
}
#primary .sf-text--decoration.sf-text-secondary a {
  color: #000;
}

.elementor-widget-container p a,
.elementor-widget-container .elementor-text-editor a {
  text-decoration: underline;
  color: var(--e-global-color-secondary);
}
.elementor-widget-container p a:hover,
.elementor-image .elementor-widget-container .elementor-text-editor a:hover {
  text-decoration: none;
}
.elementor-posts .elementor-post__excerpt p {
  margin: 0;
  line-height: 1.5em;
  font-size: 1rem;
  color: #000;
}

.sf-search-popular-wrapper .menu-link,
.sf-search-popular-wrapper .ubermenu-target {
  color: var(--e-global-color-secondary);
  text-decoration: underline;
}

.sf-search-popular-wrapper .menu-link:hover,
.sf-search-popular-wrapper .ubermenu-target:hover {
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .covid-banner-container {
    max-height: 90px;
  }
  .elementor-alert-description{
    overflow-y: scroll;
    max-height: 50px;
  }
}
.elementor-post__read-more:focus {
  outline: 2px dotted #000;
  transition: outline 0.1s linear;
}

.swiper-slide a:focus .swiper-slide-image {
  outline: 2px dotted #000;
  transition: outline 0.1s linear;
}

.skip-link.screen-reader-text:focus {
  outline: 2px dotted #000;
  transition: outline 0.1s linear;
  clip-path: none;
  overflow: auto;
}
button.uael-video-wistia-play:focus {
  outline: 2px solid #2cc4ff;
  box-shadow: 0 0 5px #2cc4ff !important;
  transition: outline 0.1s linear;
}
/*HP Hero with Wistia styles*/
.sf-wistia-text {
  position: absolute;
  top: 600px;
  left: 5%;
  transform: translateY(-110%);
}

@media (max-width: 767px) {
  #main section.sf-wistia-slider-hero {
    margin: -4px 0 0 0;
    max-height: 432px;
    overflow: hidden;
  }
}

@media (min-width: 768px) {
  #main section.sf-wistia-slider-hero {
    margin: -50px 0 0 0;
    max-height: 600px;
    overflow: hidden;
  }
}

.sf-product-cta {
  cursor: pointer;
}

body ul li {
  margin-top: 5px;
}

.elementor-element.sf-listing-event-btn[true] .elementor-button-wrapper .elementor-button{
  background-color: rgba(0,0,0,.5);
  color: #1c1c1c!important;
  opacity: .3;
  cursor: inherit;
}

.this-visibility-hidden {
  display: none;
  visibility: hidden;
}


/** -- TABLET --


