/* fonts */

@font-face {
	font-family: 'Mission Gothic';
	src: url('../fonts/MissionGothic-Thin.woff2') format('woff2'),
		url('../fonts/MissionGothic-Thin.woff') format('woff');
	font-weight: 100;
	font-style: normal;
}

@font-face {
	font-family: 'Mission Gothic';
	src: url('../fonts/MissionGothic-ThinItalic.woff2') format('woff2'),
		url('../fonts/MissionGothic-ThinItalic.woff') format('woff');
	font-weight: 100;
	font-style: italic;
}

@font-face {
	font-family: 'Mission Gothic';
	src: url('../fonts/MissionGothic-Light.woff2') format('woff2'),
		url('../fonts/MissionGothic-Light.woff') format('woff');
	font-weight: 300;
	font-style: normal;
}
@font-face {
	font-family: 'Mission Gothic';
	src: url('../fonts/MissionGothic-LightItalic.woff2') format('woff2'),
		url('../fonts/MissionGothic-LightItalic.woff') format('woff');
	font-weight: 300;
	font-style: italic;
}

@font-face {
	font-family: 'Mission Gothic';
	src: url('../fonts/MissionGothic-Regular.woff2') format('woff2'),
		url('../fonts/MissionGothic-Regular.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'Mission Gothic Regular';
	src: url('../fonts/MissionGothic-RegularItalic.woff2') format('woff2'),
		url('../fonts/MissionGothic-RegularItalic.woff') format('woff');
	font-weight: normal;
	font-style: italic;
}

@font-face {
	font-family: 'Mission Gothic';
	src: url('../fonts/MissionGothic-Bold.woff2') format('woff2'),
		url('../fonts/MissionGothic-Bold.woff') format('woff');
	font-weight: bold;
	font-style: normal;
}
@font-face {
	font-family: 'Mission Gothic';
	src: url('../fonts/MissionGothic-BoldItalic.woff2') format('woff2'),
		url('../fonts/MissionGothic-BoldItalic.woff') format('woff');
	font-weight: bold;
	font-style: italic;
}

@font-face {
	font-family: 'Mission Gothic';
	src: url('../fonts/MissionGothic-Black.woff2') format('woff2'),
		url('../fonts/MissionGothic-Black.woff') format('woff');
	font-weight: 900;
	font-style: normal;
}
@font-face {
	font-family: 'Mission Gothic';
	src: url('../fonts/MissionGothic-BlackItalic.woff2') format('woff2'),
		url('../fonts/MissionGothic-BlackItalic.woff') format('woff');
	font-weight: 900;
	font-style: italic;
}

html {
	font-family:"Mission Gothic", sans-serif;
}
body {
	overflow:hidden;
}
main section {
	margin:0;
}

/* tiny sizing */
@media (max-width:337px) {
	html, body { font-size:calc((100vw - 17px) / 20); min-width:0; }
	body, header, #search, .kfr-tout--sticky { min-width:0; }
}
/* tiny sizing */

/* Navigation */
header {
	background:#0061af;
	max-width:100vw;
}
.header-logo {
	background:transparent;
	display:inline-block;
	height:100%;
	padding:0;
	vertical-align:middle;
	width: 10em;
}
.header-logo img{
	display:block;
	height:90%;
	margin: 2.5% auto;
}
.navicon {
	
}
.navicon span:after {


}
.mobile-menu--active .navicon span:after {
	width:2em;
	margin-left:0;
}
header a, 
header button, 
footer a, 
nav a {
	color:#fff;
	text-decoration:none;
}
.menu-button, .search-button {
	font-size: 0.75em;
	z-index: 5;
}
#search .search-label--submit::before,
.searchicon span::before {
	border-width:0.25em;
	height:1.33em;
	width:1.33em;
}
.nav--container {
	background:#0061af;
	box-shadow: 0 100vh 0 100vh rgba(0,0,0,0.75);
}
.nav--container li {
	position:relative;
}
.nav--main,
.nav--featured,
.nav--secondary ul {
	/* font-family: something-condensed; */
	font-weight:bold; 
}
/* DROPDOWN HIDER */
.nav--main a {
	padding-right:0.75em; 
	margin-right:0;
}
.nav--main a::after {
	display:none;
}
.nav--main > ul > li:focus-within > div, 
.nav--main ul > li:hover > div {
	display:none;
	visibility:hidden;
}
/* END DROPDOWN HIDER */
.nav--featured {
	text-transform:uppercase;
	padding:0 0.5em;
}
.nav--featured a {
	color:#0061af;
	padding:0.5em;
}
.nav--featured a:hover {
	color:#003866;
	background:inherit;
}
.nav--featured .nav-item--current > a {
	text-decoration:underline;
}
.nav--main,
.nav--secondary {
	text-transform:uppercase;
}
.nav--main ul {
	color:#fff;
	background:transparent;
}
.nav--mobile-extras {
	margin:1em 0;
	text-align: center;
	position: fixed;
	width: 100%;
	bottom: 0;
}
.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%;
	color:#fff;
	text-transform:none;
}
.nav--mobile-extras p a {
	text-decoration:underline;
	padding:0.5em;
}
nav a:hover {
	background:transparent;
	color:rgba(255,255,255,0.9);
}

.page--contact-form .title p{text-align: center;}

@media (max-width:47.95em) {
	
	.header-logo img {
		display:block;
		height: 4.2em;
		margin:0.2em auto 0;
		transition:height 0.2s;
	}
	.mobile-menu--active .header-logo img {
		height: 5.2em;
	}
	.mobile-menu--active .nav--featured {
		visibility:visible;
	}
	.nav--container {
		border-top:none;
	}
	.mobile-menu--active{
		/*padding-top:0.5em;*/
	}
	.nav--container nav {
		padding:0;
	}
	.nav--container .nav--main {
		padding-top:1em;
	}
	header a {
		padding: 0.5em 1em;
	}
	.nav--main a {
		margin-right:0;
	}
	.nav--main a::after {
		margin-left:1em;
	}
	.nav--main ul ul a {
		text-transform:none;
	}
	.nav--container {
		height:100vh;
		padding-top:0;
	}
	.mobile-menu--active .nav--container {
		max-height:calc(100vh - 4.5em);
		padding-top:0;
	}
	.mobile-menu--active #critical_communications + header .nav--container {
		max-height:calc(100vh - 8em);
	}
}
@media (max-width:48em) and (min-aspect-ratio:10/7) {
	
	html {
		font-size:3vh;
	}
	#search {
		top:0;
		z-index: 199;
		padding: 0.125em 0 0;
	}
	#search::before {
		height:0;
	}
	.page--search-results #search {
		top:5.5em;
	}
	/* layering elements  */
	.search--active .nav--featured {
		position:fixed;
		z-index:99;
	}
	.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;
	}
	#search .content_wrapper {
		width:calc(100vw - 8em);
	}
	.search--active header .content_wrapper {
		pointer-events:none;
	}
	.search--active  .menu-button, 
	.search--active .search-button {
		pointer-events:auto;
		color:#fff;
	}
	#critical_communications + header .content_wrapper {
		margin-top:3em;
	}
	.menu-button, 
	.search-button {
		z-index:9999;
	}
	.nav--container {
		height: calc(100vh - 5.5em);
	}
	.nav--container nav {
	}
	.mobile-menu--active .nav--container {
		padding:1em 0;
	}
	.nav--mobile-extras .social_icons {
		display:inline-block;
		vertical-align:middle;
		margin: 0;
	}
	.nav--mobile-extras p {
		margin: 0 1em;
		display:inline-block;
		vertical-align:middle;
	}
	header .content_wrapper {
		max-width:none;
	}
}

@media (max-width:20em) {
	.nav--container nav {
		min-width:300px;
	}
}
@media screen and (min-width:48em) {
	
	.header-logo {
		margin-right: 1em;
		width:8em;
	}
	.header-logo img {
		height:auto;
		margin: 0.5em auto;
	}
	.search-button {
		margin-top:4em;
	}
	.nav--container {
		background:transparent;
		box-shadow:none;
	}
	.nav--main ul div {
		background:rgba(0,0,0,0);
	}
	.nav--main ul div > ul {
		background:#003866;
	}
	.nav--main a {
		white-space:nowrap;
	}
	.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 {
		background:#fff;
		content:'';
		display:block;
		border-radius:0.16em;
		height:0.25em;
		position:absolute;
		bottom: 0.33em;
		left: 1.25em;
		right:1.25em;
	}
	.nav--secondary .nav-item--current::after,
	.nav--secondary .nav-item--current-parent::after {
		left:2.5em;
	}
	.nav--main > ul > .nav-item--current:first-child::after,
	.nav--main > ul > .nav-item--current-parent:first-child::after,
	.nav--main > ul > .nav-item--current.li--products::after,
	.nav--main > ul > .nav-item--current-parent.li--products::after {
		/* right: 2.5em; */
	}
	.nav--secondary .link--where-to-buy,
	.nav--secondary .link--promotions {
		padding-left:2em;
		position:relative;
	}
	
	.nav--secondary li img,
	.nav--secondary li img {
		width: 1.33em;
		height: 2em;
		position: absolute;
		top: 0.25em;
		left: 0.25em;
	}
}
@media screen and (min-width:48em) and (min-width:54em) {
	.header-logo {
		width:10em;
		margin-bottom: -0.75em;
		height: 6.25em;
	}
}
/* largest size */
@media (min-width:64em) {
	.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;
	}
}
@media (min-width:64em) {
	header nav {
		font-size:inherit;
	}
}
@media (min-width:66em) {
	header nav {
		font-size: 1.125em;
	}
	.nav--main > ul > li,
	.nav--secondary > ul > li {
		padding:1.2em 0;
	}
}
footer {
	overflow:hidden;
	position:relative;
	background:#0061af;
	color:#fff;
}
footer .content_wrapper {
	position:relative;
	z-index:1;
	margin-top: 8em;
	margin-bottom:2em;
	max-width:58em;
}
.footer-nav--main ul {
	text-transform:uppercase;
	position:relative;
	display: block;
}
.footer-nav--main a:hover {
	background:none;
	text-decoration:underline;
}
.footer-nav--main a {
	/* font-family: something-condensed; */
	font-weight:bold;
	font-size: 1.125em;
}
.footer-nav--secondary a {
	text-decoration:underline;
}
footer li {
	padding: 0.5em;
	break-inside: avoid;
}
footer .social_icons a {
	margin:0.5em 0.33em;
}
.footer-nav--main li:first-child a::before {
	content: '';
	display:block;
	background:url(../images/site/frostedflakes-logo.png) center / contain no-repeat;
	top: -6em;
	width: 8em;
	height: 6em;
	left:50%;
	margin-left: -4em;
	position:absolute;
}
#back-to-top {
	top:auto;
	bottom:4em;
}
@media (min-width:48em) {
	footer .content_wrapper {
		margin-top: 7em;
	}
	footer ul {
		margin:0 -0.5em;
	}
	.footer-nav--main ul {
		text-align:left;
		columns: 4;
	}
	.footer-nav--main li {
		display:block; 
		max-width:10em;
	}
}
/* Headings and paragraph styles */
h2,
.pagehero h1,
.contact-intro h1 {
	font-size: 2.8em;
	font-weight: 800;
	line-height:0.9;
	text-align:center;
	color:#0061af;
}
.hero--products h1 {
    color: #fff;
}
h3 {
	font-weight: 800;
	font-size:2em;
	line-height:0.9;
}
h1,h2,h3,h4,h5,h6 {
	margin:1rem 0;
	/* font-family: something-condensed; */
	font-weight:bold;
	text-transform:uppercase;
}
h1,h2 {
	font-weight:800;
	letter-spacing:-0.02em;
}
p {
	margin:1rem 0;
}
h1 span,h2 span,h3 span,h4 span,h5 span,h6 span {
	white-space:nowrap;
}
p {
	
}
.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-family: something-condensed; */
	text-transform:uppercase;
	font-weight:bold;
}
.kfr-tout--sticky strong {
}
@media (min-width: 40em) {
	.kfr-tout--sticky a>img {
		display: inline-block;
		position: static;
	}
	
	.kfr-tout--sticky a {
		display: flex;
		margin: 0.66em 3em 0.66em 0.66em;
	}
	.kfr-tout--sticky {text-align: left;}
}
@media (min-width: 60em) {
	.kfr-tout--sticky a>img {
		position: absolute;
		top: .66em;
		left: .66em;
	}
	
	.kfr-tout--sticky a {
		display: inline-block;
		margin: 1em;
	}
	.kfr-tout--sticky {text-align: center;}
}
.mobile-menu--active .kfr-tout--sticky,
.search--active .kfr-tout--sticky {
	pointer-events:none;
}
/* Tables */
table {
	margin:0;
	border-collapse:collapse;
	border-spacing:0;
	width:100%;
}
tr {
}
td {
	padding:0.5em 0;
}
/* Links and CTA Buttons */
a {
	color:#0061af;
	text-decoration:none;
}
a img {
	text-decoration:none;
}
form input[type=submit], 
form [type="button"], 
form [type="reset"], 
form [type="submit"],
.btn-primary,
.button-cta {
	font-size:1.125rem;
	font-weight:900;

	text-align:center;
	background:#FF7F0A;
	color:#231414;
	outline-offset:2px;
	padding:0.7em 1.5em 0.65em;
	text-transform:uppercase;
	transition:color 0.15s, background 0.15s;
}
.btn-primary,
.button-cta {
	min-width:6em;
}
.button-cta:focus, 
.button-cta:active {
}
[type="button"]:hover, 
[type="reset"]:hover, 
[type="submit"]:hover,
.btn-primary:hover,
.button-cta:hover {

	background:#ff9029;
}
.button-cta:hover {
}
.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.5em rgba(0,0,0,.5);
	height: 5em;
	width: 3.1em;
	left: -1.2em;
	position: absolute;
	z-index: 1;
}
.icon--player::after {
	display: block;
	content: '';
	border-right: 3em solid currentcolor;
	border-bottom: 3em solid currentcolor;
	height: 5em;
	width: 5em;
	position: absolute;
	top: -2.75em;
	left: -5em;
	transform:scaley(.6) rotate(-45deg);
	box-shadow: inset 0em 0em 0.3em rgba(0,0,0,.5);
}
.ytplayer:hover .icon--player {
	color:#dedede;
}
.ytplayer {
	opacity:0.8;
	pointer-events:none;
}
.yt-link-initialized {
	opacity:1;
	pointer-events:auto;
}
@media (min-width:48em) { 
	.icon--player {
		font-size:1em;
	}
	.button-cta {
		min-width: 9em;
	}
	.video-fullwidth  .ytplayer-wrapper  {
		width:66.67%;
		margin:0 auto;
	} 
}
.nav--main li:hover > div {
	max-height:100vh !important;
}
/* Forms */
input,
textarea {
	border-radius:0em;
	outline-offset:2px;
}
select {
	border:0.15em solid currentcolor;
	border-radius:0;
	font-weight:600;
	text-align:center;
	padding:0.45em 2em 0.5em 1em;
	transition:color 0.15s, background 0.15s;
	outline-offset:2px;
}
.pagination a,
.pagination input {
	background:#0061af;
}
#search {
	background: rgba(3, 28, 48, 0.95);
}
#search input[type="text"] {
	border-radius:0;
	padding: 0 3rem 0 0;
	cursor:text;
	outline-offset:4px;
}
@media (min-width:48em) { 
	#search .content_wrapper {
		max-width:29em;
	}
	#search input[type="text"] {
		width:calc(100% - 10rem);
	}
}
/* 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;
}
#search .search-label--large {
	font-weight:bold;
	/* font-family: something-condensed; */
	text-transform:uppercase;
	font-size:275%;
}
#search .search-label--submit::before {
	top:0.3em;
	left: 0.46em;
}
#search .search-label--submit::after {
	top: 2.15em;
	left: 1.8em;
}
/* Hide the final addthis element's hover to patch the reverse-tab-nav keyboard trap */
div#at15s {
	display:none !important;
}
/* Some active styles */
a:focus,
a:active,
a:focus span.button-cta,
a:active span.button-cta,
button:focus,
button:active,
input:focus,
input:active,
select:focus,
select:active,
[tabindex]:focus,
form input[type="checkbox"]:focus + label:before, 
form input[type="radio"]:focus + label:before {
	outline:2px solid #000;
}

header .content_wrapper a:focus,
header .content_wrapper a:active,
header button:focus,
header button:active,
footer a:focus,
footer a:active,
.kfr-tout--sticky a:focus,
.kfr-tout--sticky a:active,
.kfr-tout--sticky button:focus,
.kfr-tout--sticky button:active,
.home-mission-tiger-promo a:focus,
.home-mission-tiger-promo a:active,
.promotion--tony a:focus span.button-cta,
.promotion--tony a:active span.button-cta,
.product-category a:focus,
.product-category a:active,
.product-nutrition a:focus,
.product-nutrition a:active,
.product-nutrition select:focus,
.product-nutrition select:active,
#search input[type="text"]:focus,
#search input[type="text"]:active {
	outline:2px solid #000;
}

#search input[type=text] {
	outline-offset: 0.25em;
}
#search input[type=text]:focus,
#search input[type=text]:active {
	outline: none;
	border-bottom-color: #ffa244;
}
/* 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;
}
.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;
}
/* Basic Hero */
.pagehero {
	height:50vw;
	background:#333;
}
.pagehero h1, .pagehero h2 {
	font-size:2em;
}
.hero--home {
	height:auto;
	padding:2em 0;
	padding-bottom: 24em;
	min-height: 24em;
	background-color:#f3f4f5;
	overflow:visible;
}
.hero--home-cereal {
	width:80%;
	margin-left:-12%;
}
.hero--home .content_wrapper {
	overflow:visible;
	position:relative;
}
.hero--home .rich-text {
	max-width:24em;
	overflow:visible;
	position:static;
}
main {
}
.hero--home-flake-container {
	position: absolute;
	left: 0;
	top: 0;
	width:100%;
	height:100%;
	pointer-events:none;
}
.hero--home-flake {
	position:absolute;
	background:url(../images/home/flake1.png) center / contain no-repeat;
	width: 7em;
	height: 7em;
	margin: -4em;
	left: 5%;
	top: 22em;
	transform:translate(-1em,-2em);
	transition:transform 0.01s, opacity 0.01s;
	opacity:0;
}
.hero--home-flake:nth-child(2) {
	background:url(../images/home/flake2.png) center / contain no-repeat;
	left: 93%;
	top: 25em;
	transform:translate(1em,-2em);
}
.hero--home-flake:nth-child(3) {
	background:url(../images/home/flake3.png) center / contain no-repeat;
	left: 4%;
	top: 265%;
	z-index: 1;
	transform:translate(-1em,3em);
}
.hero--home-flake:nth-child(4) {
	background:url(../images/home/flake4.png) center / contain no-repeat;
	left: 87%;
	top: 241%;
	padding-left:2em;
	padding-bottom:2em;
	z-index: 1;
	transform:translate(0,0);
	transform:translate(1em,3em);
}
.hero--home-flake:nth-child(5) {
	display:none;
	transform:translate(-1em,3em);
}
.section--in-viewport .hero--home-flake:nth-child(1n) {
	transform:translate(0,0);
	opacity:1;
	transition:transform 0.3s 0.6s, opacity 0.2s 0.6s;
}
.section--in-viewport .hero--home-flake:nth-child(2) {
	transition-delay:0.7s;
}
.section--in-viewport .hero--home-flake:nth-child(3) {
	transition-delay:0.8s;
}
.section--in-viewport .hero--home-flake:nth-child(4) {
	transition-delay:0.9s;
}
.section--in-viewport .hero--home-flake:nth-child(5) {
	transition-delay:1s;
}

.search--active .hero--home-flake:nth-child(1n) {
	z-index:1;
}

.hero--products .rich-text,
.hero--promotions .rich-text {
	color:#fff;
	font-size:1.5em;
	text-shadow:0 0 1.5em rgba(0,0,0,0.5), 0.1em 0.1em 0.2em rgba(0,0,0,0.5);
}
.hero--products h2,
.hero--promotions h2 {
	color:inherit;
}

@media (min-width:48em) {
	.pagehero {
		height:25vw;
	}
	.pagehero h1, .pagehero h2 {
		font-size:3em;
	}
	.hero--home {
		font-size:1.4vw;
		height:54vw; 
		max-height:38em;
		padding-bottom:5vw;
	}
	.hero--home .content_wrapper {
		box-sizing:border-box;
		/* padding-right:50%; */
		/* text-align: left; */
	}
	.hero--home .rich-text {
		max-width: 28em;
		padding-right: 50%;
	}
	.hero--home-cereal {
		margin-top:-33%;
	}
	.hero--home-flake {
		width:20%;
		height:20%;
		margin:-10%;
		left: 44%;
		top:10%;
	}
	.hero--home-flake:nth-child(1) {
		width:25%;
		height:25%;
	}
	.hero--home-flake:nth-child(2) {
		left: 89%;
		top: 10%;
		z-index: 199;
		width: 16%;
	}
	.hero--home-flake:nth-child(3) {
		left: 66%;
		top: 98%;
		z-index: 97;
		width: 10em;
	}
	.hero--home-flake:nth-child(4) {
		left: 90%;
		width: 25%;
		height: 25%;
		z-index: 199;
		top: 89%;
	}
	.hero--home-flake:nth-child(5) {
		width:25%;
		height:25%;
		top: 116%;
		left: 51%;
		display: block;
		z-index: 1;
	}
}
@media (min-width:75em) {
	.hero--home {
		font-size:1em;
	}
}

.pagehero > section > img, 
.pagehero > section > picture img {
	width:auto;
}

.home-mission-tiger-promo {
	color:#fff;
	position:relative;
	perspective:100vw;
	text-align:center;
	margin-top: -10vw;
	padding: 15vw 0 10vw;
	margin-bottom: 0vw;
}
.home-mission-tiger-promo h2 {
	color:inherit;
	font-size:2em;
}
.home-mission-tiger-promo::before {
	content:'';
	background:radial-gradient(circle farthest-corner at 50% 50%, #00539E, #003866);
	position:absolute;
	left:0;
	right:0;
	top: 5vw;
	bottom:0;
	transform:skewy(-3deg);
}
.home-mission-tiger-promo::after {
	content:'';
	background:white;
	position:absolute;
	left:0;
	right:0;
	bottom:-8vw;
	height:13vw;
	transform:skewy(3deg);
	z-index:2;
}

.home-mission-tiger-promo section::after {
	content:'';
	background:#FF7F0A;
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	height:8vw;
	transform:skewy(3deg);
}


.home-mission-tiger-promo .content_wrapper {
	position:relative;
}
.home-mission-tiger-promo .rich-text {
	text-align:center;
	display:inline-block;
	padding-bottom:4em;
	max-width: 24em;
}
.home-mission-tiger-promo .rich-text img {
	width:25%;
	min-width:12em;
	margin:0 auto 1em;
}
.home-mission-tiger-promo .rich-text p {
	font-size:1.33em;
}
@media (min-width:48em) {
	.home-mission-tiger-promo {
		font-size:1.4vw;
	}
	.home-mission-tiger-promo h2 {
		font-size:3em;
	}
	.home-mission-tiger-promo .content_wrapper {
		position:relative;
	}
	.home-mission-tiger-promo .mission-tony {
		display:block;
		position:absolute;
		right: 45%;
		width: 50vw;
		height:90%;
		height:calc(100% - 5vw);
		min-width: 50em;
		max-width: 100em;
		bottom: 5vw;
		background:url(../images/home/tony_mission_promo.png) center / contain no-repeat;
		z-index:1;
		pointer-events:none;
	}
	.home-mission-tiger-promo .rich-text {
		max-width:28em;
		padding-left:50%;
	}
}
@media (min-width:75em) {
	.home-mission-tiger-promo  {
		font-size:1em;
	}
}


/* promotions  */
.promotions-featured section {
	margin:0; 
} 
.promotions-featured {
	margin:4em 0 0;
}
.promotions-featured-row {
	margin:0 -1em;
	width: 100vw;
}
.promotions-featured .promotions-featured-column {
	display:block;
	position:relative;
	font-size: 2.33vw;
	margin:0;
}
.promotions-featured picture, 
.promotions-featured img {
	width: 100%;
}
.promotions-featured .promotions-description {
}
.promotions-featured-column {
	height:100vw;
	overflow:hidden;
}
.promotion--missiontiger,
.promotion--kfr {
	height:66vw;
}
.promotion--missiontiger .rich-text,
.promotions-featured-column .rich-text,
.promotion--kfr .rich-text {
	height:100%;
	box-sizing:border-box;
	display:flex;
	align-items: center;
}
.promotion--tony a {
	color:#fff;
}
a.promotions-description {
	position:absolute;
	top:0;
	left:0;
	bottom:0;
	right:0;
	padding: 65% 2em 2em;
	text-align:center;
	box-sizing:border-box;
}
.promotions-description p{
	margin: 1em auto;
}
.promotions-featured .promotion--missiontiger  {
	background:radial-gradient(circle farthest-corner at 50% 50%, #00539E, #003866);
	border-bottom:3em solid #ff7f0a;
}
.promotions-featured .promotion--missiontiger a {
	padding-left: 37%;
	text-align: center;
	position:relative;
	padding:4em 1em 4em 37%;
}
.promotion--missiontiger img {
	width:11em;
	margin: 1em auto 2em;
}
.promotion--missiontiger .rich-text::before {
	content:'';
	display:block;
	position:absolute;
	width: 50%;
	top: 1em;
	bottom:-3em;
	background:url(../images/home/tony_mission_tile.png) bottom left / contain no-repeat;
	z-index:1;
	pointer-events:none;
}
.promotions-featured .promotion--kfr {
	background:#f3f4f5;
}
.promotions-featured-row a {
	text-decoration:none;
	width: 100%;
}
.promotion--kfr a {
	padding:6em 0;
}
.promotion--kfr h2{
	color:#0E1E63;
	font-size:3em;
}
.promotion--kfr p {
	color:#0E1E63;
	font-size:1.5em;
}
.promotion--kfr .promotion--kfr-graphic {
	font-size:1.5em;
}
.promotion--tony img {
	/* border-bottom:4em solid #0061ae; */
}
@media (min-width:48em) {
	.promotion--missiontiger,
	.promotions-featured-column,
	.promotion--kfr {
		height:30em;
	}
	.promotions-featured h2 {
		font-size:2em;
	}
	.promotions-featured-row {
		flex-wrap: nowrap;
		width:auto;
	}
	.promotions-featured-row > * {
		flex-basis:50%;
		
	}
	a.promotions-description {
		padding-top:60%; 
	}
	.promotions-featured .promotions-featured-column {
		font-size: 1.5vw;
	}
	.promotion--tony img {
		border-bottom:none; 
	}
}

@media (min-width:78em) {
	.promotions-featured-row {
		margin:0;
	}
	.promotions-description p{
		width: 100%;
		margin: 0 0 1em 0;
	}
	.promotions-featured .promotions-featured-column {
		font-size:1.1em;
	}
}
/* END Multiple column Promotions */

/* Promotion page "three column" style */
section.hero--promotion-detail {
	margin-top:0;
} 
.hero--promotion-detail img {
	display: block;
}
.promotion-detail-overview {
	text-align:center; 
}
.promotion-detail-overview p a {
	text-decoration:underline;
}
.promotion-detail-overview .button-cta {
	margin:1em auto;
	display:block;
	max-width:12em;
}
.promotion-columns h3 {
	font-size: 2.8em;
	line-height: 0.9;
	text-transform:uppercase;
}
@media (min-width:48em) {
	.promotion-columns h3 {
		font-size: 4em;
	}
	.promotion-detail-overview .button-cta {
		margin:1em;
		display:inline-block;
	}
	.promotion-columns  {
		display:flex;
		padding:1em;
		text-align:center;
	}
	.promotion-columns > div {
		padding:0 2.5%;
		min-width:20%;
	}
	.promotion-columns > div {
		flex-grow: 1;
		padding: 0 1.5%;
		min-width: 29%;
		flex-basis: 33%;
	}
}
/* END Promotion page "three column" style */



/* Product Line Lists */
.productlist,
.products-line {
	text-align:center;
	position:relative;
	margin:2em 0;
	background: #fff;
}
.productlist section,
.products-line section {
	margin:0;
}
.productlist h2 + p,
.products-line h2 + p {
	font-size: 1.25em;
}
.products-line--related h2  {
}
.products-line--related h2 {
	line-height: 0.85;
}
.products-list {
	padding:0 0em;
	margin:0 -1em;
}
.products-list-product {
	padding:1em 0; 
}
.products-list-product .product-primary-image {
	height: 12em;
	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,
.search-results-item-title {
	display: block;
	padding:0 0.5em 0.5em 0.5em;
	text-decoration:underline;
	margin:0 auto;
	max-width:12em;
	font-weight:bold;
}
@media screen and (min-width:48em) {
	.products-list {
		margin:0 auto;
	}
	.products-list-product {
		flex-basis: 25%;
	}
	.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 screen and (min-width:64em) {
	.products-list-product {
		font-size:1.25em;
	}
	.search-results-item {
		font-size:1.25em;
	}
	.products-list-product .product-primary-image {
		height: 15em;
	}
}
/* END Product Line Lists */
/* Product Detail page */
.product-slider-holder,
.product-detail-overview {
	margin-top:1em;
}
.product-thumbnails-container .tns-nav-active {
	border-color:#0061af;
}
.product-detail-highlights {
	margin-bottom:4em;
}
.product-detail-overview h1 {
	color:#0061af;
	font-weight:800;
	font-size:2.5em;
	line-height:1;
}
.product-category-back {
	display:none; 
}
.tns-controls button[data-controls="next"]::before, 
.tns-controls button[data-controls="next"]::after, 
.tns-controls button[data-controls="prev"]::before, 
.tns-controls button[data-controls="prev"]::after {
	color:#0061af;
}
.recipe-thumbnails-container .tns-nav-active, 
.product-thumbnails-container .tns-nav-active {
	box-shadow: inset 0 0 0 1px #ff7f0a;
}
.product-detail-overview p {
	font-size:1.125em;
	margin:1em 0;
	white-space: pre-wrap;
}
.share-icon {
	background:url(../images/site/icon-sharer.svg) center / contain no-repeat;
}
.addthis_toolbox a {
	margin:0 0 0 0.25em;
}
.product-nutrition-row {
	display: flex;
	flex-wrap: wrap;
}
.product-nutrition h2 {
	color:inherit;
}
.product-nutrition h3 {
	font-size:2em;
	font-weight:800;
	letter-spacing:-0.033em;
}
.product-nutrition .content_wrapper > h2+p {
	display: none;
}
.product-nutrition select {
	font-size:1.125rem;
	background:#0061af;
	color:#fff;
}
.product-nutrition .select-wrapper::before{
	z-index:1;
	pointer-events:none;
}
.product-nutrition .button-cta {
	color:#0061af;
	background:#fff;
}
.product-nutrition-highlights {
	order: 1;
}
.product-nutrition-highlights h3:first-child {
	display: block;
	color: inherit;
}
.product-nutrition-highlights p {
	text-align:justify;
}
.product-nutrition-row .product-nutrition-smartlabel {
	margin: 2em 0;
}
.product-nutrition-smartlabel-title + p {
	margin-bottom:0.25em;
}
.product-nutrition p, 
.product-nutrition table {
	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 {
	background:#0061af;
	color:#ffffff;
	text-align:center;
	margin:2em 0; 
}
.product-nutrition::before, 
.product-nutrition::after {
	content:'';
	display:block;
	padding-top: 6%;
}
@media (min-width:48em) { 
	.product-detail-overview h1 {
		font-size:3em;
	}
	.product-nutrition::before, 
	.product-nutrition::after {
		padding-top: 5%;
		margin: 0;
		box-shadow:none;
	}
	.product-nutrition-smartlabel .select-wrapper {
		width:14.7em;
	}
	.product-nutrition-highlights {
	order: 0;
	}
}
/* Contact us -- based on old KSTL form */
main #KSTL-ContactUs-main .writeus {
	min-height:2em;
}
main #KSTL-ContactUs-main .writeus p {
}
main #KSTL-ContactUs-main .box-bordered {
	border:0.15em solid #0061af;
}
main #KSTL-ContactUs-main .box-header {
	background:#0061af;
	margin:-0.15em -0.15em 0;
}
main #KSTL-ContactUs-main .box-header h2 {
	color:#fff;
	text-align:left;
	font-size:2em;
}
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%;
}
.qq-upload-button {
	background:#0061af;
}



.kstl-contactus {
	max-width:58em;
	margin:0 auto;
}
.contact-intro {
	max-width:50em;
	margin:2em auto;
}
.contact-intro h1,
.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,
.contactpreliminary {
	max-width: 60em;
	margin: auto;
}
.contact-preliminary .content_wrapper,
.contactpreliminary .content_wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content:space-between;
}
.contact-preliminary-option {
	border: 0.15em solid #0061af;
	flex-basis: 100%;
	margin: 0 0 1em 0;
}
.contact-preliminary-title {
	background: #0061af;
	padding: .5em;
	margin: -0.15em -0.15em 0;
}
.contact-preliminary-title h2 {
	color: #fff;
	margin: 0;
	font-size:2em;
}
.contact-preliminary-content {
	padding: 0 1em 1em;
	text-align: center;
}
@media (min-width:64em) { 
	.contactpreliminary .content_wrapper {
		
	}
	.contact-preliminary-option {
		flex-basis: calc(33.33% - 1em);
	}
	.contact-preliminary-content p {
		text-align: left;
		min-height: 3.5em;
	}
} 

/* 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;}
body #KSTL-ContactUs-main fieldset .checkbox>div {
	float:none;
}
body #KSTL-ContactUs-main .qq-upload-button {
	background:#ff7f0a;
}
body #KSTL-ContactUs-main a {
	color:#0966B2;
	text-decoration:underline;
}
#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:2px solid #ffb100;
}
/* END Shim for contact form checkboxes + labels that are in the wrong order */

/* hide the custom checkbox in the bazaarvoice modal */
.bv-cleanslate input[type="checkbox"]:not(:checked) + label:before, 
.bv-cleanslate input[type="checkbox"]:checked + label:before,
.bv-cleanslate input[type="checkbox"]:not(:checked) + label:after, 
.bv-cleanslate input[type="checkbox"]:checked + label:after { display:none; }

/* bazaarvoice stars */
.products-list-product {
	position:relative;
	padding-bottom:1.5em;
}
.products-list-product  .bv_main_container { 
	transform:translate(-50%,0) scale(0.875) !important;
	position:absolute !important;
	bottom:0 !important;
	left:50% !important;
}

.page-specific-legal {
	padding: 0 1em;
}

.ps-header > .ps-product-details > h1.ps-product-name {
	font-family: "Mission Gothic", sans-serif;
}


