/* 
	Brand Colors
	---------------------------------------------
*/
@font-face {
  font-family: "GT-Walsheim-Regular";
  src: url("../../fonts/gt-walsheim/GT-Walsheim-Regular.eot");
  src: url("../../fonts/gt-walsheim/GT-Walsheim-Regular.eot?#iefix") format("embedded-opentype"), url("../../fonts/gt-walsheim/GT-Walsheim-Regular.woff2") format("woff2"), url("../../fonts/gt-walsheim/GT-Walsheim-Regular.woff") format("woff"), url("../../fonts/gt-walsheim/GT-Walsheim-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "GT-Walsheim-Regular-Oblique";
  src: url("../../fonts/gt-walsheim/GT-Walsheim-Regular-Oblique.eot");
  src: url("../../fonts/gt-walsheim/GT-Walsheim-Regular-Oblique.eot?#iefix") format("embedded-opentype"), url("../../fonts/gt-walsheim/GT-Walsheim-Regular-Oblique.woff2") format("woff2"), url("../../fonts/gt-walsheim/GT-Walsheim-Regular-Oblique.woff") format("woff"), url("../../fonts/gt-walsheim/GT-Walsheim-Regular-Oblique.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "GT-Walsheim-Medium";
  src: url("../../fonts/gt-walsheim/GT-Walsheim-Pro-Medium.eot");
  src: url("../../fonts/gt-walsheim/GT-Walsheim-Pro-Medium.eot?#iefix") format("embedded-opentype"), url("../../fonts/gt-walsheim/GT-Walsheim-Medium.woff2") format("woff2"), url("../../fonts/gt-walsheim/GT-Walsheim-Medium.woff") format("woff"), url("../../fonts/gt-walsheim/GT-Walsheim-Medium.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "GT-Walsheim-Medium-Oblique";
  src: url("../../fonts/gt-walsheim/GT-Walsheim-Medium-Oblique.eot");
  src: url("../../fonts/gt-walsheim/GT-Walsheim-Medium-Oblique.eot?#iefix") format("embedded-opentype"), url("../../fonts/gt-walsheim/GT-Walsheim-Medium-Oblique.woff2") format("woff2"), url("../../fonts/gt-walsheim/GT-Walsheim-Medium-Oblique.woff") format("woff"), url("../../fonts/gt-walsheim/GT-Walsheim-Medium-Oblique.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "GT-Walsheim-Bold";
  src: url("../../fonts/gt-walsheim/GT-Walsheim-Bold.eot");
  src: url("../../fonts/gt-walsheim/GT-Walsheim-Bold.eot?#iefix") format("embedded-opentype"), url("../../fonts/gt-walsheim/GT-Walsheim-Bold.woff2") format("woff2"), url("../../fonts/gt-walsheim/GT-Walsheim-Bold.woff") format("woff"), url("../../fonts/gt-walsheim/GT-Walsheim-Bold.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "GT-Walsheim-Bold-Oblique";
  src: url("../../fonts/gt-walsheim/GT-Walsheim-Bold-Oblique.eot");
  src: url("../../fonts/gt-walsheim/GT-Walsheim-Bold-Oblique.eot?#iefix") format("embedded-opentype"), url("../../fonts/gt-walsheim/GT-Walsheim-Bold-Oblique.woff2") format("woff2"), url("../../fonts/gt-walsheim/GT-Walsheim-Bold-Oblique.woff") format("woff"), url("../../fonts/gt-walsheim/GT-Walsheim-Bold-Oblique.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Milton";
  font-weight: normal;
  font-style: normal;
  src: url("../../fonts/milton/milton-bold.eot");
  src: url("../../fonts/milton/milton-bold.eot?#iefix") format("embedded-opentype"), url("../../fonts/milton/milton-bold.woff2") format("woff2"), url("../../fonts/milton/milton-bold.woff") format("woff"), url("../../fonts/milton/milton.ttf") format("truetype"), url("../../fonts/milton/milton.svg") format("svg");
}
@font-face {
  font-family: "Gazpacho";
  src: url("../../fonts/gazpacho/Gazpacho_normal_normal_900.woff2") format("woff2"), url("../../fonts/gazpacho/Gazpacho_normal_normal_900.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "TTNormsPro-Regular";
  src: url("../../fonts/ttnormspro/TTNormsPro_normal_normal_400.woff2") format("woff2"), url("../../fonts/ttnormspro/TTNormsPro_normal_normal_400.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "TTNormsPro-Medium";
  src: url("../../fonts/ttnormspro/TTNormsPro_normal_normal_600.woff2") format("woff2"), url("../../fonts/ttnormspro/TTNormsPro_normal_normal_600.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "TTNormsPro-Bold";
  src: url("../../fonts/ttnormspro/TTNormsPro_normal_normal_700.woff2") format("woff2"), url("../../fonts/ttnormspro/TTNormsPro_normal_normal_700.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
/* COLOR PALETTE COMPONENT
	-------------------------------------------------------------------------------------
	The purpose of this component is to manage the brand colors, palettes, and schemes 
	used throughout the site. The 'makeColorClasses' mixin generates predefined utility 
	classes by looping through maps to retrieve the color and class prefix values. To 
	add new color palettes add new 'key (palette name) | value (color value list)' pairs 
	to the maps below to expose them to the 'getColor' function as well as through their 
	respective utility classes.

	TODO: 
	-- Update component to expand range of use (classes, properties, functions)




/* 	-------------------------------------------------------------
	DEFAULT COLORS/PALETTES
	-------------------------------------------------------------
*/
/* 	-------------------------------------------------------------
	CUSTOM COLORS/PALETTES 
	-------------------------------------------------------------
*/
/*	---------------------------------------------------------------
	COLOR PROPERTIES FOR UTILITY CLASSES
	---------------------------------------------------------------
*/
/* 	----------------------------------------------------------------
	BUILD UTILITY CLASSES FOR ALL EXISTING PALETTE COLORS
	----------------------------------------------------------------
	TODO: 
	-- Modify mixin to accept infinite args
*/
.background-color-white {
  background-color: #fff !important;
}

.border-color-white {
  border-color: #fff !important;
}

.text-color-white {
  color: #fff !important;
}

.background-color-black {
  background-color: #000 !important;
}

.border-color-black {
  border-color: #000 !important;
}

.text-color-black {
  color: #000 !important;
}

.background-color-red {
  background-color: #c00 !important;
}

.border-color-red {
  border-color: #c00 !important;
}

.text-color-red {
  color: #c00 !important;
}

.background-color-green {
  background-color: #008827 !important;
}

.border-color-green {
  border-color: #008827 !important;
}

.text-color-green {
  color: #008827 !important;
}

.background-color-blue-1 {
  background-color: #0070d2 !important;
}

.border-color-blue-1 {
  border-color: #0070d2 !important;
}

.text-color-blue-1 {
  color: #0070d2 !important;
}

.background-color-blue-2 {
  background-color: #7ed0ee !important;
}

.border-color-blue-2 {
  border-color: #7ed0ee !important;
}

.text-color-blue-2 {
  color: #7ed0ee !important;
}

.background-color-gray-1 {
  background-color: #f9f9f9 !important;
}

.border-color-gray-1 {
  border-color: #f9f9f9 !important;
}

.text-color-gray-1 {
  color: #f9f9f9 !important;
}

.background-color-gray-2 {
  background-color: #eee !important;
}

.border-color-gray-2 {
  border-color: #eee !important;
}

.text-color-gray-2 {
  color: #eee !important;
}

.background-color-gray-3 {
  background-color: #ccc !important;
}

.border-color-gray-3 {
  border-color: #ccc !important;
}

.text-color-gray-3 {
  color: #ccc !important;
}

.background-color-gray-4 {
  background-color: #999 !important;
}

.border-color-gray-4 {
  border-color: #999 !important;
}

.text-color-gray-4 {
  color: #999 !important;
}

.background-color-gray-5 {
  background-color: #666 !important;
}

.border-color-gray-5 {
  border-color: #666 !important;
}

.text-color-gray-5 {
  color: #666 !important;
}

.background-color-gray-6 {
  background-color: #444 !important;
}

.border-color-gray-6 {
  border-color: #444 !important;
}

.text-color-gray-6 {
  color: #444 !important;
}

.background-color-gray-7 {
  background-color: #222 !important;
}

.border-color-gray-7 {
  border-color: #222 !important;
}

.text-color-gray-7 {
  color: #222 !important;
}

.background-color-gray-8 {
  background-color: #333 !important;
}

.border-color-gray-8 {
  border-color: #333 !important;
}

.text-color-gray-8 {
  color: #333 !important;
}

.background-color-transparent-gray-1 {
  background-color: rgba(0, 0, 0, 0.65) !important;
}

.border-color-transparent-gray-1 {
  border-color: rgba(0, 0, 0, 0.65) !important;
}

.text-color-transparent-gray-1 {
  color: rgba(0, 0, 0, 0.65) !important;
}

.background-color-transparent-gray-2 {
  background-color: rgba(0, 0, 0, 0.25) !important;
}

.border-color-transparent-gray-2 {
  border-color: rgba(0, 0, 0, 0.25) !important;
}

.text-color-transparent-gray-2 {
  color: rgba(0, 0, 0, 0.25) !important;
}

.background-color-hersheys-1 {
  background-color: #3F000B !important;
}

.border-color-hersheys-1 {
  border-color: #3F000B !important;
}

.text-color-hersheys-1 {
  color: #3F000B !important;
}

.background-color-hersheys-2 {
  background-color: #523131 !important;
}

.border-color-hersheys-2 {
  border-color: #523131 !important;
}

.text-color-hersheys-2 {
  color: #523131 !important;
}

.background-color-hersheys-3 {
  background-color: #FFF9E9 !important;
}

.border-color-hersheys-3 {
  border-color: #FFF9E9 !important;
}

.text-color-hersheys-3 {
  color: #FFF9E9 !important;
}

.background-color-hersheys-4 {
  background-color: #e03c31 !important;
}

.border-color-hersheys-4 {
  border-color: #e03c31 !important;
}

.text-color-hersheys-4 {
  color: #e03c31 !important;
}

.background-color-hersheys-5 {
  background-color: #8b8d8d !important;
}

.border-color-hersheys-5 {
  border-color: #8b8d8d !important;
}

.text-color-hersheys-5 {
  color: #8b8d8d !important;
}

.background-color-hersheys-6 {
  background-color: #dbf0f6 !important;
}

.border-color-hersheys-6 {
  border-color: #dbf0f6 !important;
}

.text-color-hersheys-6 {
  color: #dbf0f6 !important;
}

.background-color-reeses-1 {
  background-color: #ff5101 !important;
}

.border-color-reeses-1 {
  border-color: #ff5101 !important;
}

.text-color-reeses-1 {
  color: #ff5101 !important;
}

.background-color-reeses-2 {
  background-color: #461e1c !important;
}

.border-color-reeses-2 {
  border-color: #461e1c !important;
}

.text-color-reeses-2 {
  color: #461e1c !important;
}

.background-color-reeses-3 {
  background-color: #fdee14 !important;
}

.border-color-reeses-3 {
  border-color: #fdee14 !important;
}

.text-color-reeses-3 {
  color: #fdee14 !important;
}

.background-color-spring-1 {
  background-color: #f6d258 !important;
}

.border-color-spring-1 {
  border-color: #f6d258 !important;
}

.text-color-spring-1 {
  color: #f6d258 !important;
}

.background-color-spring-2 {
  background-color: #88b14b !important;
}

.border-color-spring-2 {
  border-color: #88b14b !important;
}

.text-color-spring-2 {
  color: #88b14b !important;
}

.background-color-spring-3 {
  background-color: #d13076 !important;
}

.border-color-spring-3 {
  border-color: #d13076 !important;
}

.text-color-spring-3 {
  color: #d13076 !important;
}

.background-color-summer-1 {
  background-color: #fca900 !important;
}

.border-color-summer-1 {
  border-color: #fca900 !important;
}

.text-color-summer-1 {
  color: #fca900 !important;
}

.background-color-summer-2 {
  background-color: #c1c70f !important;
}

.border-color-summer-2 {
  border-color: #c1c70f !important;
}

.text-color-summer-2 {
  color: #c1c70f !important;
}

.background-color-summer-3 {
  background-color: #97d4d7 !important;
}

.border-color-summer-3 {
  border-color: #97d4d7 !important;
}

.text-color-summer-3 {
  color: #97d4d7 !important;
}

.background-color-fall-1 {
  background-color: #e26910 !important;
}

.border-color-fall-1 {
  border-color: #e26910 !important;
}

.text-color-fall-1 {
  color: #e26910 !important;
}

.background-color-fall-2 {
  background-color: #ffb307 !important;
}

.border-color-fall-2 {
  border-color: #ffb307 !important;
}

.text-color-fall-2 {
  color: #ffb307 !important;
}

.background-color-fall-3 {
  background-color: #e03c31 !important;
}

.border-color-fall-3 {
  border-color: #e03c31 !important;
}

.text-color-fall-3 {
  color: #e03c31 !important;
}

.background-color-winter-1 {
  background-color: #e03c31 !important;
}

.border-color-winter-1 {
  border-color: #e03c31 !important;
}

.text-color-winter-1 {
  color: #e03c31 !important;
}

.background-color-winter-2 {
  background-color: #cdecfe !important;
}

.border-color-winter-2 {
  border-color: #cdecfe !important;
}

.text-color-winter-2 {
  color: #cdecfe !important;
}

.background-color-winter-3 {
  background-color: #66cbff !important;
}

.border-color-winter-3 {
  border-color: #66cbff !important;
}

.text-color-winter-3 {
  color: #66cbff !important;
}

/*	----------------------------------------------------------------------------------------------
	GET COLOR VALUE FROM PALETTE GROUP / PALETTE COLOR LIST - Ex: getColor($brands, "reeses", 1)
	----------------------------------------------------------------------------------------------
*/
/**************************/
/***** RETINA DISPLAY *****/
/**************************/
section.three-carrousel-section {
  background-color: #FFC426;
  padding: 40px 80px;
}
section.three-carrousel-section.ribbon-wave-bottom {
  padding-bottom: calc(10% + 40px);
}
@media (max-width: 768px) {
  section.three-carrousel-section {
    padding: 15px 30px;
  }
  section.three-carrousel-section .container {
    padding-left: 0;
    padding-right: 0;
  }
  section.three-carrousel-section.ribbon-wave-bottom {
    padding-bottom: calc(4% + 60px);
  }
}

.three-container {
  max-width: 100%;
  margin: 0 auto;
  padding: 1.25rem;
  background-color: #fff;
  border-radius: 80px;
  position: relative;
}
@media (max-width: 768px) {
  .three-container {
    border-radius: 40px;
  }
}

.three-category-tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.25rem;
  margin-bottom: 0.313rem;
  position: relative;
}

.three-tab-button {
  font-family: "TTNormsPro-Bold", sans-serif;
  background: none;
  border: none;
  font-size: 2.2rem;
  font-weight: 700;
  color: #4a0000;
  cursor: pointer;
  padding: 0.938rem 0.625rem 0 0.625rem;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
  position: relative;
}

.three-tab-button .underline {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  height: 0.125rem;
  width: 100%;
  background-color: black;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.three-tab-button.active .underline {
  opacity: 1;
}

.three-tab-button span {
  display: inline-block;
  padding: 0;
  margin: 0;
}

.three-tab-button:hover {
  color: #800000;
}

.three-tab-button.active {
  color: #4a0000;
}

.three-tab-indicator {
  height: 0.118rem;
  background-color: #4a0000;
  position: relative;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.three-carousel-container {
  position: relative;
  overflow: hidden;
}

.three-carousel {
  display: none;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}

.three-carousel.active {
  display: block;
  opacity: 1;
}

.three-carousel-content {
  padding: 1.25rem;
  min-height: 18.75rem;
}

.three-carousel-content .product-slider .slick-dotted {
  margin-bottom: 0;
}

.three-carousel-content .product-slider {
  padding-top: 0;
  padding-bottom: 0;
}

.three-carousel-content .product-slider.mobile-grid .slick-slide {
  padding: 0;
}

@media (max-width: 768px) {
  .three-container {
    padding: 0;
  }
  .three-carousel-content {
    padding: 0;
  }
  .three-carousel-container {
    padding: 0;
  }
  .three-tab-button {
    font-size: 1.219rem;
  }
}
@media (max-width: 385px) {
  .three-container {
    padding: 0;
  }
  .three-carousel-content {
    padding: 0;
  }
  .three-carousel-container {
    padding: 0;
  }
  .three-tab-button {
    font-size: 1.081rem;
  }
}
