/* 
 * Rockseal.in - 100% Mobile & Responsive Breakpoint System
 * Optimized for Mobile B2B Buyers (80%+ Traffic)
 */

/* 1. Large Desktops & Laptops (< 1200px) */
@media (max-width: 1199.98px) {
    .rs-nav-list {
        gap: 1rem;
    }

    .rs-nav-link {
        font-size: 0.82rem;
    }

    .rs-hero-headline {
        font-size: 2.2rem;
    }
}

/* 2. Tablets & Mobile Landscape (< 992px) */
@media (max-width: 991.98px) {
    body {
        padding-bottom: 60px; /* Space for mobile action dock */
    }

    /* Topbar */
    .rs-topbar {
        font-size: 0.82rem !important;
        padding: 0.4rem 0;
    }

    .rs-topbar .container {
        flex-direction: column;
        gap: 0.3rem;
        text-align: center;
    }

    /* Header & Mobile Navigation Menu Drawer */
    .rs-header {
        padding: 0.4rem 0;
    }

    .rs-navbar-brand img {
        height: 42px;
    }

    .rs-nav-list {
        display: none;
        flex-direction: column;
        width: 100%;
        background: #030A19;
        padding: 1rem 1.25rem;
        border-top: 1px solid rgba(0, 210, 255, 0.2);
        margin-top: 0.5rem;
        gap: 0;
        border-radius: 0 0 12px 12px;
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.5);
    }

    .rs-nav-list.show {
        display: flex;
        animation: rsFadeDown 0.3s ease;
    }

    .rs-nav-link {
        padding: 0.85rem 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        font-size: 0.95rem;
        color: #FFFFFF !important;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .rs-dropdown-menu,
    .rs-megamenu {
        position: static !important;
        width: 100% !important;
        min-width: 100% !important;
        box-shadow: none !important;
        border: none !important;
        padding: 0.5rem 0 !important;
        background: rgba(255, 255, 255, 0.05) !important;
        border-radius: 8px !important;
        margin-top: 0.4rem !important;
    }

    /* Mobile Hero Section */
    .rs-hero-industrial {
        min-height: auto;
        padding: 2.5rem 0;
    }

    .rs-hero-headline {
        font-size: 1.85rem;
        line-height: 1.25;
    }

    .rs-hero-copy {
        font-size: 0.9rem;
        line-height: 1.6;
    }

    .rs-hero-product-slider-wrap {
        margin-top: 1rem;
        padding: 0.75rem 0.5rem;
    }

    .rs-slider-card img {
        height: 130px;
    }

    /* RFQ Form Card on Mobile */
    .rs-hero-rfq-card {
        padding: 1.25rem !important;
        margin-top: 1rem;
    }

    .rs-hero-rfq-card .rs-form-control,
    .rs-hero-rfq-card .rs-custom-select-trigger {
        font-size: 16px !important; /* Prevents Safari auto-zoom */
        padding: 0.75rem 0.85rem 0.75rem 2.4rem;
    }

    /* Industrial Table Mobile Touch Scroll */
    .table-responsive {
        margin-bottom: 1.5rem;
        -webkit-overflow-scrolling: touch;
    }

    .rs-industrial-table th,
    .rs-industrial-table td {
        padding: 0.75rem 0.85rem;
        font-size: 0.85rem;
        white-space: nowrap;
    }

    /* Metric Strip */
    .rs-strip-item {
        border-right: none;
        border-bottom: 1px solid var(--rs-border-light);
        padding: 0.6rem 0;
        text-align: center;
    }

    .rs-strip-item:last-child {
        border-bottom: none;
    }

    /* Footer Mobile Optimization */
    .rs-jumbo-footer {
        padding-bottom: 70px;
    }

    .rs-footer-pre-cta {
        padding: 1.5rem 0;
    }

    .rs-jumbo-footer h5 {
        margin-top: 1rem;
        margin-bottom: 0.75rem;
    }
}

/* 3. Smartphones / Small Screens (< 576px) */
@media (max-width: 575.98px) {
    html {
        font-size: 96%; /* 15.3px base for clean mobile fit */
    }

    .rs-hero-headline {
        font-size: 1.55rem;
    }

    .rs-hero-badge {
        font-size: 0.68rem;
        padding: 0.25rem 0.65rem;
    }

    .btn-rs-quote,
    .btn-rs-outline-white,
    .btn-rs-outline,
    .btn-rs-whatsapp {
        width: 100%;
        padding: 0.75rem 1rem;
        font-size: 0.85rem;
    }

    .rs-section {
        padding: 3rem 0;
    }

    .rs-product-img-wrap {
        height: 180px;
    }

    .rs-industry-img-wrap,
    .rs-blog-img-wrap {
        height: 170px;
    }
}

/* MOBILE STICKY B2B ACTION DOCK SYSTEM */
.rs-mobile-action-dock {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(7, 21, 47, 0.96);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-top: 1px solid rgba(0, 210, 255, 0.25);
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 0.45rem 0.5rem;
    z-index: 1090;
    box-shadow: 0 -10px 30px rgba(0, 0, 0, 0.35);
}

.rs-dock-btn {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.15rem;
    padding: 0.4rem 0.2rem;
    color: #FFFFFF !important;
    text-decoration: none !important;
    font-size: 0.7rem;
    font-weight: 700;
    font-family: var(--rs-font-heading);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    border-radius: 8px;
    margin: 0 3px;
    transition: all 0.2s ease;
}

.rs-dock-call {
    background: rgba(0, 102, 214, 0.25);
    border: 1px solid rgba(0, 102, 214, 0.4);
}

.rs-dock-wa {
    background: rgba(37, 211, 102, 0.2);
    border: 1px solid rgba(37, 211, 102, 0.4);
    color: #25D366 !important;
}

.rs-dock-rfq {
    background: linear-gradient(135deg, #0066D6 0%, #004FA3 100%);
    border: 1px solid #00D2FF;
}

.rs-dock-btn i {
    font-size: 1.05rem;
}


/* HIDE TOPBAR IN MOBILE VIEW (< 992PX) FOR MAXIMUM VIEWPORT SPACE */
@media (max-width: 991.98px) {
    .rs-topbar,
    .top-bar {
        display: none !important;
    }
}

/* 100% VISIBLE PROMINENT HAMBURGER MENU BUTTON FOR MOBILE VIEW */
#rsNavToggle,
.navbar-toggler {
    background-color: #0A2253 !important;
    border: 1.5px solid #00D2FF !important;
    color: #FFFFFF !important;
    padding: 0.5rem 0.8rem !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 14px rgba(10, 34, 83, 0.25) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
}

#rsNavToggle i,
#rsNavToggle .fa-bars,
.navbar-toggler i,
.navbar-toggler .fa-bars,
.navbar-toggler-icon {
    color: #FFFFFF !important;
    font-size: 1.25rem !important;
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* 100% PERFECT FULL WIDTH MOBILE HEADER & COMPACT GET A QUOTE BUTTON */
@media (max-width: 991.98px) {
    .rs-header .container {
        padding-left: 0.75rem !important;
        padding-right: 0.75rem !important;
        max-width: 100% !important;
    }

    .rs-navbar-brand img {
        height: 38px !important;
    }

    .btn-rs-quote {
        padding: 0.42rem 0.75rem !important;
        font-size: 0.75rem !important;
        letter-spacing: 0.02em !important;
        border-radius: 6px !important;
        white-space: nowrap !important;
        display: inline-flex !important;
    }

    #rsNavToggle {
        padding: 0.4rem 0.65rem !important;
        margin-left: 0.4rem !important;
    }
}

/* FIX PRODUCT CARD FOOTER LINK & BUTTON OVERLAP ON MOBILE */
.rs-product-footer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 0.5rem !important;
    padding-top: 0.85rem !important;
    border-top: 1px solid #E2E8F0 !important;
    width: 100% !important;
}

.rs-product-footer .btn-rs-quote,
.rs-product-footer .btn-rs-outline,
.rs-product-footer .btn,
.rs-product-footer button {
    width: auto !important;
    flex-shrink: 0 !important;
    padding: 0.42rem 0.85rem !important;
    font-size: 0.78rem !important;
    margin: 0 !important;
}

.rs-product-footer a {
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

@media (max-width: 575.98px) {
    .rs-product-footer .btn-rs-quote,
    .rs-product-footer .btn-rs-outline {
        width: auto !important;
    }
}

/* 100% PERFECT MOBILE FOOTER & GSTIN READABILITY */
.rs-footer-bottom-bar,
.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
    background: #020617 !important;
}

.rs-footer-bottom-bar strong,
.rs-footer-bottom-bar .text-white,
.footer-bottom strong,
.footer-bottom .text-white {
    color: #FFFFFF !important;
}

@media (max-width: 991.98px) {
    .rs-footer-bottom-bar,
    .footer-bottom,
    .footer-dark {
        padding-bottom: 85px !important;
    }

    /* Hide duplicate floating WhatsApp widgets on mobile (Action Dock is active) */
    .floating-whatsapp,
    .whatsapp-widget,
    .rs-floating-wa,
    #whatsapp-btn {
        display: none !important;
    }
}

