/* =====================================================
   HEADER &amp; NAVIGATION
   ===================================================== */

.site-header .inside-header {
    justify-content: space-between;
    gap: 20px;
}

.site-header .inside-header .header-user a {
    text-decoration: none;
    text-transform: uppercase;
}

.woocommerce-product-search {
    position: relative;
}


.site-header .inside-header .header-search .woocommerce-product-search {
    width: 18rem;
}

.woocommerce-product-search .search-field {
    padding: 10px 40px 10px 20px;
    border-radius: 99px;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.03);
    border-color: rgba(0, 0, 0, 0.09);
}

.woocommerce-product-search button {
    position: absolute;
    top: 50%;
    right: 1rem;
    transform: translateY(-50%);
    padding: 0;
    background-color: transparent;
    font-size: 0;
}

.woocommerce-product-search button:before {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20512%20512'%3E%3Cpath%20fill='%23777777'%20d='M505%20442.7L405.3%20343c-4.5-4.5-10.6-7-17-7H372c27.6%2035.3%2044-79.7%2044-128C416%2093.1%20322.9%200%20208%200S0%2093.1%200%20208s93.1%20208%20208%20208c48.3%200%2092.7-16.4%20128-44v16.3c0%206.4%202.5%2012.5%207%2017l99.7%2099.7c9.4%209.4%2024.6%209.4%2033.9%200l28.3-28.3c9.4-9.4%209.4-24.6.1-34zM208%20336c-70.7%200-128-57.2-128-128%200-70.7%2057.2-128%20128-128%2070.7%200%20128%2057.2%20128%20128%200%2070.7-57.2%20128-128%20128z'/%3E%3C/svg%3E");
    width: 16px;
    height: 16px;
    display: inline-block;
}


.main-nav .menu-item a {
    text-transform: uppercase;
    position: relative;
}

.main-nav .menu-item a:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 0;
    height: 3px;
    background-color: #446084;
    opacity: 0;
    transform: translateX(-50%);
    transition: all 0.3s;
}

.main-nav .menu-item.current_page_item a:before,
.main-nav .menu-item a:hover:before {
    width: 100%;
    opacity: 1;
    background-color: #d7bda7;
}

.menu.sf-menu:hover > li:not(:hover) > a:before {
    opacity: 0;
}


/* =====================================================
   SIDEBAR WIDGETS (LEFT SIDEBAR)
   ===================================================== */

.widget-area.sidebar.is-left-sidebar a {
    text-decoration: none;
}

.widget-area.sidebar.is-left-sidebar .widget-title {
    position: relative;
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 16px;
    text-transform: uppercase;
}

.widget-area.sidebar.is-left-sidebar .widget-title:after {
    content: '';
    display: block;
    height: 3px;
    margin: 10px 0;
    width: 100%;
    max-width: 30px;
    background-color: rgba(0, 0, 0, 0.1);
}

.widget-area.sidebar.is-left-sidebar .product-categories li.current-cat a {
    font-weight: 700;
}

.widget-area.sidebar.is-left-sidebar .widget_product_search .woocommerce-product-search {
    display: flex;
}


/* =====================================================
   PAGE TITLES
   ===================================================== */

.entry-header h1 {
    font-size: 30px;
    text-align: center;
}

.entry-header h1:after {
    content: '';
    display: block;
    width: 100%;
    max-width: 30px;
    height: 3px;
    margin: 10px auto;
    background-color: rgba(0, 0, 0, 0.1);
}


/* =====================================================
   HERO / OVERLAY
   ===================================================== */

.overlay .sow-slider-image-container:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(74, 47, 18, 0.65);
    z-index: -1;
}


/* =====================================================
   TEXT &amp; LINKS
   ===================================================== */

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    text-decoration: none;
}


/* =====================================================
   WIDGET TITLES
   ===================================================== */

h3.widget-title {
    position: relative;
    font-size: 20px;
    color: #4a2f12;
    text-align: center;
    text-transform: uppercase;
}

h3.widget-title:before,
h3.widget-title:after {
    content: '';
    position: absolute;
    top: 50%;
    height: 2px;
    background-color: #4a2f12;
}

h3.widget-title:before {
    left: 0;
    width: 43%;
}

h3.widget-title:after {
    right: 0;
    width: 43%;
}


/* =====================================================
   BUTTONS &amp; HERO ELEMENTS
   ===================================================== */

.sow-hero-buttons {
    margin-top: 0 !important;
}


/* =====================================================
   WOOCOMMERCE STYLES
   ===================================================== */

.woocommerce ul.products li.product .woocommerce-LoopProduct-link > :not(:first-child) {
    margin-top: 0;
    margin-bottom: 0;
    text-align: left;
}

.related.products h2 {
    font-size: 20px;
    color: #4a2f12;
    text-transform: uppercase;
}

.related.products .inside-wc-product-image,
.wc-product-image .inside-wc-product-image {
    width: 100%;
}


/* =====================================================
   RESPONSIVE DESIGN
   ===================================================== */

@media (max-width: 1023px) {
    .site-content {
        flex-direction: column;
    }

    .container .site-content .content-area {
        width: auto;
    }

    .is-left-sidebar.sidebar,
    .is-right-sidebar.sidebar {
        width: auto;
        order: initial;
    }
}

@media (max-width: 768px) {
    .woocommerce #wc-column-container.wc-mobile-columns-1 .products {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 550px) {
    .woocommerce #wc-column-container.wc-mobile-columns-1 .products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
