@media (max-width: 767px) {
  /* Reset UIcore split text animations on mobile */
  .ui-split-animate,
  .ui-split-animate *,
  .splitting,
  .splitting *,
  .ui-split-animate .ui-e-animated,
  .ui-split-animate span:not(.whitespace) {
    animation: none !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    transition: none !important;
    --ui-delay: 0s !important;
    --ui-stagger: 0s !important;
  }

  .ui-split-animate .ui-e-animated,
  .ui-split-animate span:not(.whitespace) {
    display: inline !important;
  }

  /* Disable Elementor/UIcore entry animations on mobile */
  .elementor-element.animated,
  .elementor-element.animated-slow,
  .elementor-element.animated-fast,
  [class*="uicore-animate"],
  .uicore-animated-bg,
  .e-transform {
    animation: none !important;
    transform: none !important;
    transition: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
}


/* iPhone/iPad tap-highlight bug fix */
@media (hover: none) and (pointer: coarse) {
  body *:not(a):not(button):not(input):not(textarea):not(select):not(label):not(iframe):not(form):not(form *):not(.wpforms-form):not(.wpforms-form *):not(.cf-turnstile):not(.cf-turnstile *):not([class*="turnstile"]):not([class*="turnstile"] *):not([role="button"]):not(.elementor-button):not(.elementor-clickable):not(.elementor-menu-toggle):not(.elementor-nav-menu):not(.elementor-nav-menu *):not(.elementor-accordion):not(.elementor-accordion *):not(.elementor-toggle):not(.elementor-toggle *):not(.e-n-accordion):not(.e-n-accordion *):not(.e-n-accordion-item):not(.e-n-accordion-item *):not(summary):not(summary *):not(.wcp-light-box):not(.wcp-light-box *):not(.wpc-light-box):not(.wpc-light-box *):not(.wpcp-single-item):not(.wpcp-single-item *):not(.wpcpro-col-xs-1):not(.wpcpro-col-xs-1 *):not(.wpcpro-col-sm-2):not(.wpcpro-col-sm-2 *):not(.wpcpro-col-md-3):not(.wpcpro-col-md-3 *):not(.wpcpro-col-lg-4):not(.wpcpro-col-lg-4 *):not(.wpcpro-row):not(.wpcpro-row *):not(.wpcp-carousel-section):not(.wpcp-carousel-section *):not(.wpcp-carousel-wrapper):not(.wpcp-carousel-wrapper *):not(.wpcp-gallery-wrapper):not(.wpcp-gallery-wrapper *):not([data-fancybox]):not([data-fancybox] *):not(.fancybox-container):not(.fancybox-container *):not(.elementor-element-baacd97):not(.elementor-element-baacd97 *):not(.elementor-element-17aafd7):not(.elementor-element-17aafd7 *) {
    pointer-events: none !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  a,
  a *,
  button,
  button *,
  input,
  input *,
  textarea,
  textarea *,
  select,
  select *,
  label,
  label *,
  iframe,
  form,
  form *,
  .wpforms-form,
  .wpforms-form *,
  .cf-turnstile,
  .cf-turnstile *,
  [class*="turnstile"],
  [class*="turnstile"] *,
  [role="button"],
  [role="button"] *,
  .elementor-button,
  .elementor-button *,
  .elementor-clickable,
  .elementor-clickable *,
  .elementor-menu-toggle,
  .elementor-menu-toggle *,
  .elementor-nav-menu,
  .elementor-nav-menu *,
  .elementor-accordion,
  .elementor-accordion *,
  .elementor-toggle,
  .elementor-toggle *,
  .e-n-accordion,
  .e-n-accordion *,
  .e-n-accordion-item,
  .e-n-accordion-item *,
  summary,
  summary * {
    pointer-events: auto !important;
  }

  /* Keep accordion headers tappable, but stop opened content receiving tap highlight */
  .elementor-tab-content,
  .elementor-tab-content *,
  .e-n-accordion [role="region"],
  .e-n-accordion [role="region"] * {
    pointer-events: none !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  .elementor-tab-title,
  .elementor-tab-title *,
  summary,
  summary * {
    pointer-events: auto !important;
  }

  /* Re-enable pointer events on testimonial slider */
  .elementor-element-9bf7291,
  .elementor-element-9bf7291 *,
  .elementor-element-9bf7291 .swiper,
  .elementor-element-9bf7291 .swiper-wrapper,
  .elementor-element-9bf7291 .swiper-slide,
  .elementor-element-9bf7291 .elementor-swiper-button-next,
  .elementor-element-9bf7291 .elementor-swiper-button-prev,
  .elementor-element-9bf7291 .swiper-pagination,
  .elementor-element-9bf7291 .swiper-pagination * {
    pointer-events: auto !important;
  }

  /* WP Carousel Pro lightbox fix */
  .wcp-light-box,
  .wcp-light-box *,
  .wpc-light-box,
  .wpc-light-box *,
  .wpcp-single-item,
  .wpcp-single-item *,
  .wpcpro-col-xs-1,
  .wpcpro-col-xs-1 *,
  .wpcpro-col-sm-2,
  .wpcpro-col-sm-2 *,
  .wpcpro-col-md-3,
  .wpcpro-col-md-3 *,
  .wpcpro-col-lg-4,
  .wpcpro-col-lg-4 *,
  .wpcpro-row,
  .wpcpro-row *,
  .wpcp-carousel-section,
  .wpcp-carousel-section *,
  .wpcp-carousel-wrapper,
  .wpcp-carousel-wrapper *,
  .wpcp-gallery-wrapper,
  .wpcp-gallery-wrapper *,
  [data-fancybox],
  [data-fancybox] *,
  .fancybox-container,
  .fancybox-container *,
  .elementor-element-17aafd7,
  .elementor-element-17aafd7 *,
  .elementor-element-baacd97,
  .elementor-element-baacd97 * {
    pointer-events: auto !important;
    touch-action: manipulation !important;
  }
}

.wcp-light-box,
.wpc-light-box {
  cursor: pointer !important;
}

/* iPad Anatomy Adventure accordion title fix */
@media (min-width: 768px) and (max-width: 1023px) {
  .aa-ideal-accordion .e-n-accordion-item-title-icon {
    display: none !important;
  }

  .aa-ideal-accordion .e-n-accordion-item-title-text::before {
    content: "+";
    display: inline-block;
    margin-right: 12px;
    font-weight: 700;
  }

  .aa-ideal-accordion details[open] .e-n-accordion-item-title-text::before {
    content: "–";
  }

  .aa-ideal-accordion summary.e-n-accordion-item-title {
    display: flex !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .aa-ideal-accordion .e-n-accordion-item-title-header {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .aa-ideal-accordion .e-n-accordion-item-title-text {
    display: inline-flex !important;
    justify-content: center !important;
    text-align: center !important;
  }
}


/* iPad FAQ accordion title fix */
@media (min-width: 768px) and (max-width: 1023px) {
  .elementor-element-183362d .e-n-accordion-item-title-icon,
  .elementor-element-406a00a .e-n-accordion-item-title-icon,
  .elementor-element-9ff146c .e-n-accordion-item-title-icon {
    display: none !important;
  }

  .elementor-element-183362d .e-n-accordion-item-title-text::before,
  .elementor-element-406a00a .e-n-accordion-item-title-text::before,
  .elementor-element-9ff146c .e-n-accordion-item-title-text::before {
    content: "+ ";
    font-weight: 700;
  }

  .elementor-element-183362d details[open] .e-n-accordion-item-title-text::before,
  .elementor-element-406a00a details[open] .e-n-accordion-item-title-text::before,
  .elementor-element-9ff146c details[open] .e-n-accordion-item-title-text::before {
    content: "– ";
  }
}

/* Android tablet portrait: Square logo + payment icons fix */
@media (min-width: 600px) and (max-width: 1366px) and (orientation: portrait) {

  /* Square logo */
  img[width="300"][src*="Square_Logo"] {
    width: 180px !important;
    max-width: 180px !important;
    height: auto !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Square logo container centering */
  .elementor-element-eb6c98c {
    display: flex !important;
    justify-content: center !important;
  }

  /* Payment icons */
  img[width="500"][height="500"] {
    width: 50px !important;
    max-width: 50px !important;
    height: 50px !important;
    display: block !important;
  }

  /* Payment icons container */
  .elementor-element-c7483ca {
    gap: 8px !important;
    justify-content: center !important;
  }

  .elementor-element-c7483ca .elementor-widget-container {
    padding: 0 !important;
    margin: 0 !important;
  }

}






/* Tablet landscape fixes */
@media (hover: none) and (pointer: coarse) and (min-width: 1024px) and (max-width: 1366px) and (orientation: landscape) {
  /* Hide desktop hover section */
  .elementor-element-2f82599 {
    display: none !important;
  }

  /* Show tablet accordion section */
  .elementor-element-8046c33 {
    display: flex !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    padding-bottom: 60px !important;
  }

  /* Remove unwanted spacing */
  .elementor-element-8046c33 .e-con-inner,
  .elementor-element-8046c33 .elementor-widget-container,
  .elementor-element-8046c33 .e-n-accordion {
    padding: 0 !important;
    margin: 0 !important;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  /* Ensure accordion content can fully expand */
  .elementor-element-8046c33 details,
  .elementor-element-8046c33 [role="region"] {
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  /* Last-resort clipping prevention */
  .elementor-element-8046c33 * {
    overflow: visible !important;
  }

  /* Accordion images size */
  .elementor-element-8046c33 img {
    max-width: 600px !important;
    height: auto !important;
    margin: 0 auto !important;
    display: block !important;
  }

  .elementor-element-3173f76 {
    padding-bottom: 15px !important;
  }

  /* About section padding fix */
  .elementor-element-b06a1be {
    padding-bottom: 20px !important;
  }

  .elementor-element-fef8f1e {
    padding-top: 30px !important;
  }
}