/*
Theme Name: Entrepreneur
Template: limenco-design
Author: Limenco Design
Author URI: https://limenco.design/
Description: Entrepreneur — a Limenco Design child theme.
Version: 1.0.0
*/

/******************************************/
/*ROOT*/
/******************************************/
:root {
  --grey:#f4f4f4;
  --red: #e63b26;
  --dark-red:#c9230e;
  --blue:#1a335b;
  --dark-blue:#00103a;
 }
/******************************************/
/*GLOBALS*/
/******************************************/

.button-bold .limenco-buttons span {
    font-weight: 600 !important;
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.headline-bold .sow-headline,
.headline-bold .sow-sub-headline {
    font-weight: 600 !important;
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.site-info a,
.sow-headline a,
.sow-sub-headline a {
	text-decoration:none;
}


#colophon .site-info {
	background-color:#000;
} 

.main-navigation ul>li a {
	padding-left:10px;
	padding-right:10px;
}

.main-navigation {
	font-weight:600!important;
	}

.menu-shop-button {
	border-radius:8px!important;
	background-color:#fc3c20!important;
	color:#fff!important;
	padding: 15px 10px!important;
}

.menu-shop-button:hover {
	background-color:var(--blue)!important;
	color:#fff!important;
	padding: 15px 10px!important;
}

.menu-shop-button a {
	color:#fff!important; 
}

/******************************************/
/*ABOUT PAGE*/
/******************************************/
@media screen and (min-width: 1025px) {
  .right-cell {
    padding-left: 30px;
    border-left: 1px solid #1a335b; 
  }
}
/******************************************/
/*GALLERY PAGES*/
/******************************************/


.gallery-subhead-style .sow-sub-headline {
	background-color:var(--blue);
	padding-top:10px;
	padding-bottom:10px;
	font-weight: 600 !important;
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/******************************************/
/*GALLERY IMAGES*/
/******************************************/
/* 1. The Container: Keeps the image from breaking out */
.sow-image-grid-image {
    overflow: hidden;
    border-radius: 8px; /* Optional: adds a nice rounded look */
}

/* 2. The Link: Ensures it behaves like a block for the image */
.sow-image-grid-image a {
    display: block;
    overflow: hidden;
}

/* 3. The Image: Smooth transition setup */
.sow-image-grid-image_html {
    display: block;
    width: 100%;
    height: auto;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* 4. The Hover: Zoom effect */
.sow-image-grid-image:hover .sow-image-grid-image_html {
    transform: scale(1.1); /* Subtle zoom - change to 1.2 for more drama */
}
/******************************************/
/*SHOP*/
/******************************************/

.woocommerce-breadcrumb {
    display: none !important;
}

.woocommerce-products-header__title.page-title {
    display: none !important;
}

.woocommerce-result-count {
    display: none !important;
}

.woocommerce-ordering {
    display: none !important;
}


/* ── 0. Sub-menu dropdown arrow ── */
.main-navigation ul li.menu-item-has-children > a::after {
    content: ' ▾';
    display: inline-block;
    transition: transform 0.2s ease;
}
.main-navigation ul li.menu-item-has-children:hover > a::after,
.main-navigation ul li.menu-item-has-children.focus > a::after {
    transform: rotate(180deg);
}



/* ── 1. Sub-menu overflow fix — prevent long titles bleeding off right edge ── */
/* Constrain width and allow text to wrap */
.main-navigation ul .sub-menu {
    min-width: 200px;
    max-width: 280px;
}
.main-navigation ul .sub-menu a {
    white-space: normal !important;
}
/* For the rightmost top-level items, open the sub-menu leftward instead */
.main-navigation ul > li:last-child > .sub-menu,
.main-navigation ul > li:nth-last-child(2) > .sub-menu,
.main-navigation ul > li:nth-last-child(3) > .sub-menu {
    left: auto !important;
    right: 0;
}
/* Sub-sub menus: fly right by default */
.main-navigation ul .sub-menu .sub-menu {
    left: 100% !important;
    right: auto !important;
    top: 0 !important;
}
/* Sub-sub menus under rightmost items: fly left to avoid going off-screen */
.main-navigation ul > li:last-child > .sub-menu .sub-menu,
.main-navigation ul > li:nth-last-child(2) > .sub-menu .sub-menu,
.main-navigation ul > li:nth-last-child(3) > .sub-menu .sub-menu {
    left: auto !important;
    right: 100% !important;
}

/* ── 2. Remove customiser hover line from shop button only ── */
/* The customiser outputs ::before (visible line) and ::after (hover bridge) on the li, not the a */
#site-navigation ul:not(.sub-menu) > li.menu-shop-button:hover::before,
#site-navigation ul:not(.sub-menu) > li.menu-shop-button:hover::after {
    display: none !important;
}

/* ── 3. Cart hover popup — remove submenu styling ── */
.site-header-cart .widget_shopping_cart,
.woocommerce-cart-contents + .widget_shopping_cart {
    border: none !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important;
    padding: 16px !important;
    background: #fff !important;
}

/* ── 4. Sub-menu text under shop link ── */
.menu-shop-button .sub-menu a {
    color: var(--blue) !important;
}

/* ── 5. WooCommerce buttons ── */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .cart .button,
.woocommerce .checkout-button {
    background-color:#fc3c20!important;
    color: #ffffff !important;
    border-radius: 4px !important;
    border: none !important;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
    background-color: var(--red) !important;
    color: #ffffff !important;
    opacity: 0.88;
}

/* ── 6. Qty input border ── */
.woocommerce .quantity input.qty,
.woocommerce .quantity .qty {
    border: 1px solid #dddddd !important;
    border-radius: 4px;
}

/* ── 7. Product price ── */
.woocommerce .price,
.woocommerce p.price,
.woocommerce span.price {
    color: #4b4f58 !important;
    font-size: 23px !important;
	font-weight:600!important;;
}

/* ── 8. Product meta — single line, 14px, links red no underline ── */
.woocommerce .product_meta {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 12px;
    font-size: 14px;
}
.woocommerce .product_meta a {
    color: var(--red) !important;
    text-decoration: none !important;
}
.woocommerce .product_meta a:hover {
    text-decoration: underline !important;
}

/* 1. General Form Layout */
.wpcf7-form {
    display: block !important;
}

.wpcf7-form br {
    display: none;
}

/* 2. Bold Labels sitting above the boxes */
.wpcf7-form label {
    display: block !important;
    font-weight: 700 !important;
    color: #000 !important;
    margin-top: 15px !important;
    margin-bottom: 5px !important;
    font-family: inherit;
}

/* 3. Red Asterisk Styling */
.red-star {
    color: #ff0000 !important;
}

/* 4. Name and Email Field Styling (Shorter Width) */
.wpcf7-form input:not([type="submit"]),
.wpcf7-form input[type="email"] {
    display: block !important;
    width: 100% !important;
    max-width: 400px !important; /* Adjust to match your exact mockup width */
    padding: 10px !important;
    border: 1px solid #ccc !important;
    background-color: #fff !important;
    border-radius: 0 !important;
}

/* 5. Message Box Styling (Full Width) */
.wpcf7-form textarea {
    display: block !important;
    width: 100% !important;
    height: 150px !important;
    padding: 10px !important;
    border: 1px solid #ccc !important;
    background-color: #fff !important;
    border-radius: 0 !important;
}

/* 6. Send Button Styling */
.btn-send {
    margin-top: 20px !important;
    background-color: #f1f1f1 !important;
    color: #333 !important;
    border: 1px solid #ccc !important;
    padding: 10px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    font-size: 14px !important;
}

.btn-send:hover {
    background-color: #e5e5e5 !important;
}

/******************************************/
/*CART / BASKET*/
/******************************************/

/* ── Cart items table ── */
.lmb-cart-table {
    width: 100%;
    border-collapse: collapse;
    background: none;
    border-top: 1px solid #d3d3d3 !important;
    border-left: 1px solid #d3d3d3 !important;
    border-right: 1px solid #d3d3d3 !important;
    border-bottom: none !important;
    margin: 0 !important;
}
.lmb-cart-table thead tr {
    background: #f5f7f9;
}
.lmb-cart-table thead th {
    text-align: left;
    font-weight: 600;
    color: var(--blue);
    border: none !important;
    border-bottom: 1px solid #d3d3d3 !important;
    padding: 10px 12px;
    text-transform: none !important;
    background: none !important;
}
.lmb-cart-table thead th:nth-child(4) {
    text-align: center;
}
.lmb-cart-table thead th:nth-child(5),
.lmb-cart-table thead th:nth-child(6) {
    text-align: right;
}
.lmb-cart-table tbody td {
    padding: 12px;
    border: none !important;
    border-bottom: 1px solid #ebebeb !important;
    vertical-align: middle;
    background: none !important;
}
.lmb-cart-table .lmb-remove { width: 32px; text-align: center; cursor: pointer; }
.lmb-cart-table .lmb-remove span,
.lmb-cart-table .lmb-remove a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #f0f0f0;
    color: var(--red);
    font-size: 16px;
    line-height: 1;
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
}
.lmb-cart-table .lmb-remove span:hover,
.lmb-cart-table .lmb-remove a:hover {
    background: var(--red);
    color: #fff;
}
.lmb-cart-table .lmb-thumb  { width: 90px; }
.lmb-cart-table .lmb-thumb img { width: 80px; height: 80px; object-fit: cover; border-radius: 4px; display: block; }
.lmb-cart-table .lmb-name   { color: var(--blue); font-weight: 500; }
.lmb-cart-table .lmb-price,
.lmb-cart-table .lmb-subtotal { width: 100px; text-align: right; white-space: nowrap; }
.lmb-cart-table .lmb-qty   { width: 80px; text-align: center; }
.lmb-cart-table .lmb-qty input { width: 60px; text-align: center; padding: 6px; border: 1px solid #d3d3d3; border-radius: 4px; }

/* ── Actions row ── */
.lmb-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    padding: 12px;
    margin: 0 !important;
    border-left: 1px solid #d3d3d3;
    border-right: 1px solid #d3d3d3;
    border-bottom: 1px solid #d3d3d3;
}
.lmb-coupon {
    display: flex;
    align-items: center;
    gap: 8px;
}
.lmb-coupon input {
    padding: 0 12px;
    border: 1px solid #d3d3d3 !important;
    border-radius: 4px;
    font-size: 14px;
    min-width: 160px;
    max-width: 200px;
    height: 44px !important;
    box-sizing: border-box;
    line-height: 44px;
}

/* ── Basket totals ── */
.lmb-totals-wrap {
    display: flex;
    justify-content: flex-end;
    margin-top: 32px;
}
.lmb-totals {
    width: 42%;
    min-width: 300px;
    border: 1px solid #d3d3d3;
    padding: 16px;
}
.lmb-totals h2 {
    font-size: 20px;
    font-weight: 700;
    color: var(--blue);
    text-transform: none;
    margin: 0 0 16px;
}
.lmb-totals-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding: 10px 0;
    border-bottom: 1px solid #ebebeb;
    font-size: 17px;
    font-weight: 600;
}
.lmb-note {
    font-size: 12px;
    color: #888;
    font-style: italic;
    margin: 10px 0 0;
}

