/*======================== Variables ======================== */

:root {

/* Colors */
--primary: #ed1966;
--pink: #ed1966;
--secondary: #000000;
--black: #000000;
--white: #ffffff;
--gray: #f3f3f3;


/* Fonts */
--font1: "p22-mackinac-pro", serif;
--font2: "sofia-pro-variable", sans-serif;
--icons: 'Material Symbols Outlined';


/* Font Size */
--body: 18px;


/* Spacing */
--gutter-mobile: 20px;
--gutter-desktop: 50px;


/* Sizing */
--mobile-logo-width: 200px;
--desktop-logo-width: 200px;
--mobile-header-height:100px; /* based on Padding + Logo Height */
--desktop-header-height:100px; /* based on Padding + Logo Height */


}/* End */




/*======================== General ======================== */



html, body, .site {
  height: 100%;
  font-size:var(--body);
  scroll-behavior: smooth;
}

.alignleft {float:left;}
.alignright {float:right;}

body {
  overflow-x: hidden;
  max-width: 100%;
  color: var(--black);
  font-family: var(--font1);
  background: var(--white);
  line-height:normal;
  font-size:16px;
  min-width: 320px;
  width:100%;
}

.site {
	display: flex;
    flex-direction: column;
	min-height: 100vh;
	  margin: 0;
}
	
.site-main {flex: 1;}

.lock-scroll {
    overflow: hidden;
    position: fixed;
    height: 100%;
    width: 100%;
}

.mobile-only {display:initial;}
.desktop-only {display:none;}


div {box-sizing: border-box;}

#primary {background:var(--white);position: relative;}

.fadeoff {-webkit-animation: fadeoff 2s ease-out;-moz-animation: fadeoff 2s ease-out;-o-animation: fadeoff 2s ease-out;animation: fadeoff 2s ease-out;animation-fill-mode: forwards;}
.fadeon {-webkit-animation: fadeon 2s ease-out;-moz-animation: fadeon 2s ease-out;-o-animation: fadeon 2s ease-out;animation: fadeon 2s ease-out;animation-fill-mode: forwards;}

.blocker {clear:both;}

.error404 .site-main {display: flex;align-items: center;justify-content: center;}
.error-404 .page-content {padding:50px;text-align:center;}
.error-404 .page-content .page-title {font-size:300%;font-family: "sofia-pro-variable", sans-serif;}
.error-404 .page-content p {max-width:400px;margin: 0 auto;}

.button {background:var(--pink);padding:10px 20px; border-radius:50px;color:white;}

hr {height:3px;border:none;background:var(--pink);display:block;margin:20px 0px;}
hr.divider {height:3px;border:none;background:var(--gray);display:block;margin: 5vw 0px;}

   

/* Desktop ====== */

@media (min-width: 1025px) {
	
	.mobile-only {display:none !important;}
	.desktop-only {display:revert;}
	.lock-scroll {
		    overflow: initial;
		    position: static;
		    height: auto;
		    width: 100%;
		}
	
}/* End */





/*======================== Containers ======================== */


.container {width: 100%;padding: 0px var(--gutter-mobile);box-sizing: border-box;}
.full_container {width: 100%;padding: 0px;box-sizing: border-box;}
.inner_container {max-width:1280px;margin: 0 auto;padding: var(--gutter-mobile);}


.inner_container p {color:black;}



/*======================== Animations ======================== */

@keyframes fadeon {
  0%   { opacity: 0; }
  100% { opacity: 1; }
}

@keyframes fadeoff {
  0%   { opacity: 1; }
  100% { opacity: 0.25; }
}

@keyframes mobiletextin {
      0%   {transform: translateX(-150px);opacity:0;}
	  100%   {transform: translateX(0);opacity:1;}
}



/*======================== Fonts ======================== */

body,
button,
input,
select,
optgroup,
textarea {
	color: #ed1966;
	font-family: "p22-mackinac-pro", serif;
	font-weight: 500;
	font-style: normal;
	font-size: 1rem;
	line-height: normal;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: "p22-mackinac-pro", serif;
	font-weight: 700;
	font-style: normal;
}

h1 {font-size:2.5em;}
h2 {font-size:1.5em;}

p {
	margin-bottom: 1.5em;
	font-family: "sofia-pro-variable", sans-serif;
	font-weight: 350;
	font-variation-settings: "slnt" 0, "wght" 350;
	line-height: normal;
}


ol.styled-ol {
	font-family: "sofia-pro-variable", sans-serif;
	font-weight: 350;
	color:black;
  counter-reset: list-counter; /* Initialize a counter for the list */
  list-style: none; /* Remove default list numbering */
  padding: 0;
  margin: 0px 0px 0px 20px;
}

ol.styled-ol  li {
  position: relative; /* Establish positioning context for pseudo-element */
  margin-bottom: 1.75em; /* Spacing between list items */
  padding-left: 3em; /* Space for the colored circle */
}

ol.styled-ol li::before {
	counter-increment: list-counter;
	    content: counter(list-counter);
	    position: absolute;
	    left: 0;
	    top: -2px;
	    width: 2em;
	    height: 2em;
	    background-color: var(--pink);
	    color: #fff;
	    border-radius: 50%;
	    font-size: 0.9em;
	    text-align: center;
	    line-height: 30px;
}


@media (max-width: 768px) {
	.entry-content h2 {font-size:1.25em;}
}

/*======================== Header ======================== */

.logo,.sitelogo {width:200px;height:35px;display: inline-block;}
.sitelogo {margin: 32.5px 0px;}
.sitelogo a {line-height:0px;display: block;}

