/* ===== COMPACT + MONTSERRAT + TEXT PADDING ===== */

/* -------------------------
   GLOBAL FONT
--------------------------- */
body, 
h1, h2, h3, h4, h5, h6, 
p, a, span, li, div, figcaption {
    font-family: 'Montserrat', Arial, Helvetica, sans-serif !important;
}

/* -------------------------
   GLOBAL SECTION SPACING
   (Compact, no extra top/bottom padding)
--------------------------- */
.row,
.wrap--background,
.center-wrap,
.featured-products .featured-product,
.main-feature,
.homepage-callout {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* -------------------------
   FEATURED PRODUCTS STACK
--------------------------- */
.featured-products {
    display: block !important;
}

.featured-products .featured-product {
    display: block !important;
    width: 100% !important;
    max-width: 650px !important; /* adjust size */
    margin: 0 auto 20px auto !important; /* spacing between products */
    float: none !important;
    background: #fff;
    border-radius: 8px;
    padding: 0 !important; /* no padding around image */
}

/* Kill any column/grid from theme */
.featured-products .featured-product:nth-child(n) {
    width: 100% !important;
}

/* Image sizing */
.featured-products .img-wrap {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.featured-products img {
    width: 100% !important;
    height: auto !important;
    display: block;
}

/* Remove "View Now" link */
.featured-products .featured-product figcaption a {
    display: none !important;
}

/* Make image clickable */
.featured-products .featured-product .img-wrap a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

.featured-products .featured-product .img-wrap a img {
    cursor: pointer;
}

/* -------------------------
   TEXT PADDING INSIDE FIGCAPTION
--------------------------- */
.featured-products figcaption,
.homepage-callout figcaption,
.main-feature figcaption {
    padding: 10px !important; /* restores padding for text readability */
    margin: 0 !important;
}

/* -------------------------
   TOP BANNER / SLIDES
--------------------------- */
.row > .homepage-callout,
.row > .main-feature {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.homepage-callout .img-wrap,
.main-feature .img-wrap {
    margin: 0 !important;
    padding: 0 !important;
}

/* Banner text padding */
.homepage-callout__text,
.main-feature figcaption h1 {
    padding: 5px 10px !important; /* text padding inside banners */
    line-height: 1.2 !important;
    margin: 0 !important;
}

/* -------------------------
   SIDEBAR HEADERS / BROWSE PRODUCTS
--------------------------- */
.sidebar__header h2 {
    padding: 5px 10px !important; /* prevents text from touching first category */
    margin: 0 !important;
}

/* -------------------------
   GAP BETWEEN SLIDES AND FEATURED PRODUCTS
--------------------------- */
.homepage-callout + .featured-products,
.main-feature + .featured-products {
    margin-top: 1px !important; /* small gap between sections */
}

/* -------------------------
   MOBILE ADJUSTMENTS
--------------------------- */
@media (max-width: 768px) {
    .featured-products .featured-product {
        max-width: 100% !important;
        padding: 0 !important; /* images stay flush */
    }

    .row,
    .wrap--background,
    .center-wrap {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .featured-products figcaption,
    .homepage-callout figcaption,
    .main-feature figcaption,
    .sidebar__header h2 {
        padding: 5px !important;
    }
}