/* global style settings */

body {
	overflow-x:hidden; /* slick problem */
}

/* increase bootstrap width */
@media only screen and (min-width : 1200px) {

    .container { max-width: 1366px; } 
    .text-narrow {
    	margin:0 auto;
    	max-width:90%;
    }
}
a, a:hover, a:visited {
	color:#064789;
	text-decoration:none;
}
img {
	max-width:100%;
}
h1, h1 span, h2, h2 span, h3, h3 span {
	color:#064789;
	font-family:'Sanchez', serif;
}
h2 {
	font-size:2.5rem;
}
h3 {
	font-size:1.5rem;
}
h4 {
	color:#064789;
}
.blue {
	color:#064789;
}
.white {
	color:white;
}
.blue-dots {
	text-align:center;
}
.blue-dots:after {
	content:'';
	background:url(../images/nav-dotted-border.png) bottom center repeat-x;
	background-size:48px;
	display:block;
	height:16px;
	margin:0 auto;
	max-width:50%;
	width:200px;
}

h2.white-dots, h1.white-dots {
	color:white;
	font-size:42px;
	position:relative;
	text-align:center;
}
h2.white-dots:after, h1.white-dots:after, .recipe-grid-item-overlay h3:after {
	content:'..............';
	letter-spacing:2px;
	text-align:center;
	display:block;
	left:0;

	position:absolute;
	right:0;
	bottom:-20px;
	width:100%;
}

p, a, li, span, div, input, textarea {
	font-family: 'Nunito', sans-serif;
}
p {
	max-width: 1066px;
}
p[style*="text-align:center"] { /* selects a CMS-applied style */
	margin-left:auto;
	margin-right:auto;
}
p.big {
	font-size:120%;
}
p.small {
	font-size:80%;
}
input, textarea {
	padding:4px 12px;
}
input[type=submit] {
	background:none;
	border:1px solid #EC9F05;
	color:#064789;
	padding:4px 24px;
}
span.button a {
	display:inline-block;
	background:none;
	border:1px solid #EC9F05;
	color:#064789;
	padding:6px 24px 5px 24px;
	font-weight: bold;
	font-size: 18px;
	min-width:180px;
	text-align:center;
}
span.button.tag a {
	font-size:12px;
	min-width:auto;
}
div:focus, a:focus {
    outline: none;
}

/* general slider styles */
.slick-dots {
	text-align: center;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}
.slick-dots li {
	display:inline-block;
	list-style:none;
	margin-left:5px;
}
.slick-dots button, .slick-dots button:focus, .slick-dots button:active {
	display: inline-block;
	 background:rgba(255,255,255,.5);
	 border:none;
	  overflow: hidden;
	  text-indent: -999px;
	  border-radius: 100%;
	  width: 15px;
	  height: 15px;
	  outline:none;
	  padding:4px;
}
.slick-dots .slick-active button {
	background:white;
}
@media (max-width:767px) {
	.slick-dots button {
		background:rgba(6, 71, 137, .5);
	}
	.slick-dots .slick-active button {
		background:rgba(6, 71, 137, 1);
	}
}

/* section specific styles */
#sticky-wrapper, header {
	z-index:9999; /* assists absolutely positioned header nav */
}
#sticky-wrapper {
	position:relative;
}
.header-logo {
	text-align:center;
}
.header-logo img {
	max-width:100%;
	width:200px;
}

.nav ul {
	padding-left:0;
	width:100%;
}
.nav li {
	list-style:none;
}
.header-utility {
	/*background:url(../images/header-utility-background.png) repeat-x top left;*/
	background:#FDF6ED;
	background-size:contain;
	padding:8px 0px;
}
.nav-headerUtility {
	display:inline-block;
}
.nav-headerUtility ul {
	display:inline-block;
	width:auto;
}
.nav-headerUtility li {
	padding-right:24px;
}
.nav-headerUtility a, .nav-headerUtility a:visited {
	color:white;
}
.header-utility-searchForm {
	display:none;
}
.header-utility-searchForm.visible {
	display:inline-block;
}
.header-utility-searchForm input {
	color:#064789;
	display:inline-block;
}
@media (max-width:767px) {
	.header-utility-searchForm input[type=submit] {
		padding:4px 8px;
	}
}