header .mainheader {box-sizing: border-box;padding:0px var(--gutter-mobile);height:var(--mobile-header-height);background:var(--white);position: relative;}
header a {cursor:pointer;text-decoration:none;}

.mobilenavicon {cursor:pointer;position: absolute; top: 40px; right: 40px; z-index: 88; width: 40px; height: 20px; display: block; }

#nav-icon { width: 40px; height: auto; position: absolute; margin: 0px auto; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform:rotate(0deg); -webkit-transition: .5s ease-in-out; -moz-transition: .5s ease-in-out; -o-transition: .5s ease-in-out; transition: .5s ease-in-out; cursor: pointer; z-index: 88; }
#nav-icon span { display: block; position: absolute; height: 4px; width: 100%; opacity: 1; left: 0; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg);transform: rotate(0deg); -webkit-transition: .25s ease-in-out; -moz-transition: .25s ease-in-out; -o-transition: .25s ease-in-out; transition: .25s ease-in-out; background: var(--primary); }
#nav-icon span:nth-child(1) {top: -3px;}
#nav-icon span:nth-child(2), #nav-icon span:nth-child(3) {top: 6px;}
#nav-icon span:nth-child(4) {top: 15px;}
#nav-icon.open span:nth-child(1) {top: 6px;width: 0%;left: 50%;}
#nav-icon.open span:nth-child(2) {-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);-o-transform: rotate(45deg);transform: rotate(45deg);background: white;}
#nav-icon.open span:nth-child(3) {-webkit-transform: rotate(-45deg);-moz-transform: rotate(-45deg);-o-transform: rotate(-45deg);transform: rotate(-45deg);background: white;}
#nav-icon.open span:nth-child(4) {top: var(--body);width: 0%;left: 50%;}

.main-navigation, .nav-open .main-navigation { display: flex; position: static; background: none; padding: 0px; float: right; height: 100%; justify-content: right; align-items: center; }
.main-navigation {overflow-y: revert;height: 100%;justify-content: right;padding-left:var(--gutter-mobile);width: calc(100% - var(--desktop-logo-width) - var(--gutter-mobile));}
.main-navigation a {color:black;font-size:13px;}

#primary-menu {list-style: none;}
#primary-menu li a {padding:0px var(--gutter-mobile);-webkit-transition: color 0.5s ease;transition: all 0.5s ease;font-size:16px;}
#primary-menu li a:hover, #primary-menu li a:focus, #primary-menu li a:active {color:var(--pink);}

.sub-menu {display:none;list-style: none;}
#product-links {display:none;}


@media (min-width: 1025px) {
	 	header .mainheader {padding:0px var(--gutter-desktop);height:auto;display: inline-block;width: 100%;}
		header.site-header {height:auto;}
	   .mobilenavicon {display: none;}
	   #primary-menu {margin: 0px;display: flex;justify-content: space-between;padding: 0px;}
	   #primary-menu li { height: 100px;align-items: center;display: flex;box-sizing: border-box;}
	   #primary-menu li a {padding: 0px;}
	   #primary-menu .sub-menu li {height:80px;}
	   .menu-main-menu-container {width:100%;}
	   .main-navigation {padding-left:var(--gutter-desktop);width: calc(100% - var(--desktop-logo-width) - var(--gutter-desktop));}
	   .product-template .current-menu-ancestor {margin-bottom: 0px;}
	  .current-menu-ancestor {margin-bottom: 80px;}
	   .current-menu-ancestor .sub-menu {display: flex;width: 100%;position: absolute;left: 0px;top: 100px;background: var(--gray);height:80px;padding: 0px var(--gutter-desktop);}
		.current-menu-item, .current-menu-ancestor {border-bottom:3px solid var(--pink);}
		.current-menu-item a, .current-menu-ancestor a {position:relative;top:1.5px;}
		.sub-menu .current-menu-item {border-bottom:0px solid var(--pink);}
		.sub-menu a {border-bottom:1px solid var(--gray);position:relative;top:0px;}
		.sub-menu .current-menu-item a {border-bottom:1px solid var(--pink);}
		.sub-menu a {margin-right:40px;}
		
		#product-links {background:white;display: none;box-shadow: 0px 5px 10px -5px rgba(0, 0, 0, 0.5);position: absolute;z-index: 10;width: 100%;top:100px;}
		.product-items-inner {display: flex;width: 100%;}
		.product-item {padding:25px 25px 10px 25px;}
		.product-item a {width:100%;text-align:center;}
		.product-item a img {width:98%;height:auto;transition:all 0.25s ease-out;margin:1%;}
		.product-item a h4 {transition:all 0.25s ease-out;color:black;}
		.product-item a:hover h4 {color:var(--pink);}
		.product-item a:hover img {width:100%;height:auto;margin:0px;}
		#primary-menu li.productsnav a {padding:40px 0px;}
		.productsnav .sub-menu {display:none;}
		
}

@media (min-width: 1180px) {
	.main-navigation {max-width:1000px;}
}


@media (max-width: 1024px) {
.menu-main-menu-container {display:none;}
.nav-open .menu-main-menu-container {
    display: inline-block;
    position: absolute;
    background: var(--pink);
    color: white;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 15;
}

.nav-open .menu-main-menu-container #primary-menu li .sub-menu {margin:30px 0px 0px 0px;}
.nav-open .menu-main-menu-container #primary-menu li .sub-menu a {font-size:18px;padding: 0px;}

.nav-open .menu-main-menu-container #primary-menu li {margin-bottom:30px;}
.nav-open .menu-main-menu-container #primary-menu {padding: 0px 25px 50px 25px;margin-top: 90px;height: calc(var(--vh, 1vh) * 100 - 90px);overflow-y: scroll;}
.nav-open .menu-main-menu-container #primary-menu li a {font-size:28px;color:#fff;}

.nav-open .menu-main-menu-container #primary-menu li {
  animation: mobiletextin 0.5s forwards; 
  animation-fill-mode: forwards; 
  transform: translateX(-150px);
  opacity:0;
}

