.elementor-7912 .elementor-element.elementor-element-7a97f04:not(.elementor-motion-effects-element-type-background), .elementor-7912 .elementor-element.elementor-element-7a97f04 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#001931;}.elementor-7912 .elementor-element.elementor-element-7a97f04 > .elementor-container{max-width:1280px;}.elementor-7912 .elementor-element.elementor-element-7a97f04{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-7912 .elementor-element.elementor-element-7a97f04 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-7912 .elementor-element.elementor-element-2cdfb04 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 25px 100px 25px;}.elementor-7912 .elementor-element.elementor-element-2cdfb04 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-7912 .elementor-element.elementor-element-c23c7a6{--spacer-size:75px;}.elementor-7912 .elementor-element.elementor-element-b9b8ddb{--main-alignment:right;--divider-style:solid;--subtotal-divider-style:solid;--view-cart-button-display:none;--cart-footer-layout:1fr;--elementor-remove-from-cart-button:none;--remove-from-cart-button:block;--toggle-button-icon-color:#000000;--toggle-button-background-color:#00000000;--toggle-button-border-color:#00000000;--toggle-button-hover-background-color:#00000000;--toggle-button-hover-border-color:#00000000;--toggle-icon-size:20px;--cart-border-style:none;}.elementor-7912 .elementor-element.elementor-element-b9b8ddb .widget_shopping_cart_content{--subtotal-divider-left-width:0;--subtotal-divider-right-width:0;}.elementor-7912 .elementor-element.elementor-element-3650fb7{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-7912 .elementor-element.elementor-element-c3cf54f > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7912 .elementor-element.elementor-element-edba0b1{--main-alignment:right;--divider-style:solid;--subtotal-divider-style:solid;--view-cart-button-display:none;--cart-footer-layout:1fr;--elementor-remove-from-cart-button:none;--remove-from-cart-button:block;--toggle-button-icon-color:#000000;--toggle-button-background-color:#00000000;--toggle-button-border-color:#00000000;--toggle-button-hover-background-color:#00000000;--toggle-button-hover-border-color:#00000000;--toggle-icon-size:20px;--cart-border-style:none;}.elementor-7912 .elementor-element.elementor-element-edba0b1 .widget_shopping_cart_content{--subtotal-divider-left-width:0;--subtotal-divider-right-width:0;}.elementor-7912 .elementor-element.elementor-element-5b642f7{--spacer-size:25px;}.elementor-7912 .elementor-element.elementor-element-a079932.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-7912 .elementor-element.elementor-element-a079932.elementor-wc-products ul.products li.product .price{color:#0F3A5D;}.elementor-7912 .elementor-element.elementor-element-a079932.elementor-wc-products ul.products li.product .price ins{color:#0F3A5D;}.elementor-7912 .elementor-element.elementor-element-a079932.elementor-wc-products ul.products li.product .price ins .amount{color:#0F3A5D;}.elementor-7912 .elementor-element.elementor-element-a079932.elementor-wc-products ul.products li.product .button{color:#FFFFFF;background-color:#86C441;}.elementor-7912 .elementor-element.elementor-element-a079932.elementor-wc-products ul.products li.product span.onsale{display:block;}body.elementor-page-7912:not(.elementor-motion-effects-element-type-background), body.elementor-page-7912 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#001931;}body.elementor-page-7912{margin:0% 0% 0% 0%;}@media(max-width:1024px){.elementor-7912 .elementor-element.elementor-element-3650fb7{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-7912 .elementor-element.elementor-element-a079932.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}@media(max-width:767px){.elementor-7912 .elementor-element.elementor-element-3650fb7{--content-width:767px;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-7912 .elementor-element.elementor-element-c3cf54f > .elementor-widget-container{margin:0% 0% 0% 0%;}.elementor-7912 .elementor-element.elementor-element-edba0b1 > .elementor-widget-container{margin:0% 0% 0% 0%;}.elementor-7912 .elementor-element.elementor-element-a079932.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}/* Start custom CSS *//* 1. Make the browser window a flex container */
html, body {
    height: 100%;
    margin: 0;
}

body {
    display: flex;
    flex-direction: column;
}

/* 2. Target the main content wrapper and force it to grow */
#content, 
#primary, 
.site-content, 
.main-content-wrapper {
    flex: 1 0 auto;
}

/* 3. Keep the footer pinned to the absolute bottom */
footer, 
.site-footer, 
.elementor-location-footer {
    flex-shrink: 0;
    margin-top: auto;
}

.section-that-needs-bg {
  background-image: 
    url('https://thehealthywhole.co.za/wp-content/uploads/2026/08/top-scaled.png'),
    url('https://thehealthywhole.co.za/wp-content/uploads/2026/08/bottom-scaled.png'),
    url('https://thehealthywhole.co.za/wp-content/uploads/2026/08/mid-scaled.png');
  
  background-position: top center, bottom center, center !important;
  background-repeat: no-repeat, no-repeat, repeat-y !important;
  background-size: 100% auto, 100% auto, 100% auto !important;
}

@media (max-width: 767px) {
  .section-that-needs-bg {
    background-image: 
      url('https://thehealthywhole.co.za/wp-content/uploads/2026/08/mobile-top.png'),
      url('https://thehealthywhole.co.za/wp-content/uploads/2026/08/mobile-bottom.png');
    
    background-position: top center, bottom center !important;
    background-repeat: no-repeat, no-repeat !important;
    background-size: 100% auto, 100% auto !important;
    background-color: #FFFFFF !important;
    min-height: 100vh; /* forces enough room for both curves to separate */
    padding-top: 15vw;    /* pushes content below the top curve */
    padding-bottom: 15vw; /* keeps content above the bottom curve */
    box-sizing: border-box;
  }
}/* End custom CSS */