/* Fonts */



.ps-lightbox .ps-ribbon > div > label, .ps-ribbon > div > span ,
.ps-lightbox .ps-product-details > h1.ps-product-name {
	font-family: Helvetica, Arial, sans-serif;
	font-weight:700;
}

html {
	font-family: Helvetica, Arial, sans-serif;
	line-height:1.25;
}
body {
    background-color: #f2f2f2;
	overflow:hidden;
	text-align:center;
}
@media (min-width:48em) {
	body {
		text-align:left;
	}
	.desktop-hide { 
		display:none;
	}
}
section {
}
/* Navigation */
#critical_communications {
	z-index:199;
	background:#f0f0f0;
}
header {
	background:#fff;
	box-shadow: 0 -0.7em 1.5em 0.5em rgba(0,0,0,0.5);
	max-width:100vw;
}
header, footer, main {
font-size: 1.04em;
}
.header-logo {
	background:transparent;
	display:inline-block;
	height: 6.5em;
	margin-bottom: -1em;
	margin-left: -0.3em;
	padding:0;
	vertical-align: top;
	width: 9.5em;
}
.header-logo img{
	display:block;
	/* height:4.5em; */
	margin:0 auto;
}
.mobile-menu--active .navicon span:after {
	width:2em;
	margin-left:0;
}
header a, 
header button, 
footer a, 
nav a {
	color:#074F89;
	text-decoration:none;
}
header a {
	padding: 0.5em 0.75em;
}
.menu-button,
.search-button {
}
.nav--container {
	text-align: left;
}
.nav--main,
.nav--featured,
.nav--secondary ul {
	font-weight:bold; 
}
.nav--featured {
	text-transform:uppercase;
	padding:0 0.5em;
	background:#f8f8f8;
	height:3em;
}

.nav--featured a {
	color:#074F89;
	padding: 1.4em 0.4em 0.8em;
	
}
.nav--featured a:hover {
	color:#CD0F45;
	background:inherit;
}
.nav--featured .nav-item--current > a {
	text-decoration:underline;
}

.nav--main ul {
	color:#fff;
	background:transparent;
}

.nav--mobile-extras {
	margin:-3em 0 0;
	text-align:center;
	padding-top: 6em;
	
}
.nav--mobile-extras a {
	text-transform:none; 
	display:inline-block;
}
.nav--mobile-extras .social_icons {
	font-size:1.5em;
	padding: 0.5em 0;
}
.nav--mobile-extras .social_icons a {
	margin:0;
	padding: 0 0.25em;
	height: 1.2em;
}
.nav--mobile-extras p {
	margin:0 -1em;
	font-size:90%;
}
.nav--mobile-extras p a {
	text-decoration:underline;
	padding:0.5em;
}
nav a:hover {
	background:transparent;
	color: #c30e42;
}

@media (max-width:47.95em) {
	header {
		height:7.5em;
	}
	main {
		padding-top:7.5em;
	}
	.header-logo {
		height:4.5em;
		margin-bottom:0;
		margin-left:0;
	}
	.header-logo img{
		display:block;
		margin:0 auto;
		height: 5.25em;
	}
	.nav--container {
		background:#fff;
		height:calc(0vh - 0em);
		max-height:none;
		transition: opacity 0.2s, height 0.2s, padding 0.2s, visibility 0.2s;
	}
	.nav--container .nav--secondary:focus-within {
		/* z-index:2; */
	}
	.mobile-menu--active .nav--container {
		padding-top:0;
		height:auto;
		max-height:none;
		height:100vh;
		transition: opacity 0.2s, height 0.2s, padding 0.2s, visibility 0s;
	}
	.nav--container a {
		color:#0e5b8b;
		transition:box-shadow 0.25s, color 0.15s;
	}
	.nav--main ul a::after {
		color:#074F89;
	}
	nav a:hover {
		color:#ddd;
	}
	.nav--container ul a {
		box-shadow:inset 0 0em 0 rgba(255,255,255,0);
	}
	.nav--container ul a:hover {
		color:#074F89;
		box-shadow:inset 0 -3em 0 rgba(255,255,255,0.8);
	}
	.nav--secondary {
		background:#fff;
		
	}
	.nav--main {
		transition:padding 0.4s;
	}
	.mobile-menu--active .nav--main {
		padding-top:1em;
	}
	.nav--container nav {
		padding:0;
	}
	header a {
		padding: 0.5em 1em 0.5em;
	}
	.nav--main a {
		margin-right:3.5em;
	}
	.nav--main a::after {
		margin-left:1em;
	}
	.nav--main ul ul a {
		text-transform:none;
	}
	.nav--main li.mobile-nav--opened > a::after {
		margin-left:4em;
	}
	.nav--main a.nav-list-title::after {
		display:none;
	}
	.nav--main li.mobile-nav--opened:nth-child(2) > a::after {
		margin-top:-2em;
	}
	.nav--main li.mobile-nav--opened:nth-child(3) > a::after {
		margin-top:-4em;
	}
	.nav--main li.mobile-nav--opened:nth-child(4) > a::after {
		margin-top:-6em;
	}
	.nav--main li.mobile-nav--opened:nth-child(5) > a::after {
		margin-top:-8em;
	}
	.nav--main > ul, .nav--secondary ul {
		font-size:133%;
	}
	.menu-button, 
	.search-button {
		font-size:0.75em;
	}
}
@media (max-width:47.95em) and (min-aspect-ratio:10/7) {
	
	html { 
		font-size:inherit; 
	}
	body { 
		font-size:2.5vw; 
	}
	
	#search {
		top:0;
		z-index: 199;
		padding: 1.125em 0 0;
	}
	#search::before {
		height:0;
	}
	.page--search-results #search {
		top:5.5em;
	}
	/* layering elements */
	.search--active header::before {
		content:'';
		background:#fff;
		width:100%; 
		position:fixed;
		height:6.5em;
		top:0;
		z-index:99;
	}
	.search--active .nav--featured {
		position:fixed;
		z-index:99;
	}

	.search--active .menu-button,
	.search--active .search-button {
		color:#fff;
	}
	.search--active #critical_communications ~ #search {
		margin-top:0;
	}
	.search--active #critical_communications + header .nav--featured {
		margin-top:3em;
	}
	.search--active header {
		z-index:auto;
		position:static;
		margin-bottom:-6.5em;
	}
	.header-logo {
		transition:opacity 0.15s;
	}
	.search--active .header-logo {
		opacity:0;
	}
	header .content_wrapper {
		position:fixed;
		left:1em; right:1em;
		top:0;
		z-index:999;
	}
	#critical_communications + header .content_wrapper {
		margin-top:3em;
	}
	.menu-button, 
	.search-button {
		z-index:9999;
	}
	.nav--container {
	}
	.nav--container nav {
	}
	.mobile-menu--active .nav--container {
		height: calc(100vh - 5.5em);
	}
	.nav--mobile-extras .social_icons {
		display:inline-block;
		vertical-align:middle;
		margin:1em;
	}
	.nav--mobile-extras p {
		margin:1em;
		display:inline-block;
		vertical-align:middle;
		
	}
	header .content_wrapper {
		max-width:none;
	}
}

@media (max-width:20em) {
	.nav--container nav {
		min-width:300px;
	}
}
@media (min-width:48em) {
	.nav--container {
		background:transparent;
		box-shadow:none;
	}
	.nav--main ul div {
		background:rgba(0,0,0,0);
		box-shadow: 0 0.2em 0.2em rgba(0,0,0,0.25);
	}
	.nav--main ul div > ul {
		background:#fff;
	}
	.nav--main a {
		white-space:nowrap;
	}
	.nav--main ul ul {
		padding:.2em;
	}
	.nav--main li > div {
		left:0;
		transform:none;
		min-width:10em;
	}
	.nav--main ul ul a {
	}
	.nav--secondary li {
		position:relative;
	}
	.nav--main > ul > .nav-item--current > a ,
	.nav--main > ul > .nav-item--current-parent > a ,
	.nav--secondary .nav-item--current > a ,
	.nav--secondary .nav-item--current-parent > a {
		color:#Cd0f45;
	}
	.nav--secondary .nav-item--current::after,
	.nav--secondary .nav-item--current-parent::after {
		left:2.5em;
	}
	.nav--main > ul > .nav-item--current.li--products::after,
	.nav--main > ul > .nav-item--current-parent.li--products::after {
		right: 2.75em;
	}
	.nav--secondary a {
		padding-left:2em;
		position:relative;
	}
	.nav--secondary a img {
		width: 1em;
		height:2em;
		position:absolute;
		top: 0.25em;
		left: 0.75em;
	}
	
	
	.nav--secondary .link--where-to-buy:hover {
		filter: brightness(0) saturate(100%) invert(16%) sepia(76%) saturate(3375%) hue-rotate(328deg) brightness(93%) contrast(106%);
	}
	.search-button {
		font-size: 0.75em;
		margin-top: 4em;
	}
	.search-button span::after {
		top: 2.45em;
		width: 0.9em;
	}
}
/* largest size */
@media (min-width:68em) {
	.nav--container {
		flex-grow:1;
		display:flex;
		justify-content:space-between;
		align-items:flex-start;
		align-self:center;
		height:100%;
	}
	.nav--container ul {
	}
	.nav--main,
	.nav--secondary	{
		margin-top:0;
		position:static;
		height:100%;
	}
	.nav--main > ul,
	.nav--secondary > ul {
	}
	.nav--main > ul > li,
	.nav--secondary > ul > li {
		padding:1.5em 0;
	}
	.nav--main > ul > .nav-item--current::after,
	.nav--main > ul > .nav-item--current-parent::after ,
	.nav--secondary .nav-item--current::after,
	.nav--secondary .nav-item--current-parent::after {
		bottom:1em;
	}
	.search-button {
		margin-top: 0;
		margin-left:0;
	}
	.nav--main > ul > li,
	.nav--secondary > ul > li {
		padding: 1.5em 0;
	}
}
@media (min-width:64em) {
	header nav {
		font-size:inherit;
	}
}

footer {
	color:#0e5b8b;
	position:relative;
	margin-top:10%;
	background:#fff;
	padding-bottom:1em;
	
}


footer .copyright {
    background: #fff; 
    color: #000;
    padding: 0;
    width: calc(100% - 2em);
}
footer a {
	color:#0e5b8b;
    
}

