/***********************************************
  FIX 1️⃣ – REMOVE GREY POPUP OVERLAY SAFELY
************************************************/
.mfp-bg,
.mfp-container,
.mfp-preloader,
.mfp-wrap {
    display: none !important;
}


/***********************************************
  FIX 2️⃣ – FORCE PAGE TO SCROLL ALWAYS
  (Fix scroll not working after refresh)
************************************************/
html,
body {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    height: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

html.mfp-lock,
body.mfp-lock,
html.mfp-helper,
body.mfp-helper,
body.mfp-wrap {
    overflow: auto !important;
    position: static !important;
    touch-action: auto !important;
}


/***********************************************
  FIX 3️⃣ – REMOVE WHITE BLANK GAP ON MOBILE
************************************************/
@media (max-width: 767px) {
    header,
    .elementor-location-header {
        margin-top: 0 !important;
        padding-top: 0 !important;
        top: 0 !important;
        z-index: 9999 !important;
    }

    .elementor-section:first-of-type {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
}


/***********************************************
  FIX 4️⃣ – STICKY HEADER LOGO ALIGNMENT + HEIGHT
************************************************/
header.sticky {
    min-height: 90px !important; /* Sticky HEADER HEIGHT control */
    display: flex !important;
    align-items: center !important;
}

/* Remove pushing down issue */
header.sticky .navbar-brand {
    padding-top: 0  !important;
    padding-bottom: 0 !important;
}

/* Keep logo perfectly centered */
header.sticky .crafto-site-logo-wrapper,
header.sticky .navbar-brand {
    display: flex !important;
    align-items: center !important;
}

/* Increase logo size in sticky state */
header.sticky .crafto-site-logo img {
    max-height: 65px !important; /* adjust 60–75px as you like */
    width: auto !important;
    transition: all 0.3s ease-in-out !important; /* smooth shrink/expand */
}

header.sticky.header-common-wrapper {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
    height: auto !important;
    min-height: 90px !important;
    display: flex !important;
    align-items: center !important;
}





/* Curved Underline Animation for Underline Effect Green */
.underline-effect-green {
    position: relative;
    display: inline-block;
    overflow: visible;
}

/* Curved SVG underline */
.underline-effect-green::after {
    content: "";
    position: absolute;
    bottom: -35px;
    left: 0;
    width: 100%;
    height: 30px;
    background-repeat: no-repeat;
    background-size: 122% 120%;
    background-position: center;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 300 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 15 Q150 -10 295 15' stroke='%2328C76F' stroke-width='4' fill='none' stroke-linecap='round' /%3E%3C/svg%3E");
    
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.8s ease-in-out;
}

/* Applied when scrolled into view */
.underline-visible::after {
    transform: scaleX(1);
}