@charset "UTF-8";

/*
Theme Name: Bertrum
Author: Carl Spencer
Author URI: https://www.pickledesign.co.uk/
Description: Theme for the Bertrum Muffetts website
*/

/*

Colours:

#4e5c28 - Dark green banner
#8c9691 - Silver Blue title text
#a4a26f - Gold title text
#e1d0b8 - Caramel colour behind the shop on the home
#efeade - Background colour to Ferris
#d7dee0 - Background blue to Old Bears Club
#7f5f2d - Body text brown
#464649 - Body text grey

*/


/* 404 */

#error-content {
    width: 40%;
    height: auto;
    background-color: #d7dee0;
    padding: 150px 30% 100px 30%;
    background-image: url("images/bg-stitch.png");
    background-position: bottom 6px right 0px;
    background-repeat: repeat-x;
    background-size: auto 20px;
    display: flex;
    justify-content: space-between;
}

#error-content-text {
    width: 50%;
    height: auto;
    color: #464649;
}

#error-content-ferdis {
    width: 30%;
    height: auto;
    margin: 100px 0px 0px 0px;
}

#error-content-ferdis img {
    width: 100%;
    height: auto;
}

img.text-error {
    width: 40%;
    height: auto;
    display: block;
    margin: 60px 0px 0px 0px;
}


/* Standard Styles */

body {
	padding: 0;
	margin: 0;
}

html {
	padding: 0;
	margin: 0;
    -webkit-text-size-adjust: none;
    font-family: "grad", serif;
    font-weight: 700;
    font-style: normal;
    color: #7f5f2d;
    background: url("images/bg-wallpaper.jpg") no-repeat center center fixed; 
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
    scroll-behavior: smooth;
}

img {
	border: 0;
	margin: 0px 0px -4px 0px;
}

p {
	margin-top: 0;
}

#page-width {
    width: 960px;
    height: auto;
    margin: 0px auto 0px auto;
}

.full-width {
    width: 100%;
    height: auto;
}


/* Header */

#header {
    width: 100%;
    height: 110px;
    background-color: #4e5c28;
    padding-bottom: 30px;
    background-image: url("images/bg-stitch.png");
    background-position: bottom 6px right 0px;
    background-repeat: repeat-x;
    background-size: auto 20px;
}

#page-width.header {
    position: relative;
}

img.header-name {
    width: 720px;
    height: auto;
    position: absolute;
    top: 35px;
    left: 20px;
}

#header-basket {
    width: 60px;
    height: 60px;
    background-image: url("images/basket.webp");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: 35px;
    right: 20px;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    text-decoration: none;
}

#header-basket .basket-count {
    background: #7f5f2d;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    border-radius: 50%;
    width: 22px;
    height: 22px;
    line-height: 22px;
    text-align: center;
    position: absolute;
    top: 2px;
    right: 2px;
}


/* Main Styles */

#banner-image {
	width: 920px;
	height: auto;
    margin: 0px auto 35px auto;
}

#banner-image img {
	width: 100%;
	height: auto;
}

#content {
    width: 100%;
    height: auto;
    background-color: rgba(225, 208, 184, 1);
}

#content.transparent {
    padding: 35px 0px 0px 0px;
    background-color: rgba(225, 208, 184, 0.8);
}

#page-width.content-info {
    width: 820px;
    padding: 45px 0px 45px 0px;
    text-align: center;
}

#page-width.content-info p strong {
    font-size: 1.50em;
}


/* Home */

#page-width.content-home {
    width: 820px;
    padding: 0px 0px 45px 0px;
    text-align: center;
}

#content-information {
    width: 100%;
    height: auto;
    display: flex;
}

#content-information-box {
    width: 50%;
    height: auto;
    background-color: #efeade;
    padding-bottom: 50px;
}

#content-information-box.right {
    background-color: #d7dee0;
}

#content-information-text {
    width: 410px;
    height: auto;
    margin: 0px 50px 0px auto;
    color: #464649;
}