footer .content_wrapper {
	position:relative;
	z-index:1;
	margin-top:0;
	margin-bottom:2em;
	max-width: 48em;
}
footer nav {
	font-weight: bold !important;
	margin-left:auto;
	margin-right:auto;
	max-width:32em;
}
.footer-nav--main {
	padding: 5em 0 0 0;
    width: calc(100% - 2em);
} 
.footer-nav--main ul {
	text-transform:uppercase;
	position:relative;
	display: block;
	padding-top: 2em;
	padding-bottom: 1vw;
}
.footer-nav--main a:hover {
	background:none;
	color: #c30e42;
}
.footer-nav--main a {}
.footer-nav--secondary {
	padding: 0;
    width: calc(100% - 2em);
}
.footer-nav--secondary a {
	text-decoration:underline;
}
footer li {
	margin:0 1em 0em 0;
	padding:0.5em 0;
	break-inside:avoid;
}
.footer-nav--main li:first-child a::before {
	content: '';
	display:block;
	background:url(../images/site/recipesricekrispies-logo.png) center / contain no-repeat;
	    top: -8.5em;
    width: 9em;
    height: 6em;
    left: 50%;
    position: absolute;
    transform: translate(-50%, 0);
}
footer .social_icons a {
	/* margin-top:2em; */
	margin-bottom:0;
}
.ccpa_button {
	border-radius: 30px;
	padding: 5px 20px;
	margin: 0 auto;
	display: block;
	color: #fff;
	background: #074f89;
}
@media (min-width:48em) {
	footer {
		margin-top: calc(5% + 1em);
	}
	footer::before {
	}
	footer nav {
		max-width:48em;
	}
	footer .content_wrapper {
		margin-top: 0em;
	}
	
	.footer-nav--main ul {
		text-align:left;
		columns: 3;
	}
	.footer-nav--main li {
		display:block; 
		max-width:10em;
	}
	#back-to-top {
		border:none;
		width: 2.4em;
		height: 2.4em;
		top:2em;
		transform:none;
	}
	#back-to-top::after {
		border: 0.2em solid currentcolor;
		content:'';
		display:block;
		width:2em;
		height:2em;
		border-radius: 100%;
		transform: rotate(45deg);
	}
	#back-to-top::before {
		position:absolute;
		transform: rotate(45deg);
		margin:0.85em 0.71em;
	}
}
/* Headings and paragraph styles */
h2, h1{
	font-size: 2em;
	font-size:calc(1.5em + 2.5vw);
	line-height:0.9;
	text-align:center;
	color: #074f89;
}
h3 {
	font-size:2em;
	line-height:1.1;
}
h1,h2,h3,h4,h5,h6 {
	font-weight: 800;
	letter-spacing: -0.02em;
	margin:1rem auto;
}
h1,h2 {
}
h2 strong { 
	
}
p {
	margin:1rem auto;
}
.pretend-p {
	color:inherit;
	font-family:inherit; 
	font-weight:inherit;
	font-size:inherit;
	line-height:inherit;
}
h1 span,h2 span,h3 span,h4 span,h5 span,h6 span {
	white-space:nowrap;
}
.disclaimer {
	font-size:0.8em;
} 
small {
	font-size:0.667em;
} 
sup {
	text-decoration:none;
}
h1 sup,
h2 sup,
h3 sup {
	font-size: 33%;
	top: -1.52em;
	margin-left: 0.1em;
}
.kfr-tout--sticky {
	font-weight:bold;
	text-transform:uppercase;
}
.kfr-tout--sticky a {
}
.kfr-tout--sticky  .icon--close:focus {
	outline:medium solid #fff;
}
.kfr-tout--sticky a:focus {
	outline:none;
}
.kfr-tout--sticky a:focus .button-cta {
	outline:medium solid #fff;
}
.kfr-tout--sticky strong {
}
@media (min-width:48em) { 
	.kfr-tout--sticky a {
		font-size:inherit;
	}
}
.mobile-menu--active .kfr-tout--sticky,
.search--active .kfr-tout--sticky,
.mobile-menu--active main,
.search--active main {
	pointer-events:none;
}
@media (min-width:48em) { 
	h2, h1 {
		font-size:3em;
	}
}
/* Tables */
table {
	margin:0;
	border-collapse:collapse;
	border-spacing:0;
	width:100%;
}
tr {
}
td {
	padding:0.5em 0;
}
ul, ol {
	margin:1rem 0 1rem;
	padding-left:2em;
}
li {
	margin:1rem 0 1rem;
}
li:first-child {
	margin-top:0;
}
li:last-child {
	margin-bottom:0;
}
/* Links and CTA Buttons */
a {
	color:#074F89;
	text-decoration:none;
}
input[type=submit], 
[type="button"], 
[type="reset"], 
[type="submit"],
.button-cta {
	font-weight:bold;
	font-size: 1.125rem;
	text-align:center;
	background:#Cd0f45;
	border:none;
	border-radius:1.5em;
	color:#fff;
	padding: 0.7em 1.5em 0.7em;
	margin:0 0 1em;
	text-transform: uppercase;
	transition:color 0.15s, background 0.15s;
	white-space:nowrap;
}
[type="button"]:hover, 
[type="reset"]:hover, 
[type="submit"]:hover,
.button-cta:hover {
	background:#9d0c35;
}
.video-fullwidth .ytplayer-wrapper {
	margin:0 -1em;
	height:auto;
}
.yt-link-initialized {
	opacity: 1;
	pointer-events: auto;
}
.ytplayer .icon--player {
	opacity: 0.33;
	transform:translate(-50%,-50%) scale(0.75);
}
.yt-link-initialized .icon--player {
	opacity:1;
	transform:translate(-50%,-50%) scale(1);
	transition:opacity 0.15s, transform 0.15s;
}
.icon--player {
	color:#fff;
	border:none;
	border-radius: 100%;
	box-shadow: 0.05em 0.05em 0.2em rgba(0,0,0,.5);
	overflow: hidden;
	width: 5em;
	height: 5em;
}
.icon--player::before {
	display: block;
	content: '';
	background: currentcolor;
	box-shadow: 1.65em 0 0.2em -1.55em rgba(0,0,0,0.5);
	height: 5em;
	width: 4em;
	left: -2.2em;
	position: absolute;
	z-index: 1;
}
.icon--player::after {
	display: block;
	content: '';
	border:none;
	height: 5em;
	width: 5em;
	position: absolute;
	top: -1em;
	left: -3.7em;
	transform: translate3d(0,0,0) scaley(.6) rotate(-45deg);
	box-shadow: inset 0em 0em 0.3em rgba(0,0,0,.5), 2em 2em 0 2em currentcolor;
}
.ytplayer:hover .icon--player {
	color:#dedede;
}
.ytplayer {
	opacity:0.8;
	pointer-events:none;
}
.yt-link-initialized {
	opacity:1;
	pointer-events:auto;
}
.video-fullwidth {
	padding-bottom:2em;
	text-align:center; 
	position:relative;
}
.video-fullwidth .button-cta {
	position:absolute; 
	right:50%;
	bottom:2.5rem;
	transform:translate(50%,0);
	z-index:1;
}
.video--ingredients h2 {
	max-width:9em;
}
@media (min-width:48em) { 
	.icon--player {
		font-size:1em;
	}
	.video-fullwidth .ytplayer-wrapper {
		width:66.67%;
		margin:0 auto;
	} 
	.video--ingredients .content_wrapper {
		display:flex;
		align-items: center;
		break-inside: avoid;
		page-break-inside: avoid;
	}
	.video--ingredients .video-description {
		order:1;
	}
	.video-fullwidth .button-cta {
		position:static; 
		transform:none;
	}
}
.nav--main li:hover > div {
	max-height:100vh !important;
}
/* Forms */
input,
textarea {
	border-radius:0em;
	background:#f0f0f0;
}
input[type=password], 
input[type=email], 
input[type=number], 
input[type=tel],
input[type=text], 
input[type=search], 
input[type=date], 
textarea {
	border:0.15em solid #074F89;
	border-radius:2em;
	background:#fff;
	padding:0.75em 1em 0.75em 1em;
    line-height: 1.49em;
}
select {
	border:0.15em solid #074F89;
	border-radius:2em;
	background:#fff;
	font-weight:600;
	text-align:center;
	padding:0.75em 2em 0.75em 1em;
	transition:color 0.15s, background 0.15s;
}
select::-ms-expand {
	display: block;
	position:relative;
	border-left:0.33em solid transparent;
	border-right:0.33em solid transparent;
	border-top:0.5em solid #000;
	border-bottom:none;
	background:transparent;
	width:0;
	height:0;
	transform:translate(0.75em,0);
}
.select-wrapper::before {
	color: #0096d9;
}
.select-wrapper select {
	padding:0.75em 3em 0.75em 1em;
} 
.pagination a,
.pagination input {
	background:#074F89;
}
.pagination input {
	padding-top:0.15em;
	padding-bottom:0.15em;
    width: 9em;
}
#search {
	background: rgba(7, 79, 137, 0.95);
}
#search input[type="text"] {
	border-radius:0;
	background:transparent;
	text-indent:3rem;
	padding: 0 3rem 0 0;
}
#search .search-label--large {
	font-weight:800;
	font-size:266%;
    width: auto;
    padding: 0 0.2em 0.8em 0;
}


#search .content_wrapper {
	max-width:none;
}
#search .search-label--large::after {
	content:':';
}
#search .search-label--submit::before {
	top:0.3em;
	left: 0.46em;
}
#search .search-label--submit::after {
	top: 2.15em;
	left: 1.8em;
}

.search--active #search .content_wrapper {
    transform: translate(0, 0);
    margin: 0 auto;
    align-items: center;
    justify-content: center;
}

@media (min-width:48em) {
	#search input[type="text"] {
		text-indent:0.03em;
		width: calc(100% - 10rem);
	}
   
    #search .search-label--small {
        width: 100%;
        text-align: center;
        padding-left: 0;
    }
}

.page--search-results #search .content_wrapper {
    transform: none;
    justify-content: center;
}

/* Some active styles */
a:focus, 
a:active,
button:focus, 
button:active,
input:focus, 
input:active,
textarea:focus, 
textarea:active ,
select:focus, 
select:active, 
[tabindex]:focus ,
.faq input:focus + label,
form input[type="checkbox"]:focus + label:before, 
form input[type="radio"]:focus + label:before,
input[type="checkbox"]:focus + label:before, 
input[type="radio"]:focus + label:before {
	outline:medium solid rgba(0, 0, 0);
	
}
.hero--homepage a.button-cta:focus,
.hero--homepage a.button-cta:active,
footer a:focus,
footer a:active {
	outline:medium solid rgba(0, 0, 0);

}

#search input[type=text]:focus {
	outline:medium solid rgba(0, 0, 0);
	
}
input:focus, 
input:active,
textarea:focus, 
textarea:active ,
select:focus, 
select:active, 
button:focus, 
button:active {
	outline:medium solid rgba(0, 0, 0);
	
	box-shadow:0 0 0 2px rgba(37, 165, 255, 0.67);
}

#critical_communications a:focus,
#critical_communications a:active,
.nav--featured a:focus,
.nav--featured a:active {
	outline:medium solid rgba(0, 0, 0);
	
}

.menu-button:focus:hover,
.menu-button:active:hover,
.search-button:focus:hover,
.search-button:active:hover,
a:focus:hover,
a:active:hover {
	outline:none;
	box-shadow:none;
}




@media (max-width: 47.95em) {
	.nav--container ul a:focus {
		outline:medium solid rgba(255, 255, 255, 0.67);
	}
}
#search input[type=text] {
        width: auto;

}
#search input[type=text]:focus {
	border-bottom-color:#Cd0f45;
	outline:none;
}
/* Change autocomplete styles in WebKit */
#search input[type=text]:-webkit-autofill,
#search input[type=text]:-webkit-autofill:hover,
#search input[type=text]:-webkit-autofill:focus,
#search input[type=text]:-webkit-autofill:active {
	transition: background-color 5000s ease-in-out 0s, color 5000s ease-in-out 0s;
	-webkit-text-fill-color: #fff !important;
	color: #fff !important;
}
.menu-button:focus:hover,
.menu-button:active:hover,
.search-button:focus:hover,
.search-button:active:hover,
a:focus:hover,
a:active:hover {
	outline:none;
	box-shadow:none;
}
.tns-controls[tabindex]:focus {
	outline:none;
}
.tns-controls[tabindex]:focus::after {
	content: '';
	display: block;
	border:medium solid rgba(37, 165, 255, 0.67);
	position: absolute;
	top: 0px;
	left: 0px;
	bottom: 0;
	right: 0;
	z-index: 1;
	pointer-events: none;
}
.tns-outer .tns-controls button[data-controls]::before, 
.tns-outer .tns-controls button[data-controls]::after {
	background: #074f89;
}

.tns-controls button[data-controls="prev"]::before, 
.tns-controls button[data-controls="prev"]::after{
	/* left: 0.75em; */
}

