/* =========================================================
   Odonata slider - mobile layout
   ========================================================= */

@media (max-width: 767px) {

  /* Main title */
  .rev_slider_wrapper .rev_slider .tp-caption.mobile-title-center {
    left: 0 !important;
    right: 0 !important;
    top: 9% !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 28px !important;
    line-height: 1.05 !important;

    text-align: center !important;
    white-space: normal !important;

    direction: ltr !important;
    unicode-bidi: isolate !important;

    transform: none !important;

    color: #000 !important;

    text-shadow:
      0 0 3px #fff,
      0 0 6px #fff,
      0 0 10px #fff,
      0 0 14px #fff !important;
  }


  /* Photographer credit - below title */
  .rev_slider_wrapper .rev_slider .tp-caption.mobile-credit-center {
    left: 0 !important;
    right: 0 !important;
    top: 43% !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 21px !important;
    line-height: 1.15 !important;

    text-align: center !important;
    white-space: nowrap !important;

    direction: rtl !important;
    unicode-bidi: isolate !important;

    transform: none !important;
  }


  /* Species identification - larger lower left */
  .rev_slider_wrapper .rev_slider .tp-caption.mobile-species-left {
    left: 4% !important;
    right: auto !important;
    top: 64% !important;

    width: 65% !important;
    max-width: 65% !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 26px !important;
    line-height: 1.2 !important;

    text-align: left !important;

    direction: rtl !important;
    unicode-bidi: isolate !important;
  }


  /* Latin species name */
  .rev_slider_wrapper .rev_slider .tp-caption.mobile-species-left i {
    display: inline-block !important;

    font-size: 26px !important;
    line-height: 1.2 !important;

    white-space: nowrap !important;

    direction: ltr !important;
    unicode-bidi: isolate !important;
  }


  /* Mobile slider height */
  .rev_slider_wrapper.fullwidthbanner-container {
    max-height: 430px !important;
    overflow: hidden !important;
  }

  .rev_slider_wrapper.fullwidthbanner-container .rev_slider {
    max-height: 430px !important;
  }
}
/* =========================================================
   WildIsrael - global mobile header
   Desktop unaffected
   ========================================================= */

@media (max-width: 767px) {

  /* Keep the mobile header compact */
  /* Keep the logo/header branding visible on mobile */

  #header.header-default .topbar > div {
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  #header.header-default .site-branding-logo {
    display: block !important;
    max-width: 70% !important;
    max-height: 62px !important;
    margin: 0 auto !important;
  }

  #header.header-default .logo-site {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    max-height: 62px !important;
    height: auto !important;
  }

  #header.header-default .header-main {
    min-height: 70px !important;
    height: auto !important;
    background-size: cover !important;
    background-position: center !important;
  }

  #header.header-default .header-content-layout,
  #header.header-default .header-main-inner,
  #header.header-default .content-inner {
    width: 100% !important;
    max-width: 100% !important;
  }

  #header.header-default .branding {
    max-width: 58% !important;
    margin: 0 !important;
    padding: 8px 0 !important;
  }

  #header.header-default .branding img.logo-site {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    max-height: 54px !important;
    height: auto !important;
  }

  /* Mobile menu trigger */
  #header.header-default #menu-bar {
    display: block !important;
    position: absolute !important;
    right: 3% !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 1001 !important;
  }

  /* Hide desktop navigation until the mobile menu is opened */
  #header.header-default .desktop-main-navigation {
    display: none !important;
  }

  /* Keep header controls inside the compact header */
  #header.header-default .header-inner {
    min-height: 0 !important;
  }

}

/* =========================================================
   WildIsrael - Gavias Content Builder mobile foundation
   Desktop unaffected
   ========================================================= */

