/* =========================================================
   LOGIN PAKISTAN SHOP - ELEMENTOR WIDTH FIX
========================================================= */

body.woocommerce-shop
.lp-custom-shop-page {

    width: 100%;

    max-width: none;

    margin: 0;

    padding: 0;
}



/* Elementor root */

body.woocommerce-shop
.lp-custom-shop-page
> .elementor {

    width: 100%;

    max-width: none;

    margin: 0;

    padding: 0;
}



/* Modern Elementor containers */

body.woocommerce-shop
.lp-custom-shop-page
.e-con.e-parent {

    width: 100%;

    max-width: none;
}



/* HTML widget itself */

body.woocommerce-shop
.lp-custom-shop-page
.elementor-widget-html {

    width: 100%;

    max-width: none;
}


body.woocommerce-shop
.lp-custom-shop-page
.elementor-widget-html
> .elementor-widget-container {

    width: 100%;

    max-width: none;
}
/* ================================================================================================= */
/* =========================================================
   SHOP PAGE - EXTRA TOP SPACE FIX
   Scoped only to WooCommerce main Shop page
========================================================= */

body.woocommerce-shop #page,
body.woocommerce-shop .site-content,
body.woocommerce-shop #content,
body.woocommerce-shop .content-area,
body.woocommerce-shop .site-main,
body.woocommerce-shop .lp-custom-shop-page {

    margin-top: 0 !important;
    padding-top: 0 !important;
}


/* Do not allow Elementor wrapper to add top spacing */

body.woocommerce-shop
.lp-custom-shop-page > .elementor {

    width: 100%;

    max-width: none;

    margin-top: 0 !important;
    padding-top: 0 !important;
}


/* First Elementor container */

body.woocommerce-shop
.lp-custom-shop-page
.elementor > .elementor-element:first-child,

body.woocommerce-shop
.lp-custom-shop-page
.e-con:first-child {

    margin-top: 0 !important;
}


/* Custom header itself should not get an extra margin */

body.woocommerce-shop
.lp-site-header {

    margin-top: 0 !important;
    padding-top: 0 !important;
}


/* Hero wrapper */

body.woocommerce-shop
.lp-archive-hero {

    margin-top: 0 !important;
}


/* ================================================================================================= */
/* =========================================================
   LOGIN PAKISTAN CATEGORY PAGES - ASTRA CONTAINER RESET
   Milestone 1: Scoped Ancestor Wrapper Reset
   Removes Astra 1200px max-width cap and horizontal padding.
   Strictly scoped to verified LoginPakistan category contexts:
   - Taxonomy archives (body.tax-product_cat)
   - Category custom pages (body.aec-product-category-page)
   - Pages containing category modules (body:has([class*="lp-"][class*="-page"]))
   - Specific module classes across all 11 category pages
   Preserves 100% isolation: Zero impact on Shop, Cart,
   Checkout, Single Product, Homepage, and standard pages.
========================================================= */

/* 1. Astra Container Full-Width & Horizontal Padding Reset */
body.tax-product_cat .site-content > .ast-container,
body.aec-product-category-page .site-content > .ast-container,
body:has([class*="lp-"][class*="-page"]) .site-content > .ast-container,
body.page:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gifts-page, .lp-pgift-page, .lp-pg-page) .site-content > .ast-container,
body.page:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gfabu-page, .lp-gfami-page, .lp-gfh-page, .lp-gfhim-page, .lp-pg-page, .lp-pgift-page, .lp-gifts-page) .site-content > .ast-container,
body.page-template-default:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gifts-page, .lp-pgift-page, .lp-pg-page) .site-content > .ast-container,
body.page-template-default:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gfabu-page, .lp-gfami-page, .lp-gfh-page, .lp-gfhim-page, .lp-pg-page, .lp-pgift-page, .lp-gifts-page) .site-content > .ast-container {

    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    display: block;
}