/* 100% WORLD CLASS MOBILE STICKY B2B ACTION DOCK SYSTEM */
@media (max-width: 991.98px) {
    body {
        padding-bottom: 58px !important;
    }

    .rs-footer-bottom-bar,
    .footer-bottom {
        padding-bottom: 68px !important;
        padding-top: 0.75rem !important;
    }

    /* Hide any floating widgets on mobile view to avoid overlap */
    .floating-whatsapp,
    .whatsapp-widget,
    .rs-floating-wa,
    #whatsapp-btn,
    a[href*="wa.me"]:not(.rs-dock-btn) {
        display: none !important;
    }
}

.rs-footer-bottom-bar,
.footer-bottom {
    background: #020617 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.font-size-078rem {
    font-size: 0.78rem !important;
    line-height: 1.4 !important;
}

.rs-mobile-action-dock {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #030A19;
    border-top: 1px solid rgba(0, 210, 255, 0.25);
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 0.35rem 0.4rem;
    z-index: 1090;
    box-shadow: 0 -8px 25px rgba(0, 0, 0, 0.4);
}

.rs-dock-btn {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.1rem;
    padding: 0.4rem 0.2rem;
    text-decoration: none !important;
    font-size: 0.72rem;
    font-weight: 700;
    font-family: 'Outfit', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border-radius: 8px;
    margin: 0 2px;
    transition: all 0.2s ease;
}

.rs-dock-call {
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #FFFFFF !important;
}
.rs-dock-call i {
    color: #00D2FF !important;
    font-size: 1.1rem !important;
}

.rs-dock-wa {
    background: rgba(37, 211, 102, 0.12) !important;
    border: 1px solid rgba(37, 211, 102, 0.4) !important;
    color: #25D366 !important;
}
.rs-dock-wa i {
    color: #25D366 !important;
    font-size: 1.1rem !important;
}