@media (max-width: 767px) {

  /* Prevent builder rows from creating horizontal overflow */
  .gavias-builder--content,
  .gavias-blockbuilder-content,
  .gbb-row-wrapper,
  .gbb-row,
  .bb-container,
  .row-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  /* Remove desktop container side margins/padding on mobile */
  .gavias-builder--content .bb-container,
  .gavias-builder--content .container,
  .gavias-builder--content .container-fw {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  /* Bootstrap rows must stay inside the viewport */
  .gavias-builder--content .row {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  /* Prevent builder columns/content from exceeding viewport */
  .gavias-builder--content [class*="col-"] {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  /* Do not allow builder images to force desktop width */
  .gavias-builder--content img {
    max-width: 100% !important;
    height: auto !important;
    box-sizing: border-box !important;
  }

  /* Mobile-friendly fixed-background rows */
  .gavias-builder--content .gbb-row.gva-fixed-background {
    background-size: cover !important;
    background-position: center top !important;
    background-repeat: no-repeat !important;
  }

  /* Remove the desktop negative overlap on mobile */
  .gavias-builder--content .margin-top--50 {
    margin-top: 0 !important;
  }

}


/* =========================================================
   WildIsrael - mobile slider height
   Remove desktop 500px slider height on phones
   ========================================================= */

@media (max-width: 767px) {

  .rev_slider_wrapper.fullwidthbanner-container {
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;
    overflow: hidden !important;
  }

  .rev_slider_wrapper.fullwidthbanner-container .rev_slider {
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;
  }

}

/* =========================================================
   WildIsrael - reusable SliderLayer mobile layers
   ========================================================= */

@media (max-width: 767px) {

  /* Welcome title - one line, upper portion */
  .rev_slider_wrapper .tp-caption.mobile-welcome-title {
    left: 50% !important;
    right: auto !important;
    top: 12% !important;

    width: max-content !important;
    max-width: none !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 32px !important;
    line-height: 1.1 !important;

    white-space: nowrap !important;
    text-align: center !important;

    direction: ltr !important;
    unicode-bidi: isolate !important;

    transform: translateX(-50%) !important;

    color: #000 !important;

    text-shadow:
      0 0 3px #fff,
      0 0 6px #fff,
      0 0 10px #fff !important;
  }

  /* Welcome/report button - lower portion */
  .rev_slider_wrapper .tp-caption.mobile-welcome-button {
    left: 50% !important;
    right: auto !important;
    top: 68% !important;

    width: auto !important;
    max-width: 90% !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    white-space: nowrap !important;
    text-align: center !important;

    transform: translateX(-50%) !important;
    z-index: 20 !important;
  }

  /* Photographer credit - lower left */
  .rev_slider_wrapper .tp-caption.mobile-credit-left-bottom {
    left: 3% !important;
    right: auto !important;
    top: 82% !important;

    width: auto !important;
    max-width: 94% !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 22px !important;
    line-height: 1.1 !important;

    white-space: nowrap !important;
    text-align: left !important;

    direction: rtl !important;
    unicode-bidi: isolate !important;

    transform: none !important;

    color: #fff !important;

    text-shadow:
      0 0 2px #000,
      0 0 4px #000 !important;
  }

}


/* =========================================================
   WildIsrael - ALL SliderLayer slides - mobile
   Applies to homepage and taxa SliderLayers
   Desktop unaffected
   ========================================================= */

@media (max-width: 767px) {

  /* All slider titles */
  .rev_slider_wrapper .tp-caption.slide-style-1 {
    left: 50% !important;
    width: 94vw !important;
    max-width: 94vw !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 30px !important;
    line-height: 1.1 !important;

    white-space: nowrap !important;
    text-align: center !important;

    transform: translateX(-50%) !important;
  }

  /* All secondary slider text */
  .rev_slider_wrapper .tp-caption.slide-style-3 {
    left: 50% !important;
    width: 94vw !important;
    max-width: 94vw !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 22px !important;
    line-height: 1.2 !important;

    text-align: center !important;

    transform: translateX(-50%) !important;
  }

  /* All slider buttons */
  .rev_slider_wrapper .tp-caption.slider-button {
    left: 50% !important;
    width: auto !important;
    max-width: 90vw !important;
    min-width: 0 !important;

    margin: 0 !important;

    white-space: nowrap !important;

    transform: translateX(-50%) !important;
  }

}


/* =========================================================
   SliderLayer mobile - force title content to one line
   ========================================================= */

@media (max-width: 767px) {

  .rev_slider_wrapper .tp-caption.slide-style-1,
  .rev_slider_wrapper .tp-caption.mobile-title-center {
    left: 50% !important;
    right: auto !important;

    width: 94vw !important;
    max-width: 94vw !important;
    min-width: 0 !important;

    font-size: 28px !important;
    line-height: 1.1 !important;

    white-space: nowrap !important;
    text-align: center !important;

    transform: translateX(-50%) !important;
  }

  /* Prevent HTML inside a layer from creating separate rows */
  .rev_slider_wrapper .tp-caption.slide-style-1 div,
  .rev_slider_wrapper .tp-caption.slide-style-1 p,
  .rev_slider_wrapper .tp-caption.slide-style-1 span,
  .rev_slider_wrapper .tp-caption.mobile-title-center div,
  .rev_slider_wrapper .tp-caption.mobile-title-center p,
  .rev_slider_wrapper .tp-caption.mobile-title-center span {
    display: inline !important;
    white-space: nowrap !important;
  }

  /* Suppress explicit line breaks on mobile */
  .rev_slider_wrapper .tp-caption.slide-style-1 br,
  .rev_slider_wrapper .tp-caption.mobile-title-center br {
    display: none !important;
  }

}


/* =========================================================
   SliderLayer mobile - title and button final positioning
   ========================================================= */

@media (max-width: 767px) {

  /* Force title contents into one normal horizontal flow */
  .rev_slider_wrapper .tp-caption.slide-style-1,
  .rev_slider_wrapper .tp-caption.mobile-title-center {
    left: 50% !important;
    top: 17% !important;

    width: 96vw !important;
    max-width: 96vw !important;
    min-width: 0 !important;

    height: auto !important;
    min-height: 0 !important;

    font-size: 32px !important;
    line-height: 1.15 !important;

    white-space: nowrap !important;
    text-align: center !important;

    transform: translateX(-50%) !important;
  }

  /* Undo SliderLayer positioning inside the title */
  .rev_slider_wrapper .tp-caption.slide-style-1 *,
  .rev_slider_wrapper .tp-caption.mobile-title-center * {
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;

    display: inline !important;

    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    white-space: nowrap !important;
    transform: none !important;
  }

  .rev_slider_wrapper .tp-caption.slide-style-1 br,
  .rev_slider_wrapper .tp-caption.mobile-title-center br {
    display: none !important;
  }

  /* All SliderLayer buttons - lower part of mobile image */
  .rev_slider_wrapper .tp-caption.slider-button {
    left: 50% !important;
    top: 72% !important;

    width: auto !important;
    max-width: 90vw !important;
    min-width: 0 !important;

    white-space: nowrap !important;
    transform: translateX(-50%) !important;
  }

}


/* =========================================================
   Mobile Welcome title - mixed Hebrew / Arabic / English
   ========================================================= */

@media (max-width: 767px) {

  .rev_slider_wrapper .tp-caption.mobile-title-center,
  .rev_slider_wrapper .tp-caption.slide-style-1 {
    left: 50% !important;
    right: auto !important;
    top: 17% !important;

    width: auto !important;
    max-width: 96vw !important;
    min-width: 0 !important;

    height: auto !important;

    direction: ltr !important;
    unicode-bidi: isolate !important;

    white-space: nowrap !important;

    text-align: center !important;

    font-size: 30px !important;
    line-height: 1.1 !important;

    transform: translateX(-50%) !important;
  }

}


/* =========================================================
   WildIsrael homepage Welcome slider - mobile cleanup
   Hide the long secondary text that causes overflow.
   Desktop unchanged.
   ========================================================= */

@media (max-width: 767px) {

  body.frontpage
  .rev_slider_wrapper
  .tp-caption.slide-style-3 {
    display: none !important;
  }

  /* Keep the Welcome button clearly in the lower image area */
  body.frontpage
  .rev_slider_wrapper
  .tp-caption.slider-button {
    display: block !important;
    left: 50% !important;
    top: 68% !important;

    width: auto !important;
    max-width: 90vw !important;
    min-width: 0 !important;

    white-space: nowrap !important;
    transform: translateX(-50%) !important;

    z-index: 20 !important;
  }

}


/* =========================================================
   Welcome SliderLayer - final mobile one-line arrangement
   ========================================================= */

@media (max-width: 767px) {

  /* Complete Welcome title */
  .rev_slider_wrapper .tp-caption.mobile-title-center {
    left: 50% !important;
    right: auto !important;
    top: 20% !important;

    display: block !important;

    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100vw !important;

    height: auto !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 21px !important;
    line-height: 1 !important;

    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow: visible !important;

    text-align: center !important;

    direction: ltr !important;
    unicode-bidi: plaintext !important;

    transform: translateX(-50%) !important;
  }

  /* Prevent SliderLayer's own text sizing from wrapping */
  .rev_slider_wrapper .tp-caption.mobile-title-center span,
  .rev_slider_wrapper .tp-caption.mobile-title-center div {
    display: inline !important;
    width: auto !important;
    max-width: none !important;
    white-space: nowrap !important;
    position: static !important;
    transform: none !important;
  }

  /* Welcome button - clearly below the title */
  body.frontpage .rev_slider_wrapper .tp-caption.slider-button {
    left: 50% !important;
    right: auto !important;
    top: 70% !important;

    width: auto !important;
    max-width: 85vw !important;

    white-space: nowrap !important;

    transform: translateX(-50%) !important;
    z-index: 30 !important;
  }

}


/* =========================================================
   FINAL MOBILE WELCOME TITLE
   One physical line - no SliderLayer wrapping
   ========================================================= */

@media (max-width: 767px) {

  .rev_slider_wrapper .tp-caption.mobile-title-center {
    position: absolute !important;

    left: 50% !important;
    right: auto !important;
    top: 20% !important;

    display: block !important;

    width: max-content !important;
    max-width: none !important;
    min-width: 0 !important;

    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 21px !important;
    line-height: 1 !important;

    white-space: nowrap !important;
    word-wrap: normal !important;
    overflow-wrap: normal !important;
    word-break: keep-all !important;

    direction: ltr !important;
    unicode-bidi: isolate !important;

    text-align: center !important;

    transform: translateX(-50%) !important;

    overflow: visible !important;
  }

  /* Make absolutely certain the text itself cannot wrap */
  .rev_slider_wrapper .tp-caption.mobile-title-center::first-line {
    white-space: nowrap !important;
  }

  /* Button clearly separated in lower part */
  body.frontpage .rev_slider_wrapper .tp-caption.slider-button {
    position: absolute !important;

    left: 50% !important;
    right: auto !important;
    top: 72% !important;

    width: max-content !important;
    max-width: 85vw !important;
    min-width: 0 !important;

    white-space: nowrap !important;

    transform: translateX(-50%) !important;

    z-index: 50 !important;
  }

}


/* =========================================================
   MOBILE FIX - Welcome SliderLayer caption
   Force the three-language title onto ONE line
   ========================================================= */

@media (max-width: 767px) {

  .rev_slider_wrapper .tp-caption.mobile-title-center {
    left: 50% !important;
    right: auto !important;

    width: 700px !important;
    max-width: 700px !important;
    min-width: 700px !important;

    height: auto !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding: 0 !important;

    font-size: 21px !important;
    line-height: 1 !important;

    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;

    text-align: center !important;

    direction: ltr !important;
    unicode-bidi: isolate !important;

    transform: translateX(-50%) !important;

    overflow: visible !important;
  }

  /* Keep the homepage button below the title */
  body.frontpage .rev_slider_wrapper .tp-caption.slider-button {
    left: 50% !important;
    right: auto !important;

    top: 72% !important;

    transform: translateX(-50%) !important;

    white-space: nowrap !important;

    z-index: 50 !important;
  }

}


/* =========================================================
   MOBILE - FORCE HOMEPAGE WELCOME TITLE TO ONE LINE
   ========================================================= */

@media (max-width: 767px) {

  body.frontpage .rev_slider_wrapper .tp-caption.mobile-title-center {
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100vw !important;

    height: 55px !important;

    left: 50% !important;
    right: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 0 !important;
    line-height: 1 !important;

    white-space: nowrap !important;
    overflow: visible !important;

    text-align: center !important;

    transform: translateX(-50%) !important;
  }

  body.frontpage .rev_slider_wrapper .tp-caption.mobile-title-center::after {
    content: "ברוכים הבאים   أهلا وسهلا   Welcome";

    display: block !important;

    width: 100vw !important;
    max-width: 100vw !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 18px !important;
    line-height: 55px !important;

    font-weight: 400 !important;

    text-align: center !important;
    white-space: nowrap !important;

    direction: ltr !important;
    unicode-bidi: isolate !important;

    color: #000 !important;

    text-shadow:
      0 0 3px #fff,
      0 0 6px #fff,
      0 0 10px #fff !important;
  }

  /* Keep the report button centered and below the title */
  body.frontpage .rev_slider_wrapper .tp-caption.slider-button {
    left: 50% !important;
    right: auto !important;
    top: 72% !important;

    transform: translateX(-50%) !important;

    white-space: nowrap !important;
    z-index: 50 !important;
  }

}


/* =========================================================
   MOBILE - FINAL WELCOME TITLE POSITION
   Keep title independent of SliderLayer caption coordinates
   ========================================================= */

@media (max-width: 767px) {

  body.frontpage .rev_slider_wrapper .tp-caption.mobile-title-center {
    width: 1px !important;
    min-width: 1px !important;
    max-width: 1px !important;

    left: 50% !important;
    right: auto !important;

    overflow: visible !important;

    font-size: 0 !important;
    white-space: nowrap !important;
  }

  body.frontpage .rev_slider_wrapper .tp-caption.mobile-title-center::after {
    content: "ברוכים הבאים   أهلا وسهلا   Welcome";

    position: fixed !important;

    left: 50vw !important;
    top: 555px !important;

    width: 100vw !important;
    max-width: 100vw !important;

    height: 42px !important;

    margin: 0 !important;
    padding: 0 !important;

    transform: translateX(-50%) !important;

    font-size: 18px !important;
    line-height: 42px !important;
    font-weight: 400 !important;

    text-align: center !important;
    white-space: nowrap !important;

    direction: ltr !important;
    unicode-bidi: isolate !important;

    color: #000 !important;

    text-shadow:
      0 0 3px #fff,
      0 0 6px #fff,
      0 0 10px #fff !important;

    z-index: 100 !important;
  }

}


/* =========================================================
   MOBILE - RESTORE SLIDER TITLE + HAMBURGER + GAP
   ========================================================= */

@media (max-width: 767px) {

  /* -------------------------------------------------------
     Welcome title
     ------------------------------------------------------- */

  body.frontpage .rev_slider_wrapper .tp-caption.mobile-title-center {
    position: absolute !important;

    left: 50% !important;
    right: auto !important;
    top: 12% !important;

    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100vw !important;

    height: 50px !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 0 !important;
    line-height: 1 !important;

    white-space: nowrap !important;
    overflow: visible !important;

    text-align: center !important;

    transform: translateX(-50%) !important;

    z-index: 100 !important;
  }

  body.frontpage .rev_slider_wrapper .tp-caption.mobile-title-center::after {
    content: "ברוכים הבאים   أهلا وسهلا   Welcome";

    display: block !important;

    width: 100vw !important;
    max-width: 100vw !important;

    height: 50px !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 18px !important;
    line-height: 50px !important;
    font-weight: 400 !important;

    text-align: center !important;
    white-space: nowrap !important;

    direction: ltr !important;
    unicode-bidi: isolate !important;

    color: #000 !important;

    text-shadow:
      0 0 3px #fff,
      0 0 6px #fff,
      0 0 10px #fff !important;
  }


  /* -------------------------------------------------------
     Mobile hamburger
     ------------------------------------------------------- */

  body.frontpage .rev_slider_wrapper ~ * {
    box-sizing: border-box;
  }

  #menu-bar {
    display: flex !important;

    position: absolute !important;

    top: 18px !important;
    right: 18px !important;

    width: 42px !important;
    height: 34px !important;

    margin: 0 !important;
    padding: 5px !important;

    flex-direction: column !important;
    justify-content: space-between !important;

    cursor: pointer !important;

    z-index: 9999 !important;
  }

  #menu-bar span.one,
  #menu-bar span.two,
  #menu-bar span.three {
    display: block !important;

    width: 100% !important;
    height: 3px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #fff !important;

    border-radius: 3px !important;

    opacity: 1 !important;
    visibility: visible !important;
  }


  /* -------------------------------------------------------
     Minimal white separation below every SliderLayer
     ------------------------------------------------------- */

  .rev_slider_wrapper.fullwidthbanner-container {
    margin-bottom: 12px !important;
  }

}


/* =========================================================
   MOBILE CLEANUP - restore native SliderLayer/header behavior
   ========================================================= */

@media (max-width: 767px) {

  /* ---------- Welcome title ---------- */

  body.frontpage .rev_slider_wrapper .tp-caption.mobile-title-center {
    position: absolute !important;

    left: 50% !important;
    right: auto !important;
    top: 12% !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: 96vw !important;

    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 18px !important;
    line-height: 1.2 !important;

    white-space: nowrap !important;
    overflow: visible !important;

    text-align: center !important;

    direction: rtl !important;
    unicode-bidi: plaintext !important;

    transform: translateX(-50%) !important;
  }

  /* Remove our artificial title */
  body.frontpage .rev_slider_wrapper .tp-caption.mobile-title-center::after {
    content: none !important;
    display: none !important;
  }


  /* ---------- Hamburger ---------- */

  #menu-bar {
    display: block !important;

    position: absolute !important;

    top: 50% !important;
    right: 10px !important;

    width: 36px !important;
    height: 32px !important;

    margin-top: -16px !important;

    padding: 0 !important;

    z-index: 9999 !important;
  }

  #menu-bar span {
    display: block !important;

    position: absolute !important;

    left: 0 !important;
    right: 0 !important;

    width: 24px !important;
    height: 2px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    background-color: #222 !important;

    opacity: 1 !important;
    visibility: visible !important;

    transform: none !important;
  }

  #menu-bar span.one {
    top: 6px !important;
    bottom: auto !important;
  }

  #menu-bar span.two {
    top: 15px !important;
    bottom: auto !important;
  }

  #menu-bar span.three {
    top: 24px !important;
    bottom: auto !important;
  }


  /* ---------- White separation below slider ---------- */

  .rev_slider_wrapper.fullwidthbanner-container {
    margin-bottom: 10px !important;
  }

}


