/*
Theme Name: True North Protein
Theme URI: https://proximatesolutions.com/professional-web-design-portfolio/
Author: Proximate Solutions
Author URI: https://proximatesolutions.com/
Description: Wordpress theme designed for True North Protein with WooCommerce Integration.
Version: 1.0.10
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: truenorthprotein
Tags: one-column, two-columns, custom-menu, featured-images, left-sidebar, right-sidebar
*/

html, body {
  overflow-x: hidden;
}

:root {
  --theme_color:#C62336;
  --theme_hover: #AB2432;
  --secondary:#ffd2cc;
  --secondary-hover: #f1c1ba;
  --grey:#f2f2f2;
  --grey2:#f5f5f5;
  --light:#f9fefe;
}
html, body {overflow-x:hidden}
body{ font-family: "Barlow", serif; color: black; line-height: 1.6; font-size: 15px;  }
section{padding: 70px 0;}
.btn, button, .form-control { -webkit-border-radius:3px; border-radius:3px;}
a{color:var(--theme_color);-webkit-transition:all linear .3s 0; transition:all linear .3s 0;}
a:hover{color:var(--theme_hover); text-decoration:none}
a:focus, button:focus{text-decoration:none;outline:0}
img{max-width: 100%; height: auto; }
@media (min-width:1800px){
.container-fluid {max-width: 1800px;}
header .container-fluid {padding: 0 50px;}
}
.clear{clear: both; overflow: hidden;}
.grey_bg{background: var(--grey);}
.grey_bg2{background: var(--grey2);}
.light_bg{background-color:var(--light);}
.bg_light_pink {background: linear-gradient(180deg, #F3E6D6 19.67%, rgba(255, 255, 255, 0) 100%);}
.text-info {color: #000 !important;}
.bg-info{background-color: #000 !important; }
.btn-theme{background: #000; color: white;}
.btn-theme:hover, .btn-theme:focus{background:#000; color: white;}
h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,h6{font-weight: 500; line-height: 1.2;}
h1,.h1 {font-size:2.5rem;}

.pull-left { float:left;}
.pull-right { float:right;}
.alignleft { float:left; margin:0 15px 10px 0;}
.alignright { float:right; margin:0 0 10px 15px;}
.aligncenter { text-align:center; margin:0 auto 10px; display:block;}
.alignnone { float:none;}
.wp-caption { border:1px solid #ddd; text-align:center; background-color:#f3f3f3; margin-bottom:1rem; padding:4px; max-width:100%; border-radius:4px; -webkit-border-radius:4px;}
.wp-caption img { margin:0; padding:0; border:0;}
.wp-caption p.wp-caption-text { font-size:12px; padding:0 5px; margin:0;}
.sticky {}
.gallery-caption {}
.bypostauthor {}
.br-0 { border-radius:0; -webkit-border-radius:0;}
.clear { clear:both;}
.mrb-10 { margin:0 10px 10px 0;}
.form-group { margin-bottom:1rem;}

/* h3,.h3 {font-size:24px;}
h4,.h4 {font-size:20px;}
h5,.h5 {font-size:18px;}
h6,.h6 {font-size:16px;} */
.heading {margin-bottom: 40px; position: relative; padding-bottom: 15px; text-transform: uppercase; font-weight: 600;}
.heading:after {background: var(--theme_color); position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); height: 2.6px; width: 47px; content: "";}
.heading a{color: black;  }
.heading a:hover{text-decoration: underline;}


.heading_left {margin-bottom: 40px; position: relative; padding-bottom: 15px; text-transform: uppercase; font-weight: 600; text-align: left;}
.heading_left:after {background: var(--theme_color); position: absolute; left: 0; bottom: 0; height: 2.6px; width: 47px; content: "";}

.more_link { font-weight: 500;}
.more_link i {font-size: 13px; margin-left: 7px;}
.bg-dark{background-color: #000 !important; }
.bg-dark{background-color: #000; border-color: #000; }
.bg-dark:hover, .bg-dark:focus {color: #fff; background-color: #212529; border-color: #212529;}
.font-bold {font-weight: 900;}
.font-med{font-weight: 500;}
.btn_styled { padding: 7px 25px 10px; font-weight: 400; text-transform: uppercase; -webkit-border-radius: 3px; border-radius: 3px; }
.btn_styled2 {  padding: 7px 25px; text-transform: uppercase; font-weight:500; border-radius: 4px;}
.btn-light{color: var(--theme_color);background: white; border-color: white; }
.btn-light:hover, .btn-light:focus {background: #f8f9fa; border-color: #f8f9fa;color: var(--theme_hover);}

.btn-danger {background:  var(--theme_color);border-color:  var(--theme_color);}

header {position: relative; left: 0; top: 0; right: 0; border-bottom: #F5F5F2 1px solid; z-index:9999; }
.header_bar {background:white; padding:0;}
.top_header_bar {background:black; padding: 12px 0; color: white; font-size: 15px; text-transform: uppercase; text-align: center;  }
.top_header_bar a{color: white;}
.top_header_bar a:hover{color: white; text-decoration: underline;}
.top_header_bar img{width: 34px; margin-right: 10px;}

.logo img {max-width: 109px;}
.header_bar .btn_styled { padding: 9px 25px; }
#menu {text-align: center;}
#menu ul{list-style:none;margin:0;padding:0;display:inline-block}
#menu ul li{display:inline-block;position:relative}
#menu ul li a{color:#333;padding:34px 15px;display:block;text-decoration:none;position:relative; text-transform: uppercase; }
.inner_header #menu ul li a{color:black;}
#menu li > a:after{content:"\f282";font-family:bootstrap-icons;margin-left:5px;position:relative;top:3px;font-size:14px}
#menu li > a:only-child:after{margin-left:0;content:""}
#menu ul li a:hover,#menu ul li.active a,#menu ul li.current_page_item > a,#menu ul li.current-menu-ancestor > a,#menu ul li.current-menu-item > a,#menu ul li.current-menu-parent > a{color:var(--theme_color);}
.inner_header #menu ul li a:hover,.inner_header #menu ul li.active a,.inner_header #menu ul li.current_page_item > a,.inner_header #menu ul li.current-menu-ancestor > a,.inner_header #menu ul li.current-menu-item > a,.inner_header #menu ul li.current-menu-parent > a{color:var(--secondary)}
#menu ul li a:hover:before,#menu ul li.active a:before,#menu ul li.current_page_item > a:before,#menu ul li.current-menu-ancestor > a:before,#menu ul li.current-menu-item > a:before,#menu ul li.current-menu-parent > a:before{opacity:1}
#menu li.active ul li a{color:#fff;background:#000}
#menu li.active ul li a:hover{color:#fff !important;background:var(--theme_color)}
#menu li > ul{position:absolute;left:0;top:100%;z-index:999;min-width:192px;white-space:nowrap}
#menu ul li.active ul li a{background:#fff;color:#000 !important;border-bottom:1px solid rgba(0,0,0,0.09)!important}
#menu li > ul li{display:block;position:relative;margin:0;text-align:left}
#menu li > ul li a:after{content:"\F285";font-family:bootstrap-icons;position:absolute;right:15px;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);font-size:14px}
#menu li ul li.current_page_item > a,#menu li ul li.current-menu-ancestor > a,#menu li ul li.current-menu-item > a,#menu li ul li.current-menu-parent > a{background:var(--theme_color);color:#fff}
#menu > li{border-left:1px solid #999}
#menu > li:first-child,#menu > li.has-submenu + li{border-left:0}
#menu li > ul > li > ul{position:absolute;left:100%;top:0;transition:all linear .2s 0;-webkit-transition:all linear .2s 0;visibility:hidden;opacity:0}
#menu li > ul > li:hover > ul{visibility:visible;opacity:1;display:block}
#menu li > ul{transition:all linear .2s 0;-webkit-transition:all linear .2s 0;visibility:hidden;opacity:0;background-color:#fff;padding:0;border-top:#000 solid 2px}
#menu li:hover > ul{visibility:visible;opacity:1}
#menu li > ul li a{padding:12px 23px;transition:all linear .2s 0;-webkit-transition:all linear .2s 0;font-size:14px;background-color:transparent;color:#000;font-weight:500;border-bottom:#ddd 1px solid}
#menu li > ul li:last-child a{border-bottom:0}
#menu li > ul li a:before{content:"";position:absolute;top:0;left:0;bottom:0;right:0;background-color:var(--theme_color);transition:-webkit-transform .4s ease;transition:transform .4s ease;transition:transform .4s ease,-webkit-transform .4s ease;-webkit-transform:scale(0,1);transform:scale(0,1);-webkit-transform-origin:right center;transform-origin:right center;z-index:-1}
#menu li > ul li a:hover:before{-webkit-transform:scale(1,1);transform:scale(1,1);-webkit-transform-origin:left center;transform-origin:left center}
#menu li:hover > ul li a{padding:10px 15px}
#menu li > ul li a:hover{background-color:var(--theme_color);color:#fff!important;padding-left:15px}
ul.top_header_right {list-style: none; margin: 0; padding: 0;}
ul.top_header_right li {display: inline-block;}
ul.top_header_right li a {color: #000;}
ul.top_header_right li a i { font-size:18px;}
ul.top_header_right li:last-child i { font-size:16px;}
ul.top_header_right li+ li {margin-left: 12px;}
@keyframes menu_sticky {
  0%{margin-top:-240px}
  50%{margin-top:-90px}
  100%{margin-top:0}
}
header.sticky {position:fixed; top:0; left:0; width:100%; animation-name:menu_sticky; animation-duration:.6s; animation-timing-function:ease-out;
  -webkit-box-shadow:rgba(0,0,0,0.3) 0 0 10px; box-shadow:rgba(0,0,0,0.3) 0 0 10px; z-index:9; background-color: white; border-bottom: 0; }
header.sticky .top_header_bar{display: none;}
header.sticky .logo img{max-width: 66px;}
header.sticky #menu ul li a {padding: 30px 15px;}
header.sticky #menu ul li li a {padding:10px 15px;}

.full_screen_wrapper {z-index: 9999 !important; background-color:rgba(255,255,255,0.95); position:fixed; left:0; top:0; right:0; bottom:0; text-align: center; z-index: 9; display:none;}
.full_screen_search {text-align: center; position:absolute; left:50%; top:50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}
.full_screen_search input.form-control {background-color:transparent; padding:20px 10px 20px 0; color: #000; text-decoration: none; font-size:30px; border:0; border-bottom:#000 solid 2px; width:100%; -webkit-border-radius:0; border-radius:0;}
.full_screen_search input.form-control:focus {box-shadow: none!important; outline: 0!important;}
.full_screen_search .search_button {position:absolute; height: 3.5em; width: 3.5em; right:0; top:15px; background-color:#000; -webkit-border-radius:50%; border-radius:50%; display:inline-block; border:0; color: white; font-size:15px; }
.cross_button {position:absolute; right:3%; top:3%; font-size:30px; display:inline-block; text-decoration: none; color: #000;}
.cross_button:hover {color:#333;}
.full_screen_search {width: 92%; max-width: 500px;}
@media (min-width: 992px) {
.hero_wrapper, .inner_wrapper { margin-top: 141px;}
}

.home_slider .owl-nav button.owl-prev,
.home_slider .owl-nav button.owl-next {position: absolute; top:50%;transform: translateY(-50%); background-color: black;color: white; margin: 0; width: 40px; height: 40px; line-height: 40px; border-radius: 0;}
.home_slider.owl-theme .owl-nav [class*="owl-"]:hover {background: var(--theme_color); color: white;}
.home_slider .owl-nav button.owl-prev  {left:0; border-top-right-radius: 7px;border-bottom-right-radius: 7px;}
.home_slider .owl-nav button.owl-next  {right:0;border-top-left-radius: 7px;border-bottom-left-radius: 7px;}
.home_slider .item{position: relative;}
.banner_caption{position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);width: 100%; max-width: 1300px;}
.banner_caption .capi{position: relative;  }
.capi .btn{margin-top: 10px;}

.banner_title {font-size: 59px; font-weight: 800; text-transform: uppercase; line-height: 1.2; margin-bottom: 20px;}
.info_block {margin-top: 40px;}
.info_block img{margin-bottom: 12px; max-width: 43px; display: inline-block;}
.info_block p {line-height: 1.3;}
.cat_item{margin-bottom: 40px;}

.cat_thumb {background-position: center; background-size: cover; display: block; border-radius: 5px; margin-bottom: 20px; text-align: center;}
.cat_thumb img {width: 100%; max-width: 416px;}
.cat_item h4{margin-bottom: 10px;text-transform: uppercase;}
.cat_item h4 a{color: black; text-decoration: none;}
.feature_item {text-align: center;}
.feature_thumb {display: block;}
.feature_thumb img {width: 100%; max-width: 309px; margin: 0 auto; }
.feature_item h5{margin-bottom: 10px; font-size:16px; font-weight: 500; text-transform: uppercase;}
.feature_item h5 a{color: black; text-decoration: none;}
.feature_price {font-size: 30px; font-weight: 500; color: #333;}
.rating_star {font-size: 12px; color: #F2BB05;}

.feature_slider .item {text-align: center;}
.feature_slider .owl-nav button.owl-prev,
.feature_slider .owl-nav button.owl-next {position: absolute; top:50%;transform: translateY(-50%); background-color: #333;color: white; margin: 0; width: 40px; height: 40px; line-height: 40px; border-radius: 100%;}
.feature_slider.owl-theme .owl-nav [class*="owl-"]:hover {background:black; color: white;}
.feature_slider .owl-nav button.owl-prev  {left:-40px; }
.feature_slider .owl-nav button.owl-next  {right:-40px;}

.review_section{position: relative;}
.review_text_section {background-position: center; background-repeat: no-repeat; background-size: cover; color: white; padding: 100px 0 90px;}
.review_text_section h3 {margin-bottom:15px;}
.reveiew_slider {text-align: center;}
.testimonial_star{font-size: 25px; color: var(--theme_color); margin-bottom: 30px;}
.testimonial_text{font-size: 21px; margin-bottom: 25px;}
.testiname{font-size: 12.5px;}
.testi-des{color: rgba(0,0,0,0.6); font-size: 10.5px;}
.review_section .owl-nav button.owl-prev,
.review_section .owl-nav button.owl-next {position: absolute; top:50%;transform: translateY(-50%);  font-size: 24px ;}
.review_section .owl-nav button.owl-prev, .owl-nav button.owl-prev  {left:-100px; }
.review_section .owl-nav button.owl-next  {right:-100px;}
.review_section .owl-theme .owl-nav [class*='owl-']:hover {background-color: transparent; color: black;}
.review_section .owl-theme .owl-dots {margin-top: 25px;}
.review_section .owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {background-color: black;}

.newsletter {margin-top: 30px;}
.newsletter .form-control, .newsletter .form-btn{box-shadow: none;}
.newsletter .form-control:focus{border-color: rgb(207, 207, 207);}
.newsletter .form-control{padding: 8px 20px 11px; border-top-right-radius: 0; border-bottom-right-radius: 0;}
.newsletter .form_btn {text-transform: uppercase; padding: 8px 25px 11px; border-top-left-radius: 0; border-bottom-left-radius: 0; letter-spacing: 1px; font-weight: 500;}

footer{padding-top: 60px;font-size: 14px;}
.footer_title{font-size: 18px; font-weight: 600; text-transform: uppercase;}
.footer_list{list-style: none; padding: 0; margin: 0; margin-top: 10px;}
.footer_list li+li{margin-top: 10px;}
.footer_list li a{text-decoration: none; color: rgba(0, 0, 0, 0.800); font-weight: 500; transition: all .2s linear;}
.footer_list li a:hover{color: var(--theme_color); transition: all .2s linear;}
.footer_list li.current_page_item > a,.footer_list li.current-menu-ancestor > a,.footer_list li.current-menu-item > a,.footer_list li.current-menu-parent > a{color: var(--theme_color); transition: all .2s linear;}
.social_list{list-style: none; padding:0; margin: 0; margin-top: 8px;}
.social_list li{display: inline-block; margin-right: 10px;}
.social_list li a i{font-size: 18px; color: rgba(0, 0, 0, 0.800); transition: all .2s linear;}
.social_list li a i:hover{color: var(--theme_color); transition: all .2s linear;}

.currency_type, .language_type{display: inline-block;}

.footer_bar {padding: 30px 0 25px;font-size: 14px; margin-top: 60px; border-top: 1px solid rgba(0, 0, 0, 0.200);}
.card_list{list-style: none; padding: 0; margin: 0; display: inline-block;}
.card_list li{display: inline-block; margin-right: 10px;}
.dropdown-toggle{border: transparent;}

.innercontent .feature_item{margin-bottom: 50px;}
.innercontent .review_item{margin-bottom: 28px; text-align: center; padding: 25px; border-radius: 8px;box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 5px 0px, rgba(0, 0, 0, 0.1) 0px 0px 1px 0px; min-height:263px;}
.innercontent .testimonial_star {margin-bottom: 11px; font-size: 18px;}
.innercontent .testimonial_text {margin-bottom: 11px; font-size:16px; line-height: 20px;;}
.innercontent .feature_item h5{margin-bottom: 10px; font-weight: 500; text-transform: uppercase; position: relative; width: 100%; white-space: nowrap; text-overflow: ellipsis; overflow: hidden;}
.innercontent .feature_price{font-size: 24px; color: #333;}

.contact_icon{width: 35px;height: 35px;border-radius: 5px;background-color: var(--theme_color);position: relative;}
.contact_icon i{color: white; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%);}
ul.contact_info{list-style: none; padding: 0; margin: 0; margin-top: 20px;}
ul.contact_info li{padding: 20px 0;}
ul.contact_info li:first-child{padding-top: 0;}
ul.contact_info li h5{color: var(--primary); font-weight: 600; font-size: 15px;}
ul.contact_info li a{color: #555C63; font-weight: 600; text-decoration: none;}
ul.contact_info li p{margin-bottom: 0; font-weight: 600; color: #555C63}
.contact_info{position: relative; padding-left: 45px;}
.contact_icon{position: absolute; left: 0; top: 3px;}
.small_title{ color: #555C63; font-weight: 600; margin-bottom: 20px;font-size: 18px;}
.contact_fields .form-control{background-color: #EFF2F6; border: none; padding: 15px; border-radius: 0px;}
.contact_fields .form-control:focus{box-shadow: none; }

.left_tab{margin-top: 21px;}
ul.catgory_tab{list-style: none; padding: 0; margin: 0; margin-top: 15px; margin-bottom: 25px;}
ul.catgory_tab li a{position: relative;;color: black; text-decoration: none; padding: 10px; display: block; font-weight: 500; border-left: 1px solid rgba(0, 0, 0, 0.144);}
ul.catgory_tab li a.active::before,
ul.catgory_tab li a:hover::before{position: absolute; content: "";  width: 3px; background-color: var(--theme_color); left: -2px; top: 0; bottom: 0;}

.product_accordion .accordion{--bs-accordion-btn-focus-box-shadow: none; --bs-accordion-border-color: transparent;}
.product_accordion .accordion-button{background-color: transparent; color: black; position: relative;}
.product_accordion .accordion-button::before{position: absolute; content: ""; width: 3px; background-color: rgb(218, 218, 218); top: 0; left: 0; bottom: 0;}
.accordion-button:not(.collapsed)::before{position: absolute; content: ""; width: 3px; background-color: var(--theme_color); top: 0; left: 0; bottom: 0;}
.mobile_filter {display: block; color: black; text-decoration: none; margin-bottom: 10px;}
.mobile_filter:visited{color: black;}
.mobile_filter img{width: 20px; margin-right: 5px;}

div.tnp-subscription, div.tnp-profile, form.tnp-subscription, form.tnp-profile { max-width:400px !important; margin:0 !important;}
.tnp-subscription label, .tnp-profile label { font-weight:normal; padding:0 0 5px 0;}
.tnp-subscription input[type=text], .tnp-subscription input[type=email], .tnp-subscription select, .tnp-profile input[type=text], .tnp-profile input[type=email], .tnp-profile select { background:none !important; border:#ced4da 1px solid !important; width:100%; height:auto; padding:6px 12px;}
.tnp-subscription input[type=text]:focus, .tnp-subscription input[type=email]:focus, .tnp-subscription select:focus, .tnp-profile input[type=text]:focus, .tnp-profile input[type=email]:focus, .tnp-profile select:focus { outline:none !important; border-color:#999 !important;}
.tnp-subscription input.tnp-submit, .tnp-profile input.tnp-submit { background:var(--theme_color) !important; cursor:pointer; padding:6px 12px; font-size:16px; line-height:1.5;}
.tnp-subscription input.tnp-submit:hover, .tnp-subscription input.tnp-submit:focus, .tnp-profile input.tnp-submit:hover, .tnp-profile input.tnp-submit:focus { background:var(--theme_hover) !important; outline:none !important;}

.custom_pagination,.woocommerce-pagination{text-align:center}
.page-numbers{display:inline-block;padding:0;margin:0}
.page-numbers>li{display:inline}
.page-numbers>li>a,.page-numbers>li>span{position:relative;float:left;padding:5px 15px;font-size:14px;margin-left:-1px;line-height:1.42857143;color:#333;text-decoration:none;background-color:#fff;border:1px solid #ddd}
.page-numbers>li:first-child>a,.page-numbers>li:first-child>span{border-top-left-radius:3px;border-bottom-left-radius:3px}
.page-numbers>li:last-child>a,.page-numbers>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}
.page-numbers>li>a:hover,.page-numbers>li>span:hover,.page-numbers>li>a:focus,.page-numbers>li>span:focus{color:#000;background-color:#eee;border-color:#ddd}
.page-numbers>.active>a,.page-numbers>.active>span,.page-numbers>.active>a:hover,.page-numbers>.active>span:hover,.page-numbers>.active>a:focus,.page-numbers>.active>span:focus{z-index:2;color:#fff;cursor:default;background-color:#000;border-color:#000}
.page-numbers .current,.page-numbers .current:hover{z-index:2;color:#fff;cursor:default;background-color:#000;border-color:#000}
.page-numbers>.disabled>span,.page-numbers>.disabled>span:hover,.page-numbers>.disabled>span:focus,.page-numbers>.disabled>a,.page-numbers>.disabled>a:hover,.page-numbers>.disabled>a:focus{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}

.sidebar .widget { margin-bottom:30px;}
.sidebar ul { list-style:none; margin:0; padding:0;}
.sidebar ul li { margin-bottom:2px;}
.sidebar ul li a { color:#000; display:block; padding:8px 5px 8px 20px; position:relative; text-decoration:none; border-radius:3px;}
.sidebar ul li a:before { content:"\F285"; font-family:'bootstrap-icons'; font-size:12px; position:absolute; left:6px; top:11px;}
.sidebar ul li a:hover, .sidebar ul li.is-active a, .sidebar ul li.current_page_item > a, .sidebar ul li.current-menu-ancestor > a, .sidebar ul li.current-menu-item > a, .sidebar ul li.current-menu-parent > a { background:var(--theme_color); color:#fff; text-decoration:none;}

ins { text-decoration:none;}

.wpcf7-not-valid-tip { display:none !important;}
.wpcf7-not-valid { border:1px solid #F00 !important;}
.wpcf7-checkbox.wpcf7-not-valid { border:none !important;}
.wpcf7-checkbox.wpcf7-not-valid input[type=checkbox] { outline:1px solid #F00;}
.wpcf7-list-item { margin:0 15px 0 0;}
.wpcf7 form .wpcf7-response-output { margin:10px 0; padding:1rem; text-align:center; /*border-radius:5px;*/}
.wpcf7 form.invalid .wpcf7-response-output { background:#f8d7da; color:#58151c; border:1px solid #f1aeb5;}
.wpcf7 form.sent .wpcf7-response-output { background:#d1e7dd; color:#0a3622; border:1px solid #a3cfbb;}
.wpcf7-spinner { position:absolute;}

.proxi_star_rating { overflow:hidden; margin:0 0 7px; min-height:22px; text-align: center;}

.proxi_star_rating .star-rating{overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;font-family:star;margin:0; display: inline-block;}

.proxi_star_rating .star-rating{overflow:hidden;position:relative;height:1em;line-height:1;font-size:1em;width:5.4em;font-family:star;margin:0; display: inline-block;}
.proxi_star_rating .star-rating::before{content:'\73\73\73\73\73';color:#d3ced2;float:left;top:0;left:0;position:absolute;}
.proxi_star_rating .star-rating span{overflow:hidden;float:left;top:0;left:0;position:absolute;padding-top:1.5em;}
.proxi_star_rating .star-rating span::before{content:'\53\53\53\53\53';top:0;position:absolute;left:0;color:#ffce00;}
.proxi_star_rating .reviews_count {margin:-2px 0 0 7px;color:#757575; display: inline-block;}
.proxi_star_rating .reviews_count a{text-decoration: none;}

.woof_reset_search_form  {background:  var(--theme_color);border:  var(--theme_color) 1px solid; box-shadow: none; color: white; font-weight: 400;
  text-transform: uppercase; border-radius: 3px; padding: 7px 25px 10px; }
.woof_reset_search_form:hover, .woof_reset_search_form:focus{background: var(--theme_hover);border-color:  var(--theme_hover);}

.irs--round .irs-from, .irs--round .irs-to, .irs--round .irs-single{background-color:  var(--theme_color) !important;}
.irs--round .irs-from::before, .irs--round .irs-to::before, .irs--round .irs-single::before {border-top-color:  var(--theme_color) !important;}
.irs--round .irs-bar { background-color: var(--theme_color) !important;}
.irs--round .irs-handle{border-color:  var(--theme_color) !important;}



.promise_item {background-color: var(--grey2); padding:30px; display: block; text-align: left; display: block; -webkit-border-radius:3px; border-radius:3px; min-height: 330px; margin-bottom:20px;}


.earn_points_section {background-color: var(--grey2);}
ul.icons_list {list-style: none; padding:0; margin:0; display: block; column-count: 4; column-gap: 50px; margin-top:40px;}
ul.icons_list li {display: block; margin-bottom:30px; padding-left:85px; position:relative; overflow: hidden;}
ul.icons_list li .thumb_box {background-color: #000; border-radius:100%; width: 70px; height: 70px; display: inline-block; position: absolute; left:0; top:0;}
ul.icons_list li .thumb_box img {width: 44px; height: 44px; position: absolute; left:50%; top:50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); object-fit: scale-down;
filter: brightness(100) invert(40);}
ul.icons_list li h6 {font-size:18px; font-weight: bold;}
.bar_close {display: none;}
.filtersToggler {display: none;}
.aside_result {margin-right:40px;}

/* TNP Ajax Filters Integration */
.tnp-ajax-filters-widget {
    margin-bottom: 30px;
}

/* Ensure sidebar is visible */
.col-lg-3 {
    display: block !important;
}

.aside_result {
    display: block !important;
    position: relative !important;
    left: auto !important;
    top: auto !important;
    bottom: auto !important;
    background-color: transparent !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: none !important;
    visibility: visible !important;
    transition: none !important;
    z-index: auto !important;
    overflow-y: visible !important;
    box-shadow: none !important;
    margin-right: 40px;
}

@media (max-width: 991.98px) {
    .aside_result {
        position: fixed !important;
        left: -100% !important;
        top: 0 !important;
        bottom: 0 !important;
        background-color: #fff !important;
        padding: 30px 20px !important;
        width: 100% !important;
        max-width: 300px !important;
        visibility: hidden !important;
        transition: all 0.3s ease !important;
        z-index: 9999 !important;
        overflow-y: auto !important;
        box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1) !important;
        margin-right: 0 !important;
    }
    
    .aside_result.show {
        left: 0 !important;
        visibility: visible !important;
    }
}

.tnp-ajax-filters-widget .widget-title {
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--theme_color);
    color: #333;
}

/* Ensure proper spacing in sidebar */
.sidebar .tnp-ajax-filters-widget {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    padding: 0;
    overflow: hidden;
}

/* Mobile filter improvements */
@media (max-width: 991px) {
    .aside_result {
        position: fixed;
        left: -100%;
        top: 0;
        bottom: 0;
        background-color: #fff;
        padding: 30px 20px;
        width: 100%;
        max-width: 300px;
        visibility: hidden;
        transition: all 0.3s ease;
        z-index: 9999;
        overflow-y: auto;
        box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
    }
    
    .aside_result.show {
        left: 0;
        visibility: visible;
    }
    
    .black_overlay {
        position: fixed;
        top: 0;
        bottom: 0;
        right: 0;
        left: 0;
        background: rgba(0, 0, 0, 0.6);
        z-index: 999;
        opacity: 0;
        visibility: hidden;
        transition: all 0.3s ease;
    }
    
    body.filter-open .black_overlay {
        opacity: 1;
        visibility: visible;
    }
    
    .filtersToggler {
        display: inline-flex;
        align-items: center;
        text-decoration: none;
        color: #333;
        font-weight: 500;
        margin-bottom: 20px;
        padding: 10px 15px;
        background: #f8f9fa;
        border-radius: 6px;
        transition: all 0.2s ease;
    }
    
    .filtersToggler:hover {
        color: var(--theme_color);
        background: #e9ecef;
        text-decoration: none;
    }
    
    .filtersToggler img {
        width: 18px;
        height: 18px;
        margin-right: 8px;
    }
    
    .bar_close {
        position: absolute;
        right: 15px;
        top: 15px;
        background: var(--theme_color);
        color: white;
        border: none;
        width: 30px;
        height: 30px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 14px;
        cursor: pointer;
        transition: all 0.2s ease;
    }
    
    .bar_close:hover {
        background: var(--theme_hover);
        transform: scale(1.1);
    }
}

@media (max-width:991px) {
  .promise_item {min-height: auto;}

  .aside_result {position: fixed; left: -100%; top:0; bottom:0; background-color: #fff; padding:30px 20px; width: 100%; max-width: 300px; visibility: hidden; -webkit-transition: all linear 0.2s 0s; transition: all linear 0.2s 0s; margin-bottom: 0;}
  .aside_result.show {left: 0; z-index: 9999; visibility: visible;}
  .aside_result ul{height: 500px; overflow-y: auto;}
  .bar_close {right: 0; top: 0; color: white; position:absolute; background: var(--theme_color); padding: 7px; display: block;}
  .black_overlay {position: fixed; top: 0; bottom: 0; right: 0;left: 0; background: rgba(0,0,0,0.60); z-index: 999;}
  ul.icons_list {column-count:2; column-gap: 50px;}
  .filtersToggler {position: relative; display: inline-block; margin-bottom:20px; text-decoration: none; color: #000;}
  .filtersToggler img {display: inline-block; width: 20px; height: 20px; margin-right:10px; position: relative; top:-1px; }
  .woof .woof_wcga_label_hide, .woof_container_inner .woof_wcga_label_hide {display: inline-block !important; font-size: 18px; font-weight: 500; text-transform: uppercase;  margin-bottom: 15px; }

}

.woof_container_productcategories {margin-top:30px;}
.woof_container_productcategories h4 {font-size: 18px;text-transform: uppercase;}

@media (max-width:575px) {
  ul.icons_list {column-count:1;}

}


/* ===== TRUE NORTH — HERO (pixel-accurate to comp) ===== */
.tnp-hero{
  --hero-pad-y: 200px; /* vertical breathing room close to comp */
  position: relative;
  color: #fff;
  overflow: hidden;
  min-height: 70vh;
  padding-top: var(--hero-pad-y);
  padding-bottom: var(--hero-pad-y);
  display: flex; align-items: center;
}

/* Background */
.tnp-hero__bg{
  position: absolute; inset: 0; z-index: 0;
  background: #000; background-size: cover; background-position: center center;
}

/* Strong left darkening + gentle vignette (matches screenshot) */
.tnp-hero__overlay{
  position: absolute; inset: 0; z-index: 1;
  background:
    linear-gradient(90deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,.64) 32%, rgba(0,0,0,.30) 60%, rgba(0,0,0,.03) 100%),
    radial-gradient(1200px 70% at 25% 40%, rgba(0,0,0,.25), rgba(0,0,0,0) 60%);
}

.tnp-hero__content{ position: relative; z-index: 2; }

/* Pink accent line — spans full title height */
.tnp-hero__accent{
  width: 5px;                   /* a bit thicker to match comp */
  background: #ef2c5a;          /* vivid pink */
  border-radius: 2px;
  margin-right: 16px;
  flex: 0 0 auto;
  align-self: stretch;          /* 🔑 matches heading block height */
}

/* Title — uppercase, heavy, large */
.tnp-hero__title{
  margin: 0;
  font-weight: 700;
  text-transform: uppercase;
  
  line-height: 1.05;
  text-shadow: 0 3px 4px rgba(0,0,0,.22);
  font-size: clamp(28px, 4vw, 56px);  /* scales up to ~comp size */
}

/* Description — subtle shadow, left-aligned */
.tnp-hero__desc{
  max-width: 50ch;
  font-size: clamp(15px, 1.4vw, 18px);
  line-height: 1.3;
  color: #e9e9e9;
  padding-left: 25px;
  text-shadow: 0 1px 10px rgba(0,0,0,.45);
}

/* CTA — solid color */
.btn-cta{
  background: #fc2552;
  border: none; color: #fff;
  font-weight: 700; text-transform: none;
  border-radius: .25rem;
  box-shadow: 0 8px 18px rgba(0,0,0,.22);
  margin-left: 25px;
}
.btn-cta:hover,
.btn-cta:focus{ background: #e01e47; color:#fff; }

/* Foreground jars (single PNG), floating on the right */
.tnp-hero__fg{
  position: absolute; z-index: 3;
  right: clamp(16px, 5vw, 80px);
  bottom: clamp(10px, 4vh, 40px);

  /* keep inside hero area and proportionally large like comp */
  max-width: min(44vw, 720px);
  height: auto;

  /* prevent clipping: respect hero padding + leave headroom */
  max-height: calc(100% - var(--hero-pad-y) + 20px);

  /* angle + shadow to mimic composition */
  transform: rotate(-8deg);
  transform-origin: bottom right;
  filter: drop-shadow(0 26px 48px rgba(0,0,0,.55));
  pointer-events: none; /* jars shouldn't block clicks on CTA */
}

/* Tuning per breakpoints */
@media (max-width: 1399.98px){
  .tnp-hero__fg{ max-width: min(48vw, 640px); right: clamp(12px, 4vw, 64px); }
}
@media (max-width: 1199.98px){
  .tnp-hero__title{ font-size: clamp(26px, 4.2vw, 50px); }
  .tnp-hero__fg{
    max-width: min(50vw, 560px);
    transform: rotate(-6deg);
  }
}
@media (max-width: 991.98px){
  .tnp-hero{ min-height: 56vh; --hero-pad-y: 120px; }
  .tnp-hero__fg{
    right: 24px; bottom: 24px;
    max-width: min(58vw, 520px);
    max-height: calc(100% - var(--hero-pad-y) + 10px);
    transform: rotate(-4deg);
  }
}
@media (max-width: 767.98px){
  .tnp-hero{ padding-top: 100px; padding-bottom: 100px; --hero-pad-y: 100px; }
  .tnp-hero__accent{ width: 4px; }
  .tnp-hero__title{ font-size: clamp(22px, 6.2vw, 34px); }
  .tnp-hero__fg{ display: none; } /* hide jars on small phones like many hero comps */
}

/* ===== Black feature strip under hero ===== */
.tnp-hero-strip{
  background:#0c0c0c;
  color:#fff;
  padding: 10px 0;
  border-top: 1px solid rgba(255,255,255,.06);
  box-shadow: 0 -1px 0 rgba(0,0,0,.5) inset;
}

.tnp-feature{ padding: 18px 16px; }
.tnp-feature--divider{
  border-right: 1px solid rgba(255,255,255,.12);
}

@media (max-width: 991.98px){
  .tnp-feature--divider{ border-right: none; }
  .tnp-feature{ border-bottom: 1px solid rgba(255,255,255,.12); }
  .tnp-feature:last-child{ border-bottom: none; }
}

.tnp-feature__inner{ gap: 16px; }

/* Ring + masked icon (white) */
.tnp-feature__icon{
  width: 56px; height: 56px; flex: 0 0 56px;
  border-radius: 50%;
  display: grid; place-items: center;
  border: 2px solid #ef2c5a;         /* pink ring */
  background: rgba(255,255,255,.06);  /* inner backdrop */
  margin-right: 8px;
  position: relative;
}

/* Draw the icon using a CSS mask so it renders solid white */
.tnp-feature__icon::after{
  content: "";
  width: 30px; height: 30px;
  display: block;
  background: #fff;  /* icon color */
  -webkit-mask: var(--icon) center / contain no-repeat;
          mask: var(--icon) center / contain no-repeat;
}

/* Text */
.tnp-feature__text{ line-height: 1.2; }
.tnp-feature__title{
  font-weight: 800;
  font-size: clamp(16px, 1.2vw, 18px);
  letter-spacing:.2px;
}
.tnp-feature__sub{
  color: #bdbdbd;
  font-size: 13px;
  margin-top: 4px;
}

/* Optional: if you had an <img> before, make sure it doesn't show */
.tnp-feature__icon img{ display:none !important; }

/* Trending Flavors Section */
.trending-flavors-section {
  position: relative;
}

.flavor-grid-item {
  position: relative;
  height: 300px;
  border-radius: 12px;
  overflow: hidden;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}


.flavor-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 0.3s ease;
}

.flavor-grid-item:hover .flavor-bg {
  transform: scale(1.05);
}


.flavor-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.3) 100%);
  transition: background 0.3s ease;
}


.flavor-content {
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 30px;
}

.flavor-title {
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 8px;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
  transition: all 0.3s ease;
}


.flavor-subtitle {
  color: #fff;
  font-size: 1.1rem;
  font-weight: 500;
  margin: 0;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
  transition: all 0.3s ease;
}


.product-mock {
  background: rgba(255,255,255,0.95);
  padding: 20px;
  border-radius: 8px;
  display: inline-block;
  box-shadow: 0 4px 15px rgba(0,0,0,0.2);
  transition: all 0.3s ease;
  backdrop-filter: blur(10px);
}


/* Responsive adjustments */
@media (max-width: 768px) {
  .flavor-grid-item {
    height: 250px;
  }
  
  .flavor-content {
    padding: 20px;
  }
  
  .flavor-title {
    font-size: 1.5rem;
  }
  
  .flavor-subtitle {
    font-size: 1rem;
  }
  
  .product-mock {
    padding: 15px;
  }
}

/* CTA Banner Section - Clone of Hero Section */
.tnp-cta-banner {
  position: relative;
  padding: 80px 0;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.tnp-cta-banner__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.tnp-cta-banner__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
}

.tnp-cta-banner__content {
  z-index: 2;
  color: #fff;
}

.tnp-cta-banner__accent {
  width: 4px;
  height: 60px;
  background: var(--theme_color);
  margin-right: 20px;
  flex-shrink: 0;
}

.tnp-cta-banner__title {
  font-size: 2.5rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
}

.tnp-cta-banner__desc {
  font-size: 1.1rem;
  color: #fff;
  line-height: 1.6;
  opacity: 0.9;
}

/* Responsive adjustments for CTA Banner */
@media (max-width: 768px) {
  .tnp-cta-banner {
    padding: 60px 0;
  }
  
  .tnp-cta-banner__title {
    font-size: 2rem;
  }
  
  .tnp-cta-banner__desc {
    font-size: 1rem;
  }
}


/* ---------- Widget Titles ---------- */
.widget .widget-title,
.widget h2,
.widget h3,
.widget h4 {
  font-size: 20px;
  color: #111;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 1.2;
  text-align: left;
  margin-bottom: 12px;  /* space before content */
  position: relative;   /* relative instead of absolute */
}
/* ---------- Product Categories widget ---------- */
.widget_product_categories ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.widget_product_categories ul li {
  padding: 7px 0;
  line-height: 1.2;
  font-size: 13px;
}

/* remove pseudo bullet */
.widget_product_categories ul li::before {
  content: none;
}

.widget_product_categories a {
  color: #333;
  text-decoration: none;
}
.widget_product_categories .count {
  float: right;
  color: #9a9a9a;
  font-size: 12px;
}

/* active / current category in hot pink */
.widget_product_categories .current-cat > a,
.widget_product_categories a:hover {
  color: #ff2a6d;
  font-weight: 700;
}
/* Style widget titles with separator */
.widget .widget-title,
.widget h2,
.widget h3 {
  font-weight: 600;
  font-size: 16px;
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 2px solid #e5e5e5; /* gray separator line */
}
/* Add border and box styling to all widgets */
.widget {
  border: 1px solid #ddd;       /* Light gray border */
  background-color: #fff;       /* White background */
  padding: 15px;                /* Inner spacing */
  margin-bottom: 20px;          /* Space between widgets */
  box-sizing: border-box;
}
/* ---------- Tag Cloud ("PRODUCT TAGS") ---------- */
.tagcloud a {
  display:inline-block;
  font-size:12px !important; /* normalize */
  line-height:1;
  padding:8px 12px;
  margin:6px 8px 0 0;
  border:1px solid #e6e6e6;
  background:#fff;
  color:#444;
  text-decoration:none;
  transition:all .15s ease;
}
.tagcloud a:hover {
  border-color:#ff2a6d;
  color:#ff2a6d;
}
.tagcloud a.is-active,
.tagcloud a[aria-current="page"] {
  background:#ff2a6d;
  border-color:#ff2a6d;
  color:#fff;
}

/* Product Archive Hero Section */
.product-archive-hero {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 100px 0;
  position: relative;
  display: flex;
  align-items: center;
}

.product-archive-hero::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4);
  z-index: 1;
}

.product-archive-hero .container {
  position: relative;
  z-index: 2;
}

.product-archive-hero .hero-content {
  color: #fff;
}

.product-archive-hero .hero-title {
  font-size: 3rem;
  font-weight: 700;
  margin: 0;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
  text-transform: uppercase;
}

@media (max-width: 768px) {
  .product-archive-hero .hero-title {
    font-size: 2.5rem;
  }
}