.product-container {
    border: 2px solid #d5d5d5;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
}

.product-container:hover {
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}

.addtocart-area {
    border-top: 1px solid #eee;
    padding-top: 10px;
    margin-top: auto;
}
.vm-product {
    display: flex;
    flex-direction: column;
}

.vm-product .addtocart-area {
    margin-top: auto;
}

.category-view .PricesalesPrice {
    display: none !important;
}

.category-view .vm-price-desc {
    display: none !important;
}
/* Keep VirtueMart custom fields inside each product box */
.product-container,
.product-container .product,
.product-container .product-fields,
.product-container .product-field {
    max-width: 100%;
    box-sizing: border-box;
}

/* Allow custom-field contents to wrap */
.product-container .product-field,
.product-container .product-field-display {
    white-space: normal;
    overflow-wrap: anywhere;
}

/* Keep dropdowns and text fields inside the card */
.product-container .product-field select,
.product-container .product-field input,
.product-container .product-field textarea {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}
/* Let each product card grow to fit custom fields */
.product-container {
    height: auto !important;
    overflow: hidden;
}
.container-header .container-nav {
    justify-content: flex-end;
    align-items: flex-start;
    margin-top: -100px;
    padding-bottom: 40px;
}
.container-header .mod-menu {
    margin-left: auto;
    gap: 1rem;
}
/* Hide "Contact Form" */
.contact-form h3 {
    display: none;
}
/* Hide Contact Form heading */
.com-contact > h2:first-of-type {
    display: none;
}
.com-contact h1,
.com-contact .page-header {
    display: none;
}
/* Hide only the "Contact" heading */
.com-contact__container > h2:first-child {
    display: none;
}
/* Hide the legend completely */
.contact-form fieldset legend {
    display: none;
}
/* Contact page: remove card appearance from intro module */
.itemid-144 .main-top.card {
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    margin-bottom: 0 !important;
}

/* Remove the card's internal padding if desired */
.itemid-144 .main-top.card .card-body {
    padding: 0 !important;
}

/* Remove the large gap between intro module and contact component */
.itemid-144 .grid-child.container-component {
    gap: 0 !important;
    row-gap: 0 !important;
}

/* Make sure the contact component itself adds no extra top space */
.itemid-144 main {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
/* Contact page only — pull the email form up toward the intro module */
.itemid-144 main {
    margin-top: -100px !important;
}