/* =========================================================
   MOBILE HOMEPAGE - FINAL SLIDER SPACING / TITLE / CONTROLS
   ========================================================= */
@media (max-width: 767px) {

  /* -------------------------------------------------------
     Welcome title - centered, single line
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper .tp-caption.mobile-title-center {
    left: 50% !important;
    right: auto !important;
    width: 96vw !important;
    max-width: 96vw !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 24px !important;
    line-height: 1.15 !important;

    white-space: nowrap !important;
    overflow: visible !important;

    text-align: center !important;
    direction: rtl !important;
    unicode-bidi: plaintext !important;

    transform: translateX(-50%) !important;
  }

  /* -------------------------------------------------------
     Keep the report button centered
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper .tp-caption.slider-button {
    left: 50% !important;
    right: auto !important;
    width: auto !important;
    max-width: 90vw !important;
    min-width: 0 !important;

    white-space: nowrap !important;
    transform: translateX(-50%) !important;

    z-index: 20 !important;
  }

  /* -------------------------------------------------------
     Hide the SliderLayer/Revolution navigation marks
     visible at the upper-right edge of the slider
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper .tp-bullets,
  body.frontpage .rev_slider_wrapper .tp-bullets-wrapper,
  body.frontpage .rev_slider_wrapper .tp-tabs,
  body.frontpage .rev_slider_wrapper .tp-thumbs {
    display: none !important;
    visibility: hidden !important;
  }

  /* -------------------------------------------------------
     White gap immediately below the slider
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper.fullwidthbanner-container {
    margin-bottom: 18px !important;
  }

  /* Make sure the following content does not pull upward */
  body.frontpage .rev_slider_wrapper.fullwidthbanner-container + * {
    margin-top: 0 !important;
  }

}