.header-headerUtility-search-icon {
	color:#064789;
	cursor:pointer;
	display:inline-block;
	font-size:20px;
	position:relative;
	top:2px;
	transition: transform .2s; /* Animation */
	-webkit-transition: transform .2s; /* Animation */
	-ms-transition: transform .2s; /* Animation */
}
.header-headerUtility-search-icon:hover {
	transform: scale(1.2);
	-webkit-transform: scale(1.2);
	-ms-transform: scale(1.2);
}

/* main navs */

.header-mainNav-wrapper {
	
	position:relative;
}
@media (max-width:767px) {
	.header-mainNav-wrapper {
		padding-top:150px;
	}
}
.header-mainNav {
	/*background:rgba(255,255,255,.8);*/
  /*background: rgba(253, 246, 237, .8);*/
  background: -moz-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,.8) 60%, rgba(255,255,255,0.5) 100%);
  background: -webkit-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,.8) 60%, rgba(255,255,255,0.5) 100%);
  background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,.8) 60%, rgba(255,255,255,0.5) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#ffffff",GradientType=1);


  /*-webkit-box-shadow: 0px 5px 5px 0px rgba(170,170,170,0.52);
  -moz-box-shadow: 0px 5px 5px 0px rgba(170,170,170,0.52);
  box-shadow: 0px 5px 5px 0px rgba(170,170,170,0.52);*/

  position:absolute;
  left:0;
  top:0;
  width:100%;
  z-index:9999;
}

.nav-headerMain-desktop, .nav-headerMain-desktop ul {
	height:100%;
}
.nav-headerMain-desktop ul {
	align-items:center;
	display:flex;
	justify-content:space-between;
	margin-bottom:0;
	padding-left:48px;
	position:relative;
	z-index:9999;
}
@media (min-width:1000px) {
	.nav-headerMain-desktop > ul {
		max-width:85%;
	}
}
.nav-headerMain-desktop li {
	display:inline-block;	
	position:relative;
}
.nav-headerMain-desktop > ul > li > a {
	
	font-size: 20px;
	font-weight: bolder;
	padding-bottom:10px;
}
.nav-headerMain-desktop > ul > li:hover > a {
	background:url(../images/nav-dotted-border.png) bottom center no-repeat;
	background-size:48px;
}

.nav-headerMain-desktop li:last-child {
	padding-right:0px;
}
.nav-headerMain-desktop a {
	color:#064789;
}
.nav-headerMain-desktop li > ul {

	display:none;
	left:-18px;
	padding-left:0;
	padding-top:20px;
	position:absolute;
	width:220px;
}
.nav-headerMain-desktop li:hover > ul {
	display:block;
}
.nav-headerMain-desktop li > ul > li {
	background:white;
	width:100%;
	padding:2px 0;

	-webkit-box-shadow: 0px 5px 5px 0px rgba(170,170,170,0.52);
	-moz-box-shadow: 0px 5px 5px 0px rgba(170,170,170,0.52);
	box-shadow: 0px 5px 5px 0px rgba(170,170,170,0.52);
}
.nav-headerMain-desktop li > ul > li:last-child {
	padding-bottom:12px;
}
.nav-headerMain-desktop li > ul > li a {
	display:block;
	padding:4px 8px 4px 18px;
	width:100%;
}
.nav-headerMain-desktop li > ul > li:hover a {
	background-color:#E6ECF3;
}

@media (max-width:767px) {
	.nav-headerMain-mobile {
		display:none;
	}
	.mobile-menu-button {
		border:1px solid #064789;
		border-radius:3px;
		color:#064789;
		cursor:pointer;
		display:inline-block;
		font-size:16px;
		margin:5px;
		padding:5px 12px;

		position:absolute;
		left:5px;
		top:-5px;
	}
	.mobile-menu-open {
		display:block;
		position: absolute;
		width: 100%;
		z-index: 99999;
	}
	.nav-headerMain-mobile ul {
		background:#666;
		padding-left:10px;
	}
	.nav-headerMain-mobile li {
		list-style:none;
	}
	.nav-headerMain-mobile a {
		border-bottom:1px solid #999;
		color:white;
		display:block;
		padding:8px;
		text-transform:uppercase;
	}
	.nav-headerMain-mobile a:hover {
		color:#f4a44d;
		text-decoration:none;
	}
	.nav-headerMain-mobile ul ul {
		display:none;
	}
	.nav-headerMain-mobile ul ul.mobile-menu-open {
		display:block;
	}
}