/* Basic Hero */
.pagehero {
	height:56.25vw;
	text-align: center;
	max-height:none;
	background-color: #f2f2f2;
     border-bottom-left-radius: 50% 20%;
    border-bottom-right-radius: 50% 20%;
    width: 130%;
    margin: 0 -15%;
}
.pagehero .hero{
    
}
.pagehero .content_wrapper::before {
	height:90%;
	margin-right: -0.31em;
}
.pagehero section {
	margin:0 auto;
}
.pagehero h2, .pagehero h1 {
	font-size:3.5em;
	color:inherit;
	text-shadow:0.1em 0.1em 0.15em rgba(0,0,0,0.25); 
}
.pagehero .rich-text {
	color:#fff;
	margin:0 auto 0;
	font-size: 1rem;
}
.pagehero > section > img, .pagehero > section > picture img {
	min-width:80%;
}
/* Home Hero */
.hero--homepage {
	height: 129vw;
	background: radial-gradient(ellipse at 0 0, #20aeee 30%, #2076c3, #233e99 100%);
    border-bottom-left-radius: 50% 20%;
    border-bottom-right-radius: 50% 20%;
    width: 130%;
    margin: 0 -15%;
    max-height: 36em;
}
.hero--homepage .rich-text {
	vertical-align:middle;
}
.hero--activities, .hero--party-ideas, .hero--videos {
	height: 30vw;
	background: radial-gradient(ellipse at 0 0, #20aeee 30%, #2076c3, #233e99 100%);
    border-bottom-left-radius: 50% 50%;
    border-bottom-right-radius: 50% 50%;
    width: 110%;
    margin: 0 -5%;
    min-height: 5em;
}
.hero--products {
	height:120vw;
}
.hero--about-us {
	height:75vw;
}
.hero-slide--poppers h2,
.hero--about-us h2, .hero--about-us h1,
.hero--homepage h2, .hero--homepage h1 {
	text-shadow: 0.08em 0.08em 0 #0b4f88;
	font-size: 3em;
	margin-top:0;
}
.hero--homepage h2, .hero--homepage h1 {
	font-size:12vw;
    display: none;
    visibility: hidden;
}

.hero--homepage img{
    margin: 0 auto;
}

.hero--homepage img:first-of-type{
    width: 60%;
    max-width: 14em;
}

.hero-slide--poppers .rich-text,
.hero--about-us .rich-text,
.hero--homepage .rich-text {
	position:absolute;
	top:1em;
	left:12%;
	right:12%;
	bottom:0;

	font-size:calc(0.8em + 0.9vw);
}
.hero--about-us .rich-text,
.hero-slide--poppers .rich-text {
	font-size:4vw;
}
.hero--about-us .content_wrapper {
	background:url(../images/about-us/about-hero.png) center top 19vw / 78% auto no-repeat;
	position:relative;
}
.hero--homepage .button-cta {
	margin: 0;
}
.hero--homepage .hero-slide--love .button-cta {
	position: relative;
	margin: 0 auto;
	display: block;
	top: 0;
	right: 0;
	transform: none;
}
.hero--homepage .button-cta:nth-child(2) {
	color: #0896d8;
	background: #fff;
	top: 92%;
	margin-left: 1em;
}
.hero--products .tns-controls button[data-controls]::before, 
.hero--products .tns-controls button[data-controls]::after {
	background:#fff;
}

.hero--homepage .hero-slide--love p{
	margin: 80vw 0 4% 0;
	font-size: calc(1.4em + 0.9vw);
}

@media (min-width:48em) {
	.pagehero {
		height: 20vw;
		min-height: 20em;
	}
	.pagehero .rich-text {
		text-align:center;
		margin:0em 2em;
		text-shadow:none;
	}
	.pagehero h2, .pagehero h1 {
		font-size:5em;
	}
	.hero--homepage,
	.hero--about-us {
		height:40vw;
		min-height: 20em;
	}
	.hero-slide--poppers .content_wrapper,
	.hero--about-us .content_wrapper,
	.hero--homepage .content_wrapper {
		position:relative;
		text-align:left;
	}
	.hero--homepage > section > picture img {
		width:100vw;
		height:45vw;
	}
	.hero-slide--totr .content_wrapper::after {
		content:'';
		position:absolute;
		top: 0em;
		left: 7em;
		right: 6em;
		bottom: -2em;
		background:url(../images/home/treatboys4.png) center / contain no-repeat;
	}
    .hero-slide--totr-fr .content_wrapper::after {
		background:url(../images/home/treatboys4-fr.png) center / contain no-repeat;
	}
	.hero-slide--love .content_wrapper::after {
		content:'';
		position:absolute;
		top: 4em;
		left: -17em;
		right: 0em;
		bottom: 2em;
		background:url(../images/home/alittlelove-desktop-springv65.png) center / contain no-repeat;
	}
	.hero--homepage .rich-text {
		margin: -9em 0em 0;
		position: relative;
		font-size: 1.75vw;
		z-index: 2;
	}
	.hero-slide--totr .rich-text {
		margin: -9em 0em 0;
		position: relative;
		font-size: 1.75vw;
		z-index: 2;
        max-width: 20em;
	}
	.hero-slide--love .rich-text {
		font-size: 1.75vw;
		z-index: 2;
		position: absolute;
		left: 52vw;
		top: 25vw;
		width: 40%;
	}
	.hero-slide--love .rich-text p{
		margin-top: 0;
	}
	.hero--about-us .content_wrapper {
		max-width:none;
	}
	.hero--about-us .rich-text {
		margin: -12em 0em 0 4.5em;
		position: relative;
		font-size: 1.5vw;
		z-index: 2;
		max-width:24em;
	}
	.hero--about-us .rich-text {
		margin-top:-5em;
	}
	.hero--homepage h2, .hero--homepage h1 {
		font-size:4em;
	}
	.hero--about-us h2, .hero--about-us h1 {
		font-size:5em;
	}
	.hero--about-us .content_wrapper {
		background-position:right 2vw top 7vw;
		background-size:contain;
	}
	.hero--homepage .button-cta {
		font-size:1em;
		position:static;
		transform: none;
	}
	.hero--products {
		height:50vw;
	}
	.hero--homepage .hero-slide--love p{
		font-size: 1.0em;
	}
	.hero--homepage .hero-slide--love .button-cta{
		display: inline;
	}
	.tns-outer .tns-controls button[data-controls]::before, 
	.tns-outer .tns-controls button[data-controls]::after {
		background: #05365d;
	}
	.pagehero .hero-slide > picture img{
		max-height: none;
	}
    .hero--homepage {
       width: 110%;
        margin: 0 -5%;
    }
    .hero--activities, .hero--party-ideas, .hero--videos {
	height: 15vw;
        min-height: 16em;
    }
    .hero--homepage img:first-of-type{
        max-width: 20em;
    }
    
} 
@media (min-width:75em) {
	.hero--homepage {
		height:calc(15vw + 20em);
	}
	.hero--homepage .rich-text {
		font-size: 1.4em;
	}
	.hero--homepage .button-cta {
		font-size:1.125rem;
	}
	.hero-slide--love .rich-text {
		left: 43vw;
		top: 21vw;
		width: 40%;
	}
	.hero-slide--love .content_wrapper::after {
		top: 4em;
		left: -30em;
		right: 0em;
	}
    .hero-slide--totr .content_wrapper::after {
		top: 0em;
		left: 7em;
		right: 6em;
		bottom: -5em;
	}
}

/* Hero slider styles*/
.pagehero .tns-nav {
	bottom:3vw;
	visibility: hidden;
}
.pagehero .tns-nav button {
	color:rgba(255,255,255,0.2);
}
.pagehero .tns-nav button::before {
	box-shadow:inset 0 0 0 1px #fff;
}
.pagehero .tns-nav button.tns-nav-active {
	color:#fff;
}
.tns-outer .tns-controls button[disabled] {
	opacity:0.33;
	cursor:default;
}
.tns-nav button:hover {
	background:transparent;
}

.new-home-slider {
	text-align:center;
	position:relative;
	background:#074f89;
	color:#fff;
}
.new-home-slide h2 {
	color:#fff;
	text-shadow: 0.08em 0.08em 0 #0b4f88;
	font-size: 3em;
	margin-top: 0;
	font-weight: 800;
}
.new-home-slider section {
	margin:0;
}
.new-home-slide {
	position:relative;
}
.new-home-slide .content_wrapper {
	height:100%;
	white-space:nowrap;
	position:relative;
}
.new-home-slide .content_wrapper::before {
	content: '';
	height: 100%;
	display: inline-block;
	vertical-align: middle;
}
.new-home-slide .rich-text {
	display: inline-block;
	vertical-align: middle;
	white-space:normal;
}
.new-home-slide--homestyle .rich-text {
	display: inline-block;
	vertical-align: top;
	white-space:normal;
}
.new-home-slide > img, 
.new-home-slide > picture > img {
	width:100%;
	position:relative;
	max-height: 76em;
}
.slide-overlay {
	font-size:4vw;
	position:absolute;
	top:0;left:0;right:0;bottom:0;
}
.slide-overlay img {
	margin:0 auto;
}
.hero--products .tns-controls button[data-controls],
.new-home-slider .tns-controls button[data-controls] {
	padding:0;
	/* width: 2em; */
}
.tns-controls button[data-controls] {
	box-shadow:none !important;
	padding: 0;
	filter: drop-shadow(0px 0px 0.25em #fff);
}
.new-home-slider .tns-controls button[data-controls]::before, 
.new-home-slider .tns-controls button[data-controls]::after,
.hero--products .tns-controls button[data-controls]::before, 
.hero--products .tns-controls button[data-controls]::after {
	background: #ffffff;
}
.new-home-slider .tns-controls button[data-controls=prev]::before, 
.new-home-slider .tns-controls button[data-controls=prev]::after {
	/* left:0.5em; */
}
.new-home-slider .tns-controls button[data-controls=next]::before, 
.new-home-slider .tns-controls button[data-controls=next]::after {
	/* left:2.2em; */
}

.new-home-slider .tns-nav{
	z-index: 1;
}
.new-home-slider .tns-nav button {
	margin-bottom:0.5em;
	color:rgba(255,255,255,0.2);
	box-shadow:none;
}
.new-home-slider .tns-nav button::before {
	box-shadow:inset 0 0 0 1px #fff;
}
.new-home-slider .tns-nav button.tns-nav-active {
	color:#fff;
}
.new-home-slide--treats .content_wrapper::before {
	height:70%;
}
.new-home-slide--treats .rich-text {
	padding-top:10%;
}
.new-home-slide--treats .content_wrapper .button-cta {
	margin-top:70vw; 
}
.new-home-slide--love .heading-image {
	margin:0 auto -0.5em;
	max-width:100%;
	width: 73vw;
}
.new-home-slide--love .rich-text {
	color:#000;
}
.new-home-slide--love .button-cta { font-weight:800; font-style:italic; text-transform:none; letter-spacing:0; background:#1755a0; color:#fff; box-shadow:0.2em 0.2em 0 #1194D9; border-radius:0.33em; padding:0.7em 1.5em 0.65em; -webkit-appearance:none; font-size:1.125em; } 

.new-home-slide--love .hero-treat {
	width: 90%;
	position: relative;
	margin: 0 0 5% 5%;
}
.new-home-slide--love .hero-treat img {
	position:relative;
	width: 100%;
	padding: 0;
}

.new-home-slide--homestyle .heading-image {
	margin:0 auto -0.5em;
	max-width:100%;
	width: 80%
}
.new-home-slide--homestyle .rich-text {
	color:#000;
}
.new-home-slide--homestyle .button-cta { font-weight:800; font-style:italic; text-transform:none; letter-spacing:0; background:#1755a0; color:#fff; box-shadow:0.2em 0.2em 0 #1194D9; border-radius:0.33em; padding:0.7em 1.5em 0.65em; -webkit-appearance:none; font-size:1.125em; } 


.new-home-slide--homestyle .hero-treat {
	width: 90%;
	position: relative;
	margin: 0 0 5% 5%;
}
.new-home-slide--homestyle .hero-treat img {
	position:relative;
	width: 100%;
	padding: 0;
}


.new-home-slide--love *::-webkit-media-controls-panel,
.new-home-slide--love *::-webkit-media-controls-play-button,
.new-home-slide--love *::-webkit-media-controls-start-playback-button {
	display: none!important;
	-webkit-appearance: none;
}
.new-home-slide--love .hero-love-animated {
	position:absolute;
}
@keyframes heroFadeIn {
	0% { opacity:0; }
	100% { opacity:1; }
}
@keyframes heroFloaty {
	0% { transform:translate(-10%, -0.5%); animation-timing-function:cubic-bezier(.53,0,.78,.51); }
	50% { transform:translate(0%, 0%);animation-timing-function:cubic-bezier(.26,.52,.47,1); }
	100% { transform:translate(10%, -0.5%); }
}

.new-home-slide--love .hero-love-floaties {
	opacity:0;
	animation:heroFadeIn 0.33s 1.5s forwards;
}

.new-home-slide--love .hero-love-balloon {
	width:4%;
	left: 12%;
	top: 54%;
	animation:heroFloaty 2.5s alternate infinite;
}
.new-home-slide--love .hero-together-book {
	width:10%;
	left: 1%;
	top: 65%;
	position:absolute;
}
.new-home-slide--love .hero-halloween-web {
	width:23%;
	left: -1%;
	top: -7%;
	position:absolute;
}

.new-home-slide--love .hero-cupid-2022 {
	width: 25%;
	left: 0%;
	top: -7%;
	position: absolute;
}
.new-home-slide--love .hero-heart-2022 {
	width: 80px;
	left: 3%;
	top: 36%;
	position: absolute;
}
.new-home-slide--love .hero-valentine-lips {
	display: none;
}


.new-home-slide--love .hero-winter-snowflake {
	width: 17%;
	left: 10%;
	top: 42%;
	position: absolute;
}
.new-home-slide--love .rich-text .hero-halloween-hearts {
	width:12%;
	left: -9%;
	top: -34%;
	position:absolute;
}

.new-home-slide--love .rich-text .hero-halloween-pumpkin {
	width:14%;
	left: 86%;
	top: 33%;
	position:absolute;
}



.new-home-slide--love .hero-love-cloud-1 {
	width: 13%;
	left: 22%;
	top: 54%;
	animation:heroFloaty 3s alternate infinite;
}
.new-home-slide--love .hero-love-cloud-2 {
	width: 9%;
	left: 55%;
	top: 56%;
	animation:heroFloaty 4s -1s alternate infinite;
}
.new-home-slide--love .hero-together-calc {
	width: 13%;
	left: 1%;
	top: 42%;
	position:absolute;
}
.new-home-slide--love .hero-together-pencil {
	width: 8%;
	left: 24%;
	top: 46%;
	position:absolute;
}

.new-home-slide--love .hero-together-ruler {
	width: 12%;
	left: 85%;
	top: 46%;
	position:absolute;
}
.new-home-slide--love .hero-together-book2 {
	width: 12%;
	left: 71%;
	top: 44%;
	position:absolute;
}
.new-home-slide--love .hero-love-heart-1 {
	width:6%;
	left: 43%;
	top: 48%;
	/*animation:heroFloaty 2s -0.5s alternate infinite;*/
}
.new-home-slide--love .hero-love-heart-2 {
	width:4.5%;
	left: 52%;
	top: 54%;
	/*animation:heroFloaty 2s alternate infinite;*/
}
.new-home-slide--love .hero-love-heart-3 {
	width:4.5%;
	left: 5%;
	top: 79%;
}
.new-home-slide--love .hero-love-heart-4 {
	width:3.5%;
	left: 95%;
	top: 64%;
}
.new-home-slide--love .hero-love-heart-5 {
	width:3.5%;
	left: 18%;
	top: 46%;
	transform: scaleX(-1);
}
.new-home-slide--love .hero-love-heart-6 {
	width:3.5%;
	left: 95%;
	top: 46%;
	transform: scaleX(-1);
}

.new-home-slide--love .hero-heart-2022 {
		width:70px;
		left: 1%;
		top: 40%;
	position: absolute;
}
@media (min-width:48em) {
	.slide-overlay {
		font-size:1em;
	}
	.new-home-slide--treats .content_wrapper::before {
		height:80%;
	}
	.new-home-slide--treats .content_wrapper .button-cta {
		margin-top:0; 
	}
	.new-home-slide--treats .rich-text {
		width:40%;
		padding:0 40% 5% 0%;
		position:relative;
		z-index:1;
	}
	.new-home-slide--treats .content_wrapper::after {
		content:'';
		position:absolute;
		top: 4em;
		left: 7em;
		right: 6em;
		bottom: 2em;
		background:url(../images/home/treatboys2.png) center / contain no-repeat;
	}
	.new-home-slide--love .content_wrapper::before {
		height:80%;
	}
	.new-home-slide--love .heading-image {
		width: 80%;
	}
	.new-home-slide--love .hero-treat img {
		padding: 0;
	}
	.new-home-slide--love .rich-text {
		width:100%;
		text-align:center;
		display: flex;
		position: relative;
		top: -60%;
	}
	.new-home-slide--love .hero-treat {
		width: 80%;
		margin:-5% 0 0 -10%;
		max-width: 58em;
	}
	.new-home-slide--love .hero-love-balloon {
		width: 2.5%;
		left: 46.5%;
		top: 27%;
	}
	.new-home-slide--love .hero-love-cloud-1 {
		width: 8.5%;
		left: 54%;
		top: 14.5%;
	}
	.new-home-slide--love .hero-love-cloud-2 {
		width: 6.5%;
		left: 76%;
		top: 20%;
	}
	.new-home-slide--love .hero-love-heart-1 {
		width: 4%;
		left: 67%;
		top: 10%;
	}
	.new-home-slide--love .hero-love-heart-2 {
		width: 2.5%;
		left: 71%;
		top: 20%;
	}
	.new-home-slide--love .hero-together-calc {
		width: 5%;
		left: 44%;
		top: 9%;
	}
	.new-home-slide--love .hero-together-book {
		width: 7%;
		left: 41%;
		top: 32%;
	}
	.new-home-slide--love .hero-together-book2 {
		width: 5%;
		left: 77%;
		top: 10%;

	}
	.new-home-slide--love .hero-love-heart-1 {
		width:6%;
		left: 65%;
		top: 6%;

	}
	.new-home-slide--love .hero-love-heart-2 {
		width:4.5%;
		left: 71%;
		top: 16%;

	}
	.new-home-slide--love .hero-love-heart-3 {
		width:2%;
		left: 46%;
		top: 56%;
	}
	.new-home-slide--love .hero-love-heart-4 {
		width:2.5%;
		left: 95%;
		top: 43%;
	}
	.new-home-slide--love .hero-love-heart-5 {
		width:2.5%;
		left: 55%;
		top: 5%;
	}
	.new-home-slide--love .hero-together-pencil {
		width: 3%;
		left: 58%;
		top: 13%;
	}
	.new-home-slide--love .hero-love-heart-6 {
		width: 3.5%;
		left: 87%;
		top: 6%;
	}
	.new-home-slide--love .hero-together-ruler {
		width: 4%;
		left: 92%;
		top: 14%;
	}
	
	.new-home-slide--love .hero-halloween-web {
		width:13%;
		left: -1%;
		top: -29%;
	}
	
	.new-home-slide--love .hero-cupid-2022 {
		left: 0%;
		top: -50%;
		width: 15%;
	}
	.new-home-slide--love .hero-heart-2022 {
		left: 25%;
		top: 52%;
		visibility: hidden;
	}
	.new-home-slide--love .rich-text .hero-halloween-hearts {
		width:5%;
		left: -5%;
		top: -1%;
	}
	.new-home-slide--love .rich-text .hero-halloween-pumpkin {
		width:8%;
		left: 22%;
		top: 54%;
	}
	.new-home-slide--love .hero-winter-snowflake {
		width: 102px;
		left: 24%;
		top: 48%;
		visibility: hidden;
	}
	.new-home-slide--homestyle .content_wrapper::before {
		height:80%;
	}
	.new-home-slide--homestyle .heading-image {
		margin:0 auto -0.5em ;
		width: 100%;
	}
	.new-home-slide--homestyle .hero-treat img {
		padding: 0;
	}
	.new-home-slide--homestyle .rich-text {
		width:26%;
		text-align:center;
	}
	.new-home-slide--homestyle .rich-text p {
		font-size:1em;
		margin: .5rem 0;
	}
	.new-home-slide--homestyle .hero-treat {
		position: absolute;
		width: 72vw;
		top: 26%;
		left: 18%;
		margin: -10vw 0 0;
		max-width: 68em;
	}
}

@media (min-width:75em) {
	.new-home-slide--love .hero-cupid-2022 {
		top: -50%
	}
	.new-home-slide--love .hero-heart-2022 {
		left: 1%;
		top: 43%;
		width: 85px;
		visibility: visible;
	}
    .new-home-slide--love .hero-valentine-lips {
        width: 80px;
        left: 30%;
        top: 57%;
        position: absolute;
        display: block;
    }
	.new-home-slide--treats > picture > img {
		margin:-5vw 0
	}
	.new-home-slide--love .rich-text .hero-halloween-hearts {
		width:6%;
		left: -66%;
		top: -1%;
	}
	.new-home-slide--love .rich-text .hero-halloween-pumpkin {
		width:17%;
		left: 15%;
		top: 9%;
		position: relative;
		display: inline;
		vertical-align: top;
	}
	.new-home-slide--love .hero-winter-snowflake {
		visibility: visible;
	}
	.new-home-slide--homestyle .rich-text p {
		font-size:1.2em;
		margin: 1rem 0;
	}
}


/* page title */
.page-title {
	text-align:center;
}
.page-title p {
	max-width: 38em;
	margin: 1rem auto;
}

/* Home page items */
.title-under-pagehero {
	background: #f2f2f2;
	color:#000;
	text-align:center;
	padding:0;
	position:relative;
	margin: 1em 0;
	z-index:2;
}
.title-under-pagehero section {
	margin:0 auto;
	overflow:hidden;
	font-size:1.25em;
}
.title-under-pagehero p,
.title-under-pagehero .pretend-p {
	max-width: 43em;
}
.title-under-pagehero .button-cta {
	margin: 0 0 2em;
	z-index:1;
}
.home-alittlelove {
	margin-top: -13vw;
	position: relative;
	z-index: 1;
}
.home-alittlelove section {
	margin:0;
}
.home-alittlelove .slide-overlay {
	top:7vw;
	bottom:5vw;
}

.home-homestyle {
	margin-top: -13vw;
	position: relative;
	z-index: 1;
	margin-bottom: 2em;
}
.home-homestyle section {
	margin:0;
}
.home-homestyle .slide-overlay {
	top:12vw;
	bottom:5vw;
}
.home-recipe-search section {
	padding-bottom: 0;
    margin: 0;
}
.home-recipe-search::before {
	content:'';
	display:block;
	padding-top:66.67vw;
	background:url(../images/home/recipe-search.jpg) center / cover no-repeat;
}
@media (min-width:48em) {
	
	.pagehero .tns-nav {
		visibility: visible;
	}
	.home-recipe-search {
		z-index:1;
		position:relative;
	}
	.home-recipe-search section {
		padding-top:10vw;
		padding-bottom:0;
	}
	.home-recipe-search .content_wrapper {
		white-space:nowrap;
	}
	.home-recipe-search .content_wrapper::before {
		content:'';
		display:inline-block;
		vertical-align:middle;
		padding-top:45%;
	} 
	.home-recipe-search .rich-text {
		display:inline-block;
		vertical-align:middle;
		white-space:normal;
		padding-right: 50%;
		padding-right:calc( 50% + 1em );
	}
	.home-recipe-search::before {
		position:absolute;
		top:3vw;
		left:50%;
		right:0;
		bottom:0;
		padding-top:0;
	}
	.home-recipe-search h2 {
		text-align:left;
	}
}

@media (min-width:75em) {
	.home-recipe-search .content_wrapper::before {
		padding-top:36em;
	}
}
/* promotions */


.promotions-featured {
    background: #f2f2f2;
   margin: 0;
    padding: 0 0 .2em;
}

.page--party-detail .promotions-featured {
    display: none;
    visibility: hidden;
}

.promotions-featured-row {
	margin:0 0 6em;
	justify-content:space-evenly;
}
.promotions-featured .promotions-featured-column {
	display:block;
	position:relative;
	border-radius: 1.5em;
	background: #ffffff;
	overflow: hidden;
	font-size: 4vw;
	flex-basis:calc(50% - 0.5em);
	margin-bottom:2em;
}
.promotions-featured .button-cta {
	font-size: inherit;
}
.promotions-featured img {
	width: 100%;
}
.promotions-featured .rich-text {
	height:100%;
}
.promotions-featured .promotions-description {
	position:absolute; 
	bottom:1em;
	left:2em;
	right:2em;
    text-align: center;
}
.promotions--og-treats .promotions-description {
	text-align:center;
	color:#fff;
}
.promotions--og-treats .button-cta:last-child {
	background:#0096D9;
}
.promotions--og-treats .button-cta:last-child:hover {
	background:#074F89;
}
.promotions-featured .promotions--scotcheroos .promotions-description {
	position:absolute; 
	top:4em;
	left:2em;
	right:2em;
}
.promotions-featured .promotions--scotcheroos{
	background:url(../images/home/apple-crisp-promo.jpg) center;
	background-size: cover;
}

.page--category--squares .promotions-featured .promotions--scotcheroos{
	background:url(../images/home/squares-promo.jpg) center;
	background-size: cover;
}

.promotions-featured .promotions--boules .promotions-description {
	position:absolute; 
	top:4em;
	left:2em;
	right:2em;
}
.promotions-featured .promotions--boules{
	background:url(../images/home/boules-au-barre-promo.jpg) center;
	background-size: cover;
}

.page--category--squares .promotions-featured .promotions--boules{
	background:url(../images/home/squares-promo.jpg) center;
	background-size: cover;
}

.promotions-featured .promotion--activity{
	background:url(../images/home/activities.jpg) center;
	background-size: cover;
}

.promotions-featured .promotion--video{
	background:url(../images/home/video-promo.jpg) center;
	background-size: cover;
    height: 22em;
}

.promotions-featured .promotion--activity .promotions-description, .promotions-featured .promotion--video .promotions-description {
	position:absolute; 
	top:1em;
	left:2em;
	right:2em;
}

.promotions-featured .promotion--bethefirst {
    background: radial-gradient(ellipse farthest-corner at 50% 30%, #2256ac, #223d99);
    overflow: visible;
        height: 25em;
}

.promotions-featured .promotion--bethefirst h2, .promotions-featured .promotion--bethefirst p{
    color: #fff;
}

.promotions-featured .promotion--bethefirst .join-today-img {
    padding-top: 47%;
    position: relative;
    z-index: 2;
    pointer-events: none;
}

.promotions-featured .promotion--bethefirst::before {
    content: '';
    display: block;
    background: radial-gradient(ELLIPSE farthest-side at 50% 20%, #22AEF0, transparent);
    padding-top: 40%;
    width: 100%;
    position: absolute;
}

.promotions-featured .promotion--bethefirst .join-today-img img {
    position: absolute;
    top: 0;
    width: 100%;
}
.join-today-img img {
    opacity: 0;
    transition: opacity 0s, margin 0s;
    margin-top: 0.5em;
}

.section--in-viewport .join-today-img img {
    opacity: 1;
    margin-top: 0;
    transition: opacity 0.2s, margin 0.2s;
    animation: slowrock 3s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

.section--in-viewport .join-today-img img:nth-child(1) {
    transition-delay: 0.2s;
    transform-origin: 25% 70%;
}
.section--in-viewport .join-today-img img:nth-child(2) {
    transition-delay: 0.4s;
    transform-origin: 50% 90%;
    animation-delay: -2s;
}
.section--in-viewport .join-today-img img:nth-child(3) {
    transition-delay: 0.6s;
    transform-origin: 75% 70%;
    animation-delay: -1s;
}

@media (min-width: 48em) {
    .promotions-featured .promotion--bethefirst .join-today-img {
        margin-top: -15%;
    }
    .promotions-featured .promotion--bethefirst {
        height: auto;
    }
    .promotions-featured .promotions--scotcheroos .promotions-description {
        top:auto;
        transform: translate(0, -50%)
    }
    .promotions-featured .promotions--boules .promotions-description {
        top:auto;
        transform: translate(0, -60%)
    }
    .promotions-featured .promotion--video{
        height: auto;
    }
    

}

.promotions--scotcheroos .promotions-description, .promotion--activity .promotions-description, .promotion--video .promotions-description, .promotions--boules .promotions-description{
	text-align:center;
	color:#fff;
}
.promotions--scotcheroos .rich-text, .promotions--boules .rich-text{
	padding-top:90%; 
}
.promotion--activity .rich-text {
	padding-top:90%; 
}
.promotions--scotcheroos .button-cta:last-child, .promotions--boules .button-cta:last-child {
	background:#0096D9;
}
.promotion--activity .button-cta, .promotion--video .button-cta{
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%);
    background:#0096D9;
}
.promotion--activity .button-cta:hover, .promotion--video .button-cta:hover {
    background: #074F89;
}

.promotions--scotcheroos .button-cta:last-child:hover {
	background:#074F89;
}
.promotions--scotcheroos h3, .promotions--scotcheroos p, .promotions--og-treats h3, .promotions--og-treats p, .promotion--activity h3, .promotion--video h3, .promotion--video p, .promotion--activity p, .promotions--boules h3, .promotions--boules p{
	text-shadow: 2px 2px 2px #000;
}
.promotions--og-treats p {
	margin-bottom: 50%;
}
.home-recipe-search .button-cta:last-child {
	background:#0096D9;
}
.home-recipe-search .button-cta:last-child:hover {
	background:#074F89;
}

.promotions--kfr .promotions-description {
	position:absolute; 
	bottom:auto;
	top:50%;
	right:50%;
	left:-50%;
	transform:translate(50%, -50%);
	width:100%;
	text-align:center;
}
.promotions--kfr {
	background:#fafafa;
	color:#fff;
}
.promotions--kfr .promotions-description img {
	width: 75%;
	display:block;
	margin:0 auto 2em;
	left: 0.2em;
	position: relative;
}
.promotions--kfr .promotions-description p {
	font-weight:700;
}
.promotions--kfr .promotions-description h3 {
	line-height:0.66;
	position:static;
	top:0
}
@media (min-width:48em) {
	.promotions-featured .promotions-featured-column {
		font-size:1.7vw;
	}
	.promotions--og-treats .button-cta:last-child {
		margin-left:0.6em;
	}
	.promotions-featured .promotions--scotcheroos, .promotion--activity{
		height: auto;
	}
}

@media (min-width:75em) {
	.promotions-featured .promotions-featured-column {
		font-size:1.25em;
	}
}



/* products */



div.products-featured {
	text-align:center;
	background:#f2f2f2;
	padding-top: 1em;
	padding-bottom: calc(4em + 4vw);
	position: relative;
}
.products-featured p {
	position:relative;
	color:#074F89;
	font-size:1.125em;
	margin-bottom:2em;
} 
.contact-us p{
	text-align: center;
}
.products-featured h2, 
.products-featured h3 {
	color: #074f89;
	position:relative;
}
.products-featured h3 {
	font-size:2em;
}
.products-featured img {
	width:100%;
}
.product-category-back {
	font-weight:bold;
	font-size:1.25em;
	color:#1194D9;
}
.product-category {
	border-radius:1.5em;
	background:#ffffff;
	box-shadow:0 0 1em rgba(0,0,0,0.15);
	margin:1em 0.5em;
	overflow:hidden;
	position:relative;
    display: inline-block;
}
.product-category-description {
	margin-top:-75%;
	padding: 75% 2em 4em;
}
.product-category-description .button-cta {
	position:absolute;
	bottom:0;
	left:50%;
	transform:translate(-50%,0);
	white-space: nowrap;
	margin-bottom: 40px;
}
.products-featured-row {
	margin: 0 -0.5em;
}
.products-featured-row .product-primary-image {
	display:block;
	position:relative;
	overflow: hidden;
	margin-bottom: 2em;
}

.products-featured-row .product-secondary-image {
	display:block;
	position:absolute;
	z-index:3;
	width: 55%;
	left:50%;
	transform: /* center it: */ translate(-50%,-100%) /* then: */ translatey(0em);
}

.product-category--treats .product-secondary-image {
	width:18em
}
.product-category--poppers .product-secondary-image {
	width:10em
}

@media (min-width:48em) {
	.products-featured-row {
		justify-content:center;
	}
	.products-featured .product-category {
		max-width:35em;
		flex-basis: calc(50% - 1em);
		margin:0.5em;
	}
}

/* Product Line Lists */
.products-line {
	text-align:center;
	position:relative;
}

.products-list {
	padding:0 0em;
	margin:0 auto ;
	position:relative;
}
.products-list-product {
	padding:1em; 
	flex-basis:12em;
}
/* bazaarvoice stars */
.products-list-product {
	position:relative;
	padding-bottom:2em;
}
.products-list-product .bv_main_container { 
	bottom:0 !important;
}
[data-bv-rating] .bv_main_container, 
[data-bv-show=inline_rating] .bv_main_container {
	justify-content:center;
}
.products-list-product .product-primary-image {
	height: 11em;
	margin-bottom:0.5em;
	position:relative;
}
.products-list-product .product-primary-image > img {
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	max-width: 100%;
	max-height: 100%;
	transform: translate(-50%, -50%);
}
.product-list-title {
	display: block;
	padding:0 0.5em;
	text-decoration:underline;
	font-weight:bold;
}
.productlist h2 {
	visibility: hidden;
	display: none;
}
.search-results-item a {
	display:block;
}
@media (min-width:48em) {
	
	.products-list-product {
		flex-basis: 33.33%;
	}
	.page--product-category .products-line h2::after {
		left:auto;
		right:4rem;
		transform:scalex(-1);
	}
	.page--product-category .products-line p {
		padding:0 20%;
		margin:0em 5em 2em;
	}
}
@media (min-width:64em) {
	.products-list-product {
		font-size:1.25em;
	}
	.search-results-item {
		font-size:1.25em;
		flex-grow:0;
	}
}
/* END Product Line Lists */

/* Product Detail page + a few Recipe Detail styles, since they are nearly the same */
.product-slider-holder,
.product-detail-overview,
.recipe-slider-holder,
.recipe-detail-overview {
	margin-top:1em;
}
.product-slider-holder,
.recipe-slider-holder {
	text-align: center;
}
.product-detail-overview,
.recipe-detail-overview {
	max-width:32em;
	margin:0 auto;
}
.product-detail-highlights,
.recipe-detail-highlights {
	text-align:left;
}
.product-thumbnails-container .tns-nav-active,
.recipe-thumbnails-container .tns-nav-active {
	border-color:#074F89;
}
.product-detail-overview h1,
.recipe-detail-overview h1 {
	color:#074F89;
	font-weight:bold;
	font-size:2em;
	line-height:1;
	text-align:left;
}
.addthis_button_compact {
	display:none;
}
.product-detail-overview p,
.recipe-detail-overview p {
	font-size:1.125em;
	margin:1em 0;
	text-align:left;
}

.addthis_toolbox a {
	margin:0 0 0 0.25em;
}
.product-nutrition h2 {
	color:inherit;
	font-weight:bold;
}
.product-nutrition h3 {
	font-size:2em;
	font-weight:bold;
	letter-spacing:-0.033em;
}
.product-nutrition select {
	font-size:1.125rem;
	border:0.15em solid currentColor;
	background: transparent;
	border-radius:2em;
}
.product-nutrition option{
	color: #000;
}
.product-nutrition .select-wrapper::before {
	color:inherit;
}
.product-nutrition .button-cta {
	color:#074F89;
	background:#fff;
	width:10.85em;
}
.product-nutrition-highlights p {
	text-align:justify;
}
.product-nutrition .content_wrapper > p{
	display: none;
	visibility: hidden;
}
.product-nutrition-highlights h3:first-child {
	display: block;
	color: #fff;
}
.product-nutrition-smartlabel {
	margin: 2em 0;
	text-align: center;
}
.product-nutrition-smartlabel-title + p {
	margin-bottom:0.25em;
}
.product-nutrition-smartlabel img {
	margin-bottom:0;
}
.product-nutrition p, 
.product-nutrition table {
	font-size:0.875em;
	line-height:1.5;
	font-weight:300;
}
.product-nutrition td {
	border-bottom:1px solid currentcolor;
}
.product-nutrition td.spacer,
.product-nutrition tr:last-child td {
	border-bottom:none;
}
.product-nutrition-row {
	display: flex;
	flex-wrap: wrap;
}
.product-nutrition {
	background:#074F89;
	color:#ffffff;
	text-align:center;
	margin:1em 0; 
    padding: 2em 0;
}
.product-nutrition section {
	margin:2em auto;
	position:relative;
	z-index:1;
}
.product-nutrition-highlights {
	order: 1;
}

.product-related-recipes {
	text-align:center;
    margin: 3em auto 0
}

.recipe-slider-aspect-ratio img {
    border-radius: 0.75em;
}
.recipe-detail-overview h1 {
    font-size: 2.5em;
    margin-bottom: 0;
    margin-top: 0.2em;
    color: #000;
}
.recipe-directions-row, .recipe-detail-overview, .recipe-slider-holder {
    max-width: 32em;
    margin: 0 auto;
}


@media (min-width:48em) { 
	.product-slider-holder, 
	.recipe-slider-holder {
		padding-right:1em;
	}
	.product-detail-overview, 
	.recipe-detail-overview {
		max-width:none;
		padding-left:1em;
	}
	.product-detail-overview h1,
	.recipe-detail-overview h1 {
		font-size:3em;
	}
	.product-nutrition-smartlabel .select-wrapper {
		width: 15.76em;
		/* color: red; */
	}
	.addthis_toolbox {
		display:block;
	}
	.product-nutrition-highlights {
		order: 0;
	}
    .recipe-directions-row, .recipe-detail-overview, .recipe-slider-holder {
    max-width: none;
    }
    .recipe-detail-highlights .content_wrapper {
    max-width: 64em;
    }
}

/* recipe detail */
.recipe-highlights {
	display:flex;
	text-align:center;
	margin:0 0 2em 0;
	color:#074F89;
	text-transform:uppercase;
	font-weight:bold;
	font-size:0.85em;
	line-height:1.33;
}
.recipe-highlights strong {
	display:block;
	font-size:2em;
	color:#000;
}
.recipe-highlights > div {
	width: 100%; 
    width: -webkit-fill-available;
    padding-top: 5em;
    font-size: .95em;
    max-width: 40%;
}
.recipe-highlight--preptime {
	background: url(../images/site/icon-chefhat.svg) center top / 5em 5em no-repeat;
}
.recipe-highlight--totaltime {
	background:url(../images/site/icon-clock.svg) center top / 5em 5em no-repeat;
}
.recipe-highlight--yield {
	background:url(../images/site/icon-bowl.svg) center top / 5em 5em no-repeat;
}
.recipe-slider-aspect-ratio {
	padding-top:65%;
}
.recipe-directions-row {
	line-height:1.5;
	width:100%;
}
.recipe-directions-row h3 {
	color:#000;
	font-weight:bold;
	font-family:inherit;
}
.recipe-ingredients ul {
	list-style:none;
	padding:0;
}
.recipe-ingredients ul li {
	padding-left:1em;
	position:relative;
}
.recipe-ingredients ul li::before {
	content:'';
	display:block;
	position:absolute;
	left:0;
	top:0.6em;
	background:#074F89;
	width:0.5em;
	height:0.5em;
	border-radius:100%;
}
.recipe-ingredients ul .divider::before {
	content:'';
	display:block;
	position:absolute;
	left:0;
	top:0.6em;
	background:#fff;
	width:0.5em;
	height:0.5em;
	border-radius:100%;
}
.recipe-ingredients ul .divider{
	font-weight: 600;
}
.recipe-related-product {
	overflow:hidden;
	position:relative;
}
.recipe-related-product::before {
	content: '';
	display: block;
	background: url(../images/site/curve-top-ltgray2.svg) center top / 102vw 25vw no-repeat;
	border-bottom:30em solid #f2f2f2;
	padding-top: 10vw;
	position: absolute;
	top:45%;
	left: 0;
	width: 100%;
}
.recipe-related-product-tile {
	background:#fff;
	box-shadow:0 0.2em 1em rgba(0,0,0,0.25);
	border-radius: 1.5em;
	align-items:center;
	height:auto;
	max-width: 22em;
	margin: 6em auto 0;
	padding:8em 1em 0em;
	position:relative;
}
.recipe-related-product-tile h3 {
	margin:1rem 0;
	width:100%;
	color:#074F89;
	font-family:inherit;
	font-size:inherit;
	font-weight:400;
}
.recipe-related-product-tile p {
	font-weight:800;
	font-size:2em;
	color:#074F89;
	margin-top:0;
}
.recipe-related-product-tile img {
	position:absolute;
	top:-4em;
	height:12em;
	left:50%;
	transform:translate(-50%,0);
    z-index: 1;
}
.recipe-related-product-tile .button-cta {
	padding:0.75em 1em 0.5em;
}
.recipe-related {
	background:#f2f2f2;
	padding-bottom:12vw;
	margin-bottom:-12vw;
}
.recipe-related section,
.recipe-related-product section {
	margin:0 auto;
	padding:1em 0;
}

.button-print {
    color: #b41946;
    font-size: 1.2em;
    position: relative;
    padding-left: 2.5em;
    background: url(../images/recipes/print-icon.png) 0 0.25em / 2em auto no-repeat;
    border-radius: 0;
}

.recipe-detail-actions .button-cta {
    text-align: left;
}

.button-print:hover {
    background: url(../images/recipes/print-icon.png) 0 0.25em / 2em auto no-repeat;
}
.recipe-detail-actions {
    display: inline-block;
}

.recipe-slider-aspect-ratio img {
    top:0;
   transform: translate(-50%, 0%);
}

.recipe-detail-highlights::after {
    display: block;
    content: '';
    background: url(../images/home/gray-curve.svg) center bottom -1vw / 100vw 7.5vw no-repeat;
    width: 100%;
    height: auto;
    padding-top: 7%;
    position: relative;
    z-index: 1;
    bottom: 0;
}
.recipe-detail-highlights {
    background: #fff;
    overflow: hidden;
}
@media (min-width:48em) {
	.recipe-related-product-tile {
		margin: 2em auto 0;
		padding: 1em 2em 1em 18em;
		text-align:center;
		width:22em;
	}
	.recipe-related-product-tile h3 {
	}
	.recipe-related-product-tile p {
	}
	.recipe-related-product-tile img {
		left:25%;
		top:auto;
		bottom: 1em;
		height: auto;
		max-height: 16em;
		width: auto;
		max-width: 20em;
	}

}
/* recipe search */
.recipe-search-text-field {
	max-width:22em;
	margin:1em auto;
	
}
#recipe-search-submit {
	width:100%;
	box-sizing:border-box;
	padding:0.75em 1.5em;
}
#recipe-search-q {
	border-radius:2em;
	border:none; 
	box-shadow: 0 0 1em rgba(0,0,0,0.15);
}
.video-search,
.recipe-search {
	text-align:center;
	background:#f2f2f2 
}
.video-search section,
.recipe-search section {
	margin:0;
	padding:0 0 2em 0;
	position:relative;
}
.video-search p,
.recipe-search p {
	color:#fff;
	max-width:28em;
	font-size:1.5em;
}
.video-search form,
.recipe-search form {
	position:relative;
	padding-top:calc(12vw - 8em);
	z-index: 2;
} 
.video-search form {
	
}
.video-results section,
.recipe-results section {
	padding: 0em 0 12em;
	margin:0 0 -12em;
}
.video-results,
.recipe-results {
	background:#f2f2f2;
}

.recipe-results-party-ideas{
    margin: 0 0 6em 0;

}

.video-search-filters-row,
.recipe-search-filters-row {
	justify-content:center;
	max-width: 22em;
	margin: 0 auto;
}
.video-search-filter,
.recipe-search-filter {
	flex-basis:100%;
}
.video-search-filter label,
.recipe-search-filter label {
	font-weight:bold;
	color:#074F89;
	font-size:1.25em;
}
.video-search-filter .select-wrapper,
.recipe-search-filter .select-wrapper {
	width:100%;
}
.video-search-filter .select-wrapper select,
.recipe-search-filter .select-wrapper select {
	width:100%;
	border-color: #0096d9;
	color: #0096d9;
	box-shadow: 0 0 1em rgba(0,0,0,0.15);
}

.video-list,
.recipe-list {
	margin: 0 -0.5em;
}
.video-list-image,
.recipe-list-image {
	border-radius:1.5em 1.5em 0 0;
	overflow:hidden;
	position: relative;
}
.recipe-list-image::before {
	content:'';
	display:block;
	padding-top:52.66%;
}
.recipe-list-image img {
	position:absolute;
	left:50%;
	top:50%;
	width:100%;
	height:auto;
	transform:translate(-50%,-50%);
}
.video-list-item,
.recipe-list-item {
	margin:0 0.5em 1em;
	box-shadow: 0 0 1em rgba(0,0,0,0.15);
	border-radius:1.5em;
	flex-basis: 24em;
	position:relative;
    background-color: #fff;
}
.recipe-list-item a{
    height: 100%;
    display:block;
}
.video-list-item a {
	display:block;
}
.video-list-item .icon--player {
	opacity:0.8;
}
.video-list-description,
.recipe-list-description {
	padding:0 1em 5em;
	text-align:center;
	color: #000;
}
.reciperelatedrecipe .recipe-list-image + .recipe-list-description {
    padding-bottom: 4em;
}
.video-list-description .button-cta,
.recipe-list-description .button-cta {
	position:absolute;
	left:50%;
	bottom:0;
	transform:translate(-50%,0);
    height: auto;
}
.video-list-description h3,
.recipe-list-description h3,
.party-detail-recipe-images h3
{
	font-size:1.66em;
	font-weight:bold;
	color:#074F89;
    width: 90%;
}
button.close {
	position: absolute;
	top: -3em;
}
#yt_mobile_modal .ytplayer_mobile {
	-webkit-transform: translate(0,2em);
	transform: translate(0,2em);
	-webkit-transition: -webkit-transform 0.35s cubic-bezier(.33,0,.4,1);
	transition: transform 0.35s cubic-bezier(.33,0,.4,1);
}

.recipe-search-filters-row, .video-search-filters-row{
   /* display: none;
    visibility: hidden; */
}

.reciperelatedrecipe {
    margin-bottom: 8vw;
}

@media (min-width:48em) {
	.recipe-search-text-field {
		max-width:none;
        text-align: center;
	}
	#recipe-search-q {
		max-width:44em;
		width:calc(80% - 3em);
		padding: .7em 3.1em;
		background: #fff;
		padding-right: 13em;
	}
	#recipe-search-submit {
		margin-left: -11.6em;
		border-radius: 0 2em 2em 0;
		width: auto;
		display: inline-block;
		
	}
    .french-search #recipe-search-submit {
		margin-left: -15.4em;
		
	}
	.video-results section,
	.recipe-results section {
		padding: 1em 0 12em;
		margin:0 0 -12em;
	}
	.video-list,
	.recipe-list {
		margin: 0 -0.66em 5em;
	}
	.video-list-item,
	.recipe-list-item {
		flex-basis: calc(50% - 1em);
		max-width: 24em;
	}
}
@media (min-width:64em) {
	.video-search-filters-row,
	.recipe-search-filters-row {
		margin: 0 -0.5em;
		max-width: none;
	}
	.video-search-filter,
	.recipe-search-filter {
		text-align:left;
		flex-basis:calc(33.333% - 1em);
		margin:0 0.5em 0;
	}
	.video-list-item,
	.recipe-list-item {
		flex-basis: calc(33.333% - 1em);
		max-width: 24em;
	}
}



.about-us-title h3 {
	text-align:center;
	color:#074f89;
	max-width:16em;
}

.about-us-timeline { 
	text-align:center;
	position:relative;
}
.about-us-year { 
	padding:1em 1em 3em;
	margin:2em auto;
	box-sizing:border-box;
	border-bottom:0.3em dotted #999;
	max-width:20em;
}
.about-us-year > img { 
	margin:0 auto;
	max-width:16em;
	max-height:16em;
	height:auto;
	width:auto;
}
.about-us-year h3 { 
	color:#074f89;
	font-weight:800;
	letter-spacing:-0.05em;
}
.about-us-year h4 { 
	color:#074f89;
	font-family:inherit;
	font-weight:bold;
	font-size:1.25em;
}
.about-us-year p { 
	max-width:16em;
	margin:0 auto;
	line-height:1.5;
}
.about-us-year--1955 .ytplayer-wrapper {
	max-width: 20em;
	margin:0 auto;
}
.about-us-year--2021b .ytplayer-wrapper {
	max-width: 20em;
	margin:0 auto;
}
.about-us-year--1955 .ytplayer-wrapper::before {
	padding-top:75%;
}
@media (min-width:48em) { 
	.about-us-timeline::before {
		content:'';
		display:block;
		position:absolute;
		top:8em;
		bottom:3em;
		left:50%;
		margin-left:-0.5em;
		width:1em;
		background:url(../images/about-us/border-dot.svg) center / 3.5em 3.5em repeat-y;
	}
	.about-us-timeline .content_wrapper { 
		display:flex;
		flex-wrap:wrap;
	}
	.about-us-year { 
		width:50%;
		padding:1em;
		margin:2em 0;
		max-width:none;
		border:none;
	}
	.about-us-year--1927 {
		margin-top:6em;
	}
	.about-us-year--1928 {
		margin-top:-12em;
	}
	.about-us-year--1929 {
		margin-top:4em;
	}
	.about-us-year--1932 {
		margin-top:-10em;
	}
	.about-us-year--1933_1 {
		margin-top:2em;
	}
	.about-us-year--1933_2 {
		margin-top:-9em;
	}
	.about-us-year--1941 {
		margin-top:4em;
	}
	.about-us-year--1949 {
		margin-top:-10em;
	}
	.about-us-year--1951 {
		margin-top:2em;
	}
	.about-us-year--1955 {
		margin-top:-12em;
	}
	.about-us-year--1962 {
		margin-top:2em;
	}
	.about-us-year--1979 {
		margin-top:-16em;
	}
	.about-us-year--1983 {
		margin-top:-1em;
	}
	.about-us-year--1984 {
		margin-top:-15em;
	}
	.about-us-year--1991 {
		margin-top:0em;
	}
	.about-us-year--2008 {
		margin-top:-14em;
	}
	.about-us-year--2010 {
		margin-top:0em;
	}
	.about-us-year--2014 {
		margin-top:-11em;
	}
	.about-us-year--2019 {
		margin-top:4em;
	}
	.about-us-year--2020 {
		margin-top:-12em;
	}
	.about-us-year--2020 iframe {
		margin-top: 10px;
	}
	.about-us-year--2021 {
		margin-top:7em;
	}
	.about-us-year--2021b {
		margin-top:0em;
	}
}


.faq h3 {
	color:#074f89;
}
.faq-question {
	border-bottom-color:#074f89;
}

.faq-question label {
	color:#074f89;
	font-weight:bold;
	cursor:pointer;
}
.faq-question label::before {
	line-height: 0.65em;
	padding: 0.1em;
	margin-top:-0.5em;
}
.faq-answer {
	background:#f2f2f2;
}

/* Contact us -- based on old KSTL form */
main #KSTL-ContactUs-main .writeus {
	min-height:2em;
}