.nav-open .menu-main-menu-container #primary-menu li:nth-child(1) {
  animation-delay: 0.1s;
}

.nav-open .menu-main-menu-container #primary-menu li:nth-child(2) {
  animation-delay: 0.2s;
}

.nav-open .menu-main-menu-container #primary-menu li:nth-child(3) {
  animation-delay: 0.3s;
}

.nav-open .menu-main-menu-container #primary-menu li:nth-child(4) {
  animation-delay: 0.4s;
}

.nav-open .menu-main-menu-container #primary-menu li:nth-child(5) {
  animation-delay: 0.5s;
}

.nav-open .menu-main-menu-container #primary-menu li:nth-child(6) {
  animation-delay: 0.6s;
}

/* make space for the chevron */
.menu-item-has-children > a {
  position: relative;
  padding-right: 25px;
}

/* chevron arrow (points right initially) */
.menu-item-has-children > a .chevron {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-right: 3px solid currentColor;
  border-bottom: 3px solid currentColor;
  transform: rotate(-45deg); /* points right */
  position: absolute;
  right: -5px;
  top: 50%;
  margin-top: -5px; /* vertically center */
  transition: transform 0.3s ease;
}

/* rotate chevron down when submenu is open */
.menu-item-has-children.submenu-open > a .chevron {
  transform: rotate(45deg); /* points down */
}

/* hide/show submenu */
.menu-item-has-children .sub-menu {
  display: none;
}
.menu-item-has-children.submenu-open > .sub-menu {
  display: block;
}

}




/*======================== Footer ======================== */

.site-footer {border-top:6px solid var(--pink);padding: var(--gutter-desktop);position: relative;}
.footer_copyright {color:black;font-size:13px;font-weight:500;}
.footer_copyright img {width:150px;height:auto;}
.footer_copyright p {margin-bottom:0px;}
.company_info {width:100%;font-size: 13px;}
.company_info img {width:100%;margin-bottom:20px;}
.company_info span {width:100%;display: block;}
.footer_middle ul {margin: 0 auto;list-style: none;column-count: 3;padding: 0px;max-width: 550px;margin-bottom: 30px;}
.footer_middle ul li {margin-bottom:21px;font-size: 21px;}
.footer_middle ul li a{text-decoration:none;transition: opacity 0.5s ease;}
.footer_middle ul li a:hover {opacity:50%;}
.footer_middle p {margin-bottom:0px;display: flex;width: 100%;}
.footer_signup {margin: 0 auto;max-width: 550px;}
.footer_form {border-bottom:2px var(--pink) solid;}
.footer_form .wpcf7 input[type="email"] {border:none;width: 100%;padding-left:0px;}
.footer_form  .wpcf7-form-control-wrap {width:calc(100% - 100px);}
.footer_form input[type="submit"] {transition: opacity 0.5s ease;cursor:pointer;font-variation-settings: "slnt" 0, "wght" 400;background: none;border: none;opacity: 50%;font-family: "sofia-pro-variable", sans-serif;text-align: right;width: 100px;padding: 0px;}
.footer_form input[type="submit"]:hover {opacity:100%;}
.footer_form .wpcf7 input[type="email"]::placeholder {color:var(--pink);opacity:50%;padding: 0px;}
.footer_form .wpcf7 {margin-bottom:15px;position: relative;}
.footer_form .wpcf7-spinner {display:none;}
.footer_form .wpcf7 input[type="email"]:focus {outline:none;color:black;}
.footer_form .wpcf7-not-valid-tip {color: black;font-size: 10px;position: absolute;bottom: -40px;}
.footer_form .wpcf7 form.sent .wpcf7-response-output, .footer_form .wpcf7 form.invalid .wpcf7-response-output, .footer_form .wpcf7 form.unaccepted .wpcf7-response-output, .footer_form .wpcf7 form.payment-required .wpcf7-response-output {    color: black;
    font-size: 10px;
    position: absolute;
    bottom: -55px;
    border: none;
    margin: 0px;
    padding: 0px;
	font-variation-settings: "slnt" 0, "wght" 400;
font-family: "sofia-pro-variable", sans-serif;
text-align: left;}
.footer_form input:-internal-autofill-selected, .footer_form .wpcf7 input[type="email"]:focus {background-color: var(--gray) !important;}
.footer_middle .current-menu-item, .footer_middle .current-menu-ancestor {border-bottom: none;opacity:50%;}
.footer_middle .current-menu-item a, .footer_middle .current-menu-ancestor a {top: 0px;}
		
.footer_back {cursor:pointer;position: absolute;bottom: var(--gutter-mobile);right: var(--gutter-mobile);border-radius: 40px;background: var(--pink);height: 40px;width: 40px;}

.arrow-up {
  width: 0;
  height: 0;
  margin:10px;
  border-left: 10px solid transparent;  /* left side */
  border-right: 10px solid transparent; /* right side */
  border-bottom: 15px solid white;      /* the triangle color */
}

.footer_back:hover, .footer_back:focus {background: var(--black);}