/* =========================================================
   MOBILE HOMEPAGE - FIX TITLE / SLIDER GAP / NAV MARKS
   ========================================================= */
@media (max-width: 767px) {

  /* -------------------------------------------------------
     1. CENTER THE WELCOME TITLE
     Use the full slider width rather than Revolution's
     calculated layer width.
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper .tp-caption.mobile-title-center {
    left: 0 !important;
    right: 0 !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;

    text-align: center !important;

    font-size: 24px !important;
    line-height: 1.15 !important;

    white-space: nowrap !important;
    overflow: visible !important;

    direction: rtl !important;
    unicode-bidi: isolate !important;

    transform: none !important;
  }

  /* -------------------------------------------------------
     2. FORCE A REAL WHITE GAP BELOW THE SLIDER
     The slider has a fixed mobile height, so put the
     spacing on the following flow position as well.
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper.fullwidthbanner-container {
    margin-bottom: 0 !important;
    padding-bottom: 18px !important;
    box-sizing: content-box !important;
  }

  /* -------------------------------------------------------
     3. HIDE ALL REVOLUTION SLIDER NAVIGATION / MARKERS
     This also catches the small marks escaping above the
     slider into the white area.
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper .tp-bullets,
  body.frontpage .rev_slider_wrapper .tp-bullets-container,
  body.frontpage .rev_slider_wrapper .tp-bullets-wrapper,
  body.frontpage .rev_slider_wrapper .tp-tabs,
  body.frontpage .rev_slider_wrapper .tp-thumbs,
  body.frontpage .rev_slider_wrapper .tp-loader,
  body.frontpage .rev_slider_wrapper .tp-bannertimer,
  body.frontpage .rev_slider_wrapper .tp-leftarrow,
  body.frontpage .rev_slider_wrapper .tp-rightarrow {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

  /* Catch any Revolution navigation element positioned
     outside the slider wrapper */
  body.frontpage .tp-bullets,
  body.frontpage .tp-tabs,
  body.frontpage .tp-thumbs,
  body.frontpage .tp-loader,
  body.frontpage .tp-bannertimer {
    display: none !important;
    visibility: hidden !important;
  }

}