#content-information-text.right {
    margin: 0px auto 0px 50px;
}

img.text-ferdis {
    width: 150px;
    height: auto;
    display: block;
    margin: 60px 0px 40px 0px;
}

img.ferdis {
    width: 105px;
    height: auto;
    display: block;
    margin: 0px 50px 0px auto;
}

img.text-club {
    width: 150px;
    height: auto;
    display: inline-block;
    vertical-align: top;
    margin: 60px 56px 0px 0px;
}

img.teddy {
    width: 130px;
    height: auto;
    display: inline-block;
    vertical-align: top;
    margin: 60px auto 65px 0px;
}

#page-width.shop-home {
    width: 860px;
    padding: 40px 0px 45px 0px;
    text-align: center;
}

#page-width.shop-home p {
    color: #464649;
}

img.text-shop {
    width: 270px;
    height: auto;
    display: block;
    margin: 0px auto 20px auto;
}

#shop-text {
    width: 860px;
    height: auto;
    margin: 0px auto 20px auto;
    padding-bottom: 20px;
}


/* Shop */

a.product_type_simple {
    display: none !important;
}

h2.woocommerce-loop-product__title {
    color: #464649 !important;
}

span.price {
    color: #4e5c28 !important;
}

.woocommerce.columns-3 {
    width: 880px !important;
    padding-left: 10px !important;
}

.woocommerce.columns-3 ul.products li.product {
    width: 240px !important;
    margin-right: 50px !important;
}

.woocommerce.columns-3 ul.products li.product img {
    border: solid 10px #fff !important;
}

#content.shop {
    min-height: 800px;
    background-color: #efeade;
    padding-bottom: 30px;
    background-image: url("images/bg-stitch-shop.png");
    background-position: bottom 6px right 0px;
    background-repeat: repeat-x;
    background-size: auto 20px;
}

#page-width.content-shop {
    width: 860px;
    padding: 150px 0px 100px 0px;
    display: flex;
    flex-direction: column;
    min-height: calc(100vh - 350px);
}

#page-width.content-shop img.wp-post-image {
    width: 370px !important;
    height: auto;
    outline: solid 10px #fff !important;
}

.woocommerce div.product {
    flex: 1;
}

img.text-back {
    width: 140px;
    height: auto;
    display: block;
    margin: auto 0px 0px 0px; /* This pushes it to the bottom */
    align-self: flex-start; /* Keeps it left-aligned */
}