@media (min-width: 1025px) {
.site-footer {padding: var(--gutter-desktop);display: flex;}
.company_info {width:200px;}
.footer_middle {flex-grow: 1;padding: 0px 50px;display: flex;justify-content:center;align-items: center;}
.footer_middle ul {max-width: none; margin-bottom: 0px;}
.footer_middle ul li {margin-bottom: 40px;font-size: 24px;margin-right: 40px;}
}

@media (min-width: 1025px) and (max-width: 1180px) {
    .footer_middle ul li {font-size: 18px;margin-right: 21px;}
}

@media (max-width: 1024px) {
	.company_info img {width:200px;margin-bottom:20px;}
	.footer_middle ul li {margin-bottom:21px;font-size: 17px;}
	.company_info {margin-bottom:20px;max-width:500px;}
	.footer_middle {width: 100%;max-width: 500px;margin: 30px 0px 30px 0px;}
	.footer_form .wpcf7 form.invalid .wpcf7-response-output, .footer_form .wpcf7 form.unaccepted .wpcf7-response-output, .footer_form .wpcf7 form.payment-required .wpcf7-response-output {bottom: -55px;}
}

@media (max-width: 600px) {
	.footer_middle ul li {font-size: 15px;}
	.site-footer {padding: var(--gutter-mobile);}
    .footer_middle {margin: 30px 0px 20px 0px;}
}

@media (max-width: 380px) {
    .footer_middle ul li {
        font-size: 12px;
    }
}



/*======================== Forms ======================== */

.no-products{
    text-align: center;
    width: 100%;
    color: var(--pink) !important;
    font-size: 2em;
}

.site-main .wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    border-color: var(--pink);
    width: 100%;
    text-align: center;
	    font-size: 12px;
}

.site-main .wpcf7-submit {
    background: #ed1966;
    font-family: "p22-mackinac-pro", serif;
    font-weight: 500;
    font-style: normal;
    font-size: 1rem;
    line-height: normal;
    border-radius: 50px;
    border: none;
    padding: 5px 20px;
    color: white;
	width:auto;
	cursor:pointer;
}

.site-main .wpcf7-submit:focus, .site-main .wpcf7-submit:hover {color:white;background:black;border:none;}

.site-main input, .site-main textarea {width: 100%;
    border: none;
    margin-bottom: 10px;
    padding: 10px;
	border:2px white solid;
	box-sizing: border-box;
}

.site-main input:focus, .site-main textarea:focus {outline: none;color:black;border:2px var(--pink) solid;}

.site-main textarea {width: 100% !important;
height: 200px !important;}

.site-main .wpcf7 {width:100%;}

.site-main .wpcf7-not-valid-tip {
    color: black;
    font-size: 10px;
	font-family: "sofia-pro-variable", sans-serif;
	    font-weight: 350;
	    font-variation-settings: "slnt" 0, "wght" 350;
		line-height: normal;
}


.site-main .wpcf7-spinner {display:none;}

.filter-group {position: relative; min-width: 210px;}

.dropdown-selected {
	    background: var(--gray);
	padding: 12px 40px 10px 23px;
    border: 2px solid black;
    border-radius: 50px;
    cursor: pointer;
    position: relative;
    transition: all 0.3s;
    font-family: var(--font2);
    color: black;}
	
.dropdown-options {position: absolute; top: 100%; left: 0; right: 0; background: white; border: 2px solid #e0e0e0; border-radius: 10px; margin-top: 4px; max-height: 300px; overflow-y: auto; display: none; z-index: 1000; box-shadow: 0 4px 6px rgba(0,0,0,0.1);}
.dropdown-option {padding: 12px 16px; cursor: pointer; transition: background 0.2s;}

.dropdown-selected svg {position: absolute; right: 12px; top: 50%; transform: translateY(-50%); width: 20px; height: 20px; transition: transform 0.3s;}
.dropdown-option:hover {
	background: #f5f5f5 !important;
}
.dropdown-selected:hover {
	border-color: #999 !important;
}
.custom-dropdown.active .dropdown-selected {
	border-color: #666 !important;
}
.custom-dropdown.active svg {
	transform: translateY(-50%) rotate(180deg) !important;
}

#find-btn {padding: 17px 32px;
    background: var(--pink);
    color: white;
    border: none;
    border-radius: 50px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 600;
    transition: background 0.3s;}
	
#find-btn:hover {
	background: #000 !important;
}


#clear-filters {padding: 0px;
    background: white;
    color: var(--pink);
    border: none;
    border-radius: 100px;
    cursor: pointer;
    font-size: 22px;
    font-weight: 600;
    transition: background 0.3s;
    line-height: 32px;
    width: 30px;
    height: 30px;
    text-align: center;}

#clear-filters:hover {background: #000 !important;color:white;}


.selected-text{
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
}

#product-dropdown {min-width: 240px;}




.wpcf7 form.sent .wpcf7-response-output, .wpcf7 form.spam .wpcf7-response-output {
    border-color: var(--pink);
    background: var(--pink);
    color: white;
    text-align: center;
    font-size: 14px;
    box-sizing: border-box;
    margin: 0px;
	width:100%;
	border-radius:30px;
	    padding: 5px;
}


.wpcf7-form select {    
	height: 45px;
    border: 0px;
    margin-bottom: 10px;
	width:100%;
padding: 5px;
    box-sizing: border-box;
    -webkit-appearance: none;  /* Safari/Chrome */
    -moz-appearance: none;     /* Firefox */
    appearance: none;           /* Standard */
    background-color: white;    /* dropdown background */
    background-image: url("data:image/svg+xml;charset=US-ASCII,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='5'><polygon points='0,0 10,0 5,5' fill='%23ed1966'/></svg>");
    /* replace %23ff69b4 with actual hex if --pink isn't recognized in SVG */
    background-repeat: no-repeat;
    background-position: right 20px center;
    background-size: 10px 5px;
    padding: 0px 30px 0px 10px;       /* space for arrow */
}
	
	.wpcf7-form select:focus {border:0px;outline:none;}

	


@media (min-width: 1280px) {
#coating-dropdown {min-width: 310px;}
}

@media (max-width: 1024px) {
	
	.recipe-filters {display: block !important;margin: 0px !important;}
	.dropdown-selected {margin-bottom: 20px !important;}
	#find-btn {width:100%;}
	#clear-filters {margin: 25px auto 0px;display: block;}
	#coating-dropdown {min-width: 0px;}
	.search_container .inner_container .inner_container {padding:0px;}
	    
}

/*======================== Hero ======================== */


.hero {
    position: relative;
    display: flex;
    align-items: center;
	width:100%;
}

/* Default hero (no featured image) - gray background */
.hero--default {
    background-color: #f3f3f3;
    color: #333;
	text-align:center;
	 height: auto;
}

.hero--default .hero__content .container {margin:0 auto;padding: var(--gutter-desktop);max-width: 1280px;}

/* Hero with featured image */
.hero--with-image {
    color: #fff;
	 height: 28vw;
}



/* Reduced height hero (no image, no text) */
.hero--reduced-height {
    aspect-ratio: 100 / 14;
}
.hero__background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    width: 100%;
    height: 28vw;
    background-size: contain;
}
.hero__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.hero__overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.hero__content {
    position: relative;
    z-index: 2;
    width: 100%;
}
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}
.hero__tagline {
	font-size: 18px;
	    color: #000;
	    letter-spacing: 0.5px;
	    margin-bottom: 3px;
	    opacity: 1;
}
.hero__title {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
	    margin: 0px;
		
}

.hero__text {
    font-size: 1.2rem;
    line-height: 1.6;
}

.hero__text strong {font-family:var(--font1);}
	
.hero__content .container {padding: 0px var(--gutter-desktop);margin: 0px;}

.hero__content .container p:last-child {margin-bottom:0px;}
	
.hero.hero--with-image.hero--with-text {text-align:center;color:white;}
.hero.hero--with-image.hero--with-text .hero__title {color:white;margin-bottom: 20px;}
.hero.hero--with-image.hero--with-text .container {margin:0 auto;}
.hero--with-text .hero__title {margin-bottom: 20px;}

.recipe-hero h1 {text-align:center;color:white;}
.recipe-hero .container {margin:0 auto;}

.dark-background h1 {text-align:center;color:white;}
.dark-background .container {margin:0 auto;}

@media (max-width: 1024px) {
    
	.hero.hero--with-image {
        aspect-ratio: 100 / 28;
    }
	
	.recipe-hero h1 {color:var(--pink);margin: 0px;}
	
	.hero--default .hero__content .container {padding: var(--gutter-mobile);}
	
	.hero.hero--default {aspect-ratio: unset;}
    
    .hero__title {
        font-size: 2rem;
    }
    
    .hero__text {
        font-size: 1rem;
    }
	
.hero--left-align .hero__content {
    text-align: left;
}

.hero--left-align .hero__tagline, .hero--left-align .hero__title {
    text-align: left;
}

.hero--with-image {display: inline-block;}
.hero--with-image  .hero__content {margin-top: 28vw;padding: var(--gutter-mobile);}
.hero--with-image  .hero__content .container {padding:0px;}

.hero--with-text .hero__text p {color:black; margin-top:10px}
.hero--with-text .hero__title {margin-bottom:0px;}

.hero.hero--with-image.hero--with-text {text-align:left;color:black;}
.hero.hero--with-image.hero--with-text .hero__title {color:var(--pink);}

.dark-background h1 {text-align:left;color:var(--pink);}

}


@media (max-width: 768px) {
    .hero__text {
        font-size: 0.8rem;
    }
}



/* Download Buttons */

ul.downloads{
list-style: none;
line-height: normal;
    display: flex;
    gap: 30px;
    flex-direction: row;
    flex-wrap: wrap;
	 padding: 0px;
	 margin-top:0px;
}

ul.downloads li{
width: calc(32% - 10px);
    line-height: 1.5em;
    background: var(--gray);
    min-height: 200px;
    text-align: center;
    margin-bottom: 0px;
    position: relative;
	border-radius: 30px;
    font-family: "p22-mackinac-pro", serif;
    font-weight: 700;
    transition: all 0.5s .25s ease-in-out;
    -webkit-transition: all .25s ease-in-out;
}

ul.downloads a {
	    color: black;
	    text-decoration: none;
	    line-height: 22px;
	    text-transform: uppercase;
	    display: flex;
	    align-items: center;
	    justify-content: center;
    padding: 40px 30px 75px;
		position: relative;
		width:100%;
		height:100%;
		box-sizing: border-box;	
	    transition: all 0.5s .25s ease-in-out;
	    -webkit-transition: all .25s ease-in-out;
}

ul.downloads a::after {
    content: "Download";
    display: block;
    position: absolute;
    bottom: 20px;
    font-size: 12px;
    background:black;
	color:white;
    padding: 5px 20px;
	border-radius:20px;
    transition: all 0.5s .25s ease-in-out;
    -webkit-transition: all .25s ease-in-out;
	transform: translateY(-3px);
}


ul.downloads li:hover{
	background: var(--pink);
}

ul.downloads li:hover a{
	color: white;
}

ul.downloads li:hover a::after {background:white;color:var(--pink);transform: translateY(-8px);}



