/* =========================================================
   VASMA PRIVATE LIMITED — FINAL V24 CLEANUP
   ========================================================= */

/* Keep animated page content visible */
html body [data-anime],
html.no-js [data-anime],
html.vasma-content-visible [data-anime] {
    opacity: 1 !important;
    visibility: visible !important;
}

html body [data-anime] > *,
html.no-js [data-anime] > *,
html.vasma-content-visible [data-anime] > * {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

/* Existing VASMA cards */
.vasma-service-card img,
.vs-card img {
    display: block;
    width: 100%;
    object-fit: cover;
}

.vasma-service-card {
    height: 100%;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 6px 28px rgba(0,0,0,.08);
    transition: transform .25s ease, box-shadow .25s ease;
}

.vasma-service-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 34px rgba(0,0,0,.12);
}

.vasma-service-card .vasma-card-body { padding: 24px; }
.vasma-service-card h4,
.vasma-service-card h5 { margin-bottom: 10px; }
.vasma-service-card p { margin-bottom: 0; }

.vasma-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 24px;
}

@media (max-width: 991px) {
    .vasma-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 575px) {
    .vasma-grid { grid-template-columns: 1fr; }
}

/* =========================================================
   1. PAGE-LEVEL 10-ICON BLOCK MUST NOT APPEAR
      Header hover menu remains untouched.
   ========================================================= */

body > .v10-top-services,
main > .v10-top-services,
.v10-top-services:not(.vasma-header .v10-top-services) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
}

/* Header hover menu stays above page content */
.v20-service-menu,
.v20-service-grid,
.v20-service {
    box-sizing: border-box;
}

/* =========================================================
   2. REMOVE ENTIRE OLD BLACK / DUPLICATE FOOTER
      This is intentional: user requested the black footer
      and its duplicated menu/content to be removed.
   ========================================================= */

footer,
.site-footer,
.main-footer,
.footer-area,
.footer-wrapper,
.footer-section,
.footer-main,
.footer-bottom,
.footer-top,
.footer-wrap,
.footer-container,
.footer-content,
.footer-widget-area,
.footer-widgets,
.footer-inner,
.footer-area-wrapper,
.vasma-footer,
#footer,
#site-footer,
#main-footer,
#footer-area,
#footer-wrapper,
#footer-section {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
}

footer *,
.site-footer *,
.main-footer *,
.footer-area *,
.footer-wrapper *,
.vasma-footer *,
#footer *,
#site-footer * {
    display: none !important;
}

/* Legacy footer mega menus — defensive cleanup */
footer .v12-mega,
footer .v12-mega-grid,
footer .v12-menu-wrap,
footer .v12-viewall,
footer .v12-icon {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* =========================================================
   3. REMOVE FLOATING SCROLL / ERROR ELEMENTS
   ========================================================= */

.scroll-indicator,
.scroll-progress,
.scroll-progress-bar,
.scroll-line,
.scroll-down,
.scroll-top,
.scroll-to-top,
.scroll-up,
.page-scroll,
.page-scroll-up,
.cursor-scroll,
.cursor-scroll-wrapper,
.floating-scroll,
.scroll-wrapper,
.scrollbar,
.scroll-bar,
.scroll-progress-container,
.vertical-scroll,
.vertical-scroll-indicator,
.page-progress,
.progress-scroll,
#scroll-indicator,
#scroll-progress,
#scroll-progress-bar,
#scroll-top,
#scrollTop,
#scrollDown,
#scroll-down,
#page-scroll,
#page-scroll-up,
#scroll-wrapper,
#scrollbar,
#scroll-progress-container {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    pointer-events: none !important;
}

/* =========================================================
   4. REMOVE FLOATING / DEBUG / ERROR OVERLAYS
   ========================================================= */

.floating-widget,
.floating-box,
.floating-panel,
.floating-element,
.floating-content,
.floating-error,
.floating-debug,
.floating-overlay,
.fixed-widget,
.fixed-panel,
.fixed-element,
.fixed-overlay,
.overlay-widget,
.overlay-panel,
.overlay-error,
.debug-panel,
.debug-overlay,
.debug-box,
.error-overlay,
.error-panel,
.error-box,
.page-floating,
.page-overlay,
.theme-overlay,
.animation-overlay,
.loader-overlay {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    pointer-events: none !important;
}

/* =========================================================
   5. REMOVE ACCIDENTAL FIXED IFRAME OVERLAYS
   ========================================================= */

iframe[style*="position: fixed"],
iframe[style*="position:fixed"],
iframe[style*="position : fixed"],
iframe[style*="position :fixed"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* =========================================================
   6. PRODUCT CATALOGUE READABILITY
   ========================================================= */

.v16-product-body h3,
.v16-product-card h3,
.v16-product-body .product-title,
.v16-product-card .product-title {
    font-size: 20px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}

.v16-product-body p,
.v16-product-card p,
.v16-product-body .description,
.v16-product-card .description {
    font-size: 15px !important;
    line-height: 1.6 !important;
    min-height: 0 !important;
}

.v16-product-arrow {
    font-size: 14px !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;
}

.v16-product-body {
    padding: 16px 16px 18px !important;
}

/* Generic product/service cards */
.product-card h3,
.service-card h3,
.product-card .product-title,
.service-card .service-title {
    font-size: 18px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}

.product-card p,
.service-card p,
.product-card .description,
.service-card .description {
    font-size: 14px !important;
    line-height: 1.55 !important;
}

/* =========================================================
   7. CONTACT SECTION — NORMAL DOCUMENT FLOW
   ========================================================= */

section:has(#contactForm) {
    position: relative !important;
    clear: both !important;
    z-index: 2 !important;
    overflow: visible !important;
}

/* =========================================================
   8. GLOBAL OVERFLOW CLEANUP
   ========================================================= */

html,
body {
    max-width: 100%;
    overflow-x: hidden !important;
}

img {
    max-width: 100%;
}

/* =========================================================
   9. MOBILE
   ========================================================= */

@media (max-width: 991px) {
    .v16-product-body h3,
    .v16-product-card h3,
    .v16-product-body .product-title,
    .v16-product-card .product-title {
        font-size: 18px !important;
    }

    .v16-product-body p,
    .v16-product-card p,
    .v16-product-body .description,
    .v16-product-card .description {
        font-size: 14px !important;
        line-height: 1.55 !important;
    }
}

@media (max-width: 767px) {
    html,
    body {
        width: 100%;
        overflow-x: hidden !important;
    }

    .v16-product-body h3,
    .v16-product-card h3,
    .v16-product-body .product-title,
    .v16-product-card .product-title {
        font-size: 17px !important;
    }

    .v16-product-body p,
    .v16-product-card p,
    .v16-product-body .description,
    .v16-product-card .description {
        font-size: 13.5px !important;
    }
}

/* =========================================================
   FINAL END
   ========================================================= */