div.summary {
    padding-top: 40px !important;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt {
    background-color: #d7dee0 !important;
    color: #464649 !important;
    -webkit-font-smoothing: antialiased;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button {
    font-size: 1.2em !important;
    margin: 0;
    line-height: 1;
    cursor: pointer;
    position: relative;
    text-decoration: none;
    overflow: visible;
    padding: .618em 1em;
    font-weight: 700;
    border-radius: 0 !important;
    left: auto;
    color: #464649;
    background-color: #d7dee0;
    border: 0;
    display: inline-block;
    background-image: none;
    box-shadow: none;
    text-shadow: none;
    font-family: "grad", serif !important;
}

nav.woocommerce-breadcrumb, section.related, div#sidebar, div.product_meta, p.stock, ul.tabs {
    display: none !important;
}

.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name {
    color: #4e5c28 !important;
}

/* Hide WooCommerce product short description */
.woocommerce div.product .woocommerce-product-details__short-description {
  display: none !important;
}

/* Style the Place Order button in WooCommerce Blocks checkout */
.wc-block-components-checkout-place-order-button.wc-block-components-button.wp-element-button.contained {
    background-color: #d7dee0 !important;  /* green background */
    color: #464649 !important;             /* white text */
    border: none !important;
    padding: .618em 1em;
    font-weight: 700;
    border-radius: 0 !important;
    font-size: 1.2em !important;
    font-family: "grad", serif !important;
    font-style: normal !important;
    text-transform: none !important;
    box-shadow: none !important;
    transition: background-color 0.3s ease !important;
}

/* Disabled state */
.wc-block-components-checkout-place-order-button.wc-block-components-button.wp-element-button.contained:disabled {
    background-color: #999999 !important;
    color: #ffffff !important;
    cursor: not-allowed !important;
}

/* Style Proceed to Checkout button on Cart page */
.wc-block-cart__submit-button.wc-block-components-button.wp-element-button.contained {
    background-color: #d7dee0 !important;
    color: #464649 !important;
    border: none !important;
    padding: .618em 1em !important;
    font-weight: 700 !important;
    border-radius: 0 !important;
    font-size: 1.2em !important;
    font-family: "grad", serif !important;
    font-style: normal !important;
    text-transform: none !important;
    box-shadow: none !important;
    transition: background-color 0.3s ease !important;
    text-decoration: none !important;
}

/* Disabled state */
.wc-block-cart__submit-button.wc-block-components-button.wp-element-button.contained:disabled {
    background-color: #999999 !important;
    color: #ffffff !important;
    cursor: not-allowed !important;
}

.button.wc-forward {
    background-color: #d7dee0 !important;
    color: #464649 !important;
    border: none !important;
    padding: .618em 1em !important;
    font-weight: 700 !important;
    border-radius: 0 !important;
    font-size: 1.2em !important;
    font-family: "grad", serif !important;
    font-style: normal !important;
    text-transform: none !important;
    box-shadow: none !important;
    transition: background-color 0.3s ease !important;
    text-decoration: none !important;
}

table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name {
    display: block !important;
    line-height: 1.4 !important;
    max-width: 100% !important; /* Override the max-content */
    text-align: center !important;
    width: 100% !important;
}

.wc-block-cart__empty-cart__title.with-empty-cart-icon:before {
    display: none !important;
}

.wp-block-woocommerce-empty-cart-block {
    margin: 20px 0px 200px 0px !important;
}

.wp-image-115 {
    display: inline-block !important;
    vertical-align: top !important;
    width: 15% !important;
    margin: 20px 5% 0px 0px !important;
}

.wp-image-117 {
    display: inline-block !important;
    vertical-align: top !important;
    width: 20% !important;
    margin: 90px 0px 0px 0px !important;
}


/* Footer */

footer {
    width: 100%;
    height: auto;
    margin: 180px 0px 0px 0px;
    background-color: #4e5c28;
    padding: 30px 0px 50px 0px;
    background-image: url("images/bg-stitch.png");
    background-position: top 6px right 0px;
    background-repeat: repeat-x;
    background-size: auto 20px;
}

#page-width.footer {
    text-align: center;
}

img.text-contact {
    width: 290px;
    height: auto;
    display: block;
    margin: 30px auto 20px auto;
}

img.icon-social {
    width: 55px;
    height: auto;
    display: inline-block;
    vertical-align: top;
    margin: 20px 21px 10px 25px;
}

nav.footer-links {
    margin-bottom: 10px;
}


/* Text Styles */

p {	
    font-size: 1.10em;
}

p strong {
    font-size: 1.80em;
}

p a {
    color: #464649;
    text-decoration: underline;
}

p a:hover {
    color: #464649;
    text-decoration: none;
}

footer p {
    font-size: 1.0em;
    color: #a09f6c;
}

footer p a,
footer nav a {
    color: #efeade;
    text-decoration: none;
}

footer p a:hover,
footer nav a:hover {
    color: #efeade;
    text-decoration: underline;
}

a {
    color: #464649;
    text-decoration: underline;
}
a:hover {
    color: #464649;
    text-decoration: none;
}


/* Small */