/* ── Buttons ── */
.lmb-buttons {
    display: flex;
    gap: 12px;
    margin-top: 20px;
}

/* All cart buttons — shared base */
.lmb-actions button,
.lmb-actions input[type="submit"],
.lmb-buttons a,
.lmb-buttons button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
    padding: 0 20px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    border: 2px solid transparent !important;
    line-height: 1 !important;
    box-shadow: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}
/* Apply coupon */
.lmb-coupon button {
    background: #fff !important;
    color: var(--blue) !important;
    border: 2px solid var(--blue) !important;
}
.lmb-coupon button:hover { background: var(--blue) !important; color: #fff !important; }

/* Update basket */
.lmb-update {
    background: #f5f5f5 !important;
    color: #000 !important;
    border: 2px solid #d3d3d3 !important;
    margin-left: auto !important;
}
.lmb-update:hover { background: var(--red) !important; color: #fff !important; border-color: var(--red) !important; }

/* Continue Shopping */
body .lmb-buttons a.lmb-btn-continue {
    flex: 1 !important;
    background: #fff !important;
    color: var(--blue) !important;
    border: 2px solid var(--blue) !important;
    text-decoration: none !important;
}
body .lmb-buttons a.lmb-btn-continue:hover { background: var(--blue) !important; color: #fff !important; }

/* Proceed to Checkout */
.lmb-buttons .lmb-btn-checkout {
    flex: 1 !important;
    background: var(--red) !important;
    color: #fff !important;
    border: 2px solid var(--red) !important;
}
.lmb-buttons .lmb-btn-checkout:hover { background: var(--dark-red) !important; border-color: var(--dark-red) !important; }

/* ── Cart: scrollable table wrapper ── */
.lmb-cart-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 0 !important;
}

/* ── Cart: force table layout (overrides parent-theme responsive display:block reset) ── */
.lmb-cart-table               { display: table !important; }
.lmb-cart-table thead         { display: table-header-group !important; }
.lmb-cart-table tbody         { display: table-row-group !important; }
.lmb-cart-table tr            { display: table-row !important; }
.lmb-cart-table th,
.lmb-cart-table td            { display: table-cell !important; }

/* ── Cart: tablet — stack buttons before they overflow ── */
@media (max-width: 960px) {
    .lmb-buttons {
        flex-direction: column;
        gap: 10px;
    }
    body .lmb-buttons a.lmb-btn-continue,
    .lmb-buttons .lmb-btn-checkout {
        flex: unset !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* ── Cart: mobile — stacked card layout ── */
@media (max-width: 768px) {
    /* No horizontal scroll — stack instead */
    .lmb-cart-scroll { overflow: visible !important; }
    .lmb-cart-table  { min-width: unset !important; border-left: none !important; border-right: none !important; border-top: none !important; }

    /* Hide column headers, convert rows to grid cards */
    .lmb-cart-table thead        { display: none !important; }
    .lmb-cart-table,
    .lmb-cart-table tbody        { display: block !important; }
    .lmb-cart-table tbody tr {
        display: grid !important;
        grid-template-columns: 80px 1fr 1fr 1fr;
        align-items: center;
        gap: 8px 10px;
        padding: 12px 0 !important;
        border-bottom: 1px solid #ebebeb !important;
        position: relative !important;
    }
    .lmb-cart-table td { display: block !important; border: none !important; padding: 0 !important; }

    /* Remove × — float top-right, out of grid flow */
    .lmb-cart-table .lmb-remove  { position: absolute !important; top: 10px !important; right: 0 !important; width: auto !important; }

    /* Row 1: image spans both rows | name fills cols 2-4 */
    .lmb-cart-table .lmb-thumb   { grid-column: 1; grid-row: 1 / 3; align-self: start !important; width: auto !important; }
    .lmb-cart-table .lmb-name    { grid-column: 2 / 5; grid-row: 1; padding-right: 28px !important; }

    /* Row 2: qty | price | subtotal */
    .lmb-cart-table .lmb-qty     { grid-column: 2; grid-row: 2; text-align: left !important; width: auto !important; }
    .lmb-cart-table .lmb-price   { grid-column: 3; grid-row: 2; text-align: right !important; width: auto !important; white-space: nowrap !important; }
    .lmb-cart-table .lmb-subtotal{ grid-column: 4; grid-row: 2; text-align: right !important; width: auto !important; white-space: nowrap !important; font-weight: 600 !important; }
    .lmb-cart-table .lmb-qty input { width: 52px !important; }

    /* Actions row stacks */
    .lmb-actions { flex-direction: column; align-items: stretch; }
    .lmb-coupon input { flex: 1; max-width: none; }
    .lmb-update { width: 100% !important; }

    /* Totals: full width */
    .lmb-totals-wrap { justify-content: flex-start; }
    .lmb-totals { width: 100% !important; min-width: unset !important; }
}

/* ── Old .woocommerce-cart table.cart (dead, kept for reference) ── */
.woocommerce-cart table.cart {
    table-layout: auto !important;
    width: 100% !important;
    border: none !important;
    background: none !important;
}
.woocommerce-cart table.cart thead th {
    text-transform: none !important;
    font-weight: 600 !important;
    color: var(--blue) !important;
    border-bottom: 2px solid #d3d3d3 !important;
    background: none !important;
    padding: 8px 12px !important;
}
.woocommerce-cart table.cart td {
    background: none !important;
    border-bottom: 1px solid #ebebeb !important;
    padding: 12px !important;
    vertical-align: middle !important;
}
.woocommerce-cart table.cart .product-remove    { width: 40px !important; }
.woocommerce-cart table.cart .product-thumbnail { width: 90px !important; }
.woocommerce-cart table.cart .product-price,
.woocommerce-cart table.cart .product-quantity,
.woocommerce-cart table.cart .product-subtotal  { width: 110px !important; white-space: nowrap; }
.woocommerce-cart table.cart .product-thumbnail img {
    width: 80px !important;
    height: 80px !important;
    object-fit: cover;
    border-radius: 4px;
}
.woocommerce-cart table.cart .product-name a {
    color: var(--blue) !important;
    text-decoration: none !important;
    font-weight: 500;
}
.woocommerce-cart table.cart .product-remove a {
    color: var(--red) !important;
    font-size: 18px !important;
    text-decoration: none !important;
}

/* ── Actions row: coupon (left) · Update Basket (right) ── */
.woocommerce-cart table.cart td.actions {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    padding: 16px 0 0 !important;
    border: none !important;
    border-top: 1px solid #ebebeb !important;
    background: none !important;
}
.woocommerce-cart table.cart td.actions .coupon {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
}
.woocommerce-cart table.cart td.actions .coupon input#coupon_code {
    min-width: 160px !important;
    max-width: 200px !important;
    padding: 10px 12px !important;
    border: 1px solid #d3d3d3 !important;
    border-radius: 4px !important;
    font-size: 14px !important;
    height: auto !important;
}

/* ── Cart totals: right-aligned, min 42% ── */
.woocommerce-cart .cart-collaterals {
    width: 100% !important;
    float: none !important;
    display: flex !important;
    justify-content: flex-end !important;
    margin-top: 28px !important;
    padding-top: 28px !important;
    border-top: 2px solid #d3d3d3 !important;
}
.woocommerce-cart .cart_totals {
    width: 42% !important;
    min-width: 280px !important;
    float: none !important;
    padding-top: 0 !important;
}
.woocommerce-cart .cart_totals h2 {
    margin: 0 0 12px !important;
    font-size: 18px !important;
    text-transform: none !important;
    color: var(--blue) !important;
}
.woocommerce-cart .cart_totals table {
    width: 100% !important;
    border: none !important;
    background: none !important;
}
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td {
    border: none !important;
    border-bottom: 1px solid #ebebeb !important;
    padding: 10px 0 !important;
    background: none !important;
    text-transform: none !important;
}
.woocommerce-cart .cart_totals table td {
    text-align: right !important;
}

/* ── Delivery note ── */
.lmb-delivery-note {
    font-size: 12px !important;
    color: #888 !important;
    font-style: italic !important;
    margin: 10px 0 0 !important;
}

/* ── Proceed to checkout area — two equal buttons ── */
.woocommerce-cart .wc-proceed-to-checkout {
    display: flex !important;
    gap: 12px !important;
    margin-top: 20px !important;
    padding: 0 !important;
}

/* ── All cart buttons — shared base ── */
.woocommerce-cart .button,
.woocommerce-cart button.button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
    padding: 0 20px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    border-radius: 4px !important;
    text-transform: none !important;
    text-decoration: none !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    box-shadow: none !important;
    line-height: 1 !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

/* Apply coupon */
.woocommerce-cart td.actions .coupon .button {
    background-color: #fff !important;
    color: var(--blue) !important;
    border: 2px solid var(--blue) !important;
}
.woocommerce-cart td.actions .coupon .button:hover {
    background-color: var(--blue) !important;
    color: #fff !important;
}

/* Update basket */
.woocommerce-cart td.actions button[name="update_cart"] {
    background-color: #fff !important;
    color: #999 !important;
    border: 2px solid #d3d3d3 !important;
}
.woocommerce-cart td.actions button[name="update_cart"]:not([disabled]):hover {
    background-color: #f5f5f5 !important;
    color: #555 !important;
}

/* Continue Shopping — equal flex width */
.woocommerce-cart .wc-proceed-to-checkout .lmb-btn-continue {
    flex: 1 !important;
    background-color: #fff !important;
    color: var(--blue) !important;
    border: 2px solid var(--blue) !important;
}
.woocommerce-cart .wc-proceed-to-checkout .lmb-btn-continue:hover {
    background-color: var(--blue) !important;
    color: #fff !important;
}

/* Proceed to Checkout — equal flex width */
.woocommerce-cart .wc-proceed-to-checkout .lmb-btn-checkout {
    flex: 1 !important;
    background-color: var(--red) !important;
    color: #fff !important;
    border: 2px solid var(--red) !important;
}
.woocommerce-cart .wc-proceed-to-checkout .lmb-btn-checkout:hover {
    background-color: var(--dark-red) !important;
    border-color: var(--dark-red) !important;
    color: #fff !important;
}


/******************************************/
/* CONTRIBUTION / PLEDGE TEMPLATES — related products grid */
/* WC grid CSS needs a .woocommerce ancestor; custom templates don't have one.
   These rules replicate the grid independently of that wrapper. */
/******************************************/
.contribution-related-products ul.products {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 24px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 24px !important;
    clear: both !important;
}
.contribution-related-products ul.products li.product {
    float: none !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    flex: 0 0 calc(25% - 18px) !important;
    width: calc(25% - 18px) !important;
}
.contribution-related-products ul.products.columns-3 li.product {
    flex: 0 0 calc(33.33% - 16px) !important;
    width: calc(33.33% - 16px) !important;
}
.contribution-related-products ul.products.columns-2 li.product {
    flex: 0 0 calc(50% - 12px) !important;
    width: calc(50% - 12px) !important;
}
/* SO WCTB panel layout inside product cards must not overflow the card */
.contribution-related-products ul.products li.product .panel-layout,
.contribution-related-products ul.products li.product .panel-grid-cell {
    width: 100% !important;
    box-sizing: border-box !important;
}
/* Product card image */
.contribution-related-products ul.products li.product img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}
/* Product card title */
.contribution-related-products ul.products li.product .woocommerce-loop-product__title {
    font-size: 15px !important;
    margin: 8px 0 4px !important;
    color: var(--blue) !important;
}
/* Responsive: 2-col on tablet */
@media (max-width: 900px) {
    .contribution-related-products ul.products li.product,
    .contribution-related-products ul.products.columns-3 li.product {
        flex: 0 0 calc(50% - 12px) !important;
        width: calc(50% - 12px) !important;
    }
}
/* Responsive: 1-col on mobile */
@media (max-width: 560px) {
    .contribution-related-products ul.products li.product,
    .contribution-related-products ul.products.columns-3 li.product {
        flex: 0 0 100% !important;
        width: 100% !important;
    }
}

/******************************************/
/*CHECKOUT*/
/******************************************/

/* Force full-width layout on checkout — parent theme reserves 35% for sidebar via .site-main margin */
.woocommerce-checkout .site-main {
    margin: 0 !important;
}
.woocommerce-checkout #secondary {
    display: none !important;
}

/* Stack billing and shipping full-width instead of side by side */
.woocommerce-checkout #customer_details.col2-set {
    display: block !important;
    width: 100% !important;
}
.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2 {
    float: none !important;
    width: 100% !important;
    margin-right: 0 !important;
}

/******************************************/
/*HOME HERO*/
/******************************************/
@media screen and (min-width: 1220px) and (max-width: 1440px) {
	.challenge-logo .so-widget-image {
		height:100px!important;
		width:auto!important;
	}	
	.challenge-text .so-widget-sow-headline h2.sow-headline    {
		font-size:1.2em!important;
	}}

@media screen and (min-width: 1219px) and (max-width: 1024px) {
	.challenge-logo .so-widget-image {
		height:80px!important;
		width:auto!important;
	}

	.challenge-text .so-widget-sow-headline h2.sow-headline    {
		font-size:1.2em!important;
	}}

/******************************************/
/*SHOP*/
/******************************************/

.woocommerce ul.products li.product .button {
    padding: 18px 32px !important;
    font-size: 1.1em !important;
}

/******************************************/
/*GENERAL*/
/******************************************/
/* Fix long description padding on mobile */
@media (max-width: 780px) {
    .contribution-long-description {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

@media (max-width: 480px) {
  .contribution-product-layout {
   padding: 0px 0px!important;
  }}