/* =========================================================
   MOBILE HOMEPAGE - DEFINITIVE SLIDER FIX
   ========================================================= */
@media (max-width: 767px) {

  /* -------------------------------------------------------
     WELCOME TITLE
     Target the actual SliderLayer title class.
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper .tp-caption.slide-style-1 {
    position: absolute !important;

    left: 0 !important;
    right: 0 !important;

    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100vw !important;

    margin: 0 !important;
    padding: 0 !important;

    top: 90px !important;

    font-size: 22px !important;
    line-height: 1.15 !important;

    text-align: center !important;

    white-space: nowrap !important;
    overflow: visible !important;

    direction: rtl !important;
    unicode-bidi: plaintext !important;

    transform: none !important;
  }

  /* The title must not inherit Revolution's desktop
     text positioning. */
  body.frontpage .rev_slider_wrapper .tp-caption.slide-style-1 * {
    max-width: none !important;
  }

  /* -------------------------------------------------------
     REPORT BUTTON
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper .tp-caption.slider-button {
    position: absolute !important;

    left: 50% !important;
    right: auto !important;

    top: 68% !important;

    width: auto !important;
    max-width: 90vw !important;
    min-width: 0 !important;

    margin: 0 !important;

    white-space: nowrap !important;

    transform: translateX(-50%) !important;
  }

  /* -------------------------------------------------------
     SLIDER: 300px image + 20px REAL FLOW GAP
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper.fullwidthbanner-container {
    height: 320px !important;
    min-height: 320px !important;
    max-height: 320px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #fff !important;

    overflow: visible !important;
  }

  body.frontpage
  .rev_slider_wrapper.fullwidthbanner-container
  .rev_slider {
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;

    overflow: hidden !important;
  }

  /* -------------------------------------------------------
     REMOVE REVOLUTION NAVIGATION
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper .tp-bullets,
  body.frontpage .rev_slider_wrapper .tp-bullets-container,
  body.frontpage .rev_slider_wrapper .tp-bullets-wrapper,
  body.frontpage .rev_slider_wrapper .tp-tabs,
  body.frontpage .rev_slider_wrapper .tp-thumbs,
  body.frontpage .rev_slider_wrapper .tp-loader,
  body.frontpage .rev_slider_wrapper .tp-bannertimer,
  body.frontpage .rev_slider_wrapper .tp-leftarrow,
  body.frontpage .rev_slider_wrapper .tp-rightarrow {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

  /* Catch Revolution controls regardless of wrapper. */
  body.frontpage > .tp-bullets,
  body.frontpage > .tp-tabs,
  body.frontpage > .tp-thumbs,
  body.frontpage > .tp-loader,
  body.frontpage > .tp-bannertimer {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

}

/* =========================================================
   MOBILE LIVE FIX - BUTTON + HAMBURGER
   ========================================================= */
@media (max-width: 767px) {

  /* -------------------------------------------------------
     REPORT BUTTON
     Center the complete Revolution Slider layer wrapper,
     not just the caption inside it.
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper .tp-parallax-wrap:has(.tp-caption.slider-button) {
    left: 50% !important;
    right: auto !important;
    width: auto !important;
    transform: translateX(-50%) !important;
  }

  body.frontpage .rev_slider_wrapper .tp-parallax-wrap:has(.tp-caption.slider-button) .tp-caption.slider-button {
    left: 0 !important;
    right: auto !important;
    transform: none !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 90vw !important;
    white-space: nowrap !important;
  }

  /* -------------------------------------------------------
     HAMBURGER
     Keep all three lines inside the header and prevent
     the header from clipping the bottom line.
     ------------------------------------------------------- */
  #menu-bar {
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    right: 10px !important;

    width: 40px !important;
    height: 38px !important;

    margin-top: -19px !important;
    padding: 0 !important;

    z-index: 99999 !important;
    overflow: visible !important;
  }

  #menu-bar span,
  #menu-bar span.one,
  #menu-bar span.two,
  #menu-bar span.three {
    display: block !important;
    position: absolute !important;

    left: 8px !important;
    right: 8px !important;

    width: auto !important;
    height: 3px !important;

    margin: 0 !important;

    background: #fff !important;
    opacity: 1 !important;
    visibility: visible !important;

    transform: none !important;
  }

  #menu-bar span.one {
    top: 4px !important;
    bottom: auto !important;
  }

  #menu-bar span.two {
    top: 17px !important;
    bottom: auto !important;
  }

  #menu-bar span.three {
    top: 30px !important;
    bottom: auto !important;
  }

}

/* =========================================================
   MOBILE HOMEPAGE - FINAL LAYOUT
   ========================================================= */
