/*
 Theme Name:   Astra Child
 Template:     astra
 Version:      1.1.8
 Author:       Pullman Digital Marketing Group L.L.C.
*/

/* Import parent theme styles */
@import url("../astra/style.css");

/* Sticky Header */
.ast-main-header-wrap {
    position: fixed;
    top: 0 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    width: 100%;
    background-color: #000 !important;
    z-index: 9999;
    transition: all 0.3s ease;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}

/* Shrinking */
@media (min-width: 769px) {
    .ast-main-header-wrap.shrink {
        transform: scale(0.97);
        padding: 8px 0;
    }
}

/* Push page down */
.site-content {
    padding-top: 130px;
}

/* Prevent unwanted body spacing */
body {
    margin-top: 0 !important;
}

/* Adjust header for logged-in users (admin bar) */
body.admin-bar .ast-main-header-wrap {
    top: 32px !important;
}

/* Remove Astra bottom border/line under header */
.ast-main-header-bar::after,
.ast-primary-header-bar::after,
.ast-header-break-point .main-header-bar::after {
    content: none !important;
    display: none !important;
    border: none !important;
    height: 0 !important;
}

/* 🔥 Mobile Header Gap Obliteration */
@media (max-width: 768px) {
    .ast-header-break-point .ast-main-header-bar,
    .ast-header-break-point .site-header,
    .ast-header-break-point .ast-mobile-header-wrap,
    .ast-header-break-point .ast-builder-layout-element,
    .ast-header-break-point .ast-builder-grid-row,
    .ast-header-break-point .ast-primary-header-bar {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
        border-bottom: none !important;
    }

    .ast-header-break-point .main-header-bar {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }

    .ast-header-break-point .site-header::after,
    .ast-header-break-point .ast-main-header-bar::after,
    .ast-header-break-point .ast-primary-header-bar::after {
        content: none !important;
        display: none !important;
        height: 0 !important;
        border: none !important;
    }
}


/* 🚫 Remove visible white line under header */
.ast-main-header-bar,
.ast-primary-header-bar,
.ast-header-break-point .main-header-bar,
.ast-header-break-point .site-header {
    border: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* 🚫 Remove potential top gap on the header itself */
.ast-main-header-wrap,
.ast-header-break-point .ast-main-header-wrap {
    margin-top: 0 !important;
    padding-top: 0 !important;
    top: 0 !important;
}


/* ✅ Fix top gap during scroll (desktop) */
.ast-main-header-wrap {
    top: 0 !important;
}
body.admin-bar .ast-main-header-wrap {
    top: 32px !important;
}

/* ✅ Aggressively remove mobile header gap */
@media (max-width: 768px) {
    .ast-header-break-point .site-header,
    .ast-header-break-point .ast-main-header-bar,
    .ast-header-break-point .main-header-bar,
    .ast-header-break-point .ast-mobile-header-wrap,
    .ast-header-break-point .ast-builder-grid-row,
    .ast-header-break-point .ast-primary-header-bar,
    .ast-header-break-point .ast-builder-layout-element {
        border: none !important;
        border-bottom: none !important;
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
        box-shadow: none !important;
    }

    .ast-header-break-point .site-header::after,
    .ast-header-break-point .ast-main-header-bar::after,
    .ast-header-break-point .main-header-bar::after {
        content: none !important;
        display: none !important;
        height: 0 !important;
        border: none !important;
    }
}


/* 🔥 Final Fixes */

/* Eliminate any top margin/padding globally */
html, body {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Tighten sticky header wrapper fully */
.ast-main-header-wrap {
    margin: 0 !important;
    padding: 0 !important;
    top: 0 !important;
}

/* Remove lingering pseudo-elements */
.ast-main-header-bar::before,
.ast-main-header-bar::after,
.ast-primary-header-bar::before,
.ast-primary-header-bar::after,
.ast-builder-layout-element::before,
.ast-builder-layout-element::after {
    content: none !important;
    display: none !important;
    height: 0 !important;
    border: none !important;
}


/* 🚫 Remove all top borders, lines, shadows globally */
.site-header,
.ast-site-header-wrap,
.ast-main-header-bar,
.ast-builder-grid-row,
.ast-header-break-point .main-header-bar,
.ast-header-break-point .site-header,
.ast-header-break-point .ast-main-header-bar,
.ast-header-break-point .ast-mobile-header-wrap,
.ast-builder-layout-element,
.ast-primary-header-bar,
.ast-theme-transparent-header {
    border-top: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* 🔒 Lock sticky to absolute top on all devices */
.ast-main-header-wrap,
.ast-header-break-point .ast-main-header-wrap {
    position: fixed !important;
    top: 0 !important;
    margin-top: 0 !important;
}

/* 🍏 iOS-specific rendering cleanup */
body {
    -webkit-overflow-scrolling: touch;
    position: relative;
    backface-visibility: hidden;
}


/* 🛠️ Final Mobile White Gap Fix */

.site-header,
.ast-site-header-wrap,
.ast-header-break-point .site-header {
    border-bottom: none !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* 🚫 Remove all injected ::after gaps, separators, lines */
.site-header::after,
.ast-mobile-header-wrap::after,
.main-header-bar::after,
.ast-site-header-wrap::after,
.ast-site-header-wrap > *:not(.main-header-bar)::after {
    content: none !important;
    display: none !important;
    border: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}


/* ☁️ Remove persistent shadow line below header (on scroll or mobile) */
.site-header,
.ast-main-header-bar,
.main-header-bar,
.ast-builder-grid-row,
.ast-header-break-point .site-header,
.ast-header-break-point .main-header-bar,
.ast-header-break-point .ast-main-header-bar,
.ast-header-break-point .ast-mobile-header-wrap {
    box-shadow: none !important;
}


/* 🧨 Final fix for persistent mobile white gap - nuke ::before lines */

.site-header::before,
.ast-main-header-bar::before,
.main-header-bar::before,
.ast-builder-grid-row::before,
.ast-header-break-point .site-header::before,
.ast-header-break-point .main-header-bar::before {
    content: none !important;
    display: none !important;
    background: transparent !important;
    height: 0 !important;
    border: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
}


/* 🧼 Absolute final fix for lingering white bar after sticky header on mobile */

/* Remove any white lines/divs that appear immediately after header */
.site-header + div,
.ast-site-header-wrap + div,
.ast-site-header-wrap + .ast-scroll-to-top,
.ast-scroll-to-top {
    display: none !important;
    background: transparent !important;
    height: 0 !important;
    border: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
}


/* 🛠 Revert broad sibling removal and target only specific gap-causing classes */

/* Restore content display accidentally hidden by generic sibling targeting */
.site-header + div,
.ast-site-header-wrap + div {
    display: block !important;
    height: auto !important;
    visibility: visible !important;
}

/* Only target specific known Astra elements causing gaps */
.ast-scroll-to-top,
.ast-header-divider,
.ast-site-header-divider {
    display: none !important;
    background: transparent !important;
    height: 0 !important;
    border: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
