.elementor-356 .elementor-element.elementor-element-375c516{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-356 .elementor-element.elementor-element-375c516.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-356 .elementor-element.elementor-element-e82332d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-356 .elementor-element.elementor-element-e82332d:not(.elementor-motion-effects-element-type-background), .elementor-356 .elementor-element.elementor-element-e82332d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-ccd8f12{--display:flex;--min-height:34px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:0px 16px;--row-gap:0px;--column-gap:16px;--flex-wrap:nowrap;--padding-top:0px;--padding-bottom:0px;--padding-left:12px;--padding-right:12px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-356 .elementor-element.elementor-element-dd13bf8{width:var( --container-widget-width, 29.685% );max-width:29.685%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:29.685%;--container-widget-flex-grow:0;text-align:start;font-family:"Signika", Sans-serif;font-size:14px;font-weight:400;line-height:20px;color:#071D1F;}.elementor-356 .elementor-element.elementor-element-dd13bf8.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-356 .elementor-element.elementor-element-690b140{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--gap:0px 15px;--row-gap:0px;--column-gap:15px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-356 .elementor-element.elementor-element-2bfb9c7 .elementor-repeater-item-6f39a82.elementor-social-icon{background-color:#071D1F;}.elementor-356 .elementor-element.elementor-element-2bfb9c7 .elementor-repeater-item-6f39a82.elementor-social-icon i{color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-2bfb9c7 .elementor-repeater-item-6f39a82.elementor-social-icon svg{fill:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-2bfb9c7 .elementor-repeater-item-811afde.elementor-social-icon{background-color:#071D1F;}.elementor-356 .elementor-element.elementor-element-2bfb9c7 .elementor-repeater-item-811afde.elementor-social-icon i{color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-2bfb9c7 .elementor-repeater-item-811afde.elementor-social-icon svg{fill:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-2bfb9c7 .elementor-repeater-item-014fa13.elementor-social-icon{background-color:#071D1F;}.elementor-356 .elementor-element.elementor-element-2bfb9c7 .elementor-repeater-item-014fa13.elementor-social-icon i{color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-2bfb9c7 .elementor-repeater-item-014fa13.elementor-social-icon svg{fill:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-2bfb9c7{--grid-template-columns:repeat(0, auto);text-align:right;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--icon-size:12px;--grid-column-gap:5px;--grid-row-gap:0px;}.elementor-356 .elementor-element.elementor-element-2bfb9c7 .elementor-social-icon{background-color:#071D1F;--icon-padding:0em;}.elementor-356 .elementor-element.elementor-element-2bfb9c7 .elementor-social-icon i{color:rgba(0,0,0,0);}.elementor-356 .elementor-element.elementor-element-2bfb9c7 .elementor-social-icon svg{fill:rgba(0,0,0,0);}.elementor-356 .elementor-element.elementor-element-b33e1ea{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-356 .elementor-element.elementor-element-b33e1ea:not(.elementor-motion-effects-element-type-background), .elementor-356 .elementor-element.elementor-element-b33e1ea > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#116530;}.elementor-356 .elementor-element.elementor-element-9d0d99a{--display:flex;--min-height:62px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:0px 32px;--row-gap:0px;--column-gap:32px;--flex-wrap:nowrap;--padding-top:7px;--padding-bottom:7px;--padding-left:12px;--padding-right:12px;}.elementor-356 .elementor-element.elementor-element-dd31ba8{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-356 .elementor-element.elementor-element-dd31ba8.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-356 .elementor-element.elementor-element-b8e7e9c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:start;}.elementor-356 .elementor-element.elementor-element-b8e7e9c .elementor-heading-title{font-family:"Signika", Sans-serif;font-size:24px;font-weight:700;line-height:1.05em;color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-656664c{margin:1px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:start;}.elementor-356 .elementor-element.elementor-element-656664c .elementor-heading-title{font-family:"Signika", Sans-serif;font-size:12px;font-weight:400;line-height:1.2em;letter-spacing:0.5px;color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-5f882a5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-356 .elementor-element.elementor-element-5f882a5.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-elementor-container .rtsb-advanced-ajax-search-products-list .rtsb-product-wrap{grid-template-columns:repeat(3, minmax(0, 1fr));gap:20px;}.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-advanced-product-search .rtsb-search-input-group .rtsb-search-input,.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-advanced-product-search .rtsb-search-input-group .rtsb-search-input::placeholder,.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-category-select-wrapper .rtsb-search-select{font-family:"Signika", Sans-serif;font-size:15px;font-weight:400;color:#666666;}.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-advanced-product-search .rtsb-search-input-group,.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-advanced-product-search .rtsb-search-input-group .rtsb-search-input,.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-category-select-wrapper .rtsb-search-select{background-color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-advanced-product-search .rtsb-search-input-group{border-style:none;border-radius:25px 25px 25px 25px;}.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-advanced-product-search .rtsb-search-input-group .rtsb-search-button,.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-advanced-product-search .rtsb-search-input-group .rtsb-search-input,.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-advanced-product-search .rtsb-category-select-wrapper .rtsb-search-select{height:50px;}.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-group .rtsb-search-button{font-size:18px;}.elementor-356 .elementor-element.elementor-element-6a999a7  .rtsb-search-input-group .rtsb-search-button{color:#FFFFFF;background-color:#FF9100;width:44px;gap:0px;}.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-group .rtsb-search-button:hover{color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-6a999a7  .rtsb-search-input-group .rtsb-search-button:hover{background-color:#E88300;}.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-advanced-product-search .rtsb-category-select-wrapper .rtsb-search-select{font-family:"Outfit", Sans-serif;font-size:14px;font-weight:500;text-transform:none;color:#071D1F;}.elementor-356 .elementor-element.elementor-element-6a999a7  .rtsb-advanced-product-search .rtsb-search-input-group .rtsb-category-select-wrapper,.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-category-select-wrapper .rtsb-search-select{background-color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-6a999a7  .rtsb-advanced-product-search .rtsb-category-select-wrapper .rtsb-search-select{width:150px;}.elementor-356 .elementor-element.elementor-element-6a999a7  .rtsb-advanced-product-search .rtsb-category-select-wrapper:after{border-color:#E2E8E4;height:24px;}.elementor-356 .elementor-element.elementor-element-0baee0d{--display:flex;--min-height:40px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--gap:0px 18px;--row-gap:0px;--column-gap:18px;--flex-wrap:nowrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-356 .elementor-element.elementor-element-bc895f9{--display:flex;--min-height:40px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:0px 8px;--row-gap:0px;--column-gap:8px;--flex-wrap:nowrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-356 .elementor-element.elementor-element-3669474{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-356 .elementor-element.elementor-element-3669474 .elementor-icon-wrapper{text-align:center;}.elementor-356 .elementor-element.elementor-element-3669474.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-3669474.elementor-view-framed .elementor-icon, .elementor-356 .elementor-element.elementor-element-3669474.elementor-view-default .elementor-icon{color:#FFFFFF;border-color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-3669474.elementor-view-framed .elementor-icon, .elementor-356 .elementor-element.elementor-element-3669474.elementor-view-default .elementor-icon svg{fill:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-3669474 .elementor-icon{font-size:18px;}.elementor-356 .elementor-element.elementor-element-3669474 .elementor-icon svg{height:18px;}.elementor-356 .elementor-element.elementor-element-34ecf25{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:start;}.elementor-356 .elementor-element.elementor-element-34ecf25 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:14px;font-weight:500;line-height:40px;color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-8e85db2{--display:flex;--min-height:40px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-356 .elementor-element.elementor-element-0257cae{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-356 .elementor-element.elementor-element-0257cae .elementor-icon-wrapper{text-align:center;}.elementor-356 .elementor-element.elementor-element-0257cae.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-0257cae.elementor-view-framed .elementor-icon, .elementor-356 .elementor-element.elementor-element-0257cae.elementor-view-default .elementor-icon{color:#FFFFFF;border-color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-0257cae.elementor-view-framed .elementor-icon, .elementor-356 .elementor-element.elementor-element-0257cae.elementor-view-default .elementor-icon svg{fill:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-0257cae .elementor-icon{font-size:18px;}.elementor-356 .elementor-element.elementor-element-0257cae .elementor-icon svg{height:18px;}.elementor-356 .elementor-element.elementor-element-53c69d8{--display:flex;--min-height:40px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-name a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-price{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons .elementor-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--view-cart{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--checkout{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .woocommerce-mini-cart__empty-message{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-356 .elementor-element.elementor-element-fa04a7a{--main-alignment:center;--divider-style:solid;--subtotal-divider-style:solid;--elementor-remove-from-cart-button:none;--remove-from-cart-button:block;--toggle-button-icon-color:#FFFFFF;--toggle-icon-size:18px;--toggle-icon-padding:0px 0px 0px 0px;--items-indicator-text-color:#071D1F;--items-indicator-background-color:#FF9100;--cart-border-style:none;--cart-footer-layout:1fr 1fr;--products-max-height-sidecart:calc(100vh - 240px);--products-max-height-minicart:calc(100vh - 385px);}.elementor-356 .elementor-element.elementor-element-fa04a7a .widget_shopping_cart_content{--subtotal-divider-left-width:0;--subtotal-divider-right-width:0;}.elementor-356 .elementor-element.elementor-element-ba520b8{--display:flex;--min-height:40px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-356 .elementor-element.elementor-element-c4cd746{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-356 .elementor-element.elementor-element-c4cd746 .elementor-icon-wrapper{text-align:center;}.elementor-356 .elementor-element.elementor-element-c4cd746.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-c4cd746.elementor-view-framed .elementor-icon, .elementor-356 .elementor-element.elementor-element-c4cd746.elementor-view-default .elementor-icon{color:#FFFFFF;border-color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-c4cd746.elementor-view-framed .elementor-icon, .elementor-356 .elementor-element.elementor-element-c4cd746.elementor-view-default .elementor-icon svg{fill:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-c4cd746 .elementor-icon{font-size:18px;}.elementor-356 .elementor-element.elementor-element-c4cd746 .elementor-icon svg{height:18px;}.elementor-356 .elementor-element.elementor-element-0f0ecdf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:1px 0px 0px 0px;--border-top-width:1px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;border-color:#377B50;--border-color:#377B50;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-356 .elementor-element.elementor-element-0f0ecdf:not(.elementor-motion-effects-element-type-background), .elementor-356 .elementor-element.elementor-element-0f0ecdf > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#116530;}.elementor-356 .elementor-element.elementor-element-bf98b2b{--display:flex;--min-height:44px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:12px;--padding-right:12px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-356 .elementor-element.elementor-element-ec1ca57{width:var( --container-widget-width, 99.879% );max-width:99.879%;--container-widget-width:99.879%;--container-widget-flex-grow:0;--e-nav-menu-horizontal-menu-item-margin:calc( 0px / 2 );}.elementor-356 .elementor-element.elementor-element-ec1ca57.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-menu-toggle{margin-right:auto;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-nav-menu .elementor-item{font-family:"Signika", Sans-serif;font-size:15px;font-weight:600;text-transform:uppercase;line-height:22px;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;padding-left:14px;padding-right:14px;padding-top:14px;padding-bottom:14px;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-nav-menu--main .elementor-item:focus{color:#FFFFFF;fill:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:#A8D5B8;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .e--pointer-framed .elementor-item:before,
					.elementor-356 .elementor-element.elementor-element-ec1ca57 .e--pointer-framed .elementor-item:after{border-color:#A8D5B8;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:before,
					.elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:after{background-color:#FF9100;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .e--pointer-framed .elementor-item.elementor-item-active:before,
					.elementor-356 .elementor-element.elementor-element-ec1ca57 .e--pointer-framed .elementor-item.elementor-item-active:after{border-color:#FF9100;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .e--pointer-framed .elementor-item:before{border-width:3px;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .e--pointer-framed.e--animation-draw .elementor-item:before{border-width:0 0 3px 3px;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .e--pointer-framed.e--animation-draw .elementor-item:after{border-width:3px 3px 0 0;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .e--pointer-framed.e--animation-corners .elementor-item:before{border-width:3px 0 0 3px;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .e--pointer-framed.e--animation-corners .elementor-item:after{border-width:0 3px 3px 0;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .e--pointer-underline .elementor-item:after,
					 .elementor-356 .elementor-element.elementor-element-ec1ca57 .e--pointer-overline .elementor-item:before,
					 .elementor-356 .elementor-element.elementor-element-ec1ca57 .e--pointer-double-line .elementor-item:before,
					 .elementor-356 .elementor-element.elementor-element-ec1ca57 .e--pointer-double-line .elementor-item:after{height:3px;}.elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:0px;}.elementor-356 .elementor-element.elementor-element-ec1ca57 div.elementor-menu-toggle{color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-ec1ca57 div.elementor-menu-toggle svg{fill:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-ec1ca57 div.elementor-menu-toggle:hover, .elementor-356 .elementor-element.elementor-element-ec1ca57 div.elementor-menu-toggle:focus{color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-ec1ca57 div.elementor-menu-toggle:hover svg, .elementor-356 .elementor-element.elementor-element-ec1ca57 div.elementor-menu-toggle:focus svg{fill:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-nn-mcat{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:4px;--padding-bottom:24px;--padding-left:0px;--padding-right:0px;}.elementor-356 .elementor-element.elementor-element-nn-mcat:not(.elementor-motion-effects-element-type-background), .elementor-356 .elementor-element.elementor-element-nn-mcat > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-356 .elementor-element.elementor-element-nnmcath1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:14px 16px 6px 16px;text-align:start;}.elementor-356 .elementor-element.elementor-element-nnmcath1 .elementor-heading-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#6B7F72;}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-356 .elementor-element.elementor-element-nnmcatls .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-356 .elementor-element.elementor-element-nnmcatls .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-356 .elementor-element.elementor-element-nnmcatls{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-356 .elementor-element.elementor-element-nnmcatls .elementor-icon-list-text{transition:color 0.3s;}.elementor-356 .elementor-element.elementor-element-nnmcatm .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-356 .elementor-element.elementor-element-nnmcatm .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-356 .elementor-element.elementor-element-nnmcatm{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-356 .elementor-element.elementor-element-nnmcatm .elementor-icon-list-text{transition:color 0.3s;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-356 .elementor-element.elementor-element-ccd8f12{--content-width:1320px;}.elementor-356 .elementor-element.elementor-element-9d0d99a{--content-width:1320px;}.elementor-356 .elementor-element.elementor-element-dd31ba8{--width:186px;}.elementor-356 .elementor-element.elementor-element-5f882a5{--width:760px;}.elementor-356 .elementor-element.elementor-element-0baee0d{--width:301px;}.elementor-356 .elementor-element.elementor-element-8e85db2{--width:40px;}.elementor-356 .elementor-element.elementor-element-53c69d8{--width:40px;}.elementor-356 .elementor-element.elementor-element-ba520b8{--width:40px;}}@media(max-width:1024px) and (min-width:768px){.elementor-356 .elementor-element.elementor-element-5f882a5{--width:100%;}}@media(max-width:1024px){.elementor-356 .elementor-element.elementor-element-ccd8f12{--min-height:32px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-356 .elementor-element.elementor-element-dd13bf8{width:var( --container-widget-width, 60% );max-width:60%;--container-widget-width:60%;--container-widget-flex-grow:0;}.elementor-356 .elementor-element.elementor-element-9d0d99a{--gap:10px 20px;--row-gap:10px;--column-gap:20px;--flex-wrap:wrap;--padding-top:6px;--padding-bottom:8px;--padding-left:12px;--padding-right:12px;}.elementor-widget-heading .elementor-heading-title{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-356 .elementor-element.elementor-element-b8e7e9c .elementor-heading-title{font-size:24px;}.elementor-356 .elementor-element.elementor-element-5f882a5{--min-height:0px;}.elementor-356 .elementor-element.elementor-element-5f882a5.e-con{--order:99999 /* order end hack */;}.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-elementor-container .rtsb-advanced-ajax-search-products-list .rtsb-product-wrap{grid-template-columns:repeat(1, minmax(0, 1fr));}.elementor-356 .elementor-element.elementor-element-0baee0d{--gap:0px 14px;--row-gap:0px;--column-gap:14px;}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-name a{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-price{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons .elementor-button{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--view-cart{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--checkout{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .woocommerce-mini-cart__empty-message{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-356 .elementor-element.elementor-element-bf98b2b{--min-height:44px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:767px){.elementor-356 .elementor-element.elementor-element-375c516{--min-height:0px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-356 .elementor-element.elementor-element-dd13bf8{--container-widget-width:58%;--container-widget-flex-grow:0;width:var( --container-widget-width, 58% );max-width:58%;font-size:12px;line-height:1.5em;}.elementor-356 .elementor-element.elementor-element-690b140{--width:90px;}.elementor-356 .elementor-element.elementor-element-9d0d99a{--gap:8px 10px;--row-gap:8px;--column-gap:10px;--flex-wrap:wrap;--padding-top:10px;--padding-bottom:10px;--padding-left:12px;--padding-right:12px;}.elementor-widget-heading .elementor-heading-title{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-356 .elementor-element.elementor-element-b8e7e9c .elementor-heading-title{font-size:20px;}.elementor-356 .elementor-element.elementor-element-5f882a5{--width:100%;}.elementor-356 .elementor-element.elementor-element-5f882a5.e-con{--order:99999 /* order end hack */;}.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-elementor-container .rtsb-advanced-ajax-search-products-list .rtsb-product-wrap{grid-template-columns:repeat(1, minmax(0, 1fr));}.elementor-356 .elementor-element.elementor-element-0baee0d{--gap:0px 12px;--row-gap:0px;--column-gap:12px;}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-name a{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-price{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons .elementor-button{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--view-cart{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--checkout{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-woocommerce-menu-cart .woocommerce-mini-cart__empty-message{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-356 .elementor-element.elementor-element-bf98b2b{--min-height:44px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}/* Start custom CSS for container, class: .elementor-element-e82332d *//* The announcement bar is desktop / tablet only.

   On a phone it was 70px of a 282px header, carrying a welcome line, a phone
   number and three social links whose href is "#". The phone number is not
   lost - it is the last item in the mobile menu drawer (see nn-mcat). */
@media(max-width:767px){
  .elementor-356 .elementor-element.elementor-element-e82332d{display:none !important;}
}/* End custom CSS */
/* Start custom CSS for rtsb-advanced-ajax-search, class: .elementor-element-6a999a7 *//* ==========================================================================
   CENTERED SEARCH - one white pill.

     [ All Categories v | (Q) Search for organic products...          (>) ]

   Every rule for this control lives here. It used to be split between this
   widget and the header root (375c516), which meant two blocks of the same
   stylesheet set the same properties and load order decided the winner.
   That half was removed when this was written - keep the search in one file.
   ========================================================================== */

/* --- Width and position -------------------------------------------------- */

/* Cap and centre the control, not its Elementor container: the row keeps the
   logo and the utility cluster at their natural widths and splits what is
   left evenly either side of the pill, so the gaps read as balanced.
   The AJAX results panel is anchored to .rtsb-elementor-container, so capping
   that too keeps the dropdown aligned to the pill rather than to the row. */
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-elementor-container,
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-advanced-product-search,
.elementor-356 .elementor-element.elementor-element-6a999a7 #rtsbSearchForm{
  width:100% !important;
  max-width:620px !important;
  margin-inline:auto !important;
}

/* --- The pill ------------------------------------------------------------ */

/* 50px tall with a 3px gutter on the right; the 44px submit sits in that
   gutter, which is what makes it read as part of the pill instead of a
   button bolted onto the end. */
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-group{
  display:flex !important;
  align-items:center !important;
  height:50px !important;
  min-height:50px !important;
  padding:0 3px 0 0 !important;
  background-color:#FFFFFF !important;
  border:0 !important;
  border-radius:25px !important;
  box-shadow:0 1px 3px rgba(7,29,31,.12) !important;
  transition:box-shadow .2s ease;
}
/* One focus ring for the whole control, driven by whichever field is in it. */
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-group:focus-within{
  box-shadow:0 0 0 3px rgba(255,145,0,.45) !important;
}

/* --- Category ------------------------------------------------------------ */

/* No tint. A single white field reads as one control; the category zone is
   set apart by the divider alone. */
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-category-select-wrapper{
  flex:0 0 150px !important;
  width:150px !important;
  max-width:150px !important;
  height:44px !important;
  padding:0 !important;
  background-color:transparent !important;
}
/* ShopBuilder draws the divider as a 3px-wide ::after carrying a 2px
   border-left. The separator_* controls only reach its colour and height, so
   the hairline has to be set here - a 2px rule reads as a seam between two
   controls, which is exactly what this design is trying to lose. */
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-category-select-wrapper::after{
  width:1px !important;
  height:24px !important;
  border-left:1px solid #E2E8E4 !important;
}
/* The native select arrow reserves an unpredictable slice of the control
   (~18px in Chrome) that is not part of the padding box, which truncated the
   label on narrow viewports. Drawing the chevron makes the usable text width
   exact and keeps one arrow style across browsers. */
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-select{
  width:100% !important;
  height:44px !important;
  min-height:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background-color:transparent !important;
  color:#071D1F !important;
  cursor:pointer !important;
  text-overflow:ellipsis !important;
  appearance:none !important;
  -webkit-appearance:none !important;
  -moz-appearance:none !important;
  padding:0 24px 0 20px !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23116530' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:right 10px center !important;
}
/* The sitewide Code Snippets stylesheet carries
     html body .elementor-356 ... select.rtsb-search-select{
       text-transform:uppercase!important; font-size:15px!important;
       font-weight:600!important }
   at specificity (0,4,3). Elementor writes this widget's own typography
   settings at (0,4,0), so the control panel silently loses and the label
   rendered as a clipped "ALL CATEGO...". !important does not help - only a
   deeper .elementor-356 .elementor-element.elementor-element-6a999a7 does, hence the html/body prefix. Change the type here,
   not in the widget's Category typography controls. */
html body .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-advanced-product-search .rtsb-category-select-wrapper select.rtsb-search-select{
  text-transform:none !important;
  font-size:14px !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  color:#071D1F !important;
}

/* --- Query field --------------------------------------------------------- */

.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-wrapper{
  flex:1 1 auto !important;
  min-width:0 !important;
  height:44px !important;
  background-color:transparent !important;
}
/* The magnifier is a background-image because the widget renders no icon
   inside the field - there is no element here to style.
   min-height matters as much as height: ShopBuilder sets one from the
   form_height control and it wins over a plain height. */
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input{
  width:100% !important;
  height:44px !important;
  min-height:44px !important;
  box-sizing:border-box !important;
  border:0 !important;
  border-radius:0 !important;
  background-color:transparent !important;
  color:#071D1F !important;
  font-size:15px !important;
  padding:0 12px 0 44px !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' width='16' height='16'%3E%3Cpath fill='%236B7F72' d='M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:left 18px center !important;
  background-size:16px 16px !important;
}
/* PLACEHOLDER - read this before editing.

   The wanted hint is "Search for organic products...". The real placeholder
   attribute says "Search products..." and cannot be reached from here: the
   widget exposes no placeholder control and the string is baked into
   ShopBuilder Pro's template as esc_attr__('Search products...',
   'shopbuilder-pro'). The proper fix is one gettext filter -

     add_filter( 'gettext_shopbuilder-pro', static function ( $t, $text ) {
       return 'Search products...' === $text
         ? 'Search for organic products...' : $t;
     }, 10, 2 );

   - but the Code Snippets abilities on this site are currently throwing
   ("Class Code_Snippets\Snippet not found"; plugin 3.10.1 moved it to
   Code_Snippets\Model\Snippet), so it could not be added. Until it can be:
   the real placeholder is painted transparent and the hint is drawn as
   generated content, dropped as soon as the field has a value.

   WHEN THE SNIPPET LANDS: delete this block and the ::before rules with it,
   and restore a plain colour on ::placeholder. Leaving both is not harmful
   (the strings match) but it is two mechanisms for one label.

   The accessible name is unaffected either way - it comes from the input's
   aria-label, not from the placeholder. */
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input::placeholder{
  color:transparent !important;
  opacity:1 !important;
}
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-wrapper{position:relative !important;}
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-wrapper::before{
  content:"Search for organic products...";
  position:absolute;
  left:44px;
  top:50%;
  transform:translateY(-50%);
  max-width:calc(100% - 56px);
  overflow:hidden;
  white-space:nowrap;
  font-family:"Signika",sans-serif;
  font-size:15px;
  font-weight:400;
  color:#8A9A90;
  pointer-events:none;
  z-index:1;
}
/* :has() is what lets a pseudo-element on the wrapper react to the input's
   own state - there is no sibling combinator that reaches ::before. */
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-wrapper:has(.rtsb-search-input:not(:placeholder-shown))::before{
  content:none;
}
/* The pill's own focus ring is the affordance; a second outline inside it
   would draw a rectangle across the rounded corners. */
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input:focus-visible,
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-select:focus-visible{outline:none !important;}

/* --- Submit -------------------------------------------------------------- */

/* Orange rather than the inherited --rtsb-color-primary green, which would
   vanish into the green header bar. The glyph is #071D1F on #FF9100 (7.5:1);
   white on that orange is 2.3:1.
   position:relative is load-bearing - it is what the visually-hidden label
   below is positioned against. */
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-button{
  position:relative !important;
  flex:0 0 44px !important;
  width:44px !important;
  min-width:44px !important;
  max-width:44px !important;
  height:44px !important;
  min-height:44px !important;
  padding:0 !important;
  gap:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background-color:#FF9100 !important;
  color:#071D1F !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  transition:background-color .2s ease;
}
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-button:hover,
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-button:focus{
  background-color:#E88300 !important;
  color:#071D1F !important;
}
/* White, inset: an orange ring on an orange button is invisible, and an
   outset ring would be clipped by the pill's rounded corner. */
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-button:focus-visible{
  outline:2px solid #FFFFFF !important;
  outline-offset:-4px !important;
}
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-group .rtsb-search-button .rtsb-search-icon,
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-group .rtsb-search-button .rtsb-search-icon svg{
  color:#071D1F !important;
  fill:currentColor !important;
  width:16px !important;
  height:16px !important;
}
/* The button is icon-only and its svg is aria-hidden, so the label stays in
   the DOM - hidden visually only - to keep the button's accessible name. */
.elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-group .rtsb-search-button .rtsb-search-text{
  position:absolute !important;width:1px !important;height:1px !important;
  margin:-1px !important;padding:0 !important;overflow:hidden !important;
  clip:rect(0 0 0 0) !important;clip-path:inset(50%) !important;
  white-space:nowrap !important;border:0 !important;
}

/* --- Tablet -------------------------------------------------------------- */

/* Between 768 and 1024 the header row wraps and the search takes a line of
   its own. Same pill, one notch smaller, still capped so it does not stretch
   the full 1320px container. */
@media(min-width:768px) and (max-width:1024px){
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-elementor-container,
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-advanced-product-search,
  .elementor-356 .elementor-element.elementor-element-6a999a7 #rtsbSearchForm{
    max-width:560px !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-group{
    height:46px !important;
    min-height:46px !important;
    border-radius:23px !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-category-select-wrapper{
    flex:0 0 138px !important;
    width:138px !important;
    max-width:138px !important;
    height:40px !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-category-select-wrapper::after{height:20px !important;}
  html body .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-advanced-product-search .rtsb-category-select-wrapper select.rtsb-search-select{
    font-size:13px !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-wrapper::before{
    left:40px;
    font-size:14px;
    max-width:calc(100% - 52px);
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-select{
    height:40px !important;
    padding:0 22px 0 16px !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-wrapper{
    height:40px !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input{
    height:40px !important;
    min-height:40px !important;
    padding:0 12px 0 40px !important;
    background-position:left 15px center !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-button{
    flex:0 0 40px !important;
    width:40px !important;
    min-width:40px !important;
    max-width:40px !important;
    height:40px !important;
    min-height:40px !important;
  }
}

/* ==========================================================================
   MOBILE SEARCH (<=767px) - an icon in the bar, expanded on focus.

   The <input> IS the icon: 44x44, magnifier as its background-image, text and
   placeholder transparent. One tap focuses it and :focus-within expands the
   whole control across the bar.

   Using the input rather than a separate icon button is what makes this work
   with no JavaScript at all - a magnifier BUTTON inside this form would
   submit an empty search instead of opening the field, and there is nothing
   else here that can hold an open/closed state. The input keeps its
   aria-label ("Search products"), so the collapsed control still has an
   accessible name, and it is still reached by Tab - focus expands it.

   The category <select> is hidden on mobile from the header row's CSS; a
   mobile search here searches all products, and the category list now lives
   in the menu drawer.
   ========================================================================== */
@media(max-width:767px){

  /* --- Collapsed --------------------------------------------------------- */
  /* Undoes the desktop cap above - here the control owns its 44px slot. */
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-elementor-container,
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-row,
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-col-grid,
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-advanced-product-search,
  .elementor-356 .elementor-element.elementor-element-6a999a7 #rtsbSearchForm{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-group{
    height:44px !important;
    min-height:44px !important;
    padding:0 !important;
    background-color:transparent !important;
    box-shadow:none !important;
    border-radius:22px !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-wrapper{
    flex:1 1 auto !important;
    min-width:0 !important;
    height:44px !important;
    background-color:transparent !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input{
    width:100% !important;
    height:44px !important;
    min-height:44px !important;
    box-sizing:border-box !important;
    padding:0 !important;
    border:0 !important;
    border-radius:22px !important;
    background-color:transparent !important;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 512 512'%3E%3Cpath fill='%23FFFFFF' d='M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z'/%3E%3C/svg%3E") !important;
    background-repeat:no-repeat !important;
    background-position:center center !important;
    background-size:20px 20px !important;
    color:transparent !important;
    cursor:pointer !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input::placeholder{color:transparent !important;}
  /* Collapsed the field is a 44px magnifier, so the hint has nowhere to go. */
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input-wrapper::before{content:none;}
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input::-webkit-search-cancel-button{
    -webkit-appearance:none;appearance:none;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-button{display:none !important;}
  /* No outline on the field. Focusing it is what expands the control, so this
     rule can only ever paint in the expanded state, where it drew a hard
     rectangle straight across the pill's rounded ends. The expanded pill's
     own orange ring (box-shadow, below) is the focus affordance instead -
     the same one desktop uses. */
  .elementor-356 .elementor-element.elementor-element-6a999a7 .rtsb-search-input:focus-visible,
  .elementor-356 .elementor-element.elementor-element-6a999a7:focus-within .rtsb-search-input:focus-visible{
    outline:none !important;
  }

  /* --- Expanded ---------------------------------------------------------- */
  /* 5f882a5 is position:static on mobile, so this resolves against the whole
     header row. right:56px leaves the menu button clear, and the bar colour
     is repainted here so the cart underneath does not show through the
     pill's rounded corners. */
  .elementor-356 .elementor-element.elementor-element-6a999a7:focus-within{
    position:absolute !important;
    top:8px !important;
    left:8px !important;
    right:56px !important;
    bottom:8px !important;
    width:auto !important;
    max-width:none !important;
    background-color:#116530 !important;
    z-index:9 !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7:focus-within > .elementor-widget-container{
    height:100% !important;
    display:flex !important;
    align-items:center !important;
  }
  /* The same pill as desktop at mobile scale: white, fully rounded, with the
     orange circle sitting in a 3px gutter. */
  .elementor-356 .elementor-element.elementor-element-6a999a7:focus-within .rtsb-search-input-group{
    display:flex !important;
    align-items:center !important;
    width:100% !important;
    height:44px !important;
    padding:0 3px 0 0 !important;
    background-color:#FFFFFF !important;
    border-radius:22px !important;
    box-shadow:0 0 0 3px rgba(255,145,0,.45) !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7:focus-within .rtsb-search-input-wrapper{
    height:38px !important;
    background-color:#FFFFFF !important;
    border-radius:22px 0 0 22px !important;
    overflow:hidden !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7:focus-within .rtsb-search-input{
    height:38px !important;
    min-height:38px !important;
    border-radius:0 !important;
    background-color:#FFFFFF !important;
    color:#071D1F !important;
    font-size:15px !important;
    padding:0 8px 0 40px !important;
    cursor:text !important;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' width='16' height='16'%3E%3Cpath fill='%236B7F72' d='M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z'/%3E%3C/svg%3E") !important;
    background-repeat:no-repeat !important;
    background-position:left 14px center !important;
    background-size:16px 16px !important;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7:focus-within .rtsb-search-input::placeholder{color:transparent !important;}
  .elementor-356 .elementor-element.elementor-element-6a999a7:focus-within .rtsb-search-input-wrapper::before{
    content:"Search for organic products...";
    left:40px;
    font-size:15px;
    max-width:calc(100% - 48px);
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7:focus-within .rtsb-search-input-wrapper:has(.rtsb-search-input:not(:placeholder-shown))::before{
    content:none;
  }
  .elementor-356 .elementor-element.elementor-element-6a999a7:focus-within .rtsb-search-button{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 38px !important;
    width:38px !important;
    min-width:38px !important;
    max-width:38px !important;
    height:38px !important;
    min-height:38px !important;
    padding:0 !important;
    border-radius:50% !important;
  }
  /* The results panel is anchored to .rtsb-advanced-product-search, which now
     fills the expanded 44px control; nudge it clear of the bar's edge. */
  .elementor-356 .elementor-element.elementor-element-6a999a7:focus-within .rtsb-advanced-ajax-search-results{
    top:calc(100% + 8px) !important;
    left:0 !important;
    right:0 !important;
    width:auto !important;
    max-width:none !important;
    max-height:calc(100vh - 130px) !important;
    max-height:calc(100dvh - 130px) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9d0d99a *//* Main header row distribution (desktop / laptop).
   The logo and the utility cluster size to their own content; the search
   absorbs everything left over, so it stays the dominant element and the
   "Flat Rs.50 delivery" label stops wrapping when the row gets tighter. */
@media(min-width:1025px){
  .elementor-356 .elementor-element.elementor-element-9d0d99a > .e-con-inner > .elementor-element-dd31ba8{
    flex:0 0 auto !important;
  }
  .elementor-356 .elementor-element.elementor-element-9d0d99a .elementor-element-5f882a5{
    flex:1 1 auto !important;
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
  }
  .elementor-356 .elementor-element.elementor-element-9d0d99a .elementor-element-0baee0d{
    flex:0 0 auto !important;
    width:auto !important;
    max-width:none !important;
  }
}

/* ==========================================================================
   MOBILE BAR (<=767px)

   The same row, re-cut as a single 60px line:

       [ Naadu Nalam ]                     [search]  [cart]  |  [menu]

   It used to be a wrapped block 133px tall - logo + tagline + four utility
   icons on one line, then a full-width search row underneath - and it was
   only one of the four stacked rows that made the header 282px.

   Desktop and tablet are untouched: every rule below is inside the mobile
   query, and the 1025px block above is the only other layout rule here.
   ========================================================================== */
@media(max-width:767px){

  .elementor-356 .elementor-element.elementor-element-9d0d99a{
    min-height:60px !important;
    padding:0 !important;
  }
  .elementor-356 .elementor-element.elementor-element-9d0d99a > .e-con-inner{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:8px !important;
    min-height:60px !important;
    /* The 56px on the right is the slot the menu button is pinned into -
       it is positioned from the nav row's own CSS (element 0f0ecdf). */
    padding:0 56px 0 12px !important;
  }

  /* Logo: wordmark only, clipped rather than wrapped. The "fresh and
     organic" line is repeated in the hero copy immediately below. */
  .elementor-356 .elementor-element.elementor-element-9d0d99a .elementor-element-dd31ba8{
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    flex:0 1 auto !important;
  }
  .elementor-356 .elementor-element.elementor-element-9d0d99a .elementor-element-656664c{display:none !important;}
  .elementor-356 .elementor-element.elementor-element-9d0d99a .elementor-element-b8e7e9c .elementor-heading-title{
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  /* Search: a 44px target here; the expansion lives on the search widget
     itself (6a999a7) so it can outrank that widget's own !important colours.
     position:static is what lets the expanded panel escape this 44px box and
     use the whole row as its containing block. */
  .elementor-356 .elementor-element.elementor-element-9d0d99a .elementor-element-5f882a5{
    position:static !important;
    order:0 !important;
    flex:0 0 44px !important;
    width:44px !important;
    min-width:44px !important;
    max-width:44px !important;
    margin-left:auto !important;
    padding:0 !important;
    min-height:0 !important;
  }
  /* The category <select> is now "Shop by category" in the menu drawer. It
     was 150px of a 336px search row and it is the one control here that is
     a refinement rather than an action. */
  .elementor-356 .elementor-element.elementor-element-9d0d99a .elementor-element-5f882a5 .rtsb-category-select-wrapper{
    display:none !important;
  }

  /* Utilities: cart only. Wishlist is already a top-level menu item, the
     account link moved into the drawer, and the delivery label was already
     hidden below 768px. */
  .elementor-356 .elementor-element.elementor-element-9d0d99a .elementor-element-0baee0d{
    width:auto !important;
    max-width:none !important;
    min-height:0 !important;
    flex:0 0 auto !important;
    gap:0 !important;
    padding:0 !important;
  }
  .elementor-356 .elementor-element.elementor-element-9d0d99a .elementor-element-8e85db2,
  .elementor-356 .elementor-element.elementor-element-9d0d99a .elementor-element-ba520b8{display:none !important;}
  .elementor-356 .elementor-element.elementor-element-9d0d99a .elementor-element-53c69d8{
    width:44px !important;
    min-width:44px !important;
    min-height:44px !important;
  }
  /* 40px on desktop, 44px here - the WCAG 2.2 enhanced target size, and it
     matches the search and menu buttons either side of it.
     The background has to be forced transparent because the sitewide Code
     Snippets button rule paints every .elementor-button solid #176B3A, which
     drew a lighter-green pill around the bag on the #116530 bar while the
     search and menu buttons next to it have none. */
  .elementor-356 .elementor-element.elementor-element-9d0d99a .elementor-element-53c69d8 .elementor-menu-cart__toggle_button{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    min-height:44px !important;
    background-color:transparent !important;
  }

  /* While the search is expanded it covers the cart anyway, but the cart's
     item-count bubble is drawn outside the button's box and was the one
     thing showing past the panel's right edge. visibility keeps the 44px
     slot, so nothing reflows when the field opens and closes. */
  .elementor-356 .elementor-element.elementor-element-9d0d99a .elementor-element-5f882a5:focus-within ~ .elementor-element-0baee0d{
    visibility:hidden !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b33e1ea *//* ==========================================================================
   EMPTY RATING STATES (Dokan vendor surfaces)

   These rules are GLOBAL (no `.elementor-356 .elementor-element.elementor-element-b33e1ea` prefix) and nothing here styles the
   header. They live on this element only because post-356.css is the one
   stylesheet that loads on every front-end page, and the header root
   375c516 is already ~10KB of unrelated CSS -- this container had none.

   Dokan's Vendor::get_readable_rating() (includes/Vendor/Vendor.php) returns
   a BARE TEXT NODE reading "No ratings found yet!" when a vendor has no
   ratings, and
     <span class="text">..</span><span class="seller-rating">stars</span>
   when it has some. So "has no rating" is exactly "contains no
   .seller-rating" -- no text matching, and the block returns on its own the
   moment a real review lands.

   Deliberately NOT covered, because Dokan already guards it: the store-list
   cards -- templates/store-lists-loop.php only prints .dokan-seller-rating
   inside `if ( ! empty( $store_rating['count'] ) )`.
   ========================================================================== */

/* Vendor store page header (dokan-lite/templates/store-header.php). */
li.dokan-store-rating:not(:has(.seller-rating)){display:none !important;}

/* "Vendor Information" tab on a single product
   (dokan-lite/templates/global/product-tab.php). That template gives the
   rating row no class of its own beyond .clearfix, so the .elementor-356 .elementor-element.elementor-element-b33e1ea is scoped
   to the tab panel WooCommerce renders it into (tab key 'seller'). */
#tab-seller ul.list-unstyled > li.clearfix:not(:has(.seller-rating)){display:none !important;}/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-ec1ca57 *//* ==========================================================================
   MOBILE BURGER -> CLOSE (X)  (<=767px)

   Elementor ships two SVGs inside the toggle (__icon--open / __icon--close)
   and swaps them with its own widget-nav-menu stylesheet. On at least one
   real device that swap produced an EMPTY button - the burger hidden, the X
   never shown - so neither glyph was in the bar while the drawer was open.

   Rather than depend on that stylesheet surviving CSS optimisation, both
   SVGs are hidden in the open state and the X is drawn from the toggle's own
   pseudo-elements. The only hook is the .elementor-active class (with
   aria-expanded as a twin), which is the same hook that already drives the
   drawer and the category list - so if the menu can open at all, the X is
   guaranteed to be there.

   Mobile only: on tablet/desktop the toggle keeps Elementor's native icons.
   ========================================================================== */
@media(max-width:767px){

  .elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--open,
  .elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-menu-toggle.elementor-active .elementor-menu-toggle__icon--close,
  .elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-menu-toggle[aria-expanded="true"] .elementor-menu-toggle__icon--open,
  .elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-menu-toggle[aria-expanded="true"] .elementor-menu-toggle__icon--close{
    display:none !important;
  }

  /* The two strokes of the X, centred in the 44px tap target. */
  .elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-menu-toggle.elementor-active::before,
  .elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-menu-toggle.elementor-active::after,
  .elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-menu-toggle[aria-expanded="true"]::before,
  .elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-menu-toggle[aria-expanded="true"]::after{
    content:"" !important;
    position:absolute !important;
    top:50% !important;
    left:50% !important;
    width:24px !important;
    height:2px !important;
    margin:-1px 0 0 -12px !important;
    background-color:#FFFFFF !important;
    border-radius:2px !important;
    opacity:1 !important;
    visibility:visible !important;
  }
  .elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-menu-toggle.elementor-active::before,
  .elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-menu-toggle[aria-expanded="true"]::before{
    transform:rotate(45deg) !important;
  }
  .elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-menu-toggle.elementor-active::after,
  .elementor-356 .elementor-element.elementor-element-ec1ca57 .elementor-menu-toggle[aria-expanded="true"]::after{
    transform:rotate(-45deg) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0f0ecdf *//* ==========================================================================
   MOBILE MENU DRAWER (<=767px)

   Desktop and tablet keep the horizontal nav bar - every rule here is inside
   the mobile query.

   On a phone this row was a 49px strip holding nothing but a burger button:
   the last of the four stacked rows that made the header 282px tall. It now
   leaves the header box altogether - absolute, hanging off the bottom edge -
   so the header itself measures 60px.

   Closed, it is 0px tall, because Elementor collapses its own dropdown with
   max-height:0. That means no script and no extra open/closed state: the
   drawer is just Elementor's toggle, re-laid-out.

   The burger is pinned back up into the bar with position:absolute and
   bottom:calc(100% + 8px). That is measured from this row's TOP edge, which
   is the header's bottom edge whatever the drawer's height - so it stays
   centred in the 60px bar in every state and, unlike position:fixed, it is
   still correct when the WordPress admin bar is on screen. Its containing
   block is this row rather than the scrolling panel below, so it also
   escapes that panel's overflow clip instead of scrolling away with the
   links.
   ========================================================================== */
@media(max-width:767px){

  .elementor-356 .elementor-element.elementor-element-0f0ecdf{
    position:absolute !important;
    top:100% !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    border:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }

  /* The scrolling drawer. */
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-element-bf98b2b{
    position:static !important;
    display:block !important;
    width:100% !important;
    max-width:none !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    max-height:calc(100vh - 60px) !important;
    max-height:calc(100dvh - 60px) !important;
    overflow-x:hidden !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch;
  }
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-element-ec1ca57{
    position:static !important;
    width:100% !important;
    max-width:none !important;
  }

  /* Burger, back in the bar. */
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-menu-toggle{
    position:absolute !important;
    bottom:calc(100% + 8px) !important;
    right:6px !important;
    width:44px !important;
    height:44px !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:8px !important;
    background-color:transparent !important;
    z-index:5;
  }
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-menu-toggle svg{
    width:26px !important;
    height:26px !important;
  }

  /* Elementor stretches the dropdown with inline position / top / left /
     width and animates max-height. Dropping it back into the flow keeps that
     animation but lets the category list sit underneath it as one drawer.
     margin-top is Elementor's 10px gap below the burger - with the burger
     lifted out of this row it would render as a 10px strip of header colour
     sitting on top of the page content even when the menu is closed. */
  .elementor-356 .elementor-element.elementor-element-0f0ecdf nav.elementor-nav-menu--dropdown{
    position:static !important;
    width:100% !important;
    max-width:100% !important;
    margin-top:0 !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
  }
  .elementor-356 .elementor-element.elementor-element-0f0ecdf nav.elementor-nav-menu--dropdown .elementor-item{
    display:flex !important;
    align-items:center !important;
    min-height:48px !important;
    padding:12px 16px !important;
  }

  /* -- Category list ------------------------------------------------------
     This is where the header's category <select> went. It is a SIBLING of
     the nav widget, not part of the dropdown, so it has no max-height of its
     own to collapse - :has() on the burger's open state stands in for that.
     Where :has() is missing the list simply never appears and the menu is
     otherwise unaffected.

     It is deliberately styled to Elementor's existing dropdown - white panel,
     dark text - rather than to the green header, so the menu above it is left
     exactly as it was. */
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-element-nn-mcat{display:none !important;}
  .elementor-356 .elementor-element.elementor-element-0f0ecdf:has(.elementor-menu-toggle.elementor-active) .elementor-element-nn-mcat,
  .elementor-356 .elementor-element.elementor-element-0f0ecdf:has(.elementor-menu-toggle[aria-expanded="true"]) .elementor-element-nn-mcat{
    display:flex !important;
  }
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-element-nn-mcat{
    border-top:1px solid #E6EDE8 !important;
  }
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-element-nn-mcat .elementor-icon-list-items{
    display:block !important;
  }
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-element-nn-mcat .elementor-icon-list-item{
    margin:0 !important;
  }
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-element-nn-mcat .elementor-icon-list-item > a{
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
    min-height:48px !important;
    padding:11px 16px !important;
    color:#071D1F !important;
    font-size:15px !important;
    line-height:1.3 !important;
    text-decoration:none !important;
  }
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-element-nn-mcat .elementor-icon-list-item > a:hover{
    background-color:#F4F8F5 !important;
  }
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-element-nn-mcat .elementor-icon-list-icon{
    width:18px !important;
    display:inline-flex !important;
    justify-content:center !important;
  }
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-element-nn-mcat .elementor-icon-list-icon svg,
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-element-nn-mcat .elementor-icon-list-icon i{
    width:15px !important;
    height:15px !important;
    font-size:15px !important;
    fill:#116530 !important;
    color:#116530 !important;
  }
  /* Account + phone read as a separate group from the 14 category links. */
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-element-nnmcatm{
    border-top:1px solid #E6EDE8 !important;
    margin-top:10px !important;
    padding-top:6px !important;
  }
  .elementor-356 .elementor-element.elementor-element-0f0ecdf .elementor-element-nn-mcat a:focus-visible{
    outline:2px solid #FF9100 !important;
    outline-offset:-3px !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-375c516 *//* ==========================================================================
   SITE-WIDE TOKEN - ShopBuilder primary colour

   ShopBuilder's bundled CSS ships :root{--rtsb-color-primary:#06f} and the
   plugin's primary-colour setting was never changed off that default, so a
   ShopBuilder blue leaked into the ajax-search spinner, the .cart-count
   bubble and .rbsb-button. nn-no-blue.css used to correct this, but that file
   lives in wp-content/novamira-sandbox/, which denies all HTTP access, so it
   had stopped loading. Retiring that stylesheet without carrying this forward
   would have made the blue permanent.

   This one declaration replaces the whole of that colour pass: all three
   elements read the variable, so overriding it turns them brand green.

   It lives on the header rather than in Site Settings > Custom CSS only
   because that kit field already holds ~42KB of CSS and the available API
   can only replace it wholesale, which is not worth the risk for one line.
   The header renders on every front-end page, so post-356.css is loaded
   everywhere. Better still: set ShopBuilder's primary colour to #176B3A in
   its settings, then delete this block.
   ========================================================================== */
:root{
  --rtsb-color-primary:#176B3A;
}

/* ==========================================================================
   SITE-WIDE - ShopBuilder "Flying Cart" removed

   ShopBuilder ships a floating cart tab, #rtsb-cart-float-menu (classes
   .rtsb-cart-float-menu.left_center.style1.rtsb-flying-cart), pinned to the
   left edge at z-index 9999. It only renders once the cart is non-empty,
   which is why it is easy to miss while testing. Removed by request: the
   header already carries a cart control with a live count on every
   breakpoint, so this was a second, redundant entry point sitting on top of
   page content.

   display:none takes it out of the accessibility tree and the tab order too,
   so nothing is left behind for keyboard or screen-reader users to land on.

   THIS IS A COVER, NOT A CURE. The proper fix is to switch the Flying Cart
   module OFF in ShopBuilder's own settings, which no available ability can
   reach (there is no option-writing ability, execute-php is blocked and
   wp-cli errors). Until that is done the plugin still prints the markup and
   loads its JS on every page - hidden, but present. When the module is
   turned off, delete this block.

   Scope note: this is a bare .elementor-356 .elementor-element.elementor-element-375c516, not a `.elementor-356 .elementor-element.elementor-element-375c516 `-prefixed one, so it
   applies site-wide - post-356.css loads on every front-end page. Do NOT
   widen it to .rtsb-drawer-container / .rtsb-minicart-drawer: that is the
   slide-in cart panel the HEADER cart icon opens, and it must keep working.
   ========================================================================== */
#rtsb-cart-float-menu{
  display:none !important;
}

/* ==========================================================================
   Header UI/UX refinement.
   Lives here (Elementor per-element CSS -> post-356.css) rather than in
   wp-content/novamira-sandbox/*.css, because that whole directory returns 403
   by design and none of those stylesheets reach the browser.
   ========================================================================== */

/* --- Announcement bar --------------------------------------------------- */

.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-dd13bf8 a{
  color:#116530 !important;
  font-weight:600 !important;
  text-decoration:none !important;
  white-space:nowrap;
}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-dd13bf8 a:hover,
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-dd13bf8 a:focus-visible{
  color:#0D5226 !important;
  text-decoration:underline !important;
}

/* The phone number was still underlined at rest despite the !important above.
   A Code Snippets block ships it as <style id="nn-topbar-tel"> using
     html body .elementor-element-dd13bf8 (x4) a[href^="tel:"]
   - a deliberately inflated .elementor-356 .elementor-element.elementor-element-375c516, (0,5,3), with !important. The rule
   above is only (0,4,1), so it loses the cascade and the underline survives.

   Fixing it at source is not possible right now: every code-snippets ability
   throws or 404s (Code Snippets moved to Code_Snippets\Model\Snippet and the
   novamira adapter still type-hints the old Code_Snippets\Snippet), so the
   snippet cannot be listed, read or edited. Repeating the widget class once
   takes this to (0,6,3), which beats it outright and does not depend on which
   stylesheet loads last. When snippets are reachable again, delete
   nn-topbar-tel's text-decoration lines and delete this block with them.

   Underline is kept on hover / focus: with it gone at rest the link is set
   apart from the surrounding sentence by weight (600 vs 400) and colour, and
   that colour is only 2.43:1 against the body text - short of the 3:1 that
   WCAG technique G183 wants - so the weight and the hover underline are what
   carry "this is a link". Do not also remove those. */
html body .elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-dd13bf8.elementor-element-dd13bf8 a[href^="tel:"]{
  text-decoration:none !important;
  text-decoration-line:none !important;
}
html body .elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-dd13bf8.elementor-element-dd13bf8 a[href^="tel:"]:hover,
html body .elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-dd13bf8.elementor-element-dd13bf8 a[href^="tel:"]:focus-visible{
  text-decoration:underline !important;
  text-decoration-line:underline !important;
  text-decoration-thickness:1px !important;
  text-underline-offset:2px !important;
}

/* Compact utility strip.

   Three things decide this bar's height, and all three have to be held down
   together or the strip springs back:
     1. the text-editor's <p> bottom margin (the theme gives it 1em) - zeroed
        below, otherwise a single line of type occupies ~42px on its own;
     2. the text's LINE-HEIGHT, which is a widget typography setting on
        dd13bf8, currently 20px. Raise it and the bar grows with it;
     3. the 24px social discs, which are now the tallest real child.
   With those at 20px and 24px the min-height below is what actually governs,
   which is what makes the strip predictable to size. 28px leaves 2px of
   clearance around the discs - that is the practical floor, because the discs
   cannot go below 24px without breaking the WCAG 2.2 target-size minimum. */
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-dd13bf8 p{
  margin:0 !important;
}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-dd13bf8 p:last-child{
  margin-bottom:0 !important;
}

/* Boxed containers put the flex context on > .e-con-inner, so the height and
   the centring have to land there as well as on the outer element.
   One value for every breakpoint: the old tablet override (32px) existed only
   to shave the taller 34px desktop bar, and at 28px there is nothing left to
   shave. */
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-ccd8f12,
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-ccd8f12 > .e-con-inner{
  min-height:28px !important;
}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-ccd8f12 > .e-con-inner{
  align-items:center !important;
}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-dd13bf8{
  align-self:center !important;
}

@media(min-width:768px){
  /* The social cluster was flex-growing to ~1008px, which squeezed the welcome
     line + phone number onto a second row and doubled the bar height. Size it
     to its own content and give the remaining width to the text. */
  .elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-690b140{
    flex:0 0 auto !important;
    width:auto !important;
    max-width:none !important;
  }
  .elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-dd13bf8{
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    flex:1 1 auto !important;
  }
}

/* The anchor is the visible green disc. It sits at 24px - deliberately the
   floor, not below it: 24px is exactly the WCAG 2.2 "Target Size (Minimum)"
   threshold, and these icons have no inline-spacing exception to fall back on
   because the cluster's own 6px gap is what separates them. Do not shrink
   these further; shrink the glyph inside instead. */
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-2bfb9c7 .elementor-social-icons-wrapper{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-2bfb9c7 a.elementor-social-icon{
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  min-height:24px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:50% !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background-color:#116530 !important;
  transition:background-color .2s ease;
}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-2bfb9c7 a.elementor-social-icon:hover,
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-2bfb9c7 a.elementor-social-icon:focus-visible{
  background-color:#0D5226 !important;
}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-2bfb9c7 a.elementor-social-icon i,
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-2bfb9c7 a.elementor-social-icon svg{
  width:12px !important;
  height:12px !important;
  font-size:12px !important;
  line-height:1 !important;
  color:#FFFFFF !important;
  fill:#FFFFFF !important;
}

/* --- Utility icons: delivery / wishlist / cart / account ------------------ */

/* "Flat Rs.50 delivery" - truck sitting ~4px high against its label.

   Both widgets in bc895f9 are centred correctly as boxes: each is 26.4px
   tall and both share the container's centre line. The offset is INSIDE the
   icon widget. .elementor-icon is an inline-block sitting on the BASELINE of
   a 26.4px line box (16px inherited font x the sitewide 1.65 ratio), and a
   baseline is not a centre line - so the 18px glyph rendered with its centre
   at 57.8 while the label's centre sat at 61.8.

   Fixed by removing the line box rather than nudging with a margin: making
   the wrapper a flex container drops the inline formatting context, so the
   glyph's own box IS the wrapper's box and the container's align-items:center
   can finally act on the glyph itself. A negative margin would have produced
   the same picture at this one font size and drifted the moment the strip's
   type or height changed.

   line-height:1 matters: without it the flex container keeps a 26.4px strut
   and the wrapper stays taller than its content. */
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-3669474 .elementor-icon-wrapper{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-3669474 .elementor-icon{
  display:flex !important;
  align-items:center !important;
  line-height:1 !important;
}

/* The wishlist and account anchors wrapped an 18px box - unusable as a
   pointer or touch target. The glyph keeps its 18px weight; the hit area
   becomes 40px, matching the cart toggle so all utilities share a baseline. */
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-0257cae .elementor-icon-wrapper,
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-c4cd746 .elementor-icon-wrapper{
  width:40px !important;
  height:40px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-0257cae a.elementor-icon,
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-c4cd746 a.elementor-icon,
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-menu-cart__toggle_button{
  width:40px !important;
  height:40px !important;
  min-width:40px !important;
  min-height:40px !important;
  padding:0 !important;
  border-radius:8px !important;
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background-color:transparent !important;
  transition:background-color .2s ease;
}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-0257cae a.elementor-icon svg,
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-c4cd746 a.elementor-icon svg{
  width:18px !important;
  height:18px !important;
}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-0257cae a.elementor-icon:hover,
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-c4cd746 a.elementor-icon:hover,
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-menu-cart__toggle_button:hover{
  background-color:rgba(255,255,255,.14) !important;
}

/* The cart glyph was rendering at 0px wide: its <span> wrapper collapsed, and
   the theme reset's img,svg{max-width:100%} then clamped the 1em icon to 100%
   of a zero-width parent. Pinning both restores the bag. */
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-menu-cart__toggle_button .elementor-button-icon{
  width:18px !important;
  height:18px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  position:relative !important;
}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-menu-cart__toggle_button .elementor-button-icon > svg{
  width:18px !important;
  height:18px !important;
  max-width:none !important;
  fill:#FFFFFF !important;
}

/* Both icon links are icon-only and their SVG is aria-hidden, so neither had
   an accessible name. Generated content participates in the accessible name
   calculation, so this names them without touching the template. */
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-0257cae a.elementor-icon::after{content:"Wishlist";}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-c4cd746 a.elementor-icon::after{content:"My account";}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-0257cae a.elementor-icon::after,
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-c4cd746 a.elementor-icon::after{
  position:absolute;width:1px;height:1px;margin:-1px;padding:0;
  overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);
  white-space:nowrap;border:0;
}

/* --- Search ------------------------------------------------------------- */

/* Intentionally empty. Every rule for the search pill - the category zone,
   the divider, the query field, the submit and all of its responsive
   behaviour - lives on the widget itself (6a999a7). It used to be split
   across both elements, which meant two blocks in the same stylesheet set
   the same properties and load order decided the winner. Keep it in one
   place. */

/* --- Navigation --------------------------------------------------------- */

/* Same 1320px container as the announcement and main rows, so every header
   element shares one grid edge. */
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-bf98b2b{
  width:100% !important;
  max-width:1320px !important;
  margin-inline:auto !important;
}
/* The current page is marked by Elementor's underline pointer (orange).
   These are the hover / focus affordances around it. */
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-ec1ca57 .elementor-nav-menu--main .elementor-item{
  border-radius:4px 4px 0 0;
  transition:background-color .2s ease,color .2s ease;
}
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-ec1ca57 .elementor-nav-menu--main .elementor-item:hover{
  background-color:rgba(255,255,255,.08);
}

/* --- Focus visibility ---------------------------------------------------- */

.elementor-356 .elementor-element.elementor-element-375c516 a:focus-visible,
.elementor-356 .elementor-element.elementor-element-375c516 button:focus-visible,
.elementor-356 .elementor-element.elementor-element-375c516 select:focus-visible,
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-menu-cart__toggle_button:focus-visible,
.elementor-356 .elementor-element.elementor-element-375c516 .elementor-menu-toggle:focus-visible{
  outline:2px solid #FF9100 !important;
  outline-offset:2px !important;
}

/* --- Responsive ---------------------------------------------------------- */

@media(max-width:767px){
  /* The "Flat Rs.50 delivery" label is hidden below 768px, which left a truck
     glyph with nothing to label it. The same claim is carried by the trust
     row under the hero on mobile. */
  .elementor-356 .elementor-element.elementor-element-375c516 .elementor-element-bc895f9{display:none !important;}
}/* End custom CSS */