@media (max-width: 767px) {

  /* -------------------------------------------------------
     1. CENTER BLUE REPORT BUTTON
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slider-button) {
    left: 0 !important;
    right: auto !important;
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100vw !important;
    transform: none !important;
  }

  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slider-button)
  .tp-caption.slider-button {
    left: 50% !important;
    right: auto !important;
    width: auto !important;
    max-width: 90vw !important;
    min-width: 0 !important;
    transform: translateX(-50%) !important;
    white-space: nowrap !important;
  }

  /* -------------------------------------------------------
     2. FORCE 20px WHITE GAP AFTER THE SLIDER
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper.fullwidthbanner-container {
    margin-bottom: 20px !important;
  }

  /* Prevent the next homepage builder row from pulling
     back into the slider space. */
  body.frontpage .rev_slider_wrapper.fullwidthbanner-container
  ~ .gavias-blockbuilder-content {
    margin-top: 20px !important;
  }

  /* -------------------------------------------------------
     3. REMOVE THE SMALL MARKS/DOTS BELOW THE HEADER
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper ~ * .tp-bullets,
  body.frontpage .rev_slider_wrapper ~ * .tp-tabs,
  body.frontpage .rev_slider_wrapper ~ * .tp-thumbs,
  body.frontpage .rev_slider_wrapper ~ .tp-bullets,
  body.frontpage .rev_slider_wrapper ~ .tp-tabs,
  body.frontpage .rev_slider_wrapper ~ .tp-thumbs,
  body.frontpage .tp-bullets,
  body.frontpage .tp-tabs,
  body.frontpage .tp-thumbs {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

  /* Small Revolution navigation elements sometimes get
     positioned outside their slider wrapper. */
  body.frontpage [class*="tp-bullet"],
  body.frontpage [class*="tp-tabs"],
  body.frontpage [class*="tp-thumbs"] {
    display: none !important;
    visibility: hidden !important;
  }

  /* -------------------------------------------------------
     4. KEEP HAMBURGER FULLY VISIBLE
     ------------------------------------------------------- */
  #menu-bar {
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    right: 10px !important;
    width: 40px !important;
    height: 40px !important;
    margin-top: -20px !important;
    padding: 0 !important;
    overflow: visible !important;
    z-index: 999999 !important;
  }

  #menu-bar span.one,
  #menu-bar span.two,
  #menu-bar span.three {
    display: block !important;
    position: absolute !important;
    left: 8px !important;
    right: 8px !important;
    width: auto !important;
    height: 3px !important;
    margin: 0 !important;
    background-color: #fff !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  #menu-bar span.one {
    top: 3px !important;
    bottom: auto !important;
  }

  #menu-bar span.two {
    top: 18px !important;
    bottom: auto !important;
  }

  #menu-bar span.three {
    top: 33px !important;
    bottom: auto !important;
  }

}

/* =========================================================
   MOBILE HOMEPAGE - APPROVED FINAL LAYOUT
   ========================================================= */
@media (max-width: 767px) {

  /* Welcome title */
  body.frontpage .rev_slider_wrapper .tp-caption.slide-style-1 {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100vw !important;
    margin: 0 !important;
    padding: 0 !important;
    top: 14% !important;
    font-size: 22px !important;
    line-height: 1.15 !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: visible !important;
    direction: rtl !important;
    unicode-bidi: plaintext !important;
    transform: none !important;
  }

  /* Center report button */
  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slider-button) {
    left: 0 !important;
    right: auto !important;
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100vw !important;
    transform: none !important;
  }

  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slider-button)
  .tp-caption.slider-button {
    left: 50% !important;
    right: auto !important;
    width: auto !important;
    max-width: 90vw !important;
    min-width: 0 !important;
    transform: translateX(-50%) !important;
    white-space: nowrap !important;
  }

  /* 20px white gap below slider */
  body.frontpage .rev_slider_wrapper.fullwidthbanner-container {
    margin-bottom: 20px !important;
  }

  /* Remove slider dots / navigation marks */
  body.frontpage .rev_slider_wrapper .tp-bullets,
  body.frontpage .rev_slider_wrapper .tp-bullets-container,
  body.frontpage .rev_slider_wrapper .tp-bullets-wrapper,
  body.frontpage .rev_slider_wrapper .tp-tabs,
  body.frontpage .rev_slider_wrapper .tp-thumbs,
  body.frontpage .rev_slider_wrapper .tp-loader,
  body.frontpage .rev_slider_wrapper .tp-bannertimer,
  body.frontpage .rev_slider_wrapper .tp-leftarrow,
  body.frontpage .rev_slider_wrapper .tp-rightarrow,
  body.frontpage .tp-bullets,
  body.frontpage .tp-tabs,
  body.frontpage .tp-thumbs,
  body.frontpage [class*="tp-bullet"],
  body.frontpage [class*="tp-tabs"],
  body.frontpage [class*="tp-thumbs"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

  /* Fully visible 3-line hamburger */
  #menu-bar {
    display: block !important;
    position: absolute !important;
    top: 50% !important;
    right: 10px !important;
    width: 40px !important;
    height: 40px !important;
    margin-top: -20px !important;
    padding: 0 !important;
    overflow: visible !important;
    z-index: 999999 !important;
  }

  #menu-bar span.one,
  #menu-bar span.two,
  #menu-bar span.three {
    display: block !important;
    position: absolute !important;
    left: 8px !important;
    right: 8px !important;
    width: auto !important;
    height: 3px !important;
    margin: 0 !important;
    background-color: #fff !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  #menu-bar span.one {
    top: 3px !important;
    bottom: auto !important;
  }

  #menu-bar span.two {
    top: 18px !important;
    bottom: auto !important;
  }

  #menu-bar span.three {
    top: 33px !important;
    bottom: auto !important;
  }

}

/* =========================================================
   WILDISRAEL - MOBILE HOMEPAGE APPROVED LAYOUT
   FINAL POSITIONING OVERRIDE
   ========================================================= */