main #KSTL-ContactUs-main .box-header {
	background:#074F89;
	margin:-0.15em -0.15em 0;
	border-radius: 0.5em 0.5em 0 0;
}
main #KSTL-ContactUs-main .box-header h2 {
	color:#fff;
	text-align:left;
	font-size:1.66em;
	font-weight:bold;
	border-radius:0.5em 0.5em 0 0;
}
main #KSTL-ContactUs-main .box-header span {
	white-space:normal;
}
main #KSTL-ContactUs-main fieldset input, 
main #KSTL-ContactUs-main fieldset textarea {
	width:100%
}
main #KSTL-ContactUs-main fieldset select {
	max-width:100%;
	border-radius: 0;
}
.KSTL-Registration,
.kstl-contactus {
	max-width: 58em;
	margin:0 auto;
	text-align:left;
	padding-bottom: 2%;
}
.contact-intro {
	max-width:50em;
	margin:2em auto;
}
.contact-intro h2 {
	line-height:0.8;
	margin-top: 0;
	font-size:2em;
}
.contact-extra .content_wrapper {
	max-width:48em;
	text-align:center;
	margin:0 auto;
}
.contact-extra p {
	text-align:left;
	margin:1rem 0;
}
.contact-preliminary {
	max-width: 60em;
	margin: auto;
	text-align:left;
}
.contact-preliminary .content_wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content:space-between;
}
.form-wrapper,
main #KSTL-ContactUs-main .box-bordered,
.contact-preliminary-option {
	border: 0.15em solid #074F89;
	flex-basis: 100%;
	margin: 0 0 1em 0;
	border-radius: 0.5em;
}
.form-wrapper {
	max-width: 58em;
	margin:0 auto;
}
.form-wrapper form {
	padding:1em;
}
.contact-preliminary-option {
	flex-basis: 100%;
}
.form-title,
.contact-preliminary-title {
	background: #074F89;
	padding: .5em;
	margin: -0.15em -0.15em 0;
	border-radius:0.5em 0.5em 0 0;
}
.form-title h2 ,
.contact-preliminary-title h2 {
	color: #fff;
	margin: 0;
	font-size:1.66em;
	font-weight:bold;
}
.contact-preliminary-content {
	padding: 0 1em 1em;
	text-align: center;
}
@media (min-width:64em) { 
	.contact-preliminary .content_wrapper {
		
	}
	.contact-preliminary-option {
		flex-basis: calc(33.33% - 1em);
	}
	.contact-preliminary-content p {
		text-align: left;
		min-height: 4.5em;
	}
} 

