/* ========================================================= 
    MENU
   ========================================================= */

/* Normal arrow for parent items */
.elementor-widget-jupiterx-advanced-menu a[href*="javascript"],
.jupiterx-menu a[href*="javascript"],
a[href^="javascript:void"] {
    cursor: default !important;
}

/* Desktop: Change cursor for non-clickable parent items */
.elementor-element.elementor-element-d4b68a6 nav.raven-adnav-menu-main:not(.raven-adnav-menu-offcanvas) > ul.raven-adnav-menu > li.menu-item-has-children > a.raven-menu-item {
    cursor: default;
}

/* Desktop: Submenu dropdown radius and box shadow */
.elementor-element.elementor-element-d4b68a6 nav.raven-adnav-menu-main:not(.raven-adnav-menu-offcanvas) > ul.raven-adnav-menu ul.submenu {
    border-radius: 0 0 20px 20px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
    overflow: hidden;
}

/* All layouts: Bottom padding on last submenu link */
.elementor-element.elementor-element-d4b68a6 nav.raven-adnav-menu-main:not(.raven-adnav-menu-offcanvas) > ul.raven-adnav-menu ul.submenu > li:last-child > a.raven-submenu-item,
.elementor-element.elementor-element-d4b68a6 nav.raven-adnav-menu-main.raven-adnav-menu-offcanvas > .raven-container > ul.raven-adnav-menu ul.submenu > li:last-child > a.raven-submenu-item,
.elementor-element.elementor-element-d4b68a6 nav.raven-adnav-menu-main.raven-adnav-menu-offcanvas > ul.raven-adnav-menu ul.submenu > li:last-child > a.raven-submenu-item,
.elementor-element.elementor-element-d4b68a6 nav.raven-adnav-menu-mobile.raven-adnav-menu-side > .raven-container > ul.raven-adnav-menu ul.submenu > li:last-child > a.raven-submenu-item,
.elementor-element.elementor-element-d4b68a6 nav.raven-adnav-menu-mobile.raven-adnav-menu-side > ul.raven-adnav-menu ul.submenu > li:last-child > a.raven-submenu-item {
    padding-bottom: 20px;
}

/* Mobile: Remove spacing between submenu items */
.elementor-element.elementor-element-d4b68a6 nav.raven-adnav-menu-mobile .raven-container > ul.raven-adnav-menu > li > ul.submenu > li:not(:last-of-type) {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Mobile: Capitalise submenu text */
.elementor-element.elementor-element-d4b68a6 nav.raven-adnav-menu-mobile .raven-container > ul.raven-adnav-menu ul.submenu > li > a.raven-submenu-item,
.elementor-element.elementor-element-d4b68a6 nav.raven-adnav-menu-mobile .raven-container > ul.raven-adnav-menu ul.submenu > li > a.raven-submenu-item .link-text,
.elementor-element.elementor-element-d4b68a6 nav.raven-adnav-menu-mobile .raven-container > ul.raven-adnav-menu ul.submenu > li > a.raven-submenu-item .link-label {
    text-transform: capitalize !important;
}

/* Mobile: Top-level menu link padding */
.elementor-77 .elementor-element.elementor-element-d4b68a6 nav.raven-adnav-menu-mobile .raven-adnav-menu li > a.raven-menu-item {
    padding: 0 20px;
}


/* ========================================================= 
    FORM STYLING
   ========================================================= */

/* Fix bottom margin on columns */
.column-fix .wp-block-columns {
  margin-bottom: 0px !important;
}

/* Columns set to NEVER stack: keep gap at all widths */
.column-fix .wp-block-columns.is-not-stacked-on-mobile {
  column-gap: 10px !important;
  row-gap: 10px !important;
}

/* Columns that DO stack on mobile: normal gap on desktop (side-by-side) */
@media (min-width: 1025px) {
  .column-fix .wp-block-columns:not(.is-not-stacked-on-mobile) {
    column-gap: 10px !important;
    row-gap: 20px !important;
  }
}

/* Columns that DO stack on mobile: no gap once actually stacked */
@media (max-width: 1024px) {
  .column-fix .wp-block-columns:not(.is-not-stacked-on-mobile) {
    column-gap: 0px !important;
    row-gap: 0px !important;
  }
}

/* Date picker icon colour */
.jet-form-builder__field.date-field::-webkit-calendar-picker-indicator {
  filter: invert(13%) sepia(89%) saturate(6000%) hue-rotate(340deg) brightness(90%) contrast(105%) !important;
}

/* Textarea height */
.jet-form-builder__field.textarea-field {
  height: 120px !important;
}


/* ========================================================= 
    IMAGE STRETCH
   ========================================================= */

@media (max-width: 768px) {
  .image-stretch img { width: 100%;
  height: 100%;
  object-fit: cover
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .image-stretch-down img {
        height: 310px;
        object-fit: cover;
        width: 100%;
    }
}


/* ========================================================= 
    TABLE STYLING
   ========================================================= */

.course-tables table td:last-child {
    white-space: nowrap;
}


/* ========================================================= 
    BLOG POSTS
   ========================================================= */

/* Featured image border radius: Desktop and tablet */
@media (min-width: 768px) {
    .raven-post-image img,
    .blog-image-radius .raven-post-image .raven-image-fit img {
        border-radius: 50px !important;
    }
}

/* H3 heading styles */
h3 {
    font-family: 'Europa', sans-serif !important;
    text-transform: uppercase !important;
    font-weight: bold !important;
    font-size: 1.2rem !important;
    line-height: 1.5rem !important;
}