@media (max-width: 767px) {

  /* =======================================================
     1. WELCOME TITLE
     ======================================================= */

  body.frontpage .rev_slider_wrapper
  .tp-caption.slide-style-1 {
    left: 50% !important;
    right: auto !important;

    width: max-content !important;
    max-width: 96vw !important;
    min-width: 0 !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    text-align: center !important;
    white-space: nowrap !important;

    transform: translateX(-50%) !important;
  }


  /* =======================================================
     2. BLUE REPORT BUTTON
     
     Cancel Revolution's horizontal translation on the
     parent layer and center the actual caption.
     ======================================================= */

  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slider-button) {
    left: 0 !important;
    right: auto !important;

    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    transform: none !important;
  }

  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slider-button)
  .tp-caption.slider-button {
    left: 50% !important;
    right: auto !important;

    width: max-content !important;
    min-width: 0 !important;
    max-width: 90vw !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    white-space: nowrap !important;

    transform: translateX(-50%) !important;
  }


  /* =======================================================
     3. SLIDER = 300px
     ======================================================= */

  body.frontpage .rev_slider_wrapper.fullwidthbanner-container {
    position: relative !important;

    height: 320px !important;
    min-height: 320px !important;
    max-height: 320px !important;

    margin-bottom: 0 !important;
    padding-bottom: 20px !important;

    box-sizing: border-box !important;

    background: #fff !important;

    overflow: visible !important;
  }

  body.frontpage .rev_slider_wrapper.fullwidthbanner-container
  .rev_slider {
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;

    overflow: hidden !important;
  }


  /* =======================================================
     4. FORCE WHITE 20px GAP BELOW SLIDER
     
     This is an actual block in the slider's flow rather
     than relying only on margin collapsing.
     ======================================================= */

  body.frontpage .rev_slider_wrapper.fullwidthbanner-container::after {
    content: "" !important;

    display: block !important;

    position: absolute !important;

    left: 0 !important;
    right: 0 !important;

    top: 300px !important;

    width: 100% !important;
    height: 20px !important;

    background: #fff !important;

    z-index: 999 !important;
  }


  /* =======================================================
     5. REMOVE STRAY THREE-DOT / REVOLUTION MARKS
     ======================================================= */

  body.frontpage .rev_slider_wrapper .tp-bullets,
  body.frontpage .rev_slider_wrapper .tp-bullets-container,
  body.frontpage .rev_slider_wrapper .tp-bullets-wrapper,
  body.frontpage .rev_slider_wrapper .tp-tabs,
  body.frontpage .rev_slider_wrapper .tp-thumbs,
  body.frontpage .rev_slider_wrapper .tp-loader,
  body.frontpage .rev_slider_wrapper .tp-bannertimer,
  body.frontpage .tp-bullets,
  body.frontpage .tp-tabs,
  body.frontpage .tp-thumbs,
  body.frontpage [class*="tp-bullet"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }


  /* =======================================================
     6. FULL THREE-LINE HAMBURGER
     ======================================================= */

  #menu-bar {
    display: block !important;

    position: absolute !important;

    top: 50% !important;
    right: 10px !important;

    width: 44px !important;
    height: 44px !important;

    margin-top: -22px !important;
    padding: 0 !important;

    overflow: visible !important;

    z-index: 999999 !important;
  }

  #menu-bar span.one,
  #menu-bar span.two,
  #menu-bar span.three {
    display: block !important;

    position: absolute !important;

    left: 7px !important;
    right: 7px !important;

    width: auto !important;
    height: 3px !important;

    margin: 0 !important;

    background-color: #fff !important;

    opacity: 1 !important;
    visibility: visible !important;

    transform: none !important;
  }

  #menu-bar span.one {
    top: 4px !important;
    bottom: auto !important;
  }

  #menu-bar span.two {
    top: 20px !important;
    bottom: auto !important;
  }

  #menu-bar span.three {
    top: 36px !important;
    bottom: auto !important;
  }

}

/* =========================================================
   MOBILE HOMEPAGE - TITLE + HAMBURGER REPAIR
   ========================================================= */
@media (max-width: 767px) {

  /* -------------------------------------------------------
     CENTER ALL SLIDER TITLES
     ------------------------------------------------------- */

  body.frontpage .rev_slider_wrapper .tp-caption.slide-style-1 {
    left: 50vw !important;
    right: auto !important;

    width: 96vw !important;
    max-width: 96vw !important;
    min-width: 0 !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    text-align: center !important;
    white-space: nowrap !important;

    transform: translateX(-50%) !important;
  }

  /* Make the complete title layer wrapper use viewport
     centering instead of Revolution's desktop coordinate. */
  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slide-style-1) {
    left: 50% !important;
    right: auto !important;

    width: 100vw !important;
    max-width: 100vw !important;

    transform: translateX(-50%) !important;
  }


  /* -------------------------------------------------------
     HAMBURGER
     
     Use the existing #menu-bar but make the three lines
     occupy the full available area.
     ------------------------------------------------------- */

  #menu-bar {
    display: block !important;

    position: absolute !important;

    top: 50% !important;
    right: 8px !important;

    width: 48px !important;
    height: 48px !important;

    margin: -24px 0 0 0 !important;
    padding: 0 !important;

    overflow: visible !important;

    z-index: 2147483647 !important;
  }

  #menu-bar span {
    display: block !important;

    position: absolute !important;

    left: 6px !important;
    right: 6px !important;

    width: auto !important;
    height: 4px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #fff !important;

    border-radius: 2px !important;

    opacity: 1 !important;
    visibility: visible !important;

    transform: none !important;
  }

  #menu-bar span.one {
    top: 4px !important;
    bottom: auto !important;
  }

  #menu-bar span.two {
    top: 22px !important;
    bottom: auto !important;
  }

  #menu-bar span.three {
    top: 40px !important;
    bottom: auto !important;
  }

  /* Prevent theme's .show-view state from removing a line
     unless the menu is actually opened. */
  #menu-bar:not(.show-view) span.one,
  #menu-bar:not(.show-view) span.two,
  #menu-bar:not(.show-view) span.three {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

}

/* =========================================================
   MOBILE HOMEPAGE - RESTORE SLIDER + CENTER LAYERS
   ========================================================= */
@media (max-width: 767px) {

  /* -------------------------------------------------------
     RESTORE SLIDER SIZE
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper.fullwidthbanner-container {
    position: relative !important;
    height: 320px !important;
    min-height: 320px !important;
    max-height: 320px !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: visible !important;
    background: #fff !important;
  }

  body.frontpage .rev_slider_wrapper.fullwidthbanner-container
  .rev_slider {
    position: relative !important;
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;

    overflow: hidden !important;
  }

  /* -------------------------------------------------------
     WHITE GAP: 20px
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper.fullwidthbanner-container::after {
    content: "" !important;
    display: block !important;

    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 300px !important;

    width: 100% !important;
    height: 20px !important;

    background: #fff !important;
    z-index: 9999 !important;
  }


  /* -------------------------------------------------------
     CANCEL THE PREVIOUS BAD PARENT POSITIONING
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slide-style-1),
  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slider-button) {
    transform: none !important;
  }


  /* -------------------------------------------------------
     CENTER WELCOME TITLE
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slide-style-1) {
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 0 !important;
  }

  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slide-style-1)
  .tp-caption.slide-style-1 {
    left: 50% !important;
    right: auto !important;

    width: max-content !important;
    max-width: 96vw !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    text-align: center !important;
    white-space: nowrap !important;

    transform: translateX(-50%) !important;
  }


  /* -------------------------------------------------------
     CENTER BLUE REPORT BUTTON
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slider-button) {
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 0 !important;
  }

  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slider-button)
  .tp-caption.slider-button {
    left: 50% !important;
    right: auto !important;

    width: max-content !important;
    max-width: 90vw !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    white-space: nowrap !important;

    transform: translateX(-50%) !important;
  }


  /* -------------------------------------------------------
     REMOVE REVOLUTION MARKS / DOTS
     ------------------------------------------------------- */
  body.frontpage .tp-bullets,
  body.frontpage .tp-tabs,
  body.frontpage .tp-thumbs,
  body.frontpage .tp-loader,
  body.frontpage .tp-bannertimer,
  body.frontpage [class^="tp-bullet"],
  body.frontpage [class*=" tp-bullet"],
  body.frontpage [class*="tp-bullets"],
  body.frontpage [class*="tp-tabs"],
  body.frontpage [class*="tp-thumbs"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }


  /* -------------------------------------------------------
     HAMBURGER - THREE VISIBLE LINES
     ------------------------------------------------------- */
  #menu-bar {
    display: block !important;

    position: absolute !important;

    top: 50% !important;
    right: 8px !important;

    width: 50px !important;
    height: 50px !important;

    margin: -25px 0 0 0 !important;

    padding: 0 !important;

    overflow: visible !important;

    z-index: 2147483647 !important;
  }

  #menu-bar span.one,
  #menu-bar span.two,
  #menu-bar span.three {
    display: block !important;

    position: absolute !important;

    left: 5px !important;
    right: 5px !important;

    width: auto !important;
    height: 4px !important;

    margin: 0 !important;

    background: #fff !important;

    border-radius: 2px !important;

    opacity: 1 !important;
    visibility: visible !important;

    transform: none !important;
  }

  #menu-bar span.one {
    top: 5px !important;
    bottom: auto !important;
  }

  #menu-bar span.two {
    top: 23px !important;
    bottom: auto !important;
  }

  #menu-bar span.three {
    top: 41px !important;
    bottom: auto !important;
  }

}

