/*
Theme Name: Anvogue Child
Description: Anvogue Child Theme
Author: Developer
Template: anvogue
Version: 1.0.0
*/
/* Add your custom styles here */

.products div.product .pls-product-image img,
.products .product-inner img,
.products .pls-product-inner img,
div.product a img {
    height: 250px !important;    /* Forces a perfectly strict, identical height for every image */
    width: 100% !important;     /* Ensures it spans the exact container width */
    max-height: 250px !important; 
    object-fit: contain !important; /* Resizes naturally inside the box without stretching or squishing */
    display: block !important;
    margin: 0 auto !important;   /* Centers it perfectly inside the container wrapper box */
}

/* Optional: Clean structural alignment space for image containers */
.pls-product-image {
    height: 250px !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}



.elementor-element-b095583 .box-icon-wrap .info-box-icon,
.elementor-element-1e6c93b .box-icon-wrap .info-box-icon,
.elementor-element-2d4257f .box-icon-wrap .info-box-icon,
.elementor-element-59ea1d6 .box-icon-wrap .info-box-icon,
.elementor-element-626ea42 .box-icon-wrap .info-box-icon,
.elementor-element-3bc241e .box-icon-wrap .info-box-icon {
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.elementor-element-b095583 .box-icon-wrap .info-box-icon img,
.elementor-element-1e6c93b .box-icon-wrap .info-box-icon img,
.elementor-element-2d4257f .box-icon-wrap .info-box-icon img,
.elementor-element-59ea1d6 .box-icon-wrap .info-box-icon img,
.elementor-element-626ea42 .box-icon-wrap .info-box-icon img,
.elementor-element-3bc241e .box-icon-wrap .info-box-icon img {
    height: 100% !important;
    width: auto !important;
    max-height: 100% !important;
    max-width: 100%;
    object-fit: contain;
}

.elementor-element-b095583,
.elementor-element-1e6c93b,
.elementor-element-2d4257f,
.elementor-element-59ea1d6,
.elementor-element-626ea42,
.elementor-element-3bc241e {
    width: 100% !important;
    height: 100%;
}

/* safe overflow protection */
body {
    overflow-x: hidden;
}

/* Hide cart, checkout and purchasing elements */
.woocommerce-cart,
.woocommerce-checkout,
.cart-contents,
.site-header-cart,
.add_to_cart_button,
.single_add_to_cart_button,

/* Hide Quantity label */
.pls-quantity-label,

/* Hide quantity field wrapper (if present) */
.quantity,

/* Hide Quick Buy section */
.pls-quick-buy,
.pls_quick_buy_button,

/* Hide hidden Quick Buy product inputs */
input[class*="pls_quick_buy_product_"] {
    display: none !important;
}

/* Custom Enquiry Button */
.custom-enquiry-btn,
.single-custom-enquiry-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    background: #192F97 !important;
    color: #ffffff !important;

    padding: 12px 24px;
    border: none !important;
    border-radius: 4px;

    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;

    text-decoration: none !important;
    cursor: pointer;

    transition: all 0.3s ease;
}

/* Hover */
.custom-enquiry-btn:hover,
.single-custom-enquiry-btn:hover {
    background: #0E205B !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Focus */
.custom-enquiry-btn:focus,
.single-custom-enquiry-btn:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(244, 107, 10, 0.25);
}

/* Optional: full width on mobile */
@media (max-width: 767px) {
    .custom-enquiry-btn,
    .single-custom-enquiry-btn {
        width: 100%;
    }
}

/* ========================================================
   TEXT EDITOR CONTENT
======================================================== */

/* Make editor content darker and slightly larger */
.entry-content,
.term-description,
.woocommerce-product-details__short-description,
.woocommerce-tabs,
.elementor-text-editor {
    color: #000000 !important;
    font-size: 18px;
    line-height: 1.5;
}

/* Force paragraphs and lists black */
.entry-content p,
.entry-content li,
.term-description p,
.term-description li,
.elementor-text-editor p,
.elementor-text-editor li {
    color: #000000 !important;
}

/* ========================================================
   TABLES - PRODUCTS + CATEGORY DESCRIPTIONS
======================================================== */

.single-product table,
.term-description table,
.product-category-description table,
.archive table,
.entry-content table {
    width: 100%;
    border-collapse: collapse !important;
    margin-bottom: 20px;
}

.single-product th,
.single-product td,
.term-description th,
.term-description td,
.product-category-description th,
.product-category-description td,
.archive th,
.archive td,
.entry-content th,
.entry-content td {
    border: 1px solid #e5e5e5 !important;
    padding: 12px;
}