.block-productCategories img {
	max-width:180px;
}

@media (min-width:992px) {
	.block-productCategories-category {
		flex: 0 0 20%;
		/*max-width:20%;*/
		/*padding:0px 20px;*/
	}	
}
@media (min-width:992px) and (max-width:1200px) {
	.block-productCategories-category h3 {
		font-size:2vw;
	}	
}
.block-faqBlock {
	background:#064789;

}
.block-faqBlock .faq-item:before {
	color:white;
}
.block-faqBlock .narrow-text {
	margin:0 auto;
	max-width:800px;
}
.block-faqBlock .faq-answer  {
	color:white;
}

/* general content block */

/* tables */

.block-generalContent table {
	width:100%;
}


/* products section */

/* products landing page */
.template-productsLandingPage .block-textNextToImage-image img {
	border-bottom:none;
	display:block;
	margin-bottom:0px!important;
}

.template-productsLandingPage-productImage img {
	margin:0 auto;
	max-width: 200px;
}

/* individual products pages */
.product-image {
	display:block;
	margin:0 auto;
	max-width:100%;
}

.product-nutrition-facts {
	background:#F9F1E4;
	padding:10px 32px 1px 16px;
	position:relative;
}
.product-nutrition-facts.open {
	padding-bottom:10px;
}
.product-nutrition-facts p {
	display:none;
}
.product-nutrition-facts.open p {
	display:block;
}
.product-nutrition-facts::before {
	content:'+';
	cursor:pointer;
	font-weight:bolder;
	position:absolute;
	right:15px;
	top:0px;
	bottom:0px;
	height:100%;
	line-height:44px;

	color:#064789;
	font-size:22px;
}
.product-nutrition-facts.open::before {
	content:'x';
}



/* footer */

footer {
	padding-bottom:0!important;
}

.footer-blue {
	background:#064789;
	padding-top:40px;
}
.footer-blue p, .footer-blue a, .footer-blue a:hover, .footer-blue a:visited {
	color:white;
	margin-bottom:.5em;
	text-decoration:none;
}
.footer-blue p big {
	font-size:150%;
}
.footer-logo img {
	max-width:200px;
	width:100%;
}
@media (min-width:1200px) {
	.footer-quickLinks {
		flex:0 0 19%;
	}
	.footer-customerService {

	}
	.footer-connect {

	}
}

.footer-utility {
	background:#FDF6ED;
	position:relative;
	text-align:center;
}
.footer-utility::before {
	content: "";
	position: absolute;
	top: -20px;
	left: 11px;
	right: 11px;
	height: 20px;
	box-shadow: -4px 7px 15px 0px rgba(100, 100, 100, 0.4);
	z-index: 100;
}
.footer-utility p, .footer-utility a {
	color:#064789;
}
.footer-utility a:before {
	content:'|';
	margin:0px 20px;
}
.footer-social img {
	height:32px;
}
.footer-social a {
	padding-right:5px;
}


/* content */
.body-precontent-spacer { /* needed on some templates due to transparent nav */
	height:100px;
}
@media (min-width:1200px) {
	.body-precontent-spacer { /* needed on some templates due to transparent nav */
		height:180px;
	}	
}

.slider-container .slick-slider {
	border-bottom:12px solid #EC9F05;
}
.slide {
	position:relative;
}
.slide-image {
	margin:0 auto;
	width:100%;
}
.slide-row {
	align-items: center;
	display: flex;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	margin: auto;
	max-width: 1366;
	bottom: 0;
	right: 0;
}
@media (min-width:768px) {
	.slide-row {
		padding-top:50px;
	}
}
@media (min-width:1000px) {
	.slide-row {
		padding-top:120px;
	}
}
@media (max-width:767px) {
	.slide-row {
		position:static;
	}
}
.slide-row .row {
	width:100%;
}
.slide-row .button {
	display:inline-block;
	margin-top:20px;
}