@media (max-width: 1024px) {
	ul.downloads{display:inline-block;width: 100%;}
	
	ul.downloads li {
    width: 100%;
    min-height: unset;
    padding: 20px;
    box-sizing: border-box;
    margin-bottom: 30px;
	}
	
	ul.downloads li:last-of-type{margin-bottom: 0px;}
	
}



/* Press */

ul.press {list-style: none;width:100%;margin: 0px;padding: 0px;}
ul.press li {margin-bottom:25px;padding:50px;background:var(--gray);}
ul.press li:last-of-type, ul.press li p:last-of-type{margin-bottom: 0px;}

ul.press li a {    background:var(--gray);
	color:var(--pink);
	border:1.5px solid var(--pink);
    padding: 8px 24px;
	border-radius:20px;
    transition: all 0.5s .25s ease-in-out;
    -webkit-transition: all .25s ease-in-out;
font-family: "p22-mackinac-pro", serif;
text-decoration:none;font-size:80%;
font-variation-settings: "slnt" 0, "wght" 450;
}

ul.press li a:hover {background:var(--pink);color:white;}

ul.press li strong {font-size:150%;}




/* Timeline */

.timeline-container {
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
}

.timeline-list {
    list-style: none;
    position: relative;
	padding-left:0px;
}

.timeline-list::before {
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 4px;
    height: 100%;
    background: linear-gradient(180deg, #ed1966 0%, #ed1966 50%, #ed1966 100%);
    border-radius: 2px;
}

.timeline-item {
    position: relative;
    margin-bottom: 80px;
    opacity: 0;
    transform: translateY(50px);
    animation: fadeInUp 0.8s ease-out forwards;
}

.timeline-item:nth-child(odd) {
    text-align: right;
    padding-right: 60%;
    animation-delay: calc(var(--item-index) * 0.1s);
}

.timeline-item:nth-child(even) {
    text-align: left;
    padding-left: 60%;
    animation-delay: calc(var(--item-index) * 0.1s);
}

.timeline-content {
    background: #f3f3f3;
    border: 0px solid rgba(237, 25, 102, 0.2);
    padding: 25px 30px;
    position: relative;
}

.timeline-year {
    font-size: 2rem;
    font-weight: 800;
    color: #ed1966;
    margin-bottom: 10px;
}

.timeline-description {
    font-size: 1rem;
    line-height: 1.4;
    color: black;
}

.timeline-dot {
    position: absolute;
    top: 30px;
    width: 20px;
    height: 20px;
    background: linear-gradient(45deg, #ed1966, #ed1966);
    border: 4px solid white;
    border-radius: 50%;
    z-index: 2;
}

.timeline-item:nth-child(odd) .timeline-dot {
    right: 50%;
    transform: translateX(50%);
}

.timeline-item:nth-child(even) .timeline-dot {
    left: 50%;
    transform: translateX(-50%);
}

/* Arrow indicators */
.timeline-content::after {
    content: '';
    position: absolute;
    top: 28px;
    width: 0;
    height: 0;
    border: 12px solid transparent;
}

.timeline-item:nth-child(odd) .timeline-content::after {
    right: -24px;
    border-left-color: rgba(237, 25, 102, 1);
}

.timeline-item:nth-child(even) .timeline-content::after {
    left: -24px;
    border-right-color: rgba(237, 25, 102, 1);
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(50px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Milestone highlights */


.milestone .timeline-year {
    background: linear-gradient(45deg, #ed1966, #ed1966);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Mobile responsiveness */
@media (max-width: 1024px) {
    .timeline-list::before {
        left: 30px;
    }

    .timeline-item:nth-child(odd),
    .timeline-item:nth-child(even) {
        text-align: left;
        padding-left: 60px;
        padding-right: 0;
    }

    .timeline-item:nth-child(odd) .timeline-dot,
    .timeline-item:nth-child(even) .timeline-dot {
        left: 30px;
        transform: translateX(-50%);
    }

    .timeline-item:nth-child(odd) .timeline-content::after,
    .timeline-item:nth-child(even) .timeline-content::after {
        left: -24px;
        right: auto;
        border-right-color: rgba(237, 25, 102, 1);
        border-left-color: transparent;
    }

    .timeline-content {
        padding: 20px 25px;
    }

    .timeline-year {
        font-size: 1.5rem;
    }

    .timeline-description {
        font-size: 16px;
        line-height: 20px;
    }
}





/* Recipe Grid */

.recipe-grid-container {background:var(--gray);}
.grid-section {display: flex;flex-wrap: wrap;gap: 0px 15px;}
.recipe-item {text-align: center;overflow: hidden;border-radius:30px;background:white;width: calc(33% - 10px);margin-bottom: 15px;}
.recipe-item a {text-decoration: none;}
.recipe-image a img {width: 100%;height: auto;transition: all 0.5s .25s ease-in-out;-webkit-transition: all .25s ease-in-out;}
.recipe-image-mask {width: 100%;height: auto;overflow: hidden;}
.recipe-title {padding:25px;margin:0px;}
.recipe-item .products-used {margin: 0px;padding: 0px;list-style: none;margin-bottom: 20px;line-height: 16px;}
 .recipe-item .products-used li {margin:0px;}
 .recipe-item .products-used a {color: black;font-family:var(--font2);font-size: 12px; transition: all 0.5s .25s ease-in-out;-webkit-transition: all .25s ease-in-out;}
  .recipe-item .products-used a:hover {color: var(--pink);}
.recipe-image a:hover img {width: 100%;height: auto;transform: scale(1.06);}

.recipefilters {background:var(--gray);}
.recipe-filters {justify-content: center;display: flex; gap: 15px; margin: 25px; align-items: center;}

p.no-recipes {    text-align: center;
    display: inline-block;
    width: 100%;
    font-size: 2em;
    color: var(--pink);}

@media (max-width: 1024px) {
	.recipe-item {width: calc(50% - 7.5px);}
}

@media (max-width: 768px) {
	.recipe-item {width: 100%;}
}


/* Single Recipe */

.single-recipe-content {display:flex;align-items: flex-start;font-variation-settings: "slnt" 0, "wght" 350;}

.single-recipe .ingredients {margin-bottom: 50px;background:var(--gray);padding:var(--gutter-desktop);}
.single-recipe .ingredients h2 {margin-top:0px;}
.single-recipe .ingredients ul {margin: 0px;padding: 0px;list-style:none;}
.single-recipe .ingredients li {background:white;width:100%;padding:20px;box-sizing: border-box;margin-bottom:10px;font-family:var(--font2);color:black;}
.single-recipe .ingredients li:last-of-type {margin-bottom:0px;}
.single-recipe .ingredients p {font-variation-settings: "slnt" 0, "wght" 600;margin-top:25px;}

.single-recipe .directions {padding:var(--gutter-desktop);}
.single-recipe .directions h2 {margin-top:0px;margin-bottom:35px;}
.single-recipe .directions ol {padding:0px;font-family:var(--font2);color:black;counter-reset: list-counter;list-style: none;}

.single-recipe ol li {
    position: relative;
    margin-bottom: 1.95em;
    padding-left: 3em;
}

.single-recipe ol li::before {
    counter-increment: list-counter;
    content: counter(list-counter);
    position: absolute;
    left: 0;
    top: -2px;
    width: 2em;
    height: 2em;
    background-color: var(--pink);
    color: #fff;
    border-radius: 50%;
    font-size: 0.9em;
    text-align: center;
    line-height: 30px;
}


@media (max-width: 1024px) {
.single-recipe-content {display:inline-block;margin-top: 20px;}
.single-recipe h1 {font-size:1.8em;}
.single-recipe .ingredients, .single-recipe .directions{width:100%;padding:var(--gutter-mobile);}
.single-recipe ol li:last-of-type {margin-bottom:0px;}
.single-recipe .ingredients {margin-bottom: 10px;}
}

/* More Like This */

.morelikethis {background:var(--gray);}
.morelikethis h2 {width:100%;text-align:center;margin-bottom:40px;}

@media (max-width: 1024px) {
.morelikethis .recipe-item {width: calc(33% - 8px);}
}

@media (max-width: 768px) {
.morelikethis .recipe-item:last-of-type {margin-bottom:0px;}
.morelikethis .recipe-item {width: 100%;}
}






/* Product Grid */
.products-grid .product-item {padding-bottom: 10px;min-height: 330px;overflow:visible !important; background: var(--gray);text-align: center;overflow: hidden;border-radius:0px;width: calc(33% - 25px);margin: 25px 0px;padding:0px;}
.products-grid .product-item a {text-decoration: none;overflow: visible;}
.products-grid h3.product-title {font-size:1.25em;color:black;text-transform:uppercase;}
.products-grid .product-item a img {width: 100%;height: auto;transition: all 0.25s ease-out;margin: -30px 0px 0px;}
.products-grid .product-title {margin-bottom:30px;}
.products-grid .product-item.Wafer a img {margin:0px;}
.products-grid .product-item.Wafer .product-title {margin:0px;}
.products-grid .product-item.Block .product-title, .products-grid .product-item.Both .product-title {margin-top:30px;}

.products-grid .product-item a:hover img {transform: scale(1.06);}

@media (max-width: 1024px) {
	.products-grid .product-item {width: calc(50% - 6px);padding-bottom: 30px;}
}

@media (max-width: 768px) {
	.products-grid .product-item {width: 100%;}
}



/* Single Products */


.singleproduct-container {min-height: calc(100vh - 100px);}
	.singleproduct h1 {color:black;text-transform:uppercase;}
		
	.singleproduct-layout {display: flex;gap: 40px;align-items: flex-start;}
	
	.singleproduct-content {background:var(--gray);padding:var(--gutter-desktop);}

	.singleproduct-left {width:50%;	}

	.singleproduct-right {width:50%;}


.singleproduct .description {color:black;}
.singleproduct .product_codes {width:100%;color: black; font-size: 14px; font-family: var(--font2); display: inline-block; margin: 50px 0px; font-style: italic;}
.singleproduct-details {background:white;display:flex;width: fit-content;padding: 10px;color:black;}
.singleproduct-details p {margin: 5px;text-align: center;padding:0px 25px;font-family:var(--font1);font-size:21px;}   
.singleproduct-details p strong {font-size:14px;margin-bottom:10px;color: var(--pink); width: 100%; display: block; text-transform: uppercase;font-family:var(--font2); font-variation-settings: "slnt" 0, "wght" 750;}

.singleproduct .button {text-decoration:none;display: inline-block;transform: translateY(0px);transition: all 0.25s ease-out;}
.singleproduct .button:hover, .singleproduct .button:focus {background:black;transform: translateY(-5px);transition:all 0.25 ease;}


	.main-image {animation: fadeIn 1s ease-in-out;}
	
	.main-image img {width:160%;height:auto;}
	
	.product_type_Wafer .main-image img {width: 130%;height: auto;position: relative;left: -15%;z-index: 9;}

	@keyframes fadeIn {
	    from { opacity: 1; transform: translateX(1000px); }
	    to { opacity: 1; transform: translateY(0); }
	}

	.wafer-container {padding: 0px;max-width:250px;position:absolute;z-index:9;}
	.product_type_Wafer .wafer-container {z-index:8;}

	.wafer-animate {transition: transform 0.3s ease;animation: slideInFromRight 1s ease-in-out forwards;opacity: 0;}

	.wafer-1 { animation-delay: 0.2s; top:5%; top:1%; right: -9%;}
	.wafer-2 { animation-delay: 0.4s; top:15%; top:3%; right: 15%;}
	.wafer-3 { animation-delay: 0.6s; top:25%; top:33%; right: -5%;}
	.wafer-4 { animation-delay: 0.8s; top:35%; top:39%; right: 24%;}
	.wafer-5 { animation-delay: 1.0s; top:45%; top:55%; right: 4%;}
	
	.product_type_Wafer .wafer-1 { animation-delay: 0.2s; top:3%; right: -6%;}
	.product_type_Wafer .wafer-2 { animation-delay: 0.4s; top:1%; right: 37%;}
	.product_type_Wafer .wafer-3 { animation-delay: 0.6s; top:27%; right: -7%;}
	.product_type_Wafer .wafer-4 { animation-delay: 0.8s; top:43%; right: 28%;z-index:9;}
	.product_type_Wafer .wafer-5 { animation-delay: 1.0s; top:45%; right: 0%;z-index:9;}

	
	@keyframes slideInFromRight {
	    from { 
	        opacity: 0; 
	        transform: translateX(1000px); 
	    }
	    to { 
	        opacity: 1; 
	        transform: translateX(0) rotate(0deg); 
	    }
	}


	.wafer-animate img { width: 100%; height: auto; transition: all 0.3s ease; }

	.fine-print-container { background:var(--pink);display: inline-block; color: white; font-family: var(--font1); padding: 50px; text-align: center;width:100%;font-size:16px; line-height: 26px; border-bottom: 10px white solid;}

		
		

	/* Mobile */
	
	
	@media (max-width: 1024px) {
		
.singleproduct-layout {flex-direction: column-reverse;gap:0px;}

 .singleproduct-content { padding: var(--gutter-mobile); }

.singleproduct-left { width: 100%;position: relative;bottom: 10px;}
 
 .product_type_Wafer .singleproduct-left { width: 100%;position: relative;bottom: 40px;}

 .singleproduct-right { width: 100%; }

 .singleproduct-right img { width: 100%; height:auto; }

 .singleproduct .product_codes { margin: 20px 0px; }

 .singleproduct .button { font-size: 12px; }

 .singleproduct h1 {font-size: 1.8em;}
 
 .singleproduct h2 {font-size: 1.2em;}

 .wafer-container { flex-direction: row; flex-wrap: wrap; justify-content: center; }

 .wafer-animate { flex: 0 0 calc(50% - 10px); }
 
 .singleproduct-details p {font-size: 17px;padding:15px;}

 .fine-print-container { background:var(--pink);display: inline-block; color: white; font-family: var(--font1); padding: 5px; text-align: center; width:100%; font-size:11px;
		line-height: 14px;}

.wafer-container {display:none;}

main:not(.product_type_Wafer) .wafer-5 {animation-delay: 0.5s;top: 32%;right: 49%;width: 37%;display:inline-block;}

.product_type_Wafer .main-image img {width: 100%;height: auto;left: 0%;}

.singleproduct-details { max-width: 100%;}
.singleproduct-details p strong {font-size: 11px;}

.singleproduct-container {min-height: auto;}

	}


	@media (max-width: 900px) {main:not(.product_type_Wafer) .wafer-5 {top: 30%;}}
	@media (max-width: 850px) {main:not(.product_type_Wafer) .wafer-5 {top: 28%;}}
	@media (max-width: 800px) {main:not(.product_type_Wafer) .wafer-5 {top: 26%;}}


	@media (max-width: 768px) {
		
		.wafer-container { flex-direction: column; align-items: center; }

 .wafer-animate { flex: none; max-width: 250px; }

 .singleproduct-details p {font-size: 17px;padding:5px;}

 main:not(.product_type_Wafer) .wafer-5 {top: 24%;}
 
 .postid-110 .main-image {position: relative;bottom: 20px;}

		 
	}


@media (max-width: 700px) {main:not(.product_type_Wafer) .wafer-5 {top: 22%;}}
@media (max-width: 600px) {main:not(.product_type_Wafer) .wafer-5 {top: 20%;}}
@media (max-width: 550px) {main:not(.product_type_Wafer) .wafer-5 {top: 18%;}}
@media (max-width: 500px) {main:not(.product_type_Wafer) .wafer-5 {top: 16%;}}
@media (max-width: 450px) {main:not(.product_type_Wafer) .wafer-5 {top: 14%;}}
@media (max-width: 400px) {main:not(.product_type_Wafer) .wafer-5 {top: 11%;}}






	/* Specific Page Rules */


.inner_container .wp-block-group {background:var(--gray);padding:50px;margin-bottom:35px;}
.inner_container .wp-block-group p:last-of-type {margin-bottom:0px;}
.inner_container .wp-block-group h3 {margin-top:0px;}

@media (max-width: 1024px) {
	.inner_container .wp-block-group {background:var(--gray);padding:25px;margin-bottom:25px;}
	.inner_container .wp-block-group:last-of-type {margin-bottom:0px;}
}

	
.page-id-47 .inner_container .smallp {line-height: 13px;opacity: 0.5;}
.page-id-47 .inner_container h4 {color:black;}