@media only screen and (max-width: 449px) {
    
    
    /* 404 */

    #error-content {
        width: 80% !important;
        height: auto;
        background-color: #d7dee0;
        padding: 100px 10% 80px 10% !important;
        background-image: url("images/bg-stitch.png");
        background-position: bottom 6px right 0px;
        background-repeat: repeat-x;
        background-size: auto 20px;
        display: flex;
        justify-content: space-between;
    }

    #error-content-ferdis {
        width: 40% !important;
        height: auto;
        margin: 80px 0px 0px 0px !important;
    }

    img.text-error {
        width: 60% !important;
        height: auto;
        display: block;
        margin: 40px 0px 0px 0px !important;
    }


    /* Standard Styles */

    #page-width {
        width: 100% !important;
        height: auto;
        margin: 0px auto 0px auto;
    }


    /* Header */

    #header {
        width: 100%;
        height: auto !important;
        background-color: #4e5c28;
        padding: 10px 0px 20px 0px !important;
        background-image: url("images/bg-stitch.png");
        background-position: bottom 6px right 0px;
        background-repeat: repeat-x;
        background-size: auto 15px !important;
    }

    #page-width.header {
        position: static !important;
    }

    img.header-name {
        width: 90% !important;
        height: auto;
        position: static !important;
        top: 35px;
        left: 20px;
        margin: 10px auto 10px auto !important;
        display: block !important;
    }
    
    #header-basket {
        width: 15% !important;
        height: 50px !important;
        background-image: url("images/basket.webp");
        background-position: top 0px right 0px !important;
        background-repeat: no-repeat;
        background-size: 100% auto;
        top: 35px;
        right: 20px;
        margin: -30px auto 50px 47.5% !important;
        position: relative !important;
    }
    
    #header-basket .basket-count {
        background: #7f5f2d;
        color: #fff;
        font-size: 14px;
        font-weight: bold;
        border-radius: 50%;
        width: 22px;
        height: 22px;
        line-height: 22px;
        text-align: center;
        position: absolute;
        top: 2px !important;
        right: 2px !important;
    }


    /* Main Styles */

    #banner-image {
    	width: 100% !important;
    	height: auto;
        margin: 0px auto 20px auto !important;
    }

    #content.transparent {
        padding: 20px 0px 0px 0px !important;
        background-color: rgba(225, 208, 184, 0.8);
    }

    #page-width.content-info {
        width: 90% !important;
        min-height: 300px !important;
        padding: 35px 5% 45px 5% !important;
        text-align: center;
    }


    /* Home */

    #page-width.content-home {
        width: 90% !important;
        padding: 0px 5% 25px 5% !important;
        text-align: center;
    }

    #content-information {
        width: 100%;
        height: auto;
        display: block !important;
    }

    #content-information-box {
        width: 80% !important;
        height: auto;
        background-color: #efeade;
        padding: 20px 10% 25px 10% !important;
    }

    #content-information-text {
        width: 100% !important;
        height: auto;
        margin: 0px 0px 0px 0px !important;
        color: #464649;
    }
    
    #content-information-text p {
        font-size: 0.9em !important;
    }

    #content-information-text.right {
        margin: 0px 0px 0px 0px !important;
    }

    img.text-ferdis {
        width: 30% !important;
        height: auto;
        display: block;
        margin: 10px 0px 25px 0px !important;
    }

    img.ferdis {
        width: 25% !important;
        height: auto;
        display: block;
        margin: 0px 0px 10px auto !important;
    }

    img.text-club {
        width: 40% !important;
        height: auto;
        display: inline-block;
        vertical-align: top;
        margin: 10px 26px 10px 0px !important;
    }

    img.teddy {
        width: 30% !important;
        height: auto;
        display: inline-block;
        vertical-align: top;
        margin: 0px 0px 10px 0px !important;
    }

    #page-width.shop-home {
        width: 90% !important;
        padding: 20px 0px 25px 0px !important;
        text-align: center;
    }

    img.text-shop {
        width: 60% !important;
        height: auto;
        display: block;
        margin: 0px auto 10px auto !important;
    }
    

    /* Shop */

    .woocommerce.columns-3 {
        width: 80% !important;
        padding: 0px 10% 0px 10% !important;
    }

    .woocommerce.columns-3 ul.products li.product {
        width: 100% !important;
        margin: 0px 0px 20px -10px !important;
    }

    #page-width.content-shop {
        width: 100% !important;
        padding: 50px 0px 50px 0px !important;
    }
    
    .products {
        display: grid;
        grid-template-columns: 1fr; /* 1 product per row */
        gap: 1rem; /* space between them */
    }

    .woocommerce div.product {
        margin-bottom: 0;
        position: relative;
        width: 80% !important;
        margin: 0px 10% 0px 10% !important;
    }
    
    .button.wc-forward {
        background-color: #d7dee0 !important;
        color: #464649 !important;
        border: none !important;
        padding: .618em 1em !important;
        font-weight: 700 !important;
        border-radius: 0 !important;
        font-size: 1.2em !important;
        font-family: "grad", serif !important;
        font-style: normal !important;
        text-transform: none !important;
        box-shadow: none !important;
        transition: background-color 0.3s ease !important;
        text-decoration: none !important;
        margin: 10px 0px 0px 0px !important;
    }
    
    .wp-image-115 {
        display: inline-block !important;
        vertical-align: top !important;
        width: 25% !important;
        margin: 20px 5% 0px 0px !important;
    }

    .wp-image-117 {
        display: inline-block !important;
        vertical-align: top !important;
        width: 25% !important;
        margin: 70px 0px 0px 0px !important;
    }


    /* Footer */

    #footer {
        width: 100%;
        height: auto;
        margin: 180px 0px 0px 0px;
        background-color: #4e5c28;
        padding: 20px 0px 50px 0px !important;
        background-image: url("images/bg-stitch.png");
        background-position: top 6px right 0px;
        background-repeat: repeat-x;
        background-size: auto 15px !important;
    }

    #page-width.footer {
        width: 90% !important;
        text-align: center;
    }

    img.text-contact {
        width: 60% !important;
        height: auto;
        display: block;
        margin: 20px auto 20px auto !important;
    }


    /* Text Styles */

    p {	
        font-size: 1.0em !important;
    }

    p strong {
        font-size: 1.30em !important;
    }

    #footer p {
        font-size: 0.85em !important;
        color: #a09f6c;
    }


    /* Hidden */
    
    .hide-mobile {
        display: none !important;
    }

}