@media (min-width:64em) { 
	.contact-preliminary {
		max-width: 60em;
	}
}

/* 
	KFR Signup styles, mostly from Cheez-it snapd:
	https://www.cheezit.com/snapd/home.html
*/

#registration-v6 .KSTL-Registration-Login {
	display: none;
}

#registration-v6.show-login .KSTL-Registration-Login {
	display: block;
}

#registration-v6.show-login .KSTL-Registration-Registration {
	display: none;
}

.KSTL-Registration-Login,
.KSTL-Registration-Registration {
	background: white;
}

#exitUrl {
	display: none;
}

.KSTL-Registration .pod {
	border: 0 !important;
	padding: 0 !important;
}

.KSTL-Registration .ng-form label {
	max-width: none;
}

.ng-form>.ng-scope {
}

.ng-form>.ng-scope>* {
	margin-bottom: 0.5em;
}

#KSTL-Registration-wrapper-TermsConditionPrvcyPolicyCombo {
	flex-basis: 100%;
}

#KSTL-Registration-wrapper-ContinueButton {
	flex-basis: 100%;
}

#KSTL-Registration-wrapper-HeaderSubscription {
	flex-basis: 100%;
}

#KSTL-Registration-wrapper-SendEmailButton {
	flex-basis: 100%;
}