.block-textNextToImage-image img {
	border-bottom:12px solid #EC9F05;
}
.block-textNextToImage-text {
	display:flex;
	align-items:center;
}

.block-browseRecipes {
	background-color:#F2F6F9;
}
.block-browseRecipes-heroImage {
	margin:0 auto -240px auto;
}
@media (max-width:800px) {
	.block-browseRecipes-heroImage {
		margin:0 auto -20vw auto;
	}	
	.block-browseRecipes h2.white-dots {
		font-size:6vw;
	}
}
.block-browseRecipes-heroImage img {
	display:block;
	margin:0 auto;
}
.block-browseRecipes-slider .slick-arrow {
	position: absolute;
	
	top: 25%;
	background: none;
	border: none;
	background-color: #AEC3D9;
	font-size:0px;
	height: 80px;
	width: 40px;
}
.block-browseRecipes-slider .slick-arrow:after {
	content:'';
	background:url(../images/browseRecipe-arrow-prev.png) center center no-repeat;
	background-size:80%;
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	top:0;
	height:100%;
	width:100%;
}
.block-browseRecipes-slider .slick-prev {
	left: -25px;
}
.block-browseRecipes-slider .slick-next {
	right: -25px;
}
.block-browseRecipes-slider .slick-next:after {
	background:url(../images/browseRecipe-arrow-next.png) center center no-repeat;
	background-size:80%;
}

.block-browseRecipes-slider-slide.col {
	border: 10px solid white;
	margin: 0 15px;
	padding-left:0px;
	padding-right:0px;
}
.block-browseRecipes-slider-category {
	
	background-position: center center;
	background-size:cover;
	
	display:block;
	
	
}
.block-browseRecipes-slider-slide-overlay {
	transition: background-color 0.2s ease;
	align-items: center;
	display:flex;
	height:18vw;
	justify-content: center;
	width:100%;
}
.block-browseRecipes-slider-category:hover .block-browseRecipes-slider-slide-overlay {
	background:rgba(33,33,33,.7);
}

@media (min-width:1366px) {
	.block-browseRecipes-slider-slide-overlay {
		height:300px;
	}
}
@media (max-width:1000px) {
	.block-browseRecipes-slider-slide-overlay {
		height:18vw;
	}	
}
@media (max-width:768px) {
	.block-browseRecipes-slider-slide-overlay {
		height:28vw;
	}	
}
@media (max-width:400px) {
	.block-browseRecipes-slider-slide-overlay {
		height:240px;
	}	
}
.block-browseRecipes-slider-category span {
	transition: background-color 0.2s ease;
	color:transparent;
	display:inline-block;
	position:relative;
	font-size:24px;
	max-width:80%;
	text-align:center;
}
.block-browseRecipes-slider-category:hover span {
	color:white;
}

.block-browseRecipes-slider-category span:after {
	content:'........';
	text-align:center;
	display:block;
	left:0;

	position:absolute;
	right:0;
	bottom:-20px;
	width:100%;
}
.block-testimonials {
	background-color:#064789;
}
.block-testimonials h2.white-dots:after {
	content:'....................';
	letter-spacing:2px;
}
.block-testimonials span.button a {
	color:white;
}
@media (min-width:768px) {
	.testimonials-content {
		margin:0 auto;
		max-width:100%;
		position:relative;
		width:600px;
	}
	.testimonials-content:before, .testimonials-content:after {
		color: #245D97;
		font-size: 360px;
		
		position: absolute;
		
		font-family: "Sanchez";
		line-height: 360px;
	}
	.testimonials-content:before {
		content: "“";
		left: -80px;
		top: 20px;
	}
	.testimonials-content:after {
		content: "”";
		right: -80px;
		top: 8px;
	}
}

.block-fullWidthImage img {
	display:block;
	margin:0 auto;
	max-width:100%;
}

/* recipes */

.template-recipeLandingPage-heroNav {
	background:rgba(255, 255,255, .8);
	bottom:0;
	left:0;
	padding:16px 0px;
	position:absolute;
	text-align:center;
	right:0;
	width:100%;
}
.template-recipeLandingPage-heroNav > div {
	display:inline-block;
	margin:0px 12px;
}

