/* ==========================================================================
   Mentasti.it - Custom CSS fixes and spacing improvements
   ========================================================================== */

/* Mainbody layout: guarantee all floated children are contained and clear */
#t3-mainbody,
.t3-mainbody {
    padding-top: 20px !important;
    padding-bottom: 60px !important;
    clear: both !important;
    display: flow-root;
}

#t3-mainbody:before,
#t3-mainbody:after,
.t3-mainbody:before,
.t3-mainbody:after,
.t3-mainbody .row:before,
.t3-mainbody .row:after,
#t3-content:before,
#t3-content:after,
.t3-content:before,
.t3-content:after,
#k2Container:before,
#k2Container:after,
.itemList:before,
.itemList:after,
#itemListLeading:before,
#itemListLeading:after,
#itemListPrimary:before,
#itemListPrimary:after,
#itemListSecondary:before,
#itemListSecondary:after {
    content: " ";
    display: table;
}

#t3-mainbody:after,
.t3-mainbody:after,
.t3-mainbody .row:after,
#t3-content:after,
.t3-content:after,
#k2Container:after,
.itemList:after,
#itemListLeading:after,
#itemListPrimary:after,
#itemListSecondary:after {
    clear: both !important;
}

/* Main content container bottom padding and BFC */
#t3-content,
.t3-content {
    padding-bottom: 50px !important;
    clear: both;
    display: flow-root;
}

/* Category description spacing */
.itemListCategory {
    margin-bottom: 35px !important;
    padding-bottom: 25px !important;
    border-bottom: 1px solid #e0e0e0;
    clear: both;
    display: flow-root;
}

/* Product list & grid spacing */
.itemList,
#itemListLeading,
#itemListPrimary,
#itemListSecondary {
    margin-bottom: 40px !important;
    clear: both;
    display: flow-root;
}

/* Product card boxes styling & breathing room */
.prodotti .itemContainer {
    margin-bottom: 25px !important;
    box-sizing: border-box !important;
}

.prodotti .itemContainer .prodotti.catItemView {
    padding: 15px 15px 20px 15px !important;
    margin: 0 10px 25px 0 !important;
    background-color: #f7f7f7 !important;
    border: 1px solid #e9e9e9;
    border-radius: 4px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
    display: flow-root;
}

.prodotti .itemContainer .prodotti.catItemView div.catItemHeader h3.catItemTitle {
    margin-bottom: 15px !important;
    padding-bottom: 5px !important;
    color: #111;
}

.prodotti .itemContainer .prodotti.catItemView div.catItemBody {
    margin-bottom: 15px !important;
}

.prodotti .itemContainer .prodotti.catItemView div.catItemReadMore {
    margin-top: 15px !important;
    padding-top: 8px !important;
    clear: both;
}

.prodotti .itemContainer .prodotti.catItemView div.catItemReadMore a.k2ReadMore {
    display: inline-block !important;
    padding: 6px 16px !important;
    background-color: #d20202 !important;
    color: #fff !important;
    border-radius: 3px;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.5px;
    transition: background-color 0.2s ease;
}

.prodotti .itemContainer .prodotti.catItemView div.catItemReadMore a.k2ReadMore:hover {
    background-color: #b00000 !important;
    text-decoration: none;
}

/* Sidebar module spacing */
.t3-sidebar .t3-module {
    margin-bottom: 35px !important;
}

/* Footer clearance and spacing */
#t3-footer,
.t3-footer {
    clear: both !important;
    margin-top: 60px !important;
    position: relative;
    z-index: 10;
    display: block;
}

.t3-footer .t3-footnav {
    padding: 45px 0 35px !important;
}

.t3-footer .t3-footnav .t3-module {
    margin-bottom: 30px !important;
}