#KSTL-Registration-wrapper-ForgotPasswordFormHeader {
	flex-basis: 100%;
}

#KSTL-Registration-wrapper-ForgotPasswordFormHeaderCopy {
	flex-basis: 100%;
	padding-right: 40%;
}

#KSTL-Registration-wrapper-HeaderCopyPage1 {
	flex-basis: 100%;
	font-size: 90%;
}

#KSTL-Registration-wrapper-LoginHeader {
	flex-basis: 100%;
	font-size: 90%;
}

#KSTL-Registration-wrapper-ForgotPasswordLink {
	display: none;
}

.KSTL-Registration .ng-form input,
.KSTL-Registration .ng-form select {
	max-width: 95% !important;
}
.KSTL-Registration .ng-form.nd .email_h {
	position: absolute;
	left: -10000px
}

/* 
	END KFR Signup styles, mostly from Cheez-it snapd:
	https://www.cheezit.com/snapd/home.html
*/


/* Shim for contact form checkboxes + labels that are in the wrong order */

label {-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;}

select::-ms-expand {
	display: none;
}
body #KSTL-ContactUs-main fieldset .checkbox>div {
	float:none;
}
#KSTL-ContactUs-main fieldset .checkbox {
	position:relative;
}
#KSTL-ContactUs-main fieldset .checkbox label[for] { 
	padding-left:1.75em; 
	display:block;
	line-height: 1.15em;
}
#KSTL-ContactUs-main fieldset .checkbox label + div { float:none; }
#KSTL-ContactUs-main fieldset .checkbox>div>div {
	position:static;
}
#KSTL-ContactUs-main fieldset .checkbox label + div span input#KSTL-ContactUs-Terms,
#KSTL-ContactUs-main fieldset .checkbox label + div span input#KSTL-ContactUs-Opt-In { 
	-webkit-appearance:none;
	-moz-appearance:none;
	-ms-appearance:none;
	appearance:none; 
	margin:-1.25em 0.2em;
	float:left;
	position: static;
	outline: none;
	border: none;
}
#KSTL-ContactUs-main fieldset .checkbox label + div span input::before { 
	content: '';
	position: absolute;
	left: 0;
	top: 0em;
	width: 1.06em;
	height: 1.06em;
	border: 2px solid #000000;
	background: #fff;
}
#KSTL-ContactUs-main fieldset .checkbox label + div span input::after { 
	content: '✔';
	position: absolute;
	line-height: 0.8;
	color: #000;
	font-size: 154%;
	top: -0.1em;
	left: 0.1em;
	opacity:0;
	-webkit-transform: scale(0.1);
	transform: scale(0.1);
	transition: all .15s;
}
#KSTL-ContactUs-main fieldset .checkbox label + div span input:checked::after { 
	opacity: 1;
	-webkit-transform: scale(1);
	transform: scale(1);
}
#KSTL-ContactUs-main fieldset .checkbox label + div span input:focus::before {
	outline: medium solid rgba(37, 165, 255, 0.67);
}
/* END Shim for contact form checkboxes + labels that are in the wrong order */