/* =========================================================
   MOBILE HOMEPAGE - CLEAN REVOLUTION SLIDER POSITIONING
   ========================================================= */
@media (max-width: 767px) {

  /* -------------------------------------------------------
     SLIDER FLOW
     ------------------------------------------------------- */
  body.frontpage .rev_slider_wrapper.fullwidthbanner-container {
    position: relative !important;

    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;

    margin: 0 0 20px 0 !important;
    padding: 0 !important;

    box-sizing: border-box !important;

    overflow: visible !important;
  }

  body.frontpage .rev_slider_wrapper.fullwidthbanner-container
  .rev_slider {
    position: relative !important;

    width: 100% !important;
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;

    overflow: hidden !important;
  }

  /* Keep Revolution's runtime full-width wrapper aligned
     with the existing 300px mobile slider height. */
  body.frontpage .forcefullwidth_wrapper_tp_banner {
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;
  }

  /* Remove the pseudo-element that was creating the
     excessive white space. */
  body.frontpage .rev_slider_wrapper.fullwidthbanner-container::after {
    display: none !important;
    content: none !important;
  }

  /* Remove any previous forced spacing on the following
     content. */
  body.frontpage .rev_slider_wrapper.fullwidthbanner-container
  ~ .gavias-blockbuilder-content {
    margin-top: 0 !important;
  }


  /* -------------------------------------------------------
     WELCOME TITLE
     
     Revolution positions the wrapper; we only use the
     wrapper's center point and center the caption around it.
     ------------------------------------------------------- */

  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slide-style-1) {
    left: 50% !important;
    right: auto !important;

    width: 1px !important;
    min-width: 1px !important;
    max-width: 1px !important;

    margin: 0 !important;
    padding: 0 !important;

    transform: none !important;
  }

  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slide-style-1)
  .tp-caption.slide-style-1 {
    position: absolute !important;

    left: 0 !important;
    right: auto !important;

    width: max-content !important;
    max-width: 96vw !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    text-align: center !important;
    white-space: nowrap !important;

    transform: translateX(-50%) !important;

    font-size: 22px !important;
    line-height: 1.15 !important;
  }


  /* -------------------------------------------------------
     BLUE REPORT BUTTON
     ------------------------------------------------------- */

  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slider-button) {
    left: 50% !important;
    right: auto !important;

    width: 1px !important;
    min-width: 1px !important;
    max-width: 1px !important;

    margin: 0 !important;
    padding: 0 !important;

    transform: none !important;
  }

  body.frontpage .rev_slider_wrapper
  .tp-parallax-wrap:has(.tp-caption.slider-button)
  .tp-caption.slider-button {
    position: absolute !important;

    left: 0 !important;
    right: auto !important;

    width: max-content !important;
    max-width: 90vw !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding-left: 15px !important;
    padding-right: 15px !important;

    white-space: nowrap !important;

    transform: translateX(-50%) !important;
  }


  /* -------------------------------------------------------
     REMOVE REVOLUTION DOTS / MARKERS
     ------------------------------------------------------- */

  body.frontpage .tp-bullets,
  body.frontpage .tp-bullets-container,
  body.frontpage .tp-bullets-wrapper,
  body.frontpage .tp-tabs,
  body.frontpage .tp-thumbs,
  body.frontpage .tp-loader,
  body.frontpage .tp-bannertimer,
  body.frontpage [class*="tp-bullet"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }


  /* -------------------------------------------------------
     HAMBURGER
     
     Do not depend on the third span's original position.
     ------------------------------------------------------- */

  #menu-bar {
    display: block !important;

    position: absolute !important;

    top: 50% !important;
    right: 8px !important;

    width: 46px !important;
    height: 46px !important;

    margin: -23px 0 0 0 !important;
    padding: 0 !important;

    overflow: visible !important;

    z-index: 999999 !important;
  }

  #menu-bar span.one,
  #menu-bar span.two,
  #menu-bar span.three {
    display: block !important;

    position: absolute !important;

    left: 5px !important;
    right: 5px !important;

    width: auto !important;
    height: 3px !important;

    margin: 0 !important;

    background-color: #fff !important;

    opacity: 1 !important;
    visibility: visible !important;

    transform: none !important;
  }

  #menu-bar span.one {
    top: 4px !important;
    bottom: auto !important;
  }

  #menu-bar span.two {
    top: 21px !important;
    bottom: auto !important;
  }

  #menu-bar span.three {
    top: 38px !important;
    bottom: auto !important;
  }

}

/* =========================================================
   MOBILE HEADER — RESERVED BRANDING LANE
   ========================================================= */
@media (max-width: 767px) {
  /* Reserve the right-side control lane for the hamburger. */
  #header.header-default .branding {
    position: absolute !important;
    top: 0 !important;
    right: 64px !important;
    left: 12px !important;
    width: auto !important;
    max-width: none !important;
    height: 70px !important;
    float: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

@media screen and (max-width: 768px) {
  /* Hides the floating block builder buttons on mobile viewports */
  .layout-builder__link, 
  [id^="block-builder"], 
  .contextual-links,
  .local-tasks {
    display: none !important;
  }
}