/* Small Phones */

@media only screen and (min-width : 450px) and (max-width: 699px) {

    /* 404 */

    #error-content {
        width: 40%;
        height: auto;
        background-color: #d7dee0;
        padding: 50px 30% 50px 30% !important;
        background-image: url("images/bg-stitch.png");
        background-position: bottom 6px right 0px;
        background-repeat: repeat-x;
        background-size: auto 20px;
        display: flex;
        justify-content: space-between;
    }

    #error-content-ferdis {
        width: 40% !important;
        height: auto;
        margin: 80px 0px 0px 0px !important;
    }

    img.text-error {
        width: 60% !important;
        height: auto;
        display: block;
        margin: 50px 0px 0px 0px !important;
    }


    /* Standard Styles */

    #page-width {
        width: 100% !important;
        height: auto;
        margin: 0px auto 0px auto;
    }


    /* Header */

    img.header-name {
        width: 75% !important;
        height: auto;
        position: absolute;
        top: 45px !important;
        left: 20px !important;
    }


    /* Main Styles */

    #banner-image {
    	width: 90% !important;
    	height: auto;
        margin: 0px auto 35px auto;
    }

    #page-width.content-info {
        width: 80% !important;
        padding: 45px 0px 45px 0px;
        text-align: center;
        margin-left: 10% !important;
        margin-right: 10% !important;
    }


    /* Home */

    #page-width.content-home {
        width: 90% !important;
        padding: 0px 0px 45px 0px;
        text-align: center;
    }

    #content-information-text {
        width: 70% !important;
        height: auto;
        margin: 0px 15% 0px 15% !important;
        color: #464649;
    }

    img.text-ferdis {
        width: 70% !important;
        height: auto;
        display: block;
        margin: 50px 0px 40px 0px !important;
    }

    img.ferdis {
        width: 60% !important;
        height: auto;
        display: block;
        margin: 30px auto 0px auto !important;
    }

    img.text-club {
        width: 70% !important;
        height: auto;
        display: inline-block;
        vertical-align: top;
        margin: 50px 0px 0px 0px !important;
    }

    img.teddy {
        width: 55% !important;
        height: auto;
        display: inline-block;
        vertical-align: top;
        margin: 40px 0px 40px 0px !important;
    }

    #page-width.shop-home {
        width: 90% !important;
        padding: 40px 0px 45px 0px;
        text-align: center;
    }

    img.text-shop {
        width: 40% !important;
        height: auto;
        display: block;
        margin: 0px auto 20px auto;
    }


    /* Shop */
    
    .products {
        padding-right: 10px;
        box-sizing: border-box;
    }

    .woocommerce.columns-3 {
        width: 100% !important;
        padding-left: 0 !important;
    }

    .woocommerce.columns-3 ul.products li.product {
        width: 40% !important;
        margin-right: 0 !important;
    }

    .woocommerce.columns-3 ul.products li.product img {
        border: solid 10px #fff !important;
        margin: 0px 0px auto -10px !important;
    }

    #page-width.content-shop {
        width: 80% !important;
        padding: 0px auto 100px auto !important;
        display: flex;
        flex-direction: column;
        min-height: calc(100vh - 350px);
    }    
    
    .single-product div.product {
        display: flex;
        flex-direction: row;
        align-items: flex-start; /* keeps text aligned to top of image */
        gap: 1rem; /* spacing between image and text */
    }

    .single-product div.product .woocommerce-product-gallery {
        flex: 1 1 45%; /* image takes about half width */
        max-width: 45%;
    }

    .single-product div.product .summary {
        flex: 1 1 50%; /* text takes the other half */
        max-width: 50%;
        padding-left: 5%;
        font-size: 0.9em;
    }

    img.text-back {
        width: 60% !important;
        height: auto;
        display: block;
        margin: auto 0px 0px 0px; /* This pushes it to the bottom */
        align-self: flex-start; /* Keeps it left-aligned */
    }
    
    .wc-block-cart-items__row, .wc-block-components-totals-wrapper, .wc-block-cart .wp-block-woocommerce-cart-order-summary-block, .wp-block-woocommerce-checkout {
        width: 90% !important;
        margin-left: 5% !important;
        margin-right: 5% !important;
    }

    .wc-block-cart__submit-container {
        width: 50% !important;
        margin-left: 25% !important;
        margin-right: 25% !important;
    }


    /* Text Styles */

    p {	
        font-size: 1.0em !important;
    }

    footer p {
        font-size: 0.90em !important;
        color: #a09f6c;
    }


    /* Hidden */
    
    .hide-mobile {
        display: none !important;
    }

    
}


