/*
 * RAMS Tailwind Reset & Bridge Styles
 * Neutralizes Elementor conflicts and applies critical global styles.
 */

/* 1. Global Fluid Typography (Limited to Desktop) */
@media screen and (min-width: 64rem) {
    html {
        font-size: 1.1111111vw;
        /* Scales 16px at 1440px viewport */
        -webkit-text-size-adjust: 100%;
        /* Chrome, Safari, newer Edge */
        text-size-adjust: 100%;
        /* Standard */
    }
}

@media screen and (min-width: 144.0625rem) {
    html {
        font-size: 1.6rem;
        /* Cap scaling at large screens */
    }
}

/* 2. Global Scrollbar Hiding (As per design) */
html {
    scrollbar-width: none;
    /* Firefox */
    -ms-overflow-style: none;
    /* IE/Edge */
}

html::-webkit-scrollbar {
    display: none;
    /* Chrome/Safari */
}

/* 3. Wrapper Context Reset 
   Targets the wrapper created by [raw_tailwind_wrapper] 
*/
.tw-reset-context {
    /* Reset text styles that Elementor might have enforced */
    text-align: left;
    line-height: 1.5;
    color: #1a1a1a;
}

/* Force border-box model which Elementor sometimes messes with in sub-containers */
.tw-reset-context *,
.tw-reset-context *::before,
.tw-reset-context *::after {
    box-sizing: border-box;
}

/* 4. Elementor Override Helpers */
/* Remove default margins Elementor adds to widgets */
.elementor-widget:not(.elementor-widget-global) {
    margin-bottom: 0;
}

/* Fix for Aspect Ratio utilities if Elementor overrides */
.aspect-card {
    aspect-ratio: 228 / 402;
}

/* 5. Utility Classes needed for the design that might be stripped */
.no-scrollbar::-webkit-scrollbar {
    display: none;
}

.no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* Soft Glow for Logo */
.logo-glow {
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.15), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}


/* 6. Viewport Breakout Strategy (Neutralized to prevent horizontal overflow) */
.tw-raw-wrapper {
    width: 100%;
    max-width: 100%;
    position: relative;
    overflow: hidden !important;
}

.tw-raw-wrapper aside {
    max-width: 10rem !important;
    /* Slightly narrower to be safe */
    align-self: flex-start !important;
    position: sticky !important;
    top: 5rem !important;
    /* Give some breathing room from the top/admin bar */
    height: calc(100vh - 5rem) !important;
    z-index: 100;
    overflow-y: auto !important;
    /* Allow sidebar itself to scroll if content is long */
}

/* Neutralize common "Sticky Killers" in Elementor wrappers more broadly */
.elementor-widget-rams_raw_tailwind,
.elementor-widget-rams_raw_tailwind .elementor-widget-container,
.elementor-widget-rams_raw_tailwind .elementor-widget-wrap,
.elementor-widget-rams_raw_tailwind .elementor-widget-wrap>div {
    overflow: visible !important;
    height: auto !important;
    /* Auto height allows the column to grow with content */
    min-height: 100vh !important;
}