.recipe-dropdown {
	background:white;
	display:inline-block;
	padding:0px 12px;
	position:relative;
}
.recipe-dropdown span {
	color:#064789;
	cursor:pointer;
	display:block;
	font-size:22px;
	font-weight:bolder;
	height:36px;
	padding-right:40px;
	position:relative;
}
.recipe-dropdown span::after {
	content: '⌄';
	right: 0;
	position: absolute;
	top: -15px;
	font-size: 32px;
}
.recipe-dropdown ul {
	background:white;
	display:none;
	left:0;
	padding-left:10px;
	position:absolute;
	text-align:left;
	width:100%;
	z-index:2;
}
.recipe-dropdown.open ul {
	display:block;
}
.recipe-dropdown li {
	display:block;
	list-style:none;
}
.recipe-dropdown a {
	color:#064789;
	display:block;
	font-size:16px;
	padding:5px 10px;
}
.recipe-searchForm input {
	height:36px;
}

@media (max-width:989px) {
	.template-recipeLandingPage-heroNav {
		background:white;
		position:relative;
	}
	.template-recipeLandingPage-heroNav > div.recipe-dropdown {
		display:none;
	}
}


.recipe-grid-item {
	position:relative;

}
.recipe-grid-item img {
	width:100%;
}
.recipe-grid-item-overlay {
	transition: background-color 0.2s ease;
	background:rgba(33,33,33,.7);
	color:white;
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	height:100%;
	width:100%;

	display:flex;
	align-items:center;
}
.recipe-grid-item-overlay:hover {
	background:rgba(33,33,33,0);

}
.recipe-grid-item-overlay h3 {
	display:block;
	margin:0 auto;
	position:relative;
	transition: color 0.2s ease;
}
.recipe-grid-item-overlay:hover h3 {
	color:transparent;
}

.recipe-image {
	max-height:325px;
}
.recipe-social-icons a {
	padding-right:8px;
}
.recipe-social-icons img {
	height:40px;
}
.recipe-image-container {
	position:relative;
}
.recipe-image-share {
	display:none;
	position:absolute;
	background:#00478E;
	bottom:0;
	padding:5px 0px;
	right:0;
	width:60px;
}
.recipe-image-container:hover .recipe-image-share {
	display:block;
}
.recipe-image-share a {
	display:block;
	margin:0 auto 5px auto;
}
.recipe-image-share img {
	display:block;
	height:40px;
	margin:0 auto;
}

/* faqs */
.faq-item {
	cursor:pointer;
	position:relative;
}
.faq-item:before {
	content:'-';
	position:absolute;
	left:-30px;
	top:0px;
	color:#064789;
	font-size:42px;
	line-height:18px;
}
.faq-item.faq-closed:before {
	content:'+';
}
.faq-closed .faq-answer {
	display:none;
}

/* NBCF */
img[src="https://s3.us-east-2.amazonaws.com/solofoods-s3/30477_sf_solo_NBCF_promo_strawberrycan_render3_r0-min.png"] {
  border-bottom: 12px solid #FFBECF;
}

img[src="https://s3.us-east-2.amazonaws.com/solofoods-s3/NBCF-Page-bottom-image_2023-06-14-044625_qnda.jpg"] {
  border-bottom: 12px solid #FFBECF;
}

/* individual page headers */
.pageHeader {
	position:relative;
}
.pageHeader-content {
	text-align:center;
}
.pageHeader h1.white-dots, .pageHeader h1.white-dots::before {
	color:#064789;
}
@media (min-width:990px) {
	.pageHeader-content {
		bottom:0;
		left:0;
		right:0;
		height:80%;
		width:100%;
		position:absolute;
		align-items:center;
		display:flex;
	}
	.pageHeader-content h1.white-dots, .pageHeader-content p {
		color:white;
		margin:0 auto;
		max-width:800px;
	}
}
/* end individual page headers */

/* contact form */

.contactForm input:not([type='submit']), .contactForm textarea {
	border:1px gray solid;
	width:100%;
}