.single-product th,
.term-description th,
.product-category-description th,
.archive th,
.entry-content th {
    background: #f7f7f7;
    font-weight: 600;
}

/* Reduce spacing between variation rows */
.variations_form .variation-swatche {
    margin-bottom: 8px !important;
    padding-bottom: 0 !important;
}

/* Reduce label spacing */
.variations_form .variation-swatche .label {
    margin-bottom: 4px !important;
    padding-bottom: 0 !important;
}

.variations_form .variation-swatche .label label {
    margin-bottom: 0 !important;
    font-weight: 600;
}

/* Remove extra spacing from value area */
.variations_form .variation-swatche .value {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Compact dropdowns */
.variations_form .variation-selector select {
    min-height: 40px !important;
    padding: 6px 12px !important;
}

/* Compact variation section */
.variations_form .variations {
    margin: 0 !important;
    padding: 0 !important;
}

.variations_form .variation-swatche {
    margin: 0 0 4px !important;
    padding: 0 !important;
}

.variations_form .variation-swatche:last-child {
    margin-bottom: 0 !important;
}

/* Remove space below Size dropdown */
.single_variation_wrap,
.woocommerce-variation,
.woocommerce-variation-add-to-cart {
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
}

/* Remove reset link spacing if present */
.reset_variations {
    margin: 0 !important;
    padding: 0 !important;
}

/* Enquiry popup text */
#enquiry-product-text {
    font-weight: 700 !important;
    color: #000 !important;
}

/* Product link */
#enquiry-product-text .enquiry-product-link {
    font-weight: 700 !important;
    color: #192F97 !important;
    text-decoration: none !important;
}

#enquiry-product-text .enquiry-product-link:hover {
    color: #0E205B !important;
}

/* 1. Force the square dimensions and limit width */
.pum-container {
    max-width: 500px !important;
    width: 90% !important;
    min-height: 500px !important; /* Forces the square height */
    max-height: 90vh !important;  /* Prevents it from going off-screen */
    overflow-y: auto !important;  /* Adds scroll if content is too long */
    margin: 0 auto !important;
}

/* 2. Fix the vertical alignment safely without breaking the display */
.pum-overlay {
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
}

/* 3. Remove the previous "pushed down" issues */
.pum-overlay.pum-active,
.pum-overlay.pum-active .pum-container {
    opacity: 1 !important;
    visibility: visible !important;
}

/* 4. Ensure the container stays centered */
.pum-container {
    position: relative !important;
    top: 0 !important;
    transform: none !important;
}

.pls-product-inner {
    display: flex !important;
    flex-direction: column !important;
}

.pls-product-inner .custom-enquiry-btn {
    margin: 15px auto 0 auto !important;
    display: table !important;
}

/* ================================
   ENTRY TITLE
================================ */
.entry-title {
    font-size: 18px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
    margin-bottom: 15px !important;
    color: #061c37 !important;
}

/* ================================
   ENTRY CONTENT (body text)
================================ */
.entry-content {
    font-size: 16px !important;
    line-height: 1.7 !important;
    color: #333333 !important;
}

/* Paragraph spacing inside content */
.entry-content p {
    margin-bottom: 12px !important;
}

.post-thumbnail img {
    max-width: 100% !important;
    height: auto !important;
    max-height: 350px !important;
    object-fit: cover;
    display: block;
}

.pls-posts-lists .post-categories a,
.pls-recent-posts .post-categories a {
    font-size: 8px !important;
    line-height: 1.2 !important;
}

body .products.pls-product-bordered div.product .pls-product-inner,
body .products.pls-product-bordered div.product-category .pls-category-inner {
    background: #f7f7f9 !important;
    border: 2px solid #e5e5e5 !important;
    border-radius: 6px !important;
    box-shadow: none !important;
}

/* Hide author + date meta everywhere (blog + single post) */
.entry-meta,
.single .entry-meta,
.single-post .entry-meta {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* 1. Container - limit height and handle the fade */
.term-description {
    position: relative;
    max-height: 250px; /* Adjust height as needed */
    overflow: hidden;
    transition: max-height 0.4s ease;
    margin-bottom: 20px;
}

/* 2. Expanded state */
.term-description.expanded {
    max-height: 2000px !important;
}

/* 3. The Fade effect */
.term-description::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60px;
    background: linear-gradient(transparent, #ffffff);
    pointer-events: none;
    transition: opacity 0.3s;
}

.term-description.expanded::after {
    opacity: 0;
}

/* 4. The Button */
.term-read-more-btn {
    display: block;
    background: #192F97;
    color: #ffffff !important;
    padding: 10px 20px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-weight: bold;
    margin-bottom: 30px;
}