.rs-dock-rfq {
    background: linear-gradient(135deg, #0066D6 0%, #004FA3 100%) !important;
    border: 1px solid #00D2FF !important;
    color: #FFFFFF !important;
}
.rs-dock-rfq i {
    color: #FFFFFF !important;
    font-size: 1.1rem !important;
}

/* 100% BRIGHT READABLE GSTIN IN BOTTOM FOOTER */
.rs-footer-gstin {
    color: #00D2FF !important;
    font-weight: 700 !important;
}

.rs-footer-gstin strong,
.rs-footer-gstin span {
    color: #FFFFFF !important;
    font-weight: 700 !important;
}

/* ELIMINATE UNWANTED MOBILE SPACE & HUGE GAPS */
@media (max-width: 991.98px) {
    /* 1. Exact body padding for sticky dock */
    body {
        padding-bottom: 54px !important;
    }

    /* 2. Compact Mobile Section Padding */
    .rs-section,
    .section-padding {
        padding: 2.25rem 0 !important;
    }

    /* 3. Footer Compact Spacing - Zero Double Padding Voids */
    .rs-jumbo-footer,
    .footer-dark {
        padding-top: 2.5rem !important;
        padding-bottom: 0 !important;
    }

    .rs-footer-bottom-bar,
    .footer-bottom {
        padding-top: 0.75rem !important;
        padding-bottom: 0.85rem !important;
        margin-bottom: 0 !important;
    }

    /* 4. Hero & Row Spacing Tightening */
    .rs-hero-industrial,
    .hero-section {
        padding: 2rem 0 !important;
        min-height: auto !important;
    }

    .mb-5 {
        margin-bottom: 1.75rem !important;
    }

    .py-5 {
        padding-top: 1.75rem !important;
        padding-bottom: 1.75rem !important;
    }
}

/* 100% NATIVE APP-LIKE OFF-CANVAS MOBILE DRAWER SYSTEM */
@media (max-width: 991.98px) {
    /* Mobile Drawer Backdrop Overlay */
    .rs-drawer-backdrop {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        background: rgba(3, 10, 25, 0.78) !important;
        backdrop-filter: blur(8px) !important;
        -webkit-backdrop-filter: blur(8px) !important;
        z-index: 1095 !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
    }

    .rs-drawer-backdrop.active {
        opacity: 1 !important;
        visibility: visible !important;
    }

    /* Mobile Off-Canvas Drawer (Slides Smoothly from Right) */
    .rs-nav-list,
    .navbar-collapse {
        position: fixed !important;
        top: 0 !important;
        right: -100% !important;
        width: 86% !important;
        max-width: 360px !important;
        height: 100vh !important;
        height: 100dvh !important;
        background: #030A19 !important;
        z-index: 1100 !important;
        display: flex !important;
        flex-direction: column !important;
        padding: 0 !important;
        margin: 0 !important;
        border: none !important;
        border-left: 1px solid rgba(0, 210, 255, 0.25) !important;
        box-shadow: -15px 0 40px rgba(0, 0, 0, 0.6) !important;
        transition: right 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .rs-nav-list.show,
    .navbar-collapse.show {
        right: 0 !important;
    }

    /* App Drawer Header Bar */
    .rs-drawer-header {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 1.1rem 1.25rem !important;
        background: #07152F !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    }

    .rs-drawer-title {
        font-family: 'Outfit', sans-serif !important;
        font-size: 0.9rem !important;
        font-weight: 700 !important;
        color: #00D2FF !important;
        text-transform: uppercase !important;
        letter-spacing: 0.08em !important;
    }

    .rs-drawer-close {
        background: rgba(255, 255, 255, 0.1) !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        color: #FFFFFF !important;
        width: 34px !important;
        height: 34px !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 1rem !important;
        cursor: pointer !important;
    }

    /* Drawer Navigation Links */
    .rs-nav-item {
        width: 100% !important;
    }

    .rs-nav-link {
        padding: 0.95rem 1.25rem !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
        font-size: 0.95rem !important;
        font-weight: 600 !important;
        color: #FFFFFF !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }

    .rs-dropdown-menu,
    .rs-megamenu {
        display: none !important;
        background: rgba(255, 255, 255, 0.04) !important;
        padding: 0.5rem 1rem !important;
        border-left: 3px solid #0066D6 !important;
    }

    .rs-dropdown-menu.show,
    .rs-megamenu.show {
        display: block !important;
    }
}

/* ULTIMATE 100% NATIVE APP MOBILE DRAWER CSS SYSTEM */
@media (max-width: 991.98px) {
    .rs-drawer-backdrop {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        background: rgba(3, 10, 25, 0.82) !important;
        backdrop-filter: blur(10px) !important;
        -webkit-backdrop-filter: blur(10px) !important;
        z-index: 1095 !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
    }

    .rs-drawer-backdrop.active {
        opacity: 1 !important;
        visibility: visible !important;
    }

    .rs-nav-list {
        position: fixed !important;
        top: 0 !important;
        right: -100% !important;
        width: 88% !important;
        max-width: 380px !important;
        height: 100vh !important;
        height: 100dvh !important;
        background: #030A19 !important;
        z-index: 1100 !important;
        display: flex !important;
        flex-direction: column !important;
        padding: 0 !important;
        margin: 0 !important;
        border: none !important;
        border-left: 1px solid rgba(0, 210, 255, 0.25) !important;
        box-shadow: -20px 0 50px rgba(0, 0, 0, 0.7) !important;
        transition: right 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .rs-nav-list.show {
        right: 0 !important;
    }

    .rs-drawer-header {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 1rem 1.25rem !important;
        background: #07152F !important;
        border-bottom: 1px solid rgba(0, 210, 255, 0.2) !important;
    }

    .rs-drawer-close {
        background: rgba(0, 210, 255, 0.12) !important;
        border: 1px solid rgba(0, 210, 255, 0.4) !important;
        color: #00D2FF !important;
        width: 36px !important;
        height: 36px !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 1.1rem !important;
        cursor: pointer !important;
    }

    .rs-nav-link {
        padding: 0.95rem 1.25rem !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
        font-size: 0.95rem !important;
        font-weight: 600 !important;
        color: #FFFFFF !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }

    .rs-mobile-submenu {
        display: none;
        background: rgba(255, 255, 255, 0.03);
        padding: 0.75rem 1.25rem;
        border-left: 3px solid #0066D6;
    }

    .rs-mobile-submenu.show {
        display: block !important;
    }

    .rs-mobile-sub-link {
        display: flex;
        align-items: center;
        gap: 0.75rem;
        padding: 0.6rem 0;
        color: #E2E8F0 !important;
        text-decoration: none !important;
        font-size: 0.88rem;
        border-bottom: 1px solid rgba(255, 255, 255, 0.04);
    }

    .rs-sub-thumb {
        width: 32px;
        height: 32px;
        object-fit: cover;
        border-radius: 6px;
        border: 1px solid rgba(255, 255, 255, 0.2);
    }

    .rs-drawer-footer {
        padding: 1.25rem !important;
        background: #020617 !important;
        border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
    }
}

/* 100% BULLETPROOF SLIDE-DOWN MOBILE MENU (ZERO Z-INDEX BLUR BUG) */
@media (max-width: 991.98px) {
    /* Completely remove broken full-screen backdrop overlay */
    .rs-drawer-backdrop {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
    }

    /* Mobile Header Container */
    .rs-header {
        position: relative !important;
        z-index: 1020 !important;
        background: #FFFFFF !important;
    }

    /* Mobile Navigation List (Slide-Down Menu) */
    .rs-nav-list {
        display: none !important;
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: 80vh !important;
        overflow-y: auto !important;
        background: #0A2253 !important;
        border-top: 2px solid #00D2FF !important;
        border-bottom: 2px solid #00D2FF !important;
        box-shadow: 0 15px 35px rgba(0, 0, 0, 0.4) !important;
        padding: 0.5rem 0 !important;
        margin: 0 !important;
        z-index: 1030 !important;
        flex-direction: column !important;
    }

    .rs-nav-list.show {
        display: flex !important;
        animation: rsSlideDown 0.25s ease-out forwards !important;
    }

    @keyframes rsSlideDown {
        from { opacity: 0; transform: translateY(-10px); }
        to { opacity: 1; transform: translateY(0); }
    }

    /* Mobile Nav Item */
    .rs-nav-item {
        width: 100% !important;
        margin: 0 !important;
    }

    .rs-nav-link {
        padding: 0.85rem 1.25rem !important;
        font-size: 0.95rem !important;
        font-weight: 600 !important;
        color: #FFFFFF !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        background: transparent !important;
    }

    .rs-nav-link:hover,
    .rs-nav-link:focus,
    .rs-nav-link.active {
        color: #00D2FF !important;
        background: rgba(255, 255, 255, 0.05) !important;
    }

    /* Submenus inside Mobile Menu */
    .rs-dropdown-menu,
    .rs-megamenu {
        display: none !important;
        position: static !important;
        width: 100% !important;
        background: #07152F !important;
        padding: 0.5rem 1rem !important;
        box-shadow: none !important;
        border: none !important;
        border-left: 4px solid #00D2FF !important;
    }

    .rs-dropdown-menu.show,
    .rs-megamenu.show {
        display: block !important;
    }

    .rs-dropdown-item,
    .rs-megamenu-item {
        padding: 0.6rem 0.75rem !important;
        color: #E2E8F0 !important;
        font-size: 0.88rem !important;
        display: flex !important;
        align-items: center !important;
        gap: 0.5rem !important;
        text-decoration: none !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
    }

    .rs-dropdown-item:hover,
    .rs-megamenu-item:hover {
        color: #00D2FF !important;
    }

    /* Hide drawer specific headers in slide-down menu */
    .rs-drawer-header,
    .rs-drawer-footer {
        display: none !important;
    }
}

/* ============================================================
   100% FLAWLESS NATIVE MOBILE APP DRAWER SYSTEM (Z-INDEX 9999)
   ============================================================ */
.rs-app-drawer {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    z-index: 9999 !important;
    display: none;
}

.rs-app-drawer.active {
    display: block !important;
}

.rs-app-backdrop {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(3, 10, 25, 0.72) !important;
    backdrop-filter: blur(6px) !important;
    -webkit-backdrop-filter: blur(6px) !important;
    z-index: 1 !important;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.rs-app-drawer.active .rs-app-backdrop {
    opacity: 1;
}

.rs-app-panel {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: 86% !important;
    max-width: 350px !important;
    height: 100% !important;
    background: #030A19 !important;
    z-index: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    box-shadow: -15px 0 40px rgba(0, 0, 0, 0.6) !important;
    transform: translateX(100%);
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    border-left: 1px solid rgba(0, 210, 255, 0.25) !important;
}

.rs-app-drawer.active .rs-app-panel {
    transform: translateX(0);
}

/* App Drawer Header Bar */
.rs-app-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 1rem 1.25rem !important;
    background: #07152F !important;
    border-bottom: 1px solid rgba(0, 210, 255, 0.2) !important;
}

.rs-app-close-btn {
    background: rgba(0, 210, 255, 0.12) !important;
    border: 1px solid rgba(0, 210, 255, 0.4) !important;
    color: #00D2FF !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.2rem !important;
    cursor: pointer !important;
    transition: all 0.2s ease;
}

.rs-app-close-btn:hover {
    background: #00D2FF !important;
    color: #030A19 !important;
}

/* App Drawer Body */
.rs-app-body {
    flex: 1 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 0.5rem 0 !important;
}

.rs-app-link {
    display: flex !important;
    align-items: center !important;
    padding: 0.9rem 1.25rem !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    color: #FFFFFF !important;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    background: transparent !important;
    transition: background 0.2s ease;
}

.rs-app-link:hover,
.rs-app-link.active {
    background: rgba(0, 102, 214, 0.2) !important;
    color: #00D2FF !important;
}

.rs-app-sublink {
    display: flex !important;
    align-items: center !important;
    gap: 0.75rem !important;
    padding: 0.65rem 1.25rem 0.65rem 2rem !important;
    font-size: 0.88rem !important;
    color: #CBD5E1 !important;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.03) !important;
}

.rs-app-sublink:hover {
    color: #00D2FF !important;
    background: rgba(255, 255, 255, 0.03) !important;
}

.rs-app-thumb {
    width: 30px !important;
    height: 30px !important;
    object-fit: cover !important;
    border-radius: 6px !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
}

.rs-app-accordion-content {
    display: none;
    background: rgba(0, 0, 0, 0.25) !important;
}

.rs-app-accordion-content.show {
    display: block !important;
}

/* App Drawer Footer */
.rs-app-footer {
    padding: 1rem 1.25rem !important;
    background: #020617 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
}

/* 100% HIGH-CONTRAST READABILITY FOR APP DRAWER ICONS & TITLE TEXTS */
.rs-app-drawer,
.rs-app-panel {
    color: #FFFFFF !important;
}

.rs-app-drawer .fa-chevron-down,
.rs-app-drawer .rs-accordion-arrow,
.rs-app-accordion-btn i.fa-chevron-down {
    color: #00D2FF !important;
    font-size: 0.9rem !important;
}

.rs-app-drawer .text-info,
.rs-app-drawer .text-cyan,
.rs-app-drawer .rs-drawer-title,
.rs-app-drawer .rs-submenu-title {
    color: #00D2FF !important;
    font-weight: 700 !important;
}

.rs-app-drawer .text-slate-400,
.rs-app-drawer .text-muted {
    color: #94A3B8 !important;
}

.rs-app-drawer .fw-bold,
.rs-app-drawer .rs-app-link,
.rs-app-drawer strong {
    color: #FFFFFF !important;
}

/* PURE WHITE LOGO & PURE WHITE CLOSE CROSS ICON IN APP DRAWER */
.rs-app-header img {
    filter: brightness(0) invert(1) !important;
}

.rs-app-close-btn {
    background: rgba(255, 255, 255, 0.15) !important;
    border: 1px solid rgba(255, 255, 255, 0.35) !important;
    color: #FFFFFF !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.2rem !important;
    cursor: pointer !important;
}

.rs-app-close-btn i,
.rs-app-close-btn .fa-xmark {
    color: #FFFFFF !important;
}

/* 100% HIGH-CONTRAST SURFACE-BASED BREADCRUMB SYSTEM */

/* 1. BREADCRUMBS ON DARK SURFACES (Page Header, Dark Hero, Navy Sections, Dark Footer) */
.rs-page-header .breadcrumb,
.page-header-bg .breadcrumb,
.rs-hero-industrial .breadcrumb,
.bg-dark .breadcrumb,
.bg-primary .breadcrumb,
.footer-dark .breadcrumb,
.text-white .breadcrumb,
.dark-surface .breadcrumb,
[class*="rs-hero"] .breadcrumb,
[class*="page-header"] .breadcrumb {
    background: transparent !important;
    padding: 0 !important;
    margin-bottom: 1rem !important;
}

.rs-page-header .breadcrumb-item,
.page-header-bg .breadcrumb-item,
.rs-hero-industrial .breadcrumb-item,
.bg-dark .breadcrumb-item,
.bg-primary .breadcrumb-item,
.footer-dark .breadcrumb-item,
.text-white .breadcrumb-item,
.dark-surface .breadcrumb-item {
    color: #CBD5E1 !important;
    font-size: 0.88rem !important;
    font-weight: 500 !important;
}

.rs-page-header .breadcrumb-item a,
.page-header-bg .breadcrumb-item a,
.rs-hero-industrial .breadcrumb-item a,
.bg-dark .breadcrumb-item a,
.bg-primary .breadcrumb-item a,
.footer-dark .breadcrumb-item a,
.text-white .breadcrumb-item a {
    color: #CBD5E1 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.rs-page-header .breadcrumb-item a:hover,
.page-header-bg .breadcrumb-item a:hover,
.rs-hero-industrial .breadcrumb-item a:hover,
.bg-dark .breadcrumb-item a:hover,
.bg-primary .breadcrumb-item a:hover,
.footer-dark .breadcrumb-item a:hover,
.text-white .breadcrumb-item a:hover {
    color: #00D2FF !important;
}

.rs-page-header .breadcrumb-item.active,
.page-header-bg .breadcrumb-item.active,
.rs-hero-industrial .breadcrumb-item.active,
.bg-dark .breadcrumb-item.active,
.bg-primary .breadcrumb-item.active,
.footer-dark .breadcrumb-item.active,
.text-white .breadcrumb-item.active {
    color: #FFFFFF !important;
    font-weight: 700 !important;
}

.rs-page-header .breadcrumb-item + .breadcrumb-item::before,
.page-header-bg .breadcrumb-item + .breadcrumb-item::before,
.rs-hero-industrial .breadcrumb-item + .breadcrumb-item::before,
.bg-dark .breadcrumb-item + .breadcrumb-item::before,
.bg-primary .breadcrumb-item + .breadcrumb-item::before,
.footer-dark .breadcrumb-item + .breadcrumb-item::before,
.text-white .breadcrumb-item + .breadcrumb-item::before {
    color: #00D2FF !important;
    font-weight: 700 !important;
}

/* 2. BREADCRUMBS ON LIGHT SURFACES (White & Light Grey Pages) */
.breadcrumb {
    background: transparent;
    padding: 0;
    margin-bottom: 1rem;
}

.breadcrumb-item {
    font-size: 0.88rem;
    color: #475569;
}

.breadcrumb-item a {
    color: #475569 !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    transition: color 0.2s ease !important;
}

.breadcrumb-item a:hover {
    color: #0066D6 !important;
}

.breadcrumb-item.active {
    color: #0A2253 !important;
    font-weight: 700 !important;
}

.breadcrumb-item + .breadcrumb-item::before {
    color: #94A3B8 !important;
}

/* ALL BREADCRUMBS ON ALL INNER PAGES ARE 100% PURE WHITE */
.breadcrumb,
.breadcrumb-item,
.breadcrumb-item a,
.breadcrumb-item.active,
.breadcrumb-custom,
.breadcrumb-custom li,
.breadcrumb-custom a,
.breadcrumb-custom .active,
.rs-page-header .breadcrumb-item,
.rs-page-header .breadcrumb-item a,
.page-header-bg .breadcrumb-item,
.page-header-bg .breadcrumb-item a {
    color: #FFFFFF !important;
}

.breadcrumb-item a:hover,
.breadcrumb-custom a:hover {
    color: #00D2FF !important;
    text-decoration: underline !important;
}

.breadcrumb-item + .breadcrumb-item::before,
.breadcrumb-custom li + li::before {
    color: rgba(255, 255, 255, 0.75) !important;
}

/* 100% ELEGANT CENTERED DESKTOP HEADER & HIDE HAMBURGER ON DESKTOP VIEW */
@media (min-width: 992px) {
    .rs-header .container,
    .navbar-custom .container {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }

    .rs-navbar-brand,
    .navbar-brand {
        flex-shrink: 0 !important;
        margin-right: 2.5rem !important;
    }

    .rs-nav-list,
    .navbar-custom .navbar-nav {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 1.75rem !important;
        margin: 0 auto !important;
        padding: 0 !important;
        list-style: none !important;
        position: static !important;
        background: transparent !important;
        box-shadow: none !important;
        border: none !important;
        width: auto !important;
    }

    .rs-nav-link {
        padding: 0.5rem 0 !important;
        font-size: 0.88rem !important;
        font-weight: 700 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.04em !important;
        color: #0A2253 !important;
        border: none !important;
        background: transparent !important;
    }

    .rs-nav-link:hover,
    .rs-nav-link.active {
        color: #0066D6 !important;
        background: transparent !important;
    }

    /* HIDE HAMBURGER TOGGLE BUTTON & MOBILE DRAWER COMPONENTS ON DESKTOP VIEW */
    #rsNavToggle,
    .navbar-toggler,
    .rs-drawer-close,
    .rs-drawer-header,
    .rs-drawer-footer,
    .rs-app-drawer {
        display: none !important;
    }
}

/* 100% OPTIMAL MOBILE HEADING TYPOGRAPHY (ZERO OVERSIZED HEADINGS ON MOBILE) */
@media (max-width: 767.98px) {
    h1,
    .h1,
    .display-1,
    .display-2,
    .display-3,
    .display-4,
    .display-5,
    .rs-hero-title,
    .rs-page-title,
    [class*="rs-hero"] h1,
    [class*="page-header"] h1 {
        font-size: 1.65rem !important;
        line-height: 1.3 !important;
        letter-spacing: -0.01em !important;
        margin-bottom: 0.75rem !important;
    }

    h2,
    .h2,
    .rs-section-title {
        font-size: 1.35rem !important;
        line-height: 1.35 !important;
    }

    h3,
    .h3 {
        font-size: 1.15rem !important;
        line-height: 1.35 !important;
    }

    .lead {
        font-size: 0.95rem !important;
        line-height: 1.5 !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    h1,
    .h1,
    .display-3,
    .display-4,
    .display-5,
    .rs-hero-title {
        font-size: 2.1rem !important;
        line-height: 1.3 !important;
    }
}

/* SAFE, SCOPED EQUAL HEIGHT CARDS (ZERO OVERFLOW OR DISTURBED SECTIONS) */
.card.h-100,
.rs-card-equal,
.rs-equal-box {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
}

/* MOBILE HEADER DIRECT CALL BUTTON STYLING */
.btn-rs-header-call {
    width: 40px !important;
    height: 40px !important;
    border-radius: 10px !important;
    background: #0066D6 !important;
    border: 1px solid #00D2FF !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #FFFFFF !important;
    font-size: 1.05rem !important;
    box-shadow: 0 4px 12px rgba(0, 102, 214, 0.35) !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.btn-rs-header-call:hover,
.btn-rs-header-call:active {
    background: #0052B4 !important;
    transform: scale(1.05) !important;
}

/* 100% PERFECTLY ROUND BLUE CIRCLE CALL BUTTON WITH PURE WHITE PHONE ICON */
.btn-rs-header-call {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    background: #0066D6 !important;
    border: 2px solid #00D2FF !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #FFFFFF !important;
    font-size: 1.1rem !important;
    box-shadow: 0 4px 14px rgba(0, 102, 214, 0.4) !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.btn-rs-header-call i {
    color: #FFFFFF !important;
}

.btn-rs-header-call:hover,
.btn-rs-header-call:active {
    background: #0052B4 !important;
    transform: scale(1.08) !important;
    box-shadow: 0 6px 18px rgba(0, 102, 214, 0.5) !important;
}

/* PERFECT COMPACT ROCKSEAL DESKTOP NAVBAR SPACING */
@media (min-width: 992px) {
    .rs-nav-list {
        margin: 0 auto !important;
        gap: 0.65rem !important;
    }
    .rs-nav-link {
        padding: 0.4rem 0.55rem !important;
    }
}

/* 100% BULLETPROOF ACTIVE MOBILE APP DRAWER OVERRIDES */
.bs-app-drawer.active,
.rs-app-drawer.active {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    z-index: 999999 !important;
}

.bs-app-drawer.active .bs-app-panel,
.rs-app-drawer.active .rs-app-panel {
    transform: translateX(0) !important;
}

.bs-app-drawer.active .bs-app-backdrop,
.rs-app-drawer.active .rs-app-backdrop {
    opacity: 1 !important;
}

/* 100% CONSISTENT ELECTRIC CYAN (#00D2FF) ICONS & -10% SCALED COMPACT APP DRAWER */
.bs-app-body i,
.rs-app-body i,
.bs-app-link i,
.rs-app-link i,
.bs-app-sublink i,
.rs-app-sublink i,
.bs-app-accordion-btn i,
.rs-app-accordion-btn i,
.bs-app-accordion-btn .fa-chevron-down,
.rs-app-accordion-btn .fa-chevron-down {
    color: #00D2FF !important;
}

.bs-app-panel,
.rs-app-panel {
    width: 82% !important;
    max-width: 320px !important;
    font-size: 90% !important; /* -10% scaled typography reduction */
}

.bs-app-header,
.rs-app-header {
    padding: 0.75rem 0.95rem !important;
}

.bs-app-body,
.rs-app-body {
    padding: 0.65rem 0.85rem !important;
    gap: 0.25rem !important;
}

.bs-app-link,
.rs-app-link {
    padding: 0.6rem 0.75rem !important;
    font-size: 0.82rem !important;
    font-weight: 700 !important;
    border-radius: 8px !important;
}

.bs-app-sublink,
.rs-app-sublink {
    padding: 0.45rem 0.65rem !important;
    font-size: 0.76rem !important;
    border-radius: 6px !important;
}

.bs-app-thumb,
.rs-app-thumb {
    width: 26px !important;
    height: 26px !important;
    border-radius: 4px !important;
}

.bs-app-footer,
.rs-app-footer {
    padding: 0.75rem 0.95rem !important;
}

.bs-app-footer .btn,
.rs-app-footer .btn,
.bs-app-footer .btn-rs-quote,
.rs-app-footer .btn-rs-quote {
    padding: 0.45rem 0.75rem !important;
    font-size: 0.78rem !important;
}

/* 100% BULLETPROOF MOBILE APP ACCORDION DROPDOWN STYLING */
.bs-app-accordion-content,
.rs-app-accordion-content {
    display: none;
    padding-left: 0.5rem;
    margin-top: 0.35rem;
    margin-bottom: 0.5rem;
    flex-direction: column;
    gap: 0.3rem;
}

.bs-app-accordion-content.show,
.rs-app-accordion-content.show {
    display: flex !important;
    flex-direction: column !important;
}

.bs-app-accordion-btn .fa-chevron-down,
.rs-app-accordion-btn .fa-chevron-down {
    transition: transform 0.25s ease !important;
}

/* HIGH CONTRAST READABILITY FOR GRANULES RANGE TITLE IN MOBILE APP DRAWER */
.bs-app-drawer .text-info,
.rs-app-drawer .text-info,
.bs-app-drawer .px-3.py-1,
.rs-app-drawer .px-3.py-1,
.bs-app-drawer .bs-app-body .mt-2,
.rs-app-drawer .rs-app-body .mt-2 {
    color: #00D2FF !important;
    font-weight: 800 !important;
    letter-spacing: 0.05em !important;
    font-size: 0.8rem !important;
    text-transform: uppercase !important;
}

/* 100% STRICT SUPPRESSION OF BOOTSTRAP DEFAULT COLLAPSE MENU ON MOBILE (< 992px) */
@media (max-width: 991.98px) {
    .navbar-collapse,
    .navbar-collapse.show,
    .navbar-collapse.collapsing,
    #navbarContent,
    #navbarContent.show,
    #navbarContent.collapsing,
    #rsNavContent,
    #rsNavContent.show,
    #rsNavContent.collapsing {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        max-height: 0 !important;
        opacity: 0 !important;
        pointer-events: none !important;
        overflow: hidden !important;
    }
}

/* 100% MASTER MOBILE RESPONSIVENESS SYSTEM (< 992px & < 576px) */
html, body {
    overflow-x: hidden !important;
    max-width: 100vw !important;
}

@media (max-width: 991.98px) {
    body {
        padding-bottom: 65px !important;
    }
    
    .hero-section,
    .py-5,
    section {
        padding-top: 2.25rem !important;
        padding-bottom: 2.25rem !important;
    }

    h1, .display-1, .display-2, .display-3, .display-4, .display-5, .rs-hero-title {
        font-size: 1.65rem !important;
        line-height: 1.25 !important;
        word-wrap: break-word !important;
    }

    h2, .h1 {
        font-size: 1.45rem !important;
        line-height: 1.3 !important;
    }

    h3, .h2 {
        font-size: 1.25rem !important;
    }

    .container {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    img {
        max-width: 100% !important;
        height: auto !important;
    }

    table {
        display: block !important;
        width: 100% !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .btn {
        touch-action: manipulation;
    }
}

@media (max-width: 575.98px) {
    .row > [class*="col-"] {
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }
    
    .top-bar {
        display: none !important;
    }
}

/* ELEGANT SINGLE-ROW MOBILE HEADER & BALANCED HERO SECTION (< 992px) */
@media (max-width: 991.98px) {
    .navbar > .container,
    .navbar-custom > .container,
    .rs-header > .container {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        padding-top: 0.4rem !important;
        padding-bottom: 0.4rem !important;
    }

    .navbar-brand,
    .rs-brand {
        margin-right: 0 !important;
        padding: 0 !important;
        max-width: 55% !important;
        flex-shrink: 0 !important;
    }

    .navbar-brand img,
    .rs-logo-img {
        width: 135px !important;
        height: auto !important;
        max-height: 38px !important;
        object-fit: contain !important;
    }

    .navbar-custom .d-flex.align-items-center.ms-auto,
    .d-flex.align-items-center.ms-auto.d-lg-none {
        margin-left: auto !important;
        display: flex !important;
        align-items: center !important;
        gap: 0.5rem !important;
        flex-shrink: 0 !important;
    }

    .hero-section,
    .rs-hero {
        padding-top: 2.25rem !important;
        padding-bottom: 2.25rem !important;
        text-align: left !important;
    }

    .hero-section h1,
    .hero-section .display-4,
    .hero-section .display-5,
    .rs-hero-title {
        font-size: 1.45rem !important;
        line-height: 1.3 !important;
        margin-top: 0.75rem !important;
        margin-bottom: 1rem !important;
        font-weight: 800 !important;
        letter-spacing: -0.01em !important;
    }

    .hero-section .lead,
    .hero-section p,
    .rs-hero-subtitle {
        font-size: 0.88rem !important;
        line-height: 1.5 !important;
        margin-bottom: 1.15rem !important;
    }

    .hero-section .d-flex.gap-3,
    .hero-section .d-flex.gap-2 {
        gap: 0.65rem !important;
        flex-direction: column !important;
    }

    .hero-section .btn,
    .rs-hero .btn {
        width: 100% !important;
        padding: 0.65rem 1rem !important;
        font-size: 0.88rem !important;
        font-weight: 700 !important;
        border-radius: 8px !important;
    }
}

/* PERFECT 100% UN-DISTURBED MOBILE LAYOUT & HERO SECTION FIX (< 992px) */
@media (max-width: 991.98px) {
    /* 1. Manufacturing Divisions List: Keep Checkmarks Inline Left */
    .hero-divisions-list li,
    .hero-section ul li,
    .hero-section .list-unstyled li {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        text-align: left !important;
        gap: 0.6rem !important;
        font-size: 0.88rem !important;
        color: #E2E8F0 !important;
        margin-bottom: 0.5rem !important;
    }
    
    .hero-divisions-list li i,
    .hero-section ul li i,
    .hero-section .list-unstyled li i {
        font-size: 1rem !important;
        color: #00D2FF !important;
        flex-shrink: 0 !important;
    }

    .hero-divisions-label {
        text-align: left !important;
        font-size: 0.8rem !important;
        letter-spacing: 0.05em !important;
        color: #00D2FF !important;
    }

    /* 2. Hero Section Alignment & Spacing */
    .hero-section .col-lg-6 {
        text-align: left !important;
    }

    .hero-title-custom,
    .hero-title,
    .rs-hero-title {
        text-align: left !important;
        font-size: 1.45rem !important;
        line-height: 1.3 !important;
        margin-top: 0.5rem !important;
        margin-bottom: 1rem !important;
        font-weight: 800 !important;
        color: #FFFFFF !important;
    }

    .hero-subtitle-badge {
        font-size: 0.72rem !important;
        letter-spacing: 0.08em !important;
    }

    /* 3. Hero Stats Row: Compact & Zero Overflow */
    .hero-section .d-flex.justify-content-center.gap-4,
    .hero-section .d-flex.gap-4,
    .hero-section .d-flex.justify-content-center.justify-content-lg-start {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        gap: 0.25rem !important;
        width: 100% !important;
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .hero-stat-number {
        font-size: 1.25rem !important;
        line-height: 1.1 !important;
    }

    .hero-stat-label {
        font-size: 0.72rem !important;
        color: #94A3B8 !important;
    }

    .hero-stat-divider {
        height: 24px !important;
        width: 1px !important;
        background: rgba(255, 255, 255, 0.2) !important;
    }

    /* 4. Hero Division Cards & Images */
    .product-division-hero-card {
        margin-bottom: 1rem !important;
    }

    .product-division-hero-card .card-logo-sm {
        max-width: 110px !important;
        height: auto !important;
    }

    .product-division-hero-card ul li {
        font-size: 0.8rem !important;
        display: flex !important;
        align-items: center !important;
        gap: 0.5rem !important;
    }

    /* 5. Sticky Action Dock Clearance */
    body {
        padding-bottom: 70px !important;
    }
}

/* 100% INLINE HORIZONTAL CHECKMARK ALIGNMENT FOR HERO MANUFACTURING DIVISIONS */
ul.hero-divisions-list,
.hero-divisions-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.5rem !important;
    padding-left: 0 !important;
    margin-bottom: 1.5rem !important;
}

ul.hero-divisions-list li,
.hero-divisions-list li,
.hero-divisions-list li.d-flex,
.hero-section ul.list-unstyled li {
    display: flex !important;
    flex-direction: row !important; /* FORCES INLINE HORIZONTAL ROW */
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: left !important;
    gap: 0.6rem !important;
    width: 100% !important;
}

ul.hero-divisions-list li i,
.hero-divisions-list li i,
.hero-section ul.list-unstyled li i {
    display: inline-block !important;
    font-size: 1rem !important;
    color: #00D2FF !important;
    flex-shrink: 0 !important;
}

ul.hero-divisions-list li span,
.hero-divisions-list li span,
.hero-section ul.list-unstyled li span {
    display: inline-block !important;
    text-align: left !important;
    color: #E2E8F0 !important;
}

/* ULTIMATE HERO CONTAINER PADDING & SIDE MARGIN FIX (320px - 480px Screens) */
@media (max-width: 991.98px) {
    .hero-section,
    .rs-hero {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .hero-section > .container,
    .hero-section .container,
    .rs-hero > .container,
    .rs-hero .container,
    .container {
        padding-left: 18px !important;
        padding-right: 18px !important;
        box-sizing: border-box !important;
    }

    .hero-section h1,
    .hero-section .display-4,
    .hero-section .display-5,
    .hero-title-custom,
    .hero-title,
    .rs-hero-title {
        font-size: 1.38rem !important;
        line-height: 1.3 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-top: 0.5rem !important;
        margin-bottom: 0.85rem !important;
        text-align: left !important;
        word-break: break-word !important;
    }

    ul.hero-divisions-list,
    .hero-divisions-list {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.6rem !important;
        padding-left: 0 !important;
        margin-bottom: 1.25rem !important;
    }

    ul.hero-divisions-list li,
    .hero-divisions-list li,
    .hero-divisions-list li.d-flex {
        display: flex !important;
        flex-direction: row !important; /* INLINE ROW (ICON LEFT, TEXT RIGHT) */
        align-items: center !important;
        justify-content: flex-start !important;
        text-align: left !important;
        gap: 0.6rem !important;
        width: 100% !important;
    }

    ul.hero-divisions-list li i,
    .hero-divisions-list li i {
        display: inline-block !important;
        font-size: 1rem !important;
        color: #00D2FF !important;
        flex-shrink: 0 !important;
    }

    ul.hero-divisions-list li span,
    .hero-divisions-list li span {
        display: inline-block !important;
        text-align: left !important;
        color: #E2E8F0 !important;
    }
}

/* ==========================================================================
   THE ULTIMATE 100% MASTER MOBILE MEDIA QUERY SYSTEM
   ========================================================================== */

/* 1. Universal Viewport & Reset */
html, body {
    overflow-x: hidden !important;
    max-width: 100vw !important;
    width: 100% !important;
}

/* 2. Tablet & Mobile Viewports (< 992px) */
@media (max-width: 991.98px) {
    /* Base Spacing & Padding */
    body {
        padding-bottom: 70px !important; /* Space for Mobile Action Dock */
    }

    .container {
        padding-left: 16px !important;
        padding-right: 16px !important;
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    section, .py-5 {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important;
    }

    /* Hero Section Master Alignment */
    .hero-section, .rs-hero {
        padding-top: 2.25rem !important;
        padding-bottom: 2.25rem !important;
        background: linear-gradient(135deg, #07152F 0%, #0A2253 100%) !important;
        color: #FFFFFF !important;
    }

    .hero-section .d-flex.align-items-center.justify-content-center,
    .hero-section .d-flex.justify-content-center {
        justify-content: flex-start !important;
        text-align: left !important;
    }

    .hero-accent-line {
        width: 32px !important;
        height: 3px !important;
        background: #00D2FF !important;
    }

    .hero-subtitle-badge {
        font-size: 0.75rem !important;
        letter-spacing: 0.08em !important;
        color: #00D2FF !important;
        font-weight: 700 !important;
        text-transform: uppercase !important;
    }

    .hero-title, .hero-title-custom, .rs-hero-title {
        font-size: 1.5rem !important;
        line-height: 1.28 !important;
        font-weight: 800 !important;
        color: #FFFFFF !important;
        margin-top: 0.65rem !important;
        margin-bottom: 1rem !important;
        text-align: left !important;
        word-break: break-word !important;
    }

    .hero-title br, .hero-title-custom br, .rs-hero-title br {
        display: none !important; /* Removes hardcoded desktop linebreaks */
    }

    .hero-divisions-label {
        text-align: left !important;
        font-size: 0.78rem !important;
        letter-spacing: 0.06em !important;
        color: #00D2FF !important;
        font-weight: 800 !important;
        margin-bottom: 0.6rem !important;
    }

    ul.hero-divisions-list, .hero-divisions-list {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.55rem !important;
        padding-left: 0 !important;
        margin-bottom: 1.5rem !important;
        text-align: left !important;
    }

    ul.hero-divisions-list li, .hero-divisions-list li {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        text-align: left !important;
        gap: 0.6rem !important;
        font-size: 0.88rem !important;
        color: #F1F5F9 !important;
    }

    ul.hero-divisions-list li i, .hero-divisions-list li i {
        font-size: 1rem !important;
        color: #00D2FF !important;
        flex-shrink: 0 !important;
    }

    /* Hero CTA Buttons */
    .hero-section .d-flex.flex-wrap.gap-3,
    .hero-section .d-flex.gap-3 {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.65rem !important;
        width: 100% !important;
        margin-bottom: 1.5rem !important;
    }

    .btn-hero-cta, .hero-section .btn {
        width: 100% !important;
        display: block !important;
        padding: 0.75rem 1rem !important;
        font-size: 0.88rem !important;
        font-weight: 700 !important;
        border-radius: 8px !important;
        text-align: center !important;
    }

    /* Hero Stats Dashboard Bar */
    .hero-section .d-flex.justify-content-center.gap-4,
    .hero-section .d-flex.gap-4,
    .hero-section .d-flex.justify-content-center.justify-content-lg-start {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-around !important;
        align-items: center !important;
        width: 100% !important;
        background: rgba(255, 255, 255, 0.05) !important;
        border: 1px solid rgba(255, 255, 255, 0.12) !important;
        border-radius: 10px !important;
        padding: 0.85rem 0.5rem !important;
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .hero-stat-number {
        font-size: 1.35rem !important;
        font-weight: 800 !important;
        color: #00D2FF !important;
        line-height: 1.1 !important;
    }

    .hero-stat-label {
        font-size: 0.72rem !important;
        color: #CBD5E1 !important;
        font-weight: 600 !important;
    }

    .hero-stat-divider {
        height: 28px !important;
        width: 1px !important;
        background: rgba(255, 255, 255, 0.2) !important;
    }

    /* Hero Division Cards on Right Column */
    .product-division-hero-card {
        border-radius: 12px !important;
        margin-bottom: 1rem !important;
        background: #0A2253 !important;
        border: 1px solid rgba(0, 210, 255, 0.2) !important;
    }

    .product-division-hero-card .card-body {
        padding: 1rem !important;
    }

    /* General Cards & Grid Systems */
    .card {
        border-radius: 12px !important;
        margin-bottom: 1rem !important;
    }

    .row.g-4 > [class*="col-"],
    .row.g-3 > [class*="col-"] {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    /* Tables Touch Scroll */
    table {
        display: block !important;
        width: 100% !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }
}

/* 3. Small Mobile Screen Tweaks (< 576px) */
@media (max-width: 575.98px) {
    .container {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    .hero-title, .hero-title-custom, .rs-hero-title {
        font-size: 1.38rem !important;
    }
}

/* ==========================================================================
   PERFECT COMPACT MOBILE TECH TABLES, BRAND SHOWCASE CARDS & SECTION POLISH
   ========================================================================== */

@media (max-width: 991.98px) {
    /* 1. Tech Spec Tables in Product Cards */
    .tech-spec-table {
        width: 100% !important;
        margin-bottom: 1rem !important;
        border-collapse: collapse !important;
        display: table !important; /* Keep as structured table on mobile */
    }

    .tech-spec-table th,
    .tech-spec-table td {
        padding: 6px 8px !important;
        font-size: 0.78rem !important;
        line-height: 1.35 !important;
        border-bottom: 1px solid #E2E8F0 !important;
    }

    .tech-spec-table th {
        width: 42% !important;
        font-weight: 700 !important;
        color: #0A2253 !important;
        background: #F8FAFC !important;
    }

    .tech-spec-table td {
        color: #334155 !important;
    }

    /* 2. Brand Showcase Cards */
    .brand-showcase-card {
        margin-bottom: 1.5rem !important;
        border-radius: 12px !important;
        overflow: hidden !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06) !important;
        border: 1px solid #E2E8F0 !important;
        background: #FFFFFF !important;
    }

    .brand-header-rockseal,
    .brand-header-yontax {
        padding: 1.25rem 1rem !important;
    }

    .brand-header-logo-white {
        max-width: 140px !important;
        height: auto !important;
        object-fit: contain !important;
    }

    .brand-showcase-body {
        padding: 1.15rem 1rem !important;
    }

    /* 3. Section Titles & Subtitles */
    .section-title-wrap {
        margin-bottom: 1.75rem !important;
        text-align: center !important;
    }

    .section-subtitle {
        font-size: 0.75rem !important;
        letter-spacing: 0.08em !important;
        font-weight: 700 !important;
        text-transform: uppercase !important;
    }

    .section-title {
        font-size: 1.45rem !important;
        line-height: 1.3 !important;
        font-weight: 800 !important;
        margin-top: 0.35rem !important;
    }

    /* 4. Factory Evidence & Gallery Cards */
    .card img {
        max-height: 220px !important;
        object-fit: cover !important;
    }

    /* 5. Mobile Action Dock Clearance */
    body {
        padding-bottom: 72px !important;
    }
}

/* HERO SECTION 15PX PADDING OVERRIDE (USER DIRECTIVE) */
@media (max-width: 991.98px) {
    .hero-section, .rs-hero {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        padding: 15px !important;
        background: linear-gradient(135deg, #07152F 0%, #0A2253 100%) !important;
        color: #FFFFFF !important;
    }
}

/* BRAND LOGO MD DIRECTIVE */
.brand-logo-md {
    height: 36px !important;
    width: auto !important;
    object-fit: contain !important;
}

/* FOOTER BRAND LOGO 50PX MOBILE DIRECTIVE */
@media (max-width: 575px) {
    .footer-brand-logo {
        height: 50px !important;
    }
}

/* FOOTER BRAND LOGO GLOBAL DIRECTIVE */
.footer-brand-logo {
    height: 50px !important;
    width: auto !important;
    object-fit: contain !important;
}

/* FOOTER TOP ROW CLASS-BASED BORDER */
.footer-top-row {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
}

/* FOOTER LINKS A DIRECTIVE */
.footer-dark .footer-links a {
    color: rgba(255, 255, 255, 0.65) !important;
    text-decoration: none !important;
    transition: all var(--transition-speed, 0.3s) var(--transition-smooth, ease) !important;
    display: inline-block !important;
    font-size: 14px !important;
}

/* HERO FLEX DIRECTION ROW DIRECTIVE */
@media (max-width: 991.98px) {
    .hero-section .d-flex.gap-3, .hero-section .d-flex.gap-2 {
        gap: 0.65rem !important;
        flex-direction: row !important;
    }
}

/* HIDE HERO ACCENT LINE AND SUBTITLE BADGE ON MOBILE (< 992px) */
@media (max-width: 991.98px) {
    .hero-accent-line,
    .hero-subtitle-badge,
    .hero-section .hero-accent-line,
    .hero-section .hero-subtitle-badge {
        display: none !important;
    }
}


/* CARD IMG MAX HEIGHT 260PX DIRECTIVE */
@media (max-width: 991.98px) {
    .card img {
        max-height: 260px !important;
        object-fit: cover !important;
    }
}

/* BANNER IMG WRAP 110PX CLASS-BASED RULE */
.banner-img-wrap-110 {
    height: 110px !important;
}

/* ==========================================================================
   GLOBAL CLASS-BASED STYLING SYSTEM (ZERO INLINE STYLES)
   ========================================================================== */

/* Navbar Toggler Button */
.navbar-toggler-custom,
.navbar-toggler {
    background: #07152F !important;
    border: 1px solid #00D2FF !important;
    padding: 0.45rem 0.7rem !important;
    border-radius: 8px !important;
}

/* Footer Bottom Border */
.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
}

/* BS App Drawer Elements */
.bs-app-logo-icon {
    height: 34px !important;
    width: 34px !important;
    object-fit: contain !important;
    filter: brightness(0) invert(1) !important;
}

.bs-app-portal-title {
    letter-spacing: 0.05em !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;
}

.bs-app-portal-sub {
    font-size: 0.68rem !important;
    color: #00D2FF !important;
}

.bs-app-granules-title {
    color: #00D2FF !important;
    font-weight: 800 !important;
    letter-spacing: 0.05em !important;
    font-size: 0.78rem !important;
    text-transform: uppercase !important;
}

.bs-app-footer-note {
    font-size: 0.7rem !important;
    color: rgba(255, 255, 255, 0.5) !important;
    text-align: center !important;
    margin-top: 0.5rem !important;
}

/* Icon Electric Cyan & White Utility Classes */
.icon-cyan,
.bs-app-drawer i {
    color: #00D2FF !important;
}

.icon-white,
.btn-rs-header-call i {
    color: #FFFFFF !important;
}

/* HIDE HERO SECTION CTA BUTTONS DIV ON MOBILE (< 992px) */
@media (max-width: 991.98px) {
    .hero-section .btn-hero-cta,
    .hero-section .d-flex.flex-wrap.gap-3,
    .hero-section .hero-cta-wrap {
        display: none !important;
    }
}

/* ==========================================================================
   ENFORCE 100% STICKY HEADER ON PAGE SCROLL (DESKTOP & MOBILE)
   ========================================================================== */

.navbar-custom,
.rs-header,
.navbar.sticky-top,
header.sticky-top,
.sticky-top {
    position: sticky !important;
    position: -webkit-sticky !important;
    top: 0 !important;
    z-index: 1030 !important;
    background: #FFFFFF !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08) !important;
    transition: all 0.3s ease !important;
}

@media (max-width: 991.98px) {
    .navbar-custom,
    .rs-header,
    .navbar.sticky-top,
    header.sticky-top {
        position: sticky !important;
        position: -webkit-sticky !important;
        top: 0 !important;
        z-index: 1030 !important;
        background: #FFFFFF !important;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1) !important;
    }
}

/* MOBILE NAVBAR BRAND IMG DIRECTIVE */
@media (max-width: 991.98px) {
    .navbar-brand img,
    .rs-logo-img {
        width: auto !important;
        height: auto !important;
        max-height: 40px !important;
        object-fit: contain !important;
    }
}

/* HIDE SECTION TITLE PSEUDO-ELEMENT LINE ON MOBILE (< 992px) */
@media (max-width: 991.98px) {
    .section-title::after,
    h2.section-title::after,
    .section-title-wrap .section-title::after {
        display: none !important;
        content: none !important;
    }
}

/* CARD MOBILE MARGIN TOP DIRECTIVE */
@media (max-width: 991.98px) {
    .card {
        border-radius: 12px !important;
        margin-bottom: 1rem !important;
        margin-top: 15px !important;
    }
}

/* CONTACT PAGE & INNER PAGE CONTAINER SIDE PADDING FIX (< 992px) */
@media (max-width: 991.98px) {
    .page-header-bg,
    .page-header-bg > .container,
    .section-padding > .container,
    .contact-section > .container,
    .container {
        padding-left: 18px !important;
        padding-right: 18px !important;
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .page-header-bg {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .card.p-4,
    .inquiry-form-card,
    .contact-info-card {
        padding: 1.15rem !important;
    }
}

/* ==========================================================================
   MASTER MOBILE CONTAINER & ROW SIDE PADDING SYSTEM (ZERO EDGE TOUCHING)
   ========================================================================== */
@media (max-width: 991.98px) {
    /* Prevent row negative margin overhang from neutralizing container padding */
    .row,
    .row.g-5,
    .row.g-4,
    .row.g-3,
    .row.gy-5 {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Enforce 18px side padding on container and section elements */
    .container,
    .container-fluid,
    section,
    .section-padding,
    .page-header-bg,
    .hero-section {
        padding-left: 18px !important;
        padding-right: 18px !important;
        box-sizing: border-box !important;
    }

    /* Ensure column children stay nicely aligned inside the row */
    .row > [class*="col-"] {
        padding-left: 6px !important;
        padding-right: 6px !important;
    }

    /* Card & Form container inner padding */
    .card,
    .card.p-4,
    .inquiry-form-card,
    .contact-info-card {
        padding: 1.25rem !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Subpage header breadcrumbs & title spacing */
    .page-header-bg .container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* HIGH-CONTRAST FOOTER BRAND LINK READABILITY FIX */
.footer-brand-link {
    color: #00D2FF !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
    transition: color 0.3s ease !important;
}

.footer-brand-link:hover,
.footer-brand-link:focus {
    color: #FFFFFF !important;
    text-decoration: underline !important;
}

/* BG-PRIMARY GRADIENT & COLOR DIRECTIVE */
.bg-primary {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
    background: linear-gradient(135deg, var(--accent-color) 0%, #0369a1 100%) !important;
}

/* HIGH-VISIBILITY TOPBAR & BREADCRUMB SURFACE DIRECTIVE */
.bg-light.border-bottom.py-2,
.top-bar-bg {
    background-color: #EEF4FA !important;
    background: #EEF4FA !important;
    border-bottom: 1px solid #CBD5E1 !important;
    padding: 12px 0 !important;
}

/* HIGH-VISIBILITY RULE: WHITE ICONS ON ALL BLUE BACKGROUND SURFACES */
.bg-primary i,
.bg-primary .fa-solid,
.bg-primary .fa-regular,
.bg-primary .fa-brands,
.bg-info i,
.bg-info .fa-solid,
.bg-info .fa-regular,
.bg-info .fa-brands,
.btn-primary i,
.btn-primary .fa-solid,
.btn-primary .fa-regular,
.btn-primary .fa-brands,
.btn-info i,
.btn-info .fa-solid,
.btn-info .fa-regular,
.callout-info i,
.callout-info .fa-solid,
.callout-info .fa-regular,
.callout-info .callout-title i,
.callout-tip i,
.callout-tip .fa-solid,
.callout-tip .fa-regular,
.callout-tip .callout-title i,
.article-category-badge i,
.article-category-badge .fa-solid,
.blog-featured-badge i,
.blog-featured-badge .fa-solid,
.badge.bg-primary i,
.badge.bg-info i,
.badge-info i,
.icon-box-primary i,
.icon-box.bg-primary i,
.service-icon-wrap.bg-primary i,
.toc-box h4 i,
.toc-box h4 .fa-solid,
.btn-rs-header-call i {
    color: #FFFFFF !important;
}

/* HIGH-CONTRAST ICON VISIBILITY DIRECTIVE ON DARK & BLUE SURFACES */
i.text-primary,
.fa-solid.text-primary,
.fa-regular.text-primary,
.fa-brands.text-primary {
    color: #00D2FF !important;
}

.bg-primary i,
.bg-primary i.text-primary,
.bg-primary i.text-info,
.bg-info i,
.bg-info i.text-primary,
.bg-info i.text-info,
.btn-primary i,
.btn-primary i.text-primary,
.callout-info i,
.callout-info i.text-primary,
.callout-info i.text-info,
.callout-tip i,
.callout-tip i.text-primary,
.callout-tip i.text-info,
.article-hero i,
.article-hero i.text-primary,
.article-hero i.text-info,
.article-category-badge i,
.blog-featured-badge i,
.toc-box h4 i,
.toc-box h4 .fa-solid {
    color: #FFFFFF !important;
}

/* ELEGANT EQUAL-HEIGHT PRODUCT CATALOG CARDS & MOBILE TABLES */
.product-catalog-card {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    border-radius: 12px !important;
    border: 1px solid #e2e8f0 !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.product-catalog-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1) !important;
}

.product-image-container {
    height: 220px !important;
    width: 100% !important;
    overflow: hidden !important;
    background: #f8fafc !important;
}

.product-image-container img {
    height: 100% !important;
    width: 100% !important;
    object-fit: cover !important;
    transition: transform 0.4s ease !important;
}

.product-catalog-card:hover .product-image-container img {
    transform: scale(1.05) !important;
}

.product-details-wrap {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    padding: 1.25rem !important;
}

.tech-spec-table {
    width: 100% !important;
    margin-bottom: 1rem !important;
    font-size: 0.85rem !important;
}

.tech-spec-table th {
    width: 42% !important;
    color: #475569 !important;
    font-weight: 600 !important;
    padding: 6px 8px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e2e8f0 !important;
}

.tech-spec-table td {
    color: #0f172a !important;
    font-weight: 500 !important;
    padding: 6px 8px !important;
    border-bottom: 1px solid #e2e8f0 !important;
}

@media (max-width: 575.98px) {
    .product-image-container {
        height: 190px !important;
    }
    .tech-spec-table th,
    .tech-spec-table td {
        font-size: 0.8rem !important;
        padding: 5px 6px !important;
    }
}

/* DEEP NAVY BG-PRIMARY GRADIENT DIRECTIVE */
.bg-primary {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
    background: linear-gradient(135deg, #153c73 0%, #0e2f5b 100%) !important;
}

/* BREADCRUMB & SUBPAGE HERO BACKGROUND DIRECTIVE */
.page-header-bg,
.article-hero,
.breadcrumb-custom-wrap,
header.page-header-bg {
    background: linear-gradient(135deg, #153c73 0%, #0e2f5b 100%) !important;
    background-color: #0e2f5b !important;
}

.page-header-bg .page-header-title,
.page-header-bg .breadcrumb-custom li,
.page-header-bg .breadcrumb-custom li a,
.article-hero .article-hero-title,
.article-hero .breadcrumb li,
.article-hero .breadcrumb li a {
    color: #FFFFFF !important;
}

.page-header-bg .breadcrumb-custom li.active,
.article-hero .breadcrumb li.active {
    color: #00D2FF !important;
}

/* TOPBAR & CATEGORY SELECTOR SURFACE NAVY GRADIENT DIRECTIVE */
.bg-light.border-bottom.py-2,
.top-bar,
.top-bar-bg {
    background: linear-gradient(135deg, #153c73 0%, #0e2f5b 100%) !important;
    background-color: #0e2f5b !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15) !important;
    padding: 12px 0 !important;
    color: #FFFFFF !important;
}

.bg-light.border-bottom.py-2 a,
.top-bar a,
.top-bar-bg a,
.bg-light.border-bottom.py-2 span,
.top-bar span,
.top-bar-bg span {
    color: #FFFFFF !important;
}

.bg-light.border-bottom.py-2 i,
.top-bar i,
.top-bar-bg i {
    color: #00D2FF !important;
}

/* RESTORE .TOP-BAR TO VAR(--PRIMARY-DARK) DIRECTIVE */
.top-bar {
    background-color: var(--primary-dark) !important;
    background: var(--primary-dark) !important;
}

.bg-light.border-bottom.py-2,
.top-bar-bg {
    background: linear-gradient(135deg, #153c73 0%, #0e2f5b 100%) !important;
    background-color: #0e2f5b !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15) !important;
    padding: 12px 0 !important;
    color: #FFFFFF !important;
}

/* REMOVE BORDER-BOTTOM FROM TOPBAR / CATEGORY BAR DIRECTIVE */
.bg-light.border-bottom.py-2,
.top-bar-bg {
    background: linear-gradient(135deg, #153c73 0%, #0e2f5b 100%) !important;
    background-color: #0e2f5b !important;
    border-bottom: none !important;
    padding: 12px 0 !important;
    color: #FFFFFF !important;
}

/* REMOVE FLEX-GROW FROM PRODUCT DETAILS WRAP DIRECTIVE */
.product-details-wrap {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: normal !important;
    padding: 1.25rem !important;
}

/* CLEAN NATURAL PRODUCT CARD HEIGHTS */
.product-catalog-card {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    border-radius: 12px !important;
    border: 1px solid #e2e8f0 !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
}

.product-details-wrap {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    justify-content: space-between !important;
    padding: 1.25rem !important;
}

/* NATURAL COMPACT PRODUCT CATALOG CARDS - NO ARTIFICIAL HEIGHT OR GAPS */
.product-catalog-card {
    display: block !important;
    height: auto !important;
    border-radius: 12px !important;
    border: 1px solid #e2e8f0 !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.product-catalog-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1) !important;
}

.product-image-container {
    height: 210px !important;
    width: 100% !important;
    overflow: hidden !important;
    background: #f8fafc !important;
}

.product-image-container img {
    height: 100% !important;
    width: 100% !important;
    object-fit: cover !important;
    transition: transform 0.4s ease !important;
}

.product-details-wrap {
    display: block !important;
    height: auto !important;
    flex: none !important;
    justify-content: normal !important;
    padding: 1rem !important;
}

.product-catalog-brand {
    display: inline-block !important;
    margin-bottom: 0.25rem !important;
}

.product-catalog-name {
    margin-bottom: 0.75rem !important;
}

.tech-spec-table {
    width: 100% !important;
    margin-bottom: 0.75rem !important;
}

.tds-request-banner {
    margin-top: 0.75rem !important;
    margin-bottom: 0.75rem !important;
}

/* SUBTITLE-SM SMALL TYPOGRAPHY DIRECTIVE */
.subtitle-sm {
    font-size: 0.65em !important;
    font-weight: normal !important;
    display: block !important;
}

/* REMOVE CONTAINER MOBILE SIDE PADDING DIRECTIVE */
@media (max-width: 991.98px) {
    .hero-section > .container,
    .hero-section .container,
    .rs-hero > .container,
    .rs-hero .container,
    .container {
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }
}

/* REMOVE ROW COLUMN MOBILE PADDING DIRECTIVE */
@media (max-width: 991.98px) {
    .row.g-4 > [class*="col-"],
    .row.g-3 > [class*="col-"] {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* REMOVE ALL MOBILE CONTAINER SIDE PADDING DIRECTIVE */
@media (max-width: 991.98px) {
    .page-header-bg,
    .page-header-bg > .container,
    .section-padding > .container,
    .contact-section > .container,
    .container {
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* MOBILE 575PX FLEX GAP & ALIGNMENT DIRECTIVE */
@media (max-width: 575px) {
    .hero-section .d-flex,
    .footer-dark .d-flex,
    .section-padding .d-flex {
        gap: 0 !important;
        align-items: center !important;
    }
}

/* MOBILE CARD SPACING & PADDING DIRECTIVE */
@media (max-width: 991.98px) {
    .card,
    .card.p-4,
    .inquiry-form-card,
    .contact-info-card {
        padding: 1.25rem !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-top: 15px !important;
    }
}

/* MOBILE FOOTER PADDING DIRECTIVE */
@media (max-width: 991.98px) {
    .rs-jumbo-footer,
    .footer-dark {
        padding-top: 2.5rem !important;
        padding-bottom: 0 !important;
        padding: 15px !important;
    }
}

/* REMOVE .H-280 HEIGHT DIRECTIVE */
.h-280 {
    height: auto !important;
}

/* PREMIUM WAREHOUSE & FACTORY PHOTOS STYLING */
.banner-img-wrap-110,
.warehouse-showcase-img {
    height: 220px !important;
    width: 100% !important;
    object-fit: cover !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08) !important;
    transition: transform 0.4s ease !important;
}

.banner-img-wrap-110:hover,
.warehouse-showcase-img:hover {
    transform: scale(1.02) !important;
}

/* FORCE ELEGANT WAREHOUSE PHOTO CONTAINER HEIGHT */
.banner-img-wrap-110 {
    height: 240px !important;
    max-height: 240px !important;
}

.banner-img-wrap-110 img {
    height: 100% !important;
    width: 100% !important;
    object-fit: cover !important;
}

/* 100% PERFECT EQUAL HEIGHT FOR ALL DIVISION PRODUCT DISPLAY CARDS */
.brand-showcase-card,
.product-catalog-card,
.product-division-card,
.product-card {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

.brand-showcase-body,
.product-details-wrap,
.product-card-body {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
}

/* Align bottom button rows to the bottom of cards across all divisions */
.brand-showcase-body .row.g-2,
.product-details-wrap .d-flex.mt-3,
.product-details-wrap .d-flex.mt-auto,
.product-details-wrap .tds-request-banner + .d-flex {
    margin-top: auto !important;
    padding-top: 0.75rem !important;
}

/* HERO SECTION MOBILE STATS BAR DIRECTIVE */
@media (max-width: 991.98px) {
    .hero-section .d-flex.justify-content-center.gap-4,
    .hero-section .d-flex.gap-4,
    .hero-section .d-flex.justify-content-center.justify-content-lg-start {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-around !important;
        align-items: center !important;
        width: 100% !important;
        background: rgba(255, 255, 255, 0.05) !important;
        border: 1px solid rgba(255, 255, 255, 0.12) !important;
        border-radius: 10px !important;
        padding: 0.85rem 0.5rem !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
}

/* MOBILE CARD 15PX PADDING DIRECTIVE */
@media (max-width: 991.98px) {
    .card,
    .card.p-4,
    .inquiry-form-card,
    .contact-info-card {
        padding: 15px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-top: 15px !important;
    }
}