/* 2. Primary Content Area, Site Main, and Entry Content Reset */
body.tax-product_cat #primary.content-area,
body.tax-product_cat .content-area,
body.tax-product_cat #main.site-main,
body.tax-product_cat .site-main,
body.tax-product_cat .entry-content,
body.aec-product-category-page #primary.content-area,
body.aec-product-category-page .content-area,
body.aec-product-category-page #main.site-main,
body.aec-product-category-page .site-main,
body.aec-product-category-page .entry-content,
body:has([class*="lp-"][class*="-page"]) #primary.content-area,
body:has([class*="lp-"][class*="-page"]) .content-area,
body:has([class*="lp-"][class*="-page"]) #main.site-main,
body:has([class*="lp-"][class*="-page"]) .site-main,
body:has([class*="lp-"][class*="-page"]) .entry-content,
body.page:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gifts-page, .lp-pgift-page, .lp-pg-page) #primary.content-area,
body.page:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gifts-page, .lp-pgift-page, .lp-pg-page) .content-area,
body.page:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gifts-page, .lp-pgift-page, .lp-pg-page) #main.site-main,
body.page:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gifts-page, .lp-pgift-page, .lp-pg-page) .site-main,
body.page:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gifts-page, .lp-pgift-page, .lp-pg-page) .entry-content,
body.page:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gfabu-page, .lp-gfami-page, .lp-gfh-page, .lp-gfhim-page, .lp-pg-page, .lp-pgift-page, .lp-gifts-page) #primary.content-area,
body.page:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gfabu-page, .lp-gfami-page, .lp-gfh-page, .lp-gfhim-page, .lp-pg-page, .lp-pgift-page, .lp-gifts-page) .content-area,
body.page:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gfabu-page, .lp-gfami-page, .lp-gfh-page, .lp-gfhim-page, .lp-pg-page, .lp-pgift-page, .lp-gifts-page) #main.site-main,
body.page:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gfabu-page, .lp-gfami-page, .lp-gfh-page, .lp-gfhim-page, .lp-pg-page, .lp-pgift-page, .lp-gifts-page) .site-main,
body.page:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gfabu-page, .lp-gfami-page, .lp-gfh-page, .lp-gfhim-page, .lp-pg-page, .lp-pgift-page, .lp-gifts-page) .entry-content,
body.page-template-default:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gifts-page, .lp-pgift-page, .lp-pg-page) #primary.content-area,
body.page-template-default:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gifts-page, .lp-pgift-page, .lp-pg-page) .content-area,
body.page-template-default:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gifts-page, .lp-pgift-page, .lp-pg-page) #main.site-main,
body.page-template-default:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gifts-page, .lp-pgift-page, .lp-pg-page) .site-main,
body.page-template-default:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gifts-page, .lp-pgift-page, .lp-pg-page) .entry-content,
body.page-template-default:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gfabu-page, .lp-gfami-page, .lp-gfh-page, .lp-gfhim-page, .lp-pg-page, .lp-pgift-page, .lp-gifts-page) #primary.content-area,
body.page-template-default:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gfabu-page, .lp-gfami-page, .lp-gfh-page, .lp-gfhim-page, .lp-pg-page, .lp-pgift-page, .lp-gifts-page) .content-area,
body.page-template-default:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gfabu-page, .lp-gfami-page, .lp-gfh-page, .lp-gfhim-page, .lp-pg-page, .lp-pgift-page, .lp-gifts-page) #main.site-main,
body.page-template-default:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gfabu-page, .lp-gfami-page, .lp-gfh-page, .lp-gfhim-page, .lp-pg-page, .lp-pgift-page, .lp-gifts-page) .site-main,
body.page-template-default:has(.lp-cake-page, .lp-clothing-page, .lp-cgift-page, .lp-gbox-page, .lp-gfabu-page, .lp-gfami-page, .lp-gfh-page, .lp-gfhim-page, .lp-pg-page, .lp-pgift-page, .lp-gifts-page) .entry-content {

    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}