/* Large Phones */

@media only screen and (min-width : 700px) and (max-width: 959px) {


    /* 404 */

    #error-content {
        width: 40%;
        height: auto;
        background-color: #d7dee0;
        padding: 50px 30% 50px 30% !important;
        background-image: url("images/bg-stitch.png");
        background-position: bottom 6px right 0px;
        background-repeat: repeat-x;
        background-size: auto 20px;
        display: flex;
        justify-content: space-between;
    }

    #error-content-ferdis {
        width: 40% !important;
        height: auto;
        margin: 80px 0px 0px 0px !important;
    }

    img.text-error {
        width: 60% !important;
        height: auto;
        display: block;
        margin: 50px 0px 0px 0px !important;
    }


    /* Standard Styles */

    #page-width {
        width: 100% !important;
        height: auto;
        margin: 0px auto 0px auto;
    }


    /* Header */

    img.header-name {
        width: 75% !important;
        height: auto;
        position: absolute;
        top: 45px !important;
        left: 20px !important;
    }


    /* Main Styles */

    #banner-image {
    	width: 90% !important;
    	height: auto;
        margin: 0px auto 35px auto;
    }

    #page-width.content-info {
        width: 80% !important;
        padding: 45px 0px 45px 0px;
        text-align: center;
        margin-left: 10% !important;
        margin-right: 10% !important;
    }


    /* Home */

    #page-width.content-home {
        width: 90% !important;
        padding: 0px 0px 45px 0px;
        text-align: center;
    }

    #content-information-text {
        width: 70% !important;
        height: auto;
        margin: 0px 15% 0px 15% !important;
        color: #464649;
    }

    img.text-ferdis {
        width: 70% !important;
        height: auto;
        display: block;
        margin: 50px 0px 40px 0px !important;
    }

    img.ferdis {
        width: 60% !important;
        height: auto;
        display: block;
        margin: 30px auto 0px auto !important;
    }

    img.text-club {
        width: 70% !important;
        height: auto;
        display: inline-block;
        vertical-align: top;
        margin: 50px 0px 0px 0px !important;
    }

    img.teddy {
        width: 55% !important;
        height: auto;
        display: inline-block;
        vertical-align: top;
        margin: 40px 0px 40px 0px !important;
    }

    #page-width.shop-home {
        width: 90% !important;
        padding: 40px 0px 45px 0px;
        text-align: center;
    }

    img.text-shop {
        width: 40% !important;
        height: auto;
        display: block;
        margin: 0px auto 20px auto;
    }


    /* Shop */
    
    .products {
        padding-right: 10px;
        box-sizing: border-box;
    }

    .woocommerce.columns-3 {
        width: 100% !important;
        padding-left: 0 !important;
    }

    .woocommerce.columns-3 ul.products li.product {
        width: 40% !important;
        margin-right: 0 !important;
    }

    .woocommerce.columns-3 ul.products li.product img {
        border: solid 10px #fff !important;
        margin: 0px 0px auto -10px !important;
    }

    #page-width.content-shop {
        width: 80% !important;
        padding: 0px auto 100px auto !important;
        display: flex;
        flex-direction: column;
        min-height: calc(100vh - 350px);
    }    
    
    .single-product div.product {
        display: flex;
        flex-direction: row;
        align-items: flex-start; /* keeps text aligned to top of image */
        gap: 1rem; /* spacing between image and text */
    }

    .single-product div.product .woocommerce-product-gallery {
        flex: 1 1 45%; /* image takes about half width */
        max-width: 45%;
    }

    .single-product div.product .summary {
        flex: 1 1 50%; /* text takes the other half */
        max-width: 50%;
        padding-left: 5%;
        font-size: 0.9em;
    }

    img.text-back {
        width: 50% !important;
        height: auto;
        display: block;
        margin: auto 0px 0px 0px; /* This pushes it to the bottom */
        align-self: flex-start; /* Keeps it left-aligned */
    }
    
    .wc-block-cart-items__row, .wc-block-components-totals-wrapper, .wc-block-cart .wp-block-woocommerce-cart-order-summary-block, .wp-block-woocommerce-checkout {
        width: 90% !important;
        margin-left: 5% !important;
        margin-right: 5% !important;
    }

    .wc-block-cart__submit-container {
        width: 50% !important;
        margin-left: 25% !important;
        margin-right: 25% !important;
    }


    /* Text Styles */

    p {	
        font-size: 1.0em !important;
    }

    footer p {
        font-size: 0.90em !important;
        color: #a09f6c;
    }


    /* Hidden */
    
    .hide-mobile {
        display: none !important;
    }


}


/* Desktop */

@media only screen and (min-width: 960px) and (max-width: 1599px) {
    
    
    /* Hidden */
    
    .hide-desktop {
        display: none !important;
    }

    
}


/* Large Desktop */

@media only screen and (min-width : 1600px) {
    
    
    /* Hidden */
    
    .hide-desktop {
        display: none !important;
    }
    
    
}