@media print {
	@page {
		size: 1200px 1600px;
		margin: 2em;
	}
	* { 
		color:black !important;
	}
	.tns-controls button[data-controls] {
		color:transparent !important;
	}
	html {
		font-size:16pt;
	}
	header {
		background:#fff;
		outline:none;
		border-bottom: 0.15em solid black;
	}
	.nav--container {
		background:#fff;
	}
	.searchicon span:after {
		height:0;
		border-top:0.15em solid black;
		border-bottom:0.15em solid black;
	}
	select,
	.button-cta {
		border:0.15em solid black;
		background:#fff !important;
		color:#000 !important;
	}
	.product-nutrition {
		background:none;
	}
	.product-nutrition select {
		background:#fff;
	}
	.product-nutrition::before,
	.product-nutrition::after,
	footer::before,
	footer::after {
		display:none;
	}
	footer {
		padding-top:0;
		margin-bottom:0;
	}
	footer .content_wrapper {
		background:none;
		box-shadow:none;
	}
	.social_icons { 
		display:none;
	}
	.footer-nav--secondary,
	footer,
	footer nav a {
		color:black;
		background:none;
	}
	.footer-nav--main ul {
		padding:0;
	}
	.contact-preliminary-title,
	main #KSTL-ContactUs-main .box-header {
		background:transparent; 
		border-bottom:0.15em solid black; 
	}
	.contact-preliminary-option,
	main #KSTL-ContactUs-main .box-bordered	{
		border-color:black;
	}
	.footer-nav--main li:first-child a::before {
		content:url(../images/site/rice-krispies-logo.svg);
		background:none;
		width:6em;
		height:auto;
	}
	.pagehero h2 {
		color:#fff;
	}
	.hero--homepage img {
		opacity:0;
	}
	.hero--homepage .content_wrapper::after {
		background:none;
		content: url(../images/home/treatboys.png);
		transform: scale(0.7);
		transform-origin: 0 0;
	}
	.home-recipe-search {
		overflow:hidden;
	}
	.home-recipe-search::before {
		background:none;
		content: url(../images/home/recipe-search.jpg);
		left:25%;
		padding:0;
	}
	.home-recipe-search::after {
		content:'';
		position:absolute; 
		background:#fff;
		top:0;
		right:50%;
		left:0;
		bottom:0;
	} .home-recipe-search .rich-text {
		position:relative;
		z-index:1;
	}
	.recipe-detail-overview .recipe-highlights > div {
		padding-top:0;
		background:none;
	}
	.recipe-detail-overview .recipe-highlights > div::before {
		height:4em;
		width:4em;
		display:block;
		margin:0 auto;
	}
	.recipe-highlight--preptime::before {
		content: url(../images/site/icon-chefhat.svg);
	}
	.recipe-highlight--totaltime::before {
		content: url(../images/site/icon-clock.svg);
	}
	.recipe-highlight--yield::before {
		content: url(../images/site/icon-bowl.svg);
	}
	.recipe-sticky-treats-tout {
		display: none;
		visibility: hidden;
	}
}


/* styles for treats page sticky */
.recipe-sticky-treats-tout {
	position:fixed;
	bottom:0;
	background:#fff;
	left:0;
	right:0;
	z-index:2;
	text-align: left;
	transition:bottom 0.5s;
	box-shadow:0 0.2em 1em rgba(0,0,0,0.25);
}
.recipe-sticky-treats-tout + footer {
	margin-bottom:12em;
}
.recipe-sticky-treats-tout.disabled {
	bottom:-12em;
}
.recipe-sticky-treats-tout.disabled + footer {
	margin-bottom:0;
}
.recipe-sticky-treats-tout .content_wrapper {
	max-width: 55em;
	padding-left: 12em;
	padding-right: 12em;
	padding-top: 0em;
	padding-bottom: 0em;
	width: auto;
}
.recipe-sticky-treats-tout img {
	position:absolute;
	left:0;
	bottom: -3em;
	width:11em;
}
.recipe-sticky-treats-tout h2 {
	color:#1299cd;
	font-size: 2em;
	margin:0.66em 0 0.33em 0;
	text-align: inherit;
}
.recipe-sticky-treats-tout p {
	margin:0.25em 0 1em 0;
}
.recipe-sticky-treats-tout .button-cta {
	position:absolute !important;
	right: 1em;
	bottom: 50%;
	margin-bottom: -1.5em;
}
.recipe-sticky-treats-tout .icon--close {
	top:-1.5em;
}
@media (max-width:47.95em) {
	.recipe-sticky-treats-tout .content_wrapper {
		font-size:0.875em;
		padding-left: 9em;
		padding-right: 2em;
		padding-bottom: 2.75em;
		text-align: left;
		width: auto;
	}
	.recipe-sticky-treats-tout h2 {
		font-size:1.25em;
	}
	.recipe-sticky-treats-tout img {
		bottom: 2em;
		width: 7em;
		left:0.5em;
	}
	.recipe-sticky-treats-tout .button-cta {
		left: 1em;
		right: 1em;
		width:auto;
		bottom: 2.2em;
		padding-top:0.5em;
		padding-bottom:0.5em;
		font-size:1em;
	}
	.recipe-sticky-treats-tout.mobile-not-scrolled {
		bottom:-12em;
	}
}
/* styles for treats page sticky */



.hero--recipe-theme::after {
	position:absolute;
	content:'';
	display:block; bottom:-1px; 
	height:10vw;
	width:100vw;
	background:url(../images/site/curve-top-ltgray.svg) center bottom -15vw / 100vw 25vw;
}
.hero--recipe-theme section {
	background:rgba(0,0,0,0.25);
}
.hero--recipe-theme-birthday {
	background:url(../images/recipes/hero-bday.jpg) center / cover;
}
.hero--recipe-theme-valentines {
	background:url(../images/recipes/hero-valentines.jpg) center / cover;
}
.hero--recipe-theme-halloween {
	background:url(../images/recipes/hero-halloween.jpg) center / cover;
}
.hero--recipe-theme-christmas {
	background:url(../images/recipes/hero-xmas.jpg) center / cover;
}
.hero--recipe-theme h1 {
	position:absolute; left:-999em;
}
.hero--recipe-theme h2 {
	font-size:calc(1.5em + 5vw);
	max-width:12em;
}
.recipe-theme-title section {
	background: #f2f2f2;
	margin:0; padding:2em 0;
}
.recipe-theme-title p {
	background: #f2f2f2;
	font-size:1.25em; 
	text-align:center;
	margin:1em auto; 
	max-width:36em; 
}
.recipe-theme-bottom {
	background: #f2f2f2;
	box-shadow:0 10vw 0 #f2f2f2;
	padding:2em 2em 4em;
}
.recipe-theme-bottom .content_wrapper {
	max-width:48em;
}
.recipe-theme-bottom ul {
	text-align:left;
}
@media (min-width:48em) {
	.hero--recipe-theme h2 {
		font-size:4em;
		max-width:16em;
	}
	.recipe-theme-bottom p,
	.recipe-theme-bottom ul {
		font-size:1.25rem;
	}
}
.home .sitemapV2:first-child {
	margin-top: 3em;
}


/* new tile style  */

.promotions-featured .promo-new-kfr-html { font-family: Helvetica, Arial, sans-serif; color:#000; background:#fff; padding:2em 0;  text-align:center; }
.promotions-featured .promo-new-kfr-inner { position:relative; height:100%; }
.promotions-featured .promo-new-kfr-inner::before { content:''; display:inline-block; height:100%; min-height:20em; vertical-align:middle; }
.promotions-featured .promo-new-kfr-content { content:''; display:inline-block; vertical-align:middle; width:80%;  }
.promotions-featured .promo-new-kfr-html img { }
.promotions-featured .promo-new-kfr-html .kfr-button-cta { font-weight:bold; text-align:center; letter-spacing:0.1em; text-transform:uppercase;  display:inline-block; margin:auto 1em; background:rgb(210,19,70); border: none; border-radius: 1em; color: #fff; padding: 0.8em 3em; transition:background 0.2s; }
.promotions-featured .promo-new-kfr-html .kfr-button-cta:hover {  background:rgb(170,12,50);  }
.promotions-featured .promo-new-kfr-html p { font-size:3.5vw; }

@media (min-width:48em) {
	.promotions-featured .promo-new-kfr-html p { font-size:1.75vw; }
}
@media (min-width:75em) {
	.promotions-featured .promo-new-kfr-html p { font-size:1.25rem; }
}
footer::before {
    display: block;
    content: '';
    background: url(../images/home/white-curve.svg) center bottom / contain no-repeat;
    width: 100%;
    height: auto;
    padding-top: 8%;
    position: absolute;
    z-index: 1;
    top: -8.0vw;
}
/* sticky styles */
footer {
   margin: 8em -5% 0;
}
.kfr-tout--sticky { background:rgba(0,0,0,0.8); font-size:1rem; font-family: Helvetica, Arial, sans-serif; font-weight:normal; padding:0; height:3.5em; text-transform:none; }
.kfr-tout--sticky a  { margin:0; display:flex; justify-content:center; height:100%; font-size:1rem; }
.kfr-tout--sticky a>img { position:static; height:3em; margin:auto 0.5em; }
.kfr-tout--sticky a>span { margin:auto 2em auto 0; }
.kfr-tout--sticky a::after { display:none}
.kfr-tout--sticky .icon--close { border:none; top:0; border-radius:0; color:rgb(210,19,70); background: rgba(0,0,0,0);}
.kfr-tout--sticky .icon--close:after, 
.kfr-tout--sticky .icon--close:before { border-radius:0; color:inherit; }
.kfr-tout--sticky .kfr-button-cta { display:block; margin-top:0.25em; font-size:inherit; font-weight:bold; text-align:center; letter-spacing:0.1em; text-transform:uppercase;  }
.kfr-tout--sticky .kfr-button-cta::after { content:''; display:inline-block; width:0.4em; height:0.4em; top:-0.1em; margin-left:0.2em; border-right:0.15em solid currentcolor; border-top:0.15em solid currentcolor; position:relative; vertical-align:middle; transform:rotate(45deg);   }

@media (min-width:48em) {
	.kfr-tout--sticky a { justify-content: center; }
	.kfr-tout--sticky a>img { position:static; height:3em; margin:auto 1em; }
	.kfr-tout--sticky .icon--close { font-size:50%; }
	.kfr-tout--sticky .kfr-button-cta { display:inline-block; margin:auto 1em; background:rgb(210,19,70); border: none; border-radius: 1.5em; color: #fff; padding: 0.5em 1.5em; transition:background 0.2s; }
	.kfr-tout--sticky .kfr-button-cta:hover {  background:rgb(170,12,50);  }
	.kfr-tout--sticky .kfr-button-cta::after { display:none; }
}

.promotions-featured .promo-new-kfr-html { border:0.33em solid #0096d9; }

.pagination {
    margin: 1em 0 6em;
}

.recipe-results-party-ideas .recipe-list-image::before {
    content: '';
    display: block;
    padding-top: 50.66%;
}

.recipe-results-party-ideas img{
        top: 40%;
}


.party-detail-recipe-images {
    background-color: #fff;
    margin: 0 auto;
    box-shadow: 0 0 1em rgb(0 0 0 / 15%);
    border-radius: 1.5em;
    overflow: hidden;
    text-align: center;
    max-width: 24em;
    width: 100%;
}

.party-detail-images div {
    background-color: #fff;
    margin: 0 0.5em 1em;
    box-shadow: 0 0 1em rgb(0 0 0 / 15%);
    border-radius: 1.5em;
    overflow: hidden;
    text-align: center;
    
}

.party-detail-images img {
    width: 100%;
    max-width: none;
}

.party-detail-recipe-images img{
    padding-bottom: 1.2em;
        width: 100%;
}

.party-detail-text h1{
    text-align: left 
}

.party-detail-text h2{
    text-align: left;
    font-size: 1.8em;
    margin: 1em 0 0 0;
}

.party-detail-highlight .content_wrapper .party-detail-text{
    padding-bottom: 4em;
     text-align: left 
    }

@media (min-width:48em) {

    .party-detail-highlight .content_wrapper .party-detail-images{
            width: 100%;
        }
    .party-detail-recipe-images{
         width: calc(50% - 1em);
        display: block;
        margin: 0 auto;
        max-width: 24em;
    }
    .party-detail-highlight .content_wrapper .party-detail-text{
        width: 80%;
        padding-bottom: 1em;
         text-align: left;
        margin: 3em auto;
    }
    .party-detail-images {
        margin: 0 2em 1em 0;
        
    }
    
   
}

#dotter-app .uFBVo{
    background:none;
    
}

#dotter-app .hLXMQb {
    justify-content: center;
}

.fynotx > .MuiGrid-item {
        justify-content: center;
}

.product-detail-actions .button-cta {
    box-sizing: content-box;
    display: none;
}

@media (max-width: 47.95em){
    .nav--main .subNav::after {
       color: #0e5b8b;
    }
    .nav--main li.mobile-nav--opened > a::after {
        margin-left: 4em;
        transition: transform 0.2s, margin 0.5s;
        color: #0e5b8b;
        transform: translate(0, -50%) scale(0.66) rotatey(180deg) rotate(-45deg);
    }
}

.hBnqBn {
    position: sticky;
    z-index: 1 !important;
}



.product-wtb {
	padding-top: 8%;
	background-color: #f2f2f2;
}
.product-wtb section {
	margin: 0;
	padding: 0 0 2em 0;
}

.product-wtb-background {
	border-radius: 12px;
	background-color: #fff;
	background-position: center top 50%;
	margin: 0 auto;
	box-shadow: 0px 0px 12px #0000001A;
	display:flex;
	align-items: center;
}
.product-wtb-description {
	text-align: center;
	padding:0 2em 2em;
	width: 50%;
	display: inline-block;
}
.product-wtb-description h2 {
	font-size: 2em;
	margin-bottom: 0;
	color: #000;
}
.product-wtb-description .button-cta {
	font-size: 1.2em;
	color: #fff;
	
	padding: .5em 2em;
	margin-top: 1em;
	background-color: #b41946;
}
.product-wtb-img {
	width: 50%;
	position: relative;
	z-index: 2;
	padding:0 0 0 3em;
}
.product-wtb-img img {
	margin-top:-15%;
	display: inline-block;
}

@media (min-width:64em) {
	.product-wtb-img {
		width:60%;
		padding:0 0 0 6em;
	}
	.product-wtb-description h2 {
		font-size:2em;
	}
    
    .product-wtb .content_wrapper {
    max-width: 64em;
    }
    
}

@media (max-width:47.95em) {
	
	.product-wtb {
		padding-top:15%;
	}
	.product-wtb-background {
		max-width:32em;
		height: auto;
		display:block;
	}
	.product-wtb-img {
		display: block;
		width: calc(100% - 4em);
		padding:0 2em;
	}
	.product-wtb-description {
		width:auto;
		display:block; 
		margin:auto;
	}
	.product-wtb-description .button-cta {
		margin-top: .7em;
		padding: .5em 1.5em;
	}
}

.recipe--wtb .content_wrapper a{
	margin: 0.5em 1em;
}
.recipe--wtb {
	padding-bottom: 4em
}

@media (min-width:48em) {
.recipe--wtb .content_wrapper{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.recipe--wtb .content_wrapper a{
	flex-basis: calc(50% - 1em);
    max-width: 24em;
	margin: 0.5em 1em;
}

}