/* @group reset - eric myer reset v2.0 | 20110126
-----------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote::before, blockquote::after, q::before, q::after {
	content: "";
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* Load font files
-----------------------------------------------------------------*/
@font-face {
	font-family: "Monolight";
	src: url('../fonts/MonolightBold/font.woff2') format('woff2'), url('../fonts/MonolightBold/font.woff') format('woff');
	font-weight: bold;
    font-style: normal;
}
@font-face {
	font-family: "Monolight";
	src: url('../fonts/MonolightSemibold/font.woff2') format('woff2'), url('../fonts/MonolightSemibold/font.woff') format('woff');
	font-weight: 600;
    font-style: normal;
}
@font-face {
	font-family: "Monolight";
	src: url('../fonts/MonolightMedium/font.woff2') format('woff2'), url('../fonts/MonolightMedium/font.woff') format('woff');
	font-weight: normal;
    font-style: normal;
}
@font-face {
	font-family: "Monolight";
	src: url('../fonts/MonolightBlack/font.woff2') format('woff2'), url('../fonts/MonolightBlack/font.woff') format('woff');
	font-weight: 800;
    font-style: normal;
}
@font-face {
	font-family: "Monolight";
	src: url('../fonts/MonolightHeavy/font.woff2') format('woff2'), url('../fonts/MonolightHeavy/font.woff') format('woff');
	font-weight: 900;
    font-style: normal;
}

/* Set CSS Variables
-----------------------------------------------------------------*/
:root {
	--cream: #f2ede5;
	--dark-cream: #e8ddcd;
	--darker-cream: #88837d;
	--purple: #15061e;
	--orange: #f7b11d;
	--dark-orange: #ff3728;
	--heading-font: "natom-pro", sans-serif;
	--main-font: "Monolight", sans-serif;
	--transition-ease: cubic-bezier(0.78, 0, 0.22, 1);
	--slow-transition-ease: cubic-bezier(0.281, 0.997, 0.507, 0.956);
}

/* Set tags and general classes
-----------------------------------------------------------------*/
* {
	box-sizing: border-box;
	outline: none;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}

/* Try add easing to JS scroll smooth */
html {
	scroll-behavior: smooth;
	scroll-behavior: var(--slow-transition-ease);
}

body {
	font-family: var(--main-font);
	font-weight: 600;
	font-size: 18px;
	line-height: 1.4;
	min-width: 320px;
	color: var(--purple);
	background-color: var(--cream);
}

h1, h2, h3 {
	font-family: var(--heading-font);
	font-feature-settings: "salt";
	font-weight: 900;
	line-height: 1;
	font-size: 60px;
	text-transform: uppercase;
	margin-bottom: 40px;
}
h3 {
	font-size: 45px;
}
.general-page h3 {
	font-feature-settings: normal;
}

a {
	color: inherit;
	text-decoration: none;
	border: 0;
	transition: color .2s var(--transition-ease), background .2s var(--transition-ease);
}

#page-wrapper input[type="text"],
#page-wrapper input[type="email"],
#page-wrapper select,
#page-wrapper textarea {
	border: 3px solid var(--dark-cream);
	background: var(--dark-cream);
	padding: 26px 20px 14px 20px;
	border-radius: 8px;
	font: inherit;
	font-weight: normal;
	color: inherit;
	width: 100%;
	transition: all .2s var(--transition-ease);
}
#page-wrapper select {
	-webkit-appearance: none;
	appearance: none;
	background: var(--dark-cream) url(../images/universal/list-inactive.svg) no-repeat right 20px center;
    background-size: 25px 16px;
	padding-right: 60px;
}
#page-wrapper select:focus {
	background-image: url(../images/universal/list-active.svg);
}
#page-wrapper textarea {
	height: 240px;
	resize: none;
}
#page-wrapper input[type="text"]:focus,
#page-wrapper input[type="email"]:focus,
#page-wrapper select:focus,
#page-wrapper textarea:focus {
	border-color: var(--orange);
}
.custom-checkbox {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
	position: relative;
	padding-left: 100px;
	height: 80px;
	margin-bottom: 30px;
}
.custom-checkbox input {
	position: absolute;
	height: 0;
	width: 0;
	opacity: 0;
}
.custom-checkbox .checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 80px;
	width: 80px;
	cursor: pointer;
	border-radius: 8px;
	border: 2px solid var(--dark-cream);
	background: var(--dark-cream);
}
.custom-checkbox .checkmark::after {
	content: "";
	position: absolute;
	display: none;
	left: 28px;
	top: 15px;
	width: 14px;
	height: 28px;
	border: solid var(--purple);
	border-width: 0 8px 8px 0;
	transform: rotate(45deg);
}
.custom-checkbox input:checked ~ .checkmark:after {
	display: block;
}
.button-wrapper {
	display: block;
	background: var(--orange);
	border-radius: 15px;
	height: 75px;
	width: 100%;
	max-width: 450px;
	margin: 0 auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	transition: all .2s var(--transition-ease);
}
.button-wrapper:hover {
	background: var(--purple);
	max-width: 460px;
}
.form-button-wrapper {
	height: 60px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	border-radius: 0 15px 15px 0;
	background: var(--purple);
	transition: all .2s var(--transition-ease);
}
.form-button-wrapper:hover {
	background: var(--orange);
}
#page-wrapper input[type="submit"],
#page-wrapper button {
	position: relative;
	text-align: center;
	text-transform: uppercase;
	font: inherit;
	font-weight: 800;
	font-size: 0;
	color: var(--purple);
	height: 38px;
	transform: translateY(-2px);
	width: 100%;
	padding: 0 20px;
	border: 0;
	cursor: pointer;
	background: transparent;
	overflow: hidden;
	transition: all .2s var(--transition-ease);
}
.form-button-wrapper button {
	color: var(--cream);
	font-family: var(--main-font);
	font-size: 19px;
	font-weight: bold;
}
#page-wrapper input[type="submit"]::before,
#page-wrapper button::before,
#page-wrapper input[type="submit"]::after,
#page-wrapper button::after {
	content: "";		/* Set dynamically in common.js */
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	font-size: 28px;
	transform: translateY(-50%);
	transition: all .2s var(--transition-ease);
}
#page-wrapper input[type="submit"]::after,
#page-wrapper button::after {
	top: 100%;
	transform: translateY(0%);
	color: var(--orange);
}
#page-wrapper .form-button-wrapper button::before,
#page-wrapper .form-button-wrapper button::after {
	color: var(--cream);
	font-family: var(--main-font);
	font-size: 19px;
	font-weight: bold;
}
#page-wrapper .form-button-wrapper button::after {
	color: var(--purple);
}
#page-wrapper .button-wrapper:hover input[type="submit"]::before,
#page-wrapper .button-wrapper:hover button::before,
#page-wrapper .form-button-wrapper:hover button::before {
	top: -75%;
	transform: translateY(0%);
}
#page-wrapper .button-wrapper:hover input[type="submit"]::after,
#page-wrapper .button-wrapper:hover button::after,
#page-wrapper .form-button-wrapper:hover button::after {
	top: 50%;
	transform: translateY(-50%);
}
.form-double {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.form-double > div {
	flex-basis: calc(50% - 15px);
}
.input-wrapper {
	position: relative;
	margin: 0 0 30px 0;
}
label {
	font-weight: normal;
	font-size: 20px;
}
.input-wrapper label {
	position: absolute;
	top: 20px;
	left: 22px;
	cursor: text;
	user-select: none;
	transition: all .1s var(--transition-ease);
}
.input-wrapper select + label {
	pointer-events: none;
}
.input-wrapper label span {
	color: var(--darker-cream);
}
.input-wrapper.has-text label,
.input-wrapper input:focus + label,
.input-wrapper select:focus + label,
.input-wrapper textarea:focus + label {
	font-size: 12px;
	top: 14px;
}
::placeholder {
	color: var(--darker-cream);
	opacity: 1;
}

img, iframe, video {
	display: block;
	max-width: 100%;
}

p {
	margin-bottom: 30px;
}

.bold, strong, b {
	font-weight: bold;
}
.italic, em, i {
	font-style: italic;
}

.error {
	color: #ff3333;
}

.center {
	text-align: center;
}

/* Custom
-----------------------------------------------------------------*/
#page-wrapper {
	position: relative;
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
}
#page-wrapper > *:not(nav):not(#cart) {
	transition: filter .2s var(--transition-ease);
}
#page-wrapper.blurred > *:not(nav):not(#cart) {
	filter: blur(14px);
}
.content-wrapper,
.inner-content-wrapper {
	width: 100%;
	max-width: 1600px;
	padding: 0 80px;
	margin: 0 auto;
}
.inner-content-wrapper {
	max-width: 1260px;
}

.padding {
	padding-top: 80px;
	padding-bottom: 80px;
}
.padding-bottom {
	padding-bottom: 80px;
}
.padding-top {
	padding-top: 80px;
}

.wysiwyg-content ul {
	list-style: disc;
	margin: 0 0 25px 30px;
}
.wysiwyg-content ol {
	list-style: decimal;
	margin: 0 0 25px 30px;
}
.wysiwyg-content li {
	padding-left: 15px;
}
.wysiwyg-content li ul, .wysiwyg-content li ol {
	margin-bottom: 0;
}
.wysiwyg-content img {
	height: auto;
}

.video-wrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	height: 0;
}
.video-wrapper iframe, .video-wrapper video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

::selection {
	background: #f7891d;
}

/* Site Specific
-----------------------------------------------------------------*/
body::before {
	content: "";
	position: fixed;
	top: 0;
	left: 0;
	display: block;
	width: 100vw;
	height: 100dvh;
	background: rgba(0, 0, 0, 0);
	z-index: -1;
	transition: background .2s var(--transition-ease);
}
body.menu-is-open::before,
body.cart-is-open::before {
	background: rgba(0, 0, 0, .66);
	z-index: 9997;
}
nav#menu,
#cart {
	position: fixed;
	top: 25px;
	left: 25px;
	padding: 27px 35px 80px 35px;
	height: calc(100dvh - 50px);
	width: 600px;
	border-radius: 20px;
	background: var(--purple);
	font-family: var(--heading-font);
	font-feature-settings: "salt";
	font-weight: 900;
	font-size: 80px;
	text-transform: uppercase;
	line-height: 1;
	color: var(--cream);
	z-index: 9999;
	transform: translateX(calc(-100% - 25px));
	transition: transform .2s var(--transition-ease);
}
#cart {
	padding-bottom: 225px;
	left: auto;
	right: 25px;
	font-size: 60px;
	background: var(--orange);
	color: var(--purple);
	transform: translateX(calc(100% + 25px));
}
body.menu-is-open nav#menu,
body.cart-is-open #cart {
	transform: translateX(0);
}
nav#menu > p {
	font-size: 60px;
	margin-bottom: 80px;
}
nav#menu > ul {
	max-height: calc(100% - 140px);
	overflow-y: auto;
}
nav#menu > ul li {
	display: block;
	margin-bottom: 10px;
}
nav#menu > ul li a {
	position: relative;
	display: block;
	overflow: hidden;
	font-size: 0;
	line-height: 80px;
}
nav#menu > ul li a::before,
nav#menu > ul li a::after {
	content: "";		/* Set dynamically in common.js */
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	font-size: 80px;
	transition: all .2s var(--transition-ease);
}
nav#menu > ul li a::after {
	top: 100%;
	color: var(--dark-orange);
}
nav#menu > ul li a:hover::before {
	top: -100%;
}
nav#menu > ul li a:hover::after {
	top: 0;
}
#cart #cart-contents {
	height: calc(100% - 90px);
	overflow-y: auto;
}
#cart #cart-empty {
	height: calc(100% - 90px);
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: .5px;
	font-family: var(--main-font);
}
#cart #cart-contents > div {
	background: var(--cream);
	border-radius: 10px;
	padding: 15px;
	width: 100%;
	margin-bottom: 15px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: stretch;
	font-size: 18px;
	font-family: var(--main-font);
	line-height: 1.2;
}
#cart #cart-contents > div > a > img {
	display: block;
	width: 265px;
	flex-basis: 265px;
	border-radius: 10px;
}
#cart #cart-contents > div > div {
	flex-basis: calc(100% - 280px);
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: flex-start;
}
#cart #cart-contents > div > div > p {
	margin: 0;
}
#cart #cart-contents > div > div > p:nth-of-type(2) {
	transform: translateY(-15px);
}
#cart #cart-contents > div > div > p:last-of-type {
	cursor: pointer;
	font-weight: normal;
	font-size: 12px;
	border-bottom: 1px solid var(--orange);
}
#cart #cart-total {
	position: absolute;
	bottom: 75px;
	left: 35px;
	width: calc(100% - 70px);
	font-size: 45px;
	height: 145px;
}
#cart #cart-total > div {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	font-family: var(--main-font);
}
#cart #cart-total .button-wrapper {
	margin: 20px 0 0 0;
	background: var(--purple);
	min-width: 100%;
}
#cart #cart-total .button-wrapper:hover {
	background: var(--cream);
}
#cart #cart-total button::before {
	color: var(--cream);
}
#cart #cart-total button::after {
	color: var(--purple);
}
.menu-cart-closer {
	position: absolute;
	right: 35px;
	top: 40px;
	height: 45px;
	width: 45px;
	background: var(--cream);
	padding: 8px;
	border-radius: 8px;
	cursor: pointer;
	transition: background .2s var(--transition-ease);
}
.menu-cart-closer:hover {
	background: var(--orange);
}
#cart .menu-cart-closer:hover {
	background: var(--purple);
}
#cart .menu-cart-closer img {
	transition: filter .2s var(--transition-ease);
}
#cart .menu-cart-closer:hover img {
	filter: invert(100%) saturate(0%) brightness(100%);
}
nav#menu > div:last-of-type,
#cart > div:last-of-type {
	position: absolute;
	bottom: 30px;
	left: 35px;
	width: calc(100% - 70px);
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	font-family: var(--main-font);
	font-size: 14px;
	font-weight: bold;
	letter-spacing: .5px;
}
nav#menu > div:last-of-type > div,
#cart > div:last-of-type > div {
	flex-basis: 30px;
}

.site-link a,
a.site-link {
	font-weight: bold;
	background: linear-gradient(to top, var(--orange) 50%, transparent 50%) no-repeat;
	background-size: 100% 200%;
	border-bottom: 3px solid var(--orange);
}
.site-link a:hover,
a.site-link:hover {
	background-position: 0 100%;
}

.from-560 {
	display: none;
}

body {
	padding-top: 120px;
}
#page-wrapper header {
	position: fixed;
	top: 0;
	width: 100%;
	background: var(--cream);
	border-bottom: 5px solid transparent;
	z-index: 9990;
	transition: border .2s var(--transition-ease);
}
#page-wrapper header.scrolled {
	border-bottom: 5px solid var(--orange);
}
.sticky-button #page-wrapper header {
	height: 220px;
}
#card-buy-now {
	max-width: 370px;
}
.sticky-button #card-intro {
	padding-top: 95px;
}
.sticky-button #card-buy-now {
	position: fixed;
	top: 120px;
	z-index: 9990;
}
.sticky-button #card-intro-intro-text > #cih2-wrap {
	position: fixed;
	top: 116px;
	display: flex;
	align-items: center;
	height: 80px;
	z-index: 9990;
}
.sticky-button #card-intro-intro-text > #cih2-wrap h2 {
	font-size: 40px;
	margin: 0;
}
.reduced {
	color: #fe3829;
}
.strike {
	text-decoration: line-through;
}
#page-wrapper header > div {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	height: 115px;
}
#page-wrapper header > div > p {
	display: block;
	text-transform: uppercase;
	cursor: pointer;
	font-family: var(--heading-font);
	font-feature-settings: "salt";
	font-weight: 900;
	font-size: 30px;
	margin: 0;
	transform: scale(1);
	transition: transform .2s var(--transition-ease);
}
#page-wrapper header > div > p:hover {
	transform: scale(1.1);
}
#page-wrapper header #logo {
	height: 50px;
}
#page-wrapper header #logo-stacked {
	display: none;
}

#home-hero {
	pointer-events: none;
}
#home-hero > div {
	border-radius: 30px;
	overflow: hidden;
}
#home-hero > div::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .1);
	z-index: 1;
}
#home-hero > div::after {
	content: "";
	position: absolute;
	top: 60px;
	left: 0;
	height: calc(100% - 170px);
	width: 100%;
	background: url(../images/home/zig-zag-overlay-opacity.svg) center center no-repeat;
	z-index: 2;
}

#home-intro {
	text-align: center;
	width: 100%;
	max-width: 1390px;
	padding-left: 80px;
	padding-right: 80px;
	margin: 0 auto;
}
#home-intro h1 {
	font-size: 75px;
	line-height: 1.3;
}
#home-intro h1 span {
	display: inline-block;
	color: var(--purple);
	background: linear-gradient(var(--purple), var(--purple)) no-repeat;
	background-size: 0% 100%;
	padding: 0 20px 10px 20px;
	margin: 10px 0;
	transition: all .5s var(--slow-transition-ease);
	transition-delay: .4s;
}
#home-intro h1 > span:last-of-type {
	transition-delay: 1s;
}
#home-intro h1 span.on-screen {
	color: var(--cream);
	background-size: 100% 100%;
}
#home-intro p,
.success-notice {
	font-weight: normal;
	font-size: 28px;
}
#home-intro p:first-of-type {
	font-size: 34px;
}
#home-intro p:last-of-type {
	margin-bottom: 40px;
}
.success-notice {
	text-align: center;
}
.success-notice strong {
	font-family: var(--heading-font);
	font-feature-settings: "salt";
	font-weight: 900;
	line-height: 1;
	font-size: 42px;
	text-transform: uppercase;
}
#featured-cards-wrapper > h2 {
	margin-bottom: 49px;
}
#featured-cards-wrapper #slick-wrapper {
	width: calc(100% + 40px);
	transform: translateX(-40px);
	margin-bottom: 45px;
}
#featured-cards-wrapper #slick-wrapper a {
	margin: 0 0 0 40px;
}
#featured-cards-wrapper #slick-wrapper a > p:first-of-type {
	margin: 5px 0 2px 0;
	font-size: 25px;
	font-weight: bold;
}
#featured-cards-wrapper #slick-wrapper a > p:last-of-type,
.tags-text {
	margin: 0;
	font-size: 14px;
	text-transform: uppercase;
	font-weight: bold;
	color: var(--darker-cream);
	letter-spacing: 1px;
}
.tags-text > a {
	position: relative;
}
.tags-text > a:hover {
	color: var(--purple);
}
.tags-text > a::after {
	content: "";
	position: absolute;
	width: 100%;
	transform: scaleX(0);
	height: 2px;
	bottom: -2px;
	left: 0;
	background: var(--orange);
	transform-origin: bottom right;
	transition: transform .2s var(--transition-ease);
}
.tags-text > a:hover::after {
	transform: scaleX(1);
	transform-origin: bottom left;
}
#featured-cards-wrapper #slick-wrapper .slick-prev,
#featured-cards-wrapper #slick-wrapper .slick-next {
	position: absolute;
	top: -109px;
	right: 100px;
	width: 75px;
	height: 75px;
	background: var(--orange);
	border-radius: 50%;
	cursor: pointer;
	font-size: 0;
}
#featured-cards-wrapper #slick-wrapper .slick-next {
	right: 0;
}
#featured-cards-wrapper #slick-wrapper .slick-prev:not(.slick-disabled):hover,
#featured-cards-wrapper #slick-wrapper .slick-next:not(.slick-disabled):hover {
	background: var(--purple);
}
#featured-cards-wrapper #slick-wrapper .slick-prev::before,
#featured-cards-wrapper #slick-wrapper .slick-next::before {
	content: "";
	position: absolute;
	background: url(../images/universal/navigate-left.svg) center center no-repeat;
	background-size: 25px auto;
	width: 100%;
	height: 100%;
	transform: translateX(-4px);
}
#featured-cards-wrapper #slick-wrapper .slick-next::before {
	rotate: 180deg;
}
.slick-disabled {
	cursor: auto !important;
	opacity: 40%;
}

.purple-boxes {
	position: relative;
	padding-bottom: 230px;
}
.purple-boxes::after {
	content: "";
	position: absolute;
	bottom: 0;
	width: 100%;
	height: round(up, calc(100vw / 1900 * 490), 1px);
	background: #fff url(../images/universal/bg-arrow.svg) center top no-repeat;
	background-size: 100% auto;
	z-index: 1;
}
.purple-boxes > div {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: stretch;
	column-gap: 45px;
	row-gap: 45px;
	z-index: 2;
}
.purple-boxes > div > div {
	flex-basis: calc(33.333% - 30px);
	background: var(--purple);
	color: var(--cream);
	padding: 53px 45px 33px 45px;
	border-radius: 20px;
	text-align: center;
}
.purple-boxes > div > div > img {
	display: inline-block;
	width: 100%;
	max-height: 125px;
	margin-bottom: 25px;
}
.purple-boxes > div > div > p {
	font-size: 20px;
	font-weight: normal;
	line-height: 1.6;
}

#scrolling-tape {
	position: relative;
	background: #fff;
	font-family: var(--heading-font);
	font-feature-settings: "salt";
	font-weight: 900;
	line-height: 1;
	font-size: 100px;
	text-transform: uppercase;
	height: 520px;
}
#scrolling-tape > div {
	position: absolute;
	left: -10px;
	width: calc(100% + 20px);
	padding: 35px 0 55px 0;
}
#scrolling-tape > div:first-of-type {
	top: 125px;
	color: #f0e0c0;
	background: var(--purple);
	rotate: 1.75deg;
}
#scrolling-tape > div:last-of-type {
	bottom: 35px;
	color: var(--orange);
	background: var(--dark-orange);
	rotate: -1.75deg;
}
#scrolling-tape > div > div {
	position: relative;
	white-space: nowrap;
	width: 100vw;
	overflow: hidden;
	display: flex;
	justify-content: center;
}
#scrolling-tape > div > div > span {
	animation: ribbon-scroll 33s linear infinite;
	display: inline-block;
}
#scrolling-tape > div:first-of-type > div > span {
	animation: ribbon-scroll 28s linear infinite;
	animation-direction: reverse;
}
@keyframes ribbon-scroll {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-100%);
	}
}

.slick-wrappers,
.slick-wrappers-rtl {
	margin-top: 30px;
}
.slick-wrappers a,
.slick-wrappers-rtl a {
	border-radius: 15px;
	margin: 0 15px;
	overflow: hidden;
}

#gallery-results {
	padding-top: 60px;
}
#gallery-results > p {
	text-transform: uppercase;
	font-size: 28px;
	font-weight: bold;
}
#gallery-results > p a {
	position: relative;
	margin-left: 15px;
	padding: 0 35px 5px 0;
}
#gallery-results > p a::after {
	content: "";
	display: block;
	position: absolute;
	right: 0;
	top: 7px;
	width: 28px;
	height: 28px;
	background: url(../images/universal/close.svg) center center no-repeat;
	background-size: 100%;
}
#gallery-filters > div > div,
#gallery-display {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	column-gap: 42px;
	row-gap: 45px;
}
#mobile-show-gallery {
	display: none;
	width: 100%;
	background: var(--orange);
	padding: 15px 0;
	text-transform: uppercase;
	font-size: 25px;
	font-weight: 900;
	cursor: pointer;
	margin: 50px 0 20px 0;
}
#mobile-show-gallery > div > div {
	position: relative;
	transition: background .2s var(--transition-ease), color .2s var(--transition-ease);
}
#mobile-show-gallery > div > div::before,
#mobile-show-gallery > div > div::after {
	content: "";
	display: block;
	position: absolute;
	right: 0;
	top: 15px;
	background: #000;
	width: 27px;
	height: 5px;
	transition: all .2s var(--transition-ease);
}
#mobile-show-gallery > div > div::after {
	right: 11px;
	width: 5px;
	height: 27px;
	top: 4px;
}
#mobile-show-gallery.opened > div > div::before,
#mobile-show-gallery.opened > div > div::after {
	rotate: 90deg;
	background: #fff;
}
#mobile-show-gallery.opened > div > div::before {
	opacity: 0;
}
#mobile-show-gallery.opened {
	background: var(--purple);
	color: #fff;
}
#gallery-filters {
	margin-bottom: 95px;
}
#gallery-filters > div > div {
	margin-top: 50px;
	row-gap: 30px;
}
#gallery-display {
	margin-bottom: 40px;
}
#gallery-display .no-results {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	text-align: center;
	font-weight: normal;
	font-size: 27px;
	line-height: 1.5;
}
#gallery-display > a {
	flex-basis: calc(33.333% - 28px);
}
#gallery-filters > div > div > div {
	flex-basis: calc(33.333% - 28px);
	max-width: calc(33.333% - 28px);
}
#gallery-filters > div > div > div > div {
	position: relative;
}
#gallery-filters > div > div > div > div > span {
	display: block;
	text-transform: uppercase;
	font-size: 28px;
	font-weight: 900;
	background: url(../images/universal/list-inactive.svg) right center no-repeat;
    background-size: 30px;
	padding: 0 40px 10px 0;
	border-bottom: 2px solid var(--purple);
	cursor: pointer;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
#gallery-filters > div > div > div > div > div {
	display: none;
	position: absolute;
	bottom: 0;
	left: 0;
	padding-top: 10px;
	transform: translateY(100%);
	width: 100%;
	z-index: 100;
}
#gallery-filters > div > div > div > div.opened > span {
	background-image: url(../images/universal/list-active.svg);
}
#gallery-filters > div > div > div > div.opened > div {
	display: block;
}
/*#gallery-filters > div > div > div > div:hover > span {
	background-image: url(../images/universal/list-active.svg);
}
#gallery-filters > div > div > div > div:hover > div {
	display: block;
}*/
#gallery-filters > div > div > div > div > div > ul {
	background: #f8f5f0;
	border: 2px solid var(--purple);
	filter: drop-shadow(0px 3px 3px rgba(0, 0, 0, .2));
	will-change: filter;
}
#gallery-filters > div > div > div > div > div > ul > li {
	padding: 15px 40px 15px 15px;
	background: #f8f5f0;
	font-weight: normal;
	font-size: 16px;
	line-height: 1;
	cursor: pointer;
	transition: background-color .2s var(--transition-ease), color .2s var(--transition-ease);
}
#gallery-filters > div > div > div > div > div > ul > li:hover {
	background: var(--orange);
}
#gallery-filters > div > div > div > div > div > ul > li.selected {
	background: var(--purple) url(../images/universal/tick-cream.svg) right 15px center no-repeat;
	background-size: 17px;
	color: var(--cream);
}
a.haptic-click {
	display: block;
	scale: 1;
	transition: scale .1s var(--slow-transition-ease);
	will-change: scale;
}
a.haptic-click.clicked {
	scale: .975;
}
#gallery-display > a > div,
#featured-cards-wrapper #slick-wrapper a > div {
	position: relative;
	border-radius: 15px;
	overflow: hidden;
	transition: transform .2s var(--transition-ease);
}
#gallery-display > a:hover > div,
#featured-cards-wrapper #slick-wrapper a:hover > div {
	transform: translateY(-10px);
}
.slick-list {
	overflow: visible !important;
}
#gallery-display > a > div > img,
#featured-cards-wrapper #slick-wrapper a > div > img {
	width: 400%;
	max-width: 400%;
}
#gallery-display > a:hover > div > img,
#featured-cards-wrapper #slick-wrapper a:hover > div > img,
#gallery-display > a.auto-play > div > img,
#featured-cards-wrapper #slick-wrapper a.auto-play > div > img {
	animation-name: gallery-image-swap;
	animation-duration: 4.5s;
	animation-delay: -1.3s;
	animation-iteration-count: infinite;
	animation-timing-function: step-end;
}
@keyframes gallery-image-swap {
	0%   { transform: translateX(0); }
	25%  {  transform: translateX(-25%); }
	50%  { transform: translateX(-50%); }
	75%  { transform: translateX(-75%); }
}
#gallery-display > a > div > div.notice {
	position: absolute;
	top: 15px;
	left: 15px;
	z-index: 10;
}
#gallery-subpage-intro-right div.notice {
	position: absolute;
	top: -11px;
	left: 50%;
	transform: translateX(-50%);
}
#gallery-display > a > div > div.notice > img,
#gallery-subpage-intro-right div.notice > img {
	height: 22px;
}
#gallery-display > a > div > div.duration {
	position: absolute;
	bottom: 15px;
	right: 15px;
	background: rgba(0, 0, 0, .6);
	padding: 0 5px 3px 5px;
	color: #fff;
	font-size: 14px;
	border-radius: 5px;
	opacity: 0;
	z-index: 10;
	transition: opacity .2s var(--transition-ease);
}
#gallery-display > a:hover > div > div.duration {
	opacity: 1;
}
#gallery-display > a > p {
	font-size: 26px;
	margin: 10px 0 0 0;
	font-weight: 800;
}

#gallery-sub-intro > div {
	border-radius: 20px;
	overflow: hidden;
}

#card-intro {
	margin-top: 40px;
}
#card-intro-intro-text h2 {
	transform: translateY(-4px);
	margin-bottom: 20px;
}
#card-intro-intro-text p {
	font-weight: normal;
	font-size: 27px;
	line-height: 1.5;
}
#card-intro-tags {
	margin: 45px 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
}
.theme-tag {
	display: inline-block;
	width: 94px;
	height: 28px;
	padding-left: 10px;
	margin-right: 10px;
	background: url(../images/gallery/tag-orange.svg) center center no-repeat;
	background-size: auto;
	color: var(--cream);
	text-transform: uppercase;
	font-size: 15px;
	font-weight: bold;
	line-height: 25px;
	letter-spacing: 1px;
}
#card-intro-tags .tags-text {
	flex-basis: calc(100% - 106px);
	padding-top: 3px;
}

.gallery-subpage-flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	row-gap: 160px;
	padding: 5px 0 60px 0;
}
#card-intro .gallery-subpage-flex {
	row-gap: 40px;
}
.gallery-subpage-flex > div:first-of-type {
	flex-basis: calc(100% - 520px );
}
.sticky-button #card-intro-intro-text > #cih2-wrap {
	width: calc(100% - 520px );
	max-width: 920px;
}
.gallery-subpage-flex > div:last-of-type {
	margin-bottom: -60px;
}
.gallery-subpage-flex > div:last-of-type {
	flex-basis: 370px;
	padding-top: 10px;
}
#gallery-subpage-intro-right,
#gallery-subpage-faq-right {
	position: relative;
	background: #e9decd;
	margin-top: 40px;
	padding: 38px 38px 90px 38px;
	border-radius: 15px 15px 0 0;
	font-size: 20px;
}
#gallery-subpage-faq-right {
	padding: 124px 38px 102px 38px;
	border-radius: 0 0 15px 15px;
	margin-top: 3px;
}
#gallery-subpage-faq-right ul li {
	font-weight: normal;
	margin-bottom: 16px;
}
#gallery-subpage-intro-right::after,
#gallery-subpage-faq-right::before,
#gallery-subpage-faq-right::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 100%;
	height: 105px;
	background: url(../images/gallery/aside-bottom-reverse.svg) bottom center no-repeat;
	background-size: 100%;
	z-index: 10;
}
#gallery-subpage-faq-right::before {
	bottom: auto;
	top: -1px;
	background: url(../images/gallery/aside-top-reverse.svg) top center no-repeat;
}
#gallery-subpage-faq-right::after {
	left: 50%;
	transform: translate(-50%, 50%);
	width: 120px;
	height: 120px;
	background: url(../images/gallery/aside-monogram.svg) bottom center no-repeat;
}
#gallery-subpage-intro-right > img,
#gallery-subpage-faq-right > img {
	position: absolute;
	top: 33px;
	left: 0;
	transform: translateX(-50%);
	width: 42px;
}
#gallery-subpage-faq-right > img {
	top: 119px;
}
#gallery-subpage-intro-right > img:last-of-type {
	top: 139px;
}
#gallery-subpage-intro-right > p:nth-of-type(odd),
#gallery-subpage-faq-right > p {
	text-transform: uppercase;
	font-weight: 800;
	margin-bottom: 10px;
}
#gallery-subpage-intro-right > p:nth-of-type(even) {
	font-weight: normal;
	margin-bottom: 40px;
}

.faq-wrapper > div:first-of-type {
	border-top: 1px solid #bdb8b1;
}
.faq-wrapper > div {
	position: relative;
	display: block;
	margin: 0;
	border-bottom: 1px solid #bdb8b1;
	box-shadow: inset 0 -2px 0 transparent;
	transition: all .2s var(--slow-transition-ease);
}
.faq-wrapper > div:hover,
.faq-wrapper > div.faq-open {
	border-bottom: 1px solid var(--orange);
	box-shadow: inset 0 -2px 0 var(--orange);
}
.faq-wrapper > div > p {
	padding: 23px 70px 25px 0;
	margin: 0;
	font-size: 30px;
	cursor: pointer;
	transition: all .2s var(--transition-ease);
}
.faq-wrapper > div > p:hover {
	color: var(--orange);
}
.faq-wrapper > div > p::before,
.faq-wrapper > div > p::after {
	content: "";
	display: block;
	position: absolute;
	right: 0;
	top: 42px;
	background: #000;
	width: 27px;
	height: 5px;
	transition: all .2s var(--transition-ease);
}
.faq-wrapper > div > p::after {
	right: 11px;
	width: 5px;
	height: 27px;
	top: 31px;
}
.faq-wrapper > div.faq-open > p::before {
	opacity: 0;
	rotate: 90deg;
}
.faq-wrapper > div.faq-open > p::after {
	rotate: 90deg;
}
.faq-wrapper > div > div {
	height: 0;
	padding-right: 70px;
	overflow: hidden;
	transition: all .2s var(--transition-ease);
}
.faq-wrapper > div > div > div {
	padding-bottom: 20px;
}
.faq-wrapper > div > div > div > p {
	font-weight: normal;
	font-size: 20px;
	line-height: 34px;
}

#human-made {
	min-height: 350px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: flex-end;
}
#human-made > div {
	width: 100%;
	height: round(up, calc(100vw / 1900 * 490), 1px);
	background: #fff url(../images/universal/bg-arrow.svg) center top no-repeat;
	background-size: 100% auto;
	text-align: center;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: flex-end;
	padding-bottom: 150px;
}
#human-made > div > div {
	flex-basis: 183px;
	width: 183px;
}
#human-made > div > div > img {
	position: relative;
	width: 183px;
	z-index: 2;
}
#human-made > div > div > img:first-of-type {
	position: absolute;
	z-index: 1;
}

#newsletter-wrapper {
	background: #fff;
	padding-bottom: 100px;
}
#newsletter-wrapper > div {
	text-align: center;
}
#newsletter-wrapper > div > p {
	text-transform: uppercase;
	font-family: var(--heading-font);
	font-feature-settings: "salt";
	font-weight: 900;
	line-height: 1;
	font-size: 45px;
	margin-bottom: 35px;
}
#newsletter-wrapper > div > div:first-of-type {
	text-transform: uppercase;
	width: 450px;
	margin: 0 auto 35px auto;
	font-weight: bold;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-around;
	column-gap: 20px;
	align-items: center;
}
#newsletter-wrapper > div > div:first-of-type > p,
#newsletter-wrapper > div > div:first-of-type > div {
	flex-basis: 125px;
	margin: 0;
}
#newsletter-wrapper form {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 450px;
	margin: 0 auto;
}
#newsletter-wrapper form > div:first-of-type {
	flex-basis: calc(100% - 145px);
}
#newsletter-wrapper form > div:last-of-type {
	flex-basis: 145px;
}
#newsletter-wrapper form input[type="email"] {
	height: 60px;
	background: var(--cream);
	border-color: var(--cream);
	border-radius: 15px 0 0 15px;
	padding: 20px;
}
#newsletter-wrapper form input[type="email"]:focus {
	border-color: var(--orange) var(--cream) var(--orange) var(--orange);
}
#newsletter-wrapper form button {
	font-size: 0;
	padding: 0;
	transform: translateY(0);
}
#newsletter-wrapper .ml-form-successContent > p:first-of-type {
	font-weight: bold;
	text-transform: uppercase;
	margin-bottom: 10px;
}

#subpage-heading {
	overflow: hidden;
}
#subpage-heading h2 {
	margin: 0;
	font-size: 75px;
}
#subpage-heading h2 > span {
	display: inline-block;
	transform: translateY(240px) skewY(15deg) scale(2);
	animation-name: heading-slideup;
	animation-duration: .3s;
	animation-delay: calc(.1s * var(--i));
	animation-timing-function: var(--slow-transition-ease);
	animation-fill-mode: forwards;
}
@keyframes heading-slideup {
	100% {
		transform: translateY(0) skewY(0deg) scale(1);
	}
}
.general-page {
	font-weight: normal;
	line-height: 1.6;
}
.general-page h1 {
	font-size: 75px;
	line-height: 1.2;
}
.general-page h3 {
	text-transform: none;
	font-weight: bold;
	font-family: var(--main-font);
	
}
#subpage-heading,
footer {
	position: relative;
	background: var(--purple) url(../images/universal/bg.png) center center no-repeat;
	background-size: 1800px 880px;
	padding: 150px 0;
	color: var(--dark-cream);
	font-weight: bold;
}
footer {
	padding-top: 85px;
	padding-bottom: 100px;
}
#subpage-heading .left-arrow,
#subpage-heading .right-arrow {
	opacity: 0;
	right: 100vw;
	animation-name: left-arrow-load;
	animation-duration: .9s;
	animation-delay: .2s;
	animation-timing-function: var(--transition-ease);
	animation-fill-mode: forwards;
}
@keyframes left-arrow-load {
	0% { opacity: 1; }
	100% {
		opacity: 1;
		right: calc(50% + 260px);
	}
}
#subpage-heading .right-arrow {
	right: auto;
	left: 100vw;
	animation-name: right-arrow-load;
}
@keyframes right-arrow-load {
	0% { opacity: 1; }
	100% {
		opacity: 1;
		left: calc(50% + 260px);
	}
}
#subpage-heading .left-arrow,
#subpage-heading .right-arrow,
footer .left-arrow,
footer .right-arrow {
	content: "";
	display: block;
	position: absolute;
	width: 1128px;
	height: 200px;
	top: calc(50% - 100px);
	background: url(../images/universal/arrow-r.svg) right center no-repeat;
	background-size: auto 200px;
}
footer .left-arrow {
	right: calc(50% + 10px);
}
#subpage-heading .right-arrow,
footer .right-arrow {
	transform: scale(-1, -1);
}
footer .right-arrow {
	left: calc(50% + 10px);
}
footer #footer-nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	column-gap: 30px;
	row-gap: 5px;
	text-transform: uppercase;
	font-size: 22px;
}
footer #footer-nav a,
footer #footer-copyright a {
	position: relative;
	display: inline-block;
	padding: 3px 5px;
	background: linear-gradient(to top, var(--orange) 50%, transparent 50%) top center no-repeat;
	background-size: 100% 200%;
}
footer #footer-nav a:hover,
footer #footer-copyright a:hover {
	background-position: 0 100%;
	color: var(--purple);
}
footer #footer-nav a span {
	display: block;
	transform: translateY(0);
	transition: transform .2s var(--transition-ease);
}
footer #footer-nav a:hover span {
	transform: translateY(-5px);
}
footer #footer-logo {
	position: relative;
	z-index: 100;
	margin: 80px auto 100px auto;
	width: 415px;
	/*filter: invert(99%) sepia(99%) saturate(2%) hue-rotate(229deg) brightness(106%) contrast(100%);*/
}
footer #footer-copyright {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	column-gap: 10px;
	row-gap: 20px;
	text-transform: uppercase;
	font-size: 14px;
}
footer #footer-copyright > ul > li {
	display: inline-block;
}
footer #footer-copyright > ul > li:first-of-type {
	padding: 0 15px 0 0;
}
footer #footer-copyright > ul > li:not(:first-of-type) {
	padding: 0 15px;
	border-left: 2px solid var(--orange);
}
footer #footer-copyright > ul:first-of-type > li:first-of-type::before,
footer #footer-copyright > ul:last-of-type > li:last-of-type::before {
	content: url(../images/universal/copyright.svg);
	display: inline-block;
	width: 13px;
	height: 13px;
	margin-right: 8px;
	transform: translateY(1px);
}
footer #footer-copyright > ul:last-of-type > li:last-of-type::before {
	content: url(../images/universal/heart.svg);
	transform: translateY(1px);
	margin-left: 3px;
}
footer #footer-social {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 95px;
}
footer #footer-social > a {
	display: inline-block;
}
footer #footer-social a:nth-of-type(2) {
	margin: 0 25px;
}
footer #footer-social > a > img {
	height: 25px;
	transition: filter .2s var(--transition-ease);
}
footer #footer-social > a:hover > img {
	filter: invert(65%) sepia(85%) saturate(452%) hue-rotate(357deg) brightness(160%) contrast(94%);
}

/* RETINA IMAGES */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
	footer {
		background-image: url(../images/universal/bg@2x.png);
	}
}

/* Responsive */
@media all and (min-width: 2100px) {
	.gallery-subpage-flex > div:first-of-type {
		flex-basis: calc(100% - 670px );
	}
	.gallery-subpage-flex > div:last-of-type {
		flex-basis: 520px;
	}
	#card-buy-now {
		max-width: 520px;
	}
	#gallery-subpage-intro-right::after,
	#gallery-subpage-faq-right::before {
		height: 150px;
	}
	#gallery-subpage-intro-right {
		padding-bottom: 140px;
	}
	#gallery-subpage-faq-right {
		padding-top: 170px;
	}
	#gallery-subpage-faq-right > img {
		top: 165px;
	}
}
@media all and (min-width: 1921px) {
	.content-wrapper,
	.inner-content-wrapper {
		max-width: 2460px;
		padding-left: 230px;
		padding-right: 230px;
	}
	.inner-content-wrapper {
		max-width: 1860px;
	}
}
@media all and (max-width: 1600px) {
	#scrolling-tape {
		font-size: 75px;
		height: 475px;
	}
}
@media all and (max-width: 1540px) {
	.purple-boxes > div > div {
		padding: 55px 35px 35px 35px;
	}
	.purple-boxes > div > div > h3 {
		font-size: 42px;
	}
	.purple-boxes > div > div > p {
		font-size: 18px;
	}
}
@media all and (max-width: 1400px) {
	.purple-boxes > div {
		column-gap: 36px;
	}
	.purple-boxes > div > div {
		flex-basis: calc(33.333% - 24px);
		padding: 50px 30px 30px 30px;
	}
	.purple-boxes > div > div > h3 {
		font-size: 40px;
	}
}
@media all and (max-width: 1300px) {
	.purple-boxes > div > div {
		padding: 45px 25px 25px 25px;
	}
	.purple-boxes > div > div > h3 {
		font-size: 38px;
	}
}
@media all and (max-width: 1230px) {
	.purple-boxes > div {
		column-gap: 40px;
	}
	.purple-boxes > div > div {
		flex-basis: calc(50% - 20px);
	}
	.purple-boxes > div > div:last-of-type {
		flex-basis: 100%;
		padding: 25px 180px;
	}
}
@media all and (max-width: 1220px) {
	.button-wrapper {
		height: 70px;
		max-width: 420px;
	}
	#cart #cart-total {
		bottom: 70px;
	}
	.button-wrapper:hover {
		max-width: 430px;
	}
	input[type="submit"]::before, button::before, input[type="submit"]::after, button::after {
		font-size: 26px;
	}
	.content-wrapper,
	.inner-content-wrapper {
		padding-left: 70px;
		padding-right: 70px;
	}
	h1, h2 {
		font-size: 55px;
	}
	h3 {
		font-size: 40px;
	}
	#home-intro h1,
	#subpage-heading h2,
	.general-page h1 {
		font-size: 70px;
	}
	#home-intro p,
	.success-notice	{
		font-size: 26px;
	}
	#home-intro p:first-of-type {
		font-size: 32px;
	}
	.success-notice strong {
		font-size: 40px;
	}
	#subpage-heading .left-arrow,
	#subpage-heading .right-arrow,
	footer .left-arrow,
	footer .right-arrow {
		width: 846px;
		height: 150px;
		top: calc(50% - 75px);
		background-size: auto 150px;
	}	
	@keyframes left-arrow-load {
		0% { opacity: 1; }
		100% {
			opacity: 1;
			right: calc(50% + 190px);
		}
	}
	@keyframes right-arrow-load {
		0% { opacity: 1; }
		100% {
			opacity: 1;
			left: calc(50% + 190px);
		}
	}
	#gallery-display {
		column-gap: 44px;
	}
	#gallery-display > a {
		flex-basis: calc(50% - 22px);
	}
	.gallery-subpage-flex > div:first-of-type {
		flex-basis: calc(100% - 430px );
	}
	.gallery-subpage-flex > div:last-of-type {
		flex-basis: 330px;
	}
	.sticky-button #page-wrapper header {
		height: 210px;
	}
	#card-buy-now {
		max-width: 330px;
	}
	#gallery-subpage-intro-right::after {
		height: 93px;
	}
	#scrolling-tape {
		font-size: 65px;
		height: 430px;
	}
	#scrolling-tape > div {
		padding: 30px 0 45px 0;
	}
	footer #footer-logo {
		width: 40%;
		min-width: 170px;
	}
}
@media all and (max-width: 1200px) {
	footer {
		background-position: center bottom -90px;
	}
	footer #footer-logo {
		margin-bottom: 160px;
	}
	footer #footer-social {
		bottom: 155px;
	}
	footer .left-arrow,
	footer .right-arrow {
		top: calc(50% - 105px);
	}
}
@media all and (max-width: 1150px) {
	select {
		background-position: right 10px center;
		background-size: 22px auto;
		padding-right: 42px;
	}
	label {
		font-size: 18px;
	}
	.input-wrapper label {
		top: 23px;
	}
}
@media all and (max-width: 1120px) {
	#home-hero > div::after {
		top: 7%;
		height: 85%;
	}
	.gallery-subpage-flex > div:first-of-type {
		flex-basis: calc(100% - 370px );
	}
	.gallery-subpage-flex > div:last-of-type {
		flex-basis: 290px;
	}
	#card-buy-now {
		max-width: 290px;
	}
	.faq-wrapper > div > p {
		font-size: 28px;
		padding: 20px 70px 23px 0;
	}
	#gallery-subpage-intro-right::after {
		height: 80px;
	}
}
@media all and (max-width: 1080px) {
	#page-wrapper header #logo {
		height: 48px;
	}
	#gallery-results > p,
	#gallery-filters > div > div > div > div > span {
		font-size: 25px;
	}
	#gallery-display > a > p {
		font-size: 24px;
	}
	#gallery-results > p a::after {
		top: 5px;
		width: 25px;
		height: 25px;
	}
}
@media all and (max-width: 1040px) {
	#page-wrapper input[type="text"],
	#page-wrapper input[type="email"],
	#page-wrapper select,
	#page-wrapper textarea {
		padding-left: 15px;
	}
	.input-wrapper label {
		left: 18px;
	}
	label {
		font-size: 16px;
	}
	.input-wrapper label {
		top: 25px;
	}
}
@media all and (max-width: 1020px) {
	.content-wrapper,
	.inner-content-wrapper {
		padding-left: 55px;
		padding-right: 55px;
	}
	nav#menu,
	nav#menu > ul li a::before,
	nav#menu > ul li a::after {
		font-size: 75px;
	}
	#cart {
		font-size: 55px;
	}
	nav#menu > p {
		font-size: 55px;
		margin-bottom: 70px;
	}
	nav#menu .menu-cart-closer {
		top: 35px;
	}
	#page-wrapper header #logo {
		height: 46px;
	}
	h1, h2 {
		font-size: 50px;
	}
	h3 {
		font-size: 38px;
	}
	#home-intro h1,
	#subpage-heading h2,
	.general-page h1 {
		font-size: 62px;
	}
	.faq-wrapper > div > p {
		font-size: 26px;
		padding-right: 50px;
	}
	.faq-wrapper > div > p::before {
		top: 39px;
	}
	.faq-wrapper > div > p::after {
		top: 28px;
	}
	.faq-wrapper > div > div {
		padding-right: 50px;
	}
	#human-made > div > div {
		flex-basis: 160px;
		width: 160px;
	}
	#human-made > div > div > img {
		width: 160px;
	}
	#scrolling-tape {
		font-size: 55px;
		height: 390px;
	}
	#scrolling-tape > div {
		padding: 26px 0 39px 0;
	}
	#subpage-heading .left-arrow,
	#subpage-heading .right-arrow,
	footer .left-arrow,
	footer .right-arrow {
		width: 564px;
		height: 100px;
		top: calc(50% - 50px);
		background-size: auto 100px;
	}	
	@keyframes left-arrow-load {
		0% { opacity: 1; }
		100% {
			opacity: 1;
			right: calc(50% + 145px);
		}
	}
	@keyframes right-arrow-load {
		0% { opacity: 1; }
		100% {
			opacity: 1;
			left: calc(50% + 145px);
		}
	}
	footer .left-arrow {
		top: calc(50% - 90px);
		right: calc(50% - 45px);
	}
	footer .right-arrow {
		top: calc(50% - 90px);
		left: calc(50% - 45px);
	}
}
@media all and (max-width: 1000px) {
	.sticky-button #card-intro-intro-text > #cih2-wrap {
		width: calc(100% - 440px );
	}
}
@media all and (max-width: 980px) {
	#page-wrapper header #logo {
		display: none;
	}
	#page-wrapper header #logo-stacked {
		display: block;
		width: 230px;
	}
}
@media all and (max-width: 960px) {
	#mobile-show-gallery {
		display: block;
	}
	#gallery-filters {
		margin-bottom: 40px;
	}
	#gallery-filters > div {
		height: 0;
		overflow: hidden;
		transition: height .2s var(--transition-ease);
	}
	#gallery-filters > div > div {
		margin-top: 0;
	}
	#gallery-filters > div > div > div {
		flex-basis: 100%;
		max-width: 100%;
	}
	#gallery-filters > div > div > div:not(:last-of-type) > div {
		margin-bottom: 0;
	}
	#gallery-results {
		padding-top: 50px;
	}
}
@media all and (max-width: 940px) {
	.content-wrapper,
	.inner-content-wrapper {
		padding-left: 40px;
		padding-right: 40px;
	}
	.sticky-button #card-buy-now {
		right: 40px;
	}
	.sticky-button #card-intro {
		padding-top: 115px;
	}
	#gallery-display {
		column-gap: 30px;
	}
	#gallery-display > a {
		flex-basis: calc(50% - 15px);
	}
	.gallery-subpage-flex > div:first-of-type {
		flex-basis: 100%;
	}
	.gallery-subpage-flex > div:last-of-type {
		flex-basis: 100%;
	}
	div:not(#card-intro) > .gallery-subpage-flex > div:first-of-type {
		order: 2;
	}
	body:not(.sticky-button) #card-buy-now {
		max-width: 100%;
	}
	#card-buy-now {
		transition: background .2s var(--transition-ease);
	}
	#gallery-subpage-intro-right {
		padding-bottom: round(up, calc(100vw / 1900 * 498), 1px);
		margin-bottom: 40px;
	}
	#gallery-subpage-intro-right::after {
		height: round(up, calc(100vw / 1900 * 498), 1px);
	}
	#gallery-subpage-faq-right {
		padding-top: 38px;
		border-radius: 15px;
	}
	#gallery-subpage-faq-right {
		padding-top: round(up, calc(100vw / 1900 * 490 + 5px), 1px);
	}
	#gallery-subpage-faq-right::before {
		height: round(up, calc(100vw / 1900 * 490), 1px);
	}
	#gallery-subpage-faq-right > img {
		top: round(up, calc(100vw / 1900 * 490), 1px);
	}
	.faq-wrapper > div > div {
		padding-right: 0;
	}
}
@media all and (max-width: 890px) {
	.form-double > div {
		flex-basis: 100%;
	}
	.custom-checkbox {
		padding-left: 60px;
		height: 40px;
	}
	.custom-checkbox .checkmark {
		width: 40px;
		height: 40px;
	}
	.custom-checkbox .checkmark::after {
		left: 14px;
		top: 8px;
		width: 7px;
		height: 14px;
		border-width: 0 4px 4px 0;
	}
	#home-intro {
		padding-left: 70px;
		padding-right: 70px;
	}
	#card-buy-now {
		max-width: 270px;
	}
	#gallery-subpage-intro-right,
	#gallery-subpage-faq-right {
		padding-right: 30px;
	}
	#gallery-subpage-faq-right ul {
		font-size: 18px;
	}
	#gallery-wrapper {
		padding-bottom: 50px;
	}
}
@media all and (max-width: 860px) {
	h1, h2,
	#featured-cards-wrapper > h2 {
		font-size: 44px;
	}
	h3,
	.sticky-button #card-intro-intro-text > #cih2-wrap h2 {
		font-size: 36px;
	}
	#home-intro h1,
	#subpage-heading h2,
	.general-page h1 {
		font-size: 60px;
	}
	#scrolling-tape {
		font-size: 45px;
		height: 370px;
	}
	.purple-boxes > div > div:last-of-type {
		padding: 25px;
	}
	.content-wrapper,
	.inner-content-wrapper {
		padding-left: 30px;
		padding-right: 30px;
	}
	.sticky-button #card-buy-now {
		right: 30px;
	}
	@keyframes left-arrow-load {
		0% { opacity: 1; }
		100% {
			opacity: 1;
			right: calc(50% + 115px);
		}
	}
	@keyframes right-arrow-load {
		0% { opacity: 1; }
		100% {
			opacity: 1;
			left: calc(50% + 115px);
		}
	}
	footer .left-arrow {
		right: calc(50% - 75px);
	}
	footer .right-arrow {
		left: calc(50% - 75px);
	}
	#human-made > div > div {
		flex-basis: 140px;
		width: 140px;
	}
	#human-made > div > div > img {
		width: 140px;
	}
}
@media all and (max-width: 840px) {
	.sticky-button #card-buy-now {
		max-width: 220px;
	}
	#card-intro-intro-text p {
		font-size: 24px;
	}
	.sticky-button #card-intro-intro-text > #cih2-wrap {
		width: calc(100% - 310px );
	}
}
@media all and (max-width: 820px) {
	footer {
		padding-top: 75px;
		padding-bottom: 60px;
	}
	footer #footer-logo {
		margin: 80px auto 140px auto;
	}
	footer #footer-copyright > ul {
		flex-basis: 100%;
		text-align: center;
	}
	footer #footer-copyright > ul:first-of-type {
		order: 2;
	}
	footer #footer-social {
		bottom: 145px;
	}
}
@media all and (max-width: 810px) {
	@keyframes left-arrow-load {
		0% { opacity: 1; }
		100% {
			opacity: 1;
			right: calc(50% + 100px);
		}
	}
	@keyframes right-arrow-load {
		0% { opacity: 1; }
		100% {
			opacity: 1;
			left: calc(50% + 100px);
		}
	}
	footer .left-arrow {
		right: calc(50% - 100px);
	}
	footer .right-arrow {
		left: calc(50% - 100px);
	}
}
@media all and (max-width: 740px) {
	#featured-cards-wrapper #slick-wrapper .slick-prev,
	#featured-cards-wrapper #slick-wrapper .slick-next {
		top: -100px;
		width: 60px;
		height: 60px;
	}
	#featured-cards-wrapper #slick-wrapper .slick-prev {
		right: 75px;
	}
	#featured-cards-wrapper #slick-wrapper .slick-prev::before,
	#featured-cards-wrapper #slick-wrapper .slick-next::before {
		background-size: 20px auto;
	}
	.button-wrapper,
	.button-wrapper:hover {
		max-width: 100%;
	}
}
@media all and (max-width: 720px) {
	#home-intro {
		padding-left: 50px;
		padding-right: 50px;
	}
	#gallery-display {
		column-gap: 40px;
	}
	#gallery-display > a {
		flex-basis: 100%;
	}
	.purple-boxes > div > div {
		flex-basis: 100%;
	}
	#card-intro-intro-text p {
		font-size: 20px;
	}
}
@media all and (max-width: 670px) {
	h1, h2,
	#featured-cards-wrapper > h2 {
		font-size: 40px;
	}
	h3,
	.purple-boxes > div > div > h3 {
		font-size: 32px;
	}
	#home-intro h1,
	#subpage-heading h2,
	.general-page h1 {
		font-size: 54px;
	}
	#home-intro {
		padding-left: 20px;
		padding-right: 20px;
	}
	#home-intro p,
	.success-notice	{
		font-size: 22px;
	}
	#home-intro p:first-of-type {
		font-size: 28px;
	}
	.success-notice strong {
		font-size: 34px;
	}
	.sticky-button #card-buy-now {
		max-width: 200px;
	}
	.button-wrapper {
		height: 64px;
	}
	#cart #cart-total {
		bottom: 64px;
	}
	input[type="submit"]::before,
	button::before,
	input[type="submit"]::after,
	button::after {
		font-size: 24px;
	}
	.content-wrapper,
	.inner-content-wrapper {
		padding-left: 20px;
		padding-right: 20px;
	}
	.sticky-button #card-buy-now {
		right: 20px;
	}
	#featured-cards-wrapper #slick-wrapper .slick-prev,
	#featured-cards-wrapper #slick-wrapper .slick-next {
		top: -95px;
		width: 50px;
		height: 50px;
	}
	#featured-cards-wrapper #slick-wrapper .slick-prev {
		right: 60px;
	}
	#scrolling-tape {
		font-size: 35px;
		height: 355px;
	}
}
@media all and (max-width: 650px) {
	nav#menu,
	#cart {
		top: 20px;
		left: 20px;
		width: calc(100vw - 40px);
		height: calc(100dvh - 40px);
		padding-left: 25px;
		padding-right: 25px;
	}
	nav#menu,
	nav#menu > ul li a::before,
	nav#menu > ul li a::after {
		font-size: 70px;
	}
	nav#menu > ul li a {
		line-height: 75px;
	}
	#cart {
		font-size: 48px;
	}
	#cart .menu-cart-closer {
		top: 35px;
		right: 25px;
	}
	nav#menu > p {
		font-size: 48px;
		margin-bottom: 60px;
	}
	nav#menu .menu-cart-closer {
		right: 25px;
	}
	#cart #cart-total,
	nav#menu > div:last-of-type,
	#cart > div:last-of-type {
		left: 20px;
		width: calc(100% - 40px);
	}
}
@media all and (max-width: 620px) {
	h3,
	.sticky-button #card-intro-intro-text > #cih2-wrap h2 {
		font-size: 32px;
	}
	#cart #cart-contents > div > a > img{
		width: 230px;
		flex-basis: 230px;
	}
	#cart #cart-contents > div > div {
		flex-basis: calc(100% - 245px);
	}
}
@media all and (max-width: 610px) {
	#featured-cards-wrapper > h2 {
		margin-bottom: 130px;
	}
	#featured-cards-wrapper #slick-wrapper .slick-prev {
		right: auto;
		left: 0;
	}
	#featured-cards-wrapper #slick-wrapper .slick-next {
		right: auto;
		left: 65px;
	}
}
@media all and (max-width: 560px) {
	.from-560 {
		display: block;
	}
	.content-wrapper,
	.inner-content-wrapper {
		padding-left: 15px;
		padding-right: 15px;
	}
	#home-hero .video-wrapper {
		border-radius: 15px;
		padding-bottom: 135%;
	}
	#home-hero .video-wrapper iframe {
		width: 240% !important;
		max-width: 240%;
		transform: translateX(-29.167%);
	}
	#home-hero > div::after {
		top: 20%;
		height: 60%;
	}
	.sticky-button #page-wrapper header {
		height: 195px;
	}
	.sticky-button #card-intro-intro-text > #cih2-wrap {
		display: none;
	}
	.sticky-button #card-buy-now {
		max-width: calc(100% - 40px);
		top: 115px;
	}
	#card-buy-now {
		height: 60px;
	}
	nav#menu,
	#cart {
		padding-top: 25px;
		paddidng-bottom: 25px;
	}
	nav#menu .menu-cart-closer,
	#cart .menu-cart-closer	{
		top: 25px;
	}
	nav#menu > div:last-of-type,
	#cart > div:last-of-type {
		bottom: 20px;
	}
	#home-intro {
		padding-top: 30px;
		padding-bottom: 50px;
	}
	#home-intro p,
	.success-notice {
		font-size: 20px;
	}
	#home-intro p:first-of-type {
		font-size: 21px;
	}
	.success-notice strong {
		font-size: 30px;
	}
	#subpage-heading {
		padding: 75px 0;
		background-size: 900px 440px;
	}
	#home-intro h1,
	.general-page h1 {
		font-size: 50px;
		margin-bottom: 20px;
	}
	#subpage-heading h2 {
		font-size: 40px;
	}
	#gallery-results {
		padding-top: 30px;
	}
	#mobile-show-gallery {
		margin-top: 30px;
	}
	#gallery-display {
		row-gap: 35px;
	}
	#gallery-display .no-results {
		font-size: 20px;
	}
	.faq-wrapper > div > p {
		font-size: 20px;
    }
	.faq-wrapper > div > p::before {
		top: 35px;
	}
	.faq-wrapper > div > p::after {
		top: 24px;
	}
	.faq-wrapper > div > div > div > p {
		font-size: 18px;
		line-height: 32px;
		margin-bottom: 20px;
	}
	#card-intro {
		margin-top: 20px;
	}
	#card-intro-tags {
		margin: 35px 0 0 0;
	}
	#card-intro .gallery-subpage-flex {
		row-gap: 20px;
	}
	div:not(#card-intro) > .gallery-subpage-flex {
		margin-top: -30px;
		padding-bottom: 0;
	}
	#card-intro-intro-text > p:not(:last-of-type) {
		margin-bottom: 20px;
	}
	#featured-cards-wrapper {
		padding-top: 0;
	}
	#featured-cards-wrapper.keep-padding-560 {
		padding-top: 60px;
	}
	#featured-cards-wrapper #slick-wrapper a > p:first-of-type {
		font-size: 23px;
	}
	#featured-cards-wrapper #slick-wrapper a > p:last-of-type {
		font-size: 12px;
	}
	#featured-cards-wrapper #slick-wrapper {
		margin-bottom: 30px;
	}
	#gallery-subpage-intro-right,
	#gallery-subpage-faq-right {
		padding-left: 78px;
	}
	#gallery-subpage-intro-right > img,
	#gallery-subpage-faq-right > img {
		left: 40px;
	}
	#page-wrapper header #logo-stacked {
		width: 200px;
	}
	#subpage-heading .left-arrow,
	#subpage-heading .right-arrow,
	footer .left-arrow,
	footer .right-arrow {
		width: 296px;
		height: 53px;
		top: calc(50% - 23px);
		background-size: auto 53px;
	}
	footer .left-arrow,
	footer .right-arrow {
		top: calc(50% - 60px);
	}
	@keyframes left-arrow-load {
		0% { opacity: 1; }
		100% {
			opacity: 1;
			right: calc(50% + 60px);
		}
	}
	@keyframes right-arrow-load {
		0% { opacity: 1; }
		100% {
			opacity: 1;
			left: calc(50% + 60px);
		}
	}
	footer #footer-nav {
		column-gap: 20px;
	}
}
@media all and (max-width: 540px) {
	h3,
	.sticky-button #card-intro-intro-text > #cih2-wrap h2 {
		font-size: 28px;
	}
	.button-wrapper {
		border-radius: 10px;
	}
	#cart #cart-contents > div > a > img {
		width: 210px;
		flex-basis: 210px;
	}
	#cart #cart-contents > div > div {
		flex-basis: calc(100% - 225px);
	}
	#newsletter-wrapper > div > p {
		font-size: 38px;
	}
	#newsletter-wrapper > div > div:first-of-type,
	#newsletter-wrapper form {
		width: 380px;
	}
	#newsletter-wrapper > div > div:first-of-type > div {
		flex-basis: 90px;
	}
	#scrolling-tape {
		font-size: 30px;
		height: 345px;
	}
}
@media all and (max-width: 525px) {
	.sticky-button #card-intro {
		padding-top: 125px;
	}
}
@media all and (max-width: 500px) {
	body {
		padding-top: 95px;
	}
	#page-wrapper header > div {
		height: 90px;
	}
	.sticky-button #page-wrapper header {
		height: 165px;
	}
	.sticky-button #card-buy-now {
		top: 90px;
	}
	.sticky-button #card-intro-intro-text > #cih2-wrap {
		top: 80px;
	}
	#cart #cart-contents > div > a > img {
		width: 195px;
		flex-basis: 195px;
	}
	#cart #cart-contents > div > div {
		flex-basis: calc(100% - 210px);
	}
	#cart #cart-total {
		font-size: 40px;
		bottom: 58px;
	}
	#page-wrapper header #logo-stacked,
	footer #footer-logo {
		width: 170px;
	}
	#page-wrapper header > div > p {
		font-size: 26px;
	}
	#home-intro h1,
	.general-page h1 {
		font-size: 42px;
	}
	footer {
		padding-bottom: 80px;
	}
	footer .left-arrow,
	footer .right-arrow {
		top: calc(50% - 95px);
	}
	footer #footer-nav {
		font-size: 16px;
		column-gap: 12px;
	}
	footer #footer-copyright {
		font-size: 13px;
		row-gap: 30px;
	}
	footer #footer-logo {
		margin: 60px auto 150px auto;
	}
	footer #footer-social {
		bottom: 205px;
	}
}
@media all and (max-width: 480px) {
	#gallery-results > p {
		font-size: 22px;
	}
	#gallery-results > p a {
		padding-right: 30px;
	}
	#gallery-results > p a::after {
		top: 5px;
		width: 22px;
		height: 22px;
	}
	#gallery-filters > div > div > div > div > span {
		font-size: 22px;
		background-size: 25px;
		padding-bottom: 5px;
	}
}
@media all and (max-width: 470px) {
	#cart #cart-contents > div > a > img {
		width: 130px;
		flex-basis: 130px;
		margin-bottom: 40px;
	}
	#cart #cart-contents > div > div {
		flex-basis: calc(100% - 140px);
		font-size: 17px;
	}
}
@media all and (max-width: 460px) {
	input[type="text"], input[type="email"], select, textarea {
		padding: 20px 10px;
	}
	nav#menu, nav#menu > ul li a::before,
	nav#menu > ul li a::after {
		font-size: 62px;
	}
	nav#menu > ul li a {
		line-height: 67px;
	}
	#cart #cart-total {
		font-size: 36px;
		bottom: 50px;
	}
	#newsletter-wrapper > div > p {
		font-size: 34px;
	}
}
@media all and (max-width: 445px) {
	#cart #cart-contents > div {
		min-height: 130px;
	}
	#cart #cart-contents > div > div > p:nth-of-type(2) {
		transform: translateY(0);
	}
	label[for="contact-how"] {
		font-size: 0;
	}
	label[for="contact-how"]::after {
		font-size: 16px;
		content: "How did you hear about us?";
	}
	.input-wrapper.has-text select + label[for="contact-how"],
	.input-wrapper select:focus + label[for="contact-how"] {
		font-size: 0;
	}
	.input-wrapper.has-text select + label[for="contact-how"]::after,
	.input-wrapper select:focus + label[for="contact-how"]::after {
		font-size: 12px;
	}
	#home-intro h1,
	#subpage-heading h2,
	.general-page h1 {
		font-size: 30px;
	}
	footer .left-arrow,
	footer .right-arrow {
		top: calc(50% - 118px);
	}
	footer #footer-copyright > ul:first-of-type > li {
		display: block;
	}
	footer #footer-copyright > ul:first-of-type > li:not(:first-of-type) {
		border: 0;
		margin-top: 5px;
	}
	footer #footer-copyright > ul > li:not(:first-of-type) {
		border: 0;
		margin-top: 2px;
	}
	footer #footer-copyright > ul > li:first-of-type {
		padding: 0;
	}
	footer #footer-copyright > ul > li {
		display: block;
	}
	footer #footer-social {
		bottom: 260px;
	}
}
@media all and (max-width: 430px) {
	#page-wrapper header > div > p {
		font-size: 21px;
	}
	#featured-cards-wrapper > h2 {
		font-size: 32px;
	}
}
@media all and (max-width: 420px) {
	nav#menu, nav#menu > ul li a::before,
	nav#menu > ul li a::after {
		font-size: 45px;
	}
	nav#menu > ul li a {
		line-height: 50px;
	}
	#cart #cart-total {
		font-size: 32px;
		bottom: 40px;
	}
	nav#menu > div:last-of-type,
	#cart > div:last-of-type {
		font-size: 12px;
	}
	#newsletter-wrapper > div > div:first-of-type,
	#newsletter-wrapper form {
		width: 100%;
	}
	#newsletter-wrapper > div > div:first-of-type {
		font-size: 17px;
	}
	#newsletter-wrapper > div > div:first-of-type > div {
		flex-basis: 80px;
	}
	#page-wrapper input[type="submit"]::before,
	#page-wrapper button::before,
	#page-wrapper input[type="submit"]::after,
	#page-wrapper button::after {
		font-size: 25px;
	}
}
@media all and (max-width: 390px) {
	#cart #cart-total {
		font-size: 26px;
		bottom: 35px;
	}
	#gallery-results > p {
		font-size: 18px;
	}
	#gallery-results > p a::after {
		top: 4px;
		width: 19px;
		height: 19px;
	}
	#newsletter-wrapper > div > p {
		font-size: 28px;
	}
	#newsletter-wrapper > div > div:first-of-type {
		font-size: 16px;
	}
	#newsletter-wrapper > div > div:first-of-type > div {
		flex-basis: 70px;
	}
}
@media all and (max-width: 380px) {
	#cart #cart-contents > div > a > img {
		width: 90px;
		flex-basis: 90px;
	}
	#cart #cart-contents > div > div {
		flex-basis: calc(100% - 100px);
		font-size: 15px;
	}
}
@media all and (max-width: 360px) {
	#page-wrapper header #logo-stacked,
	footer #footer-logo {
		width: 145px;
	}
	#page-wrapper input[type="submit"]::before,
	#page-wrapper button::before,
	#page-wrapper input[type="submit"]::after,
	#page-wrapper button::after {
		font-size: 21px;
	}
	nav#menu > div:last-of-type > span:first-of-type,
	#cart > div:last-of-type > span:first-of-type {
		display: none;
	}
	#home-intro h1,
	#subpage-heading h2,
	.general-page h1 {
		font-size: 24px;
	}
	footer #footer-nav {
		font-size: 14px;
		column-gap: 8px;
	}
}
@media all and (max-width: 350px) {
	#newsletter-wrapper > div > p {
		font-size: 27px;
	}
	#newsletter-wrapper > div > div:first-of-type {
		column-gap: 10px;
	}
}

/**************************************
	Touchscreen Overrides
**************************************/
@media (pointer: coarse) {
	#featured-cards-wrapper #slick-wrapper a:hover > div {
		transform: translateY(0px);
	}
}
@media (pointer: coarse) and (max-width: 560px) {
	nav#menu > ul li a:hover::before {
		top: 0;
	}
	nav#menu > ul li a:hover::after {
		top: 100%;
	}
}

/**************************************
	SnipCart Overrides
**************************************/
#snipcart {
	position: relative;
	z-index: 9999999;
}
/*#snipcart .snipcart-cart-summary__actions > button,*/
#snipcart .snipcart-summary-fees__notice,
#snipcart .snipcart-item-quantity__quantity button {
	display: none;
}
#snipcart .snipcart-summary-fees__discounts {
	color: #ff3333;
}
#snipcart .snipcart-modal,
#snipcart .snipcart-modal__container,
#snipcart .snipcart-cart-header {
	background-color: var(--cream);
}
#snipcart .snipcart-cart-summary,
#snipcart .snipcart__box--gray {
	background-color: var(--dark-cream);
}
#snipcart .snipcart__font--subtitle,
#snipcart .snipcart__font--subtitle-small {
	font-family: var(--heading-font);
	font-feature-settings: "salt";
	font-weight: 900;
	line-height: 1;
	color: var(--purple);
}
#snipcart .snipcart__font--std,
#snipcart .snipcart__font--secondary,
#snipcart .snipcart__font--slim,
#snipcart .snipcart__font--tiny {
	font-family: var(--main-font);
}
#snipcart .snipcart__box--badge-highlight {
	color: var(--purple);
	background: var(--orange);
	font-weight: 900;
}
#snipcart .snipcart__box--badge-disabled {
	color: var(--purple);
	background-color: var(--dark-cream);
	border-color: #fff;
	font-weight: 900;
}
#snipcart .snipcart-base-button {
	background: var(--orange);
	border-radius: 15px;
	box-shadow: none !important;
}
#snipcart .snipcart-base-button:hover {
	background: #ffbf39;
}
#snipcart .snipcart-base-button__label {
	font-family: var(--main-font);
	color: var(--purple);
	font-size: 18px;
	font-weight: 900;
	text-transform: uppercase;
}
#snipcart .snipcart-input:hover,
#snipcart .snipcart-checkbox:hover + label::before,
#snipcart .snipcart-checkbox:focus + label::before,
#snipcart .snipcart-form__select:hover,
#snipcart .snipcart-typeahead__suggestions,
#snipcart .snipcart-item-quantity__quantity:hover,
#snipcart .snipcart-discount-box__button:hover,
#snipcart .snipcart-payment-form--focused {
	border-color: #422c95;
}
#snipcart .snipcart-input:focus-within,
#snipcart .snipcart-form__select:focus-within {
	border-color: #422c95;
	box-shadow:0 5px 10px -3px rgba(66, 44, 149, .3);
}
#snipcart .snipcart-form__select-wrapper:focus-within .snipcart__icon {
	color: #422c95;
}
#snipcart .snipcart-checkbox:checked + label::before {
	background-color: #422c95;
	border-color: #422c95;
}
#snipcart .snipcart-typeahead__suggestion--active,
#snipcart .snipcart-typeahead__suggestion--search-query:hover {
	background-color: #a69ce1;
}
#snipcart .snipcart-cart-header .snipcart-modal__close-icon,
#snipcart .snipcart-cart-header__icon,
#snipcart .snipcart-billing-completed .snipcart-checkout-step__icon,
#snipcart .snipcart-billing-completed__title .snipcart__icon--left,
#snipcart .snipcart__icon,
#snipcart .snipcart__icon--large,
#snipcart .snipcart-order__invoice-number,
#snipcart .snipcart-order__details__content {
	color: var(--purple);
}
#snipcart .snipcart-summary-fees__discounts-icon path {
	fill: var(--purple);
}
#snipcart .snipcart-button-link {
	color: var(--purple);
	border-bottom-color: var(--purple);
}
#snipcart .snipcart-button-link:hover {
	color: var(--orange);
	border-bottom-color: var(--orange);
}
#snipcart .snipcart-order__invoice-number--highlight {
	color: var(--orange);
}
