/* Canvas: Canvas Grove */

@layer custom {
:root {
	--deco-1: #F26B1F;
	--deco-2: #B3204A;
	--deco-3: #16211A;
	--cnvs-themecolor: #F26B1F;
	--cnvs-themecolor-rgb: 242, 107, 31;

	--c-ground: #FFFDF7;
	--c-ground-2: #E8F2DC;
	--c-ink: #16211A;
	--c-muted: #55625A;
	--c-accent: #F26B1F;
	--c-accent-ink: #C24E10;
	--c-accent-deep: #D95A12;
	--c-berry: #B3204A;
	--c-berry-soft: #F6DCE3;
	--c-citrus: #F6C026;
	--c-line: #DFE3D8;
	--c-line-soft: #C9D2C2;
	--c-on-dark: #F4F5F7;
	--c-on-dark-muted: #C3CCC5;

	--space-1: 4px;
	--space-2: 8px;
	--space-3: 16px;
	--space-4: 24px;
	--space-5: 40px;
	--space-6: 64px;
	--space-7: 88px;
	--band: 112px;
	--band-compact: 64px;
	--gutter: 32px;

	--fs-display: 70px;
	--fs-h1: 52px;
	--fs-h2: 40px;
	--fs-h3: 26px;
	--fs-lead: 19px;
	--fs-body: 17px;
	--fs-small: 15px;
	--fs-label: 13px;

	--cnvs-body-font: "Gabarito", "Helvetica Neue", Arial, sans-serif;
	--cnvs-primary-font: "Gabarito", "Helvetica Neue", Arial, sans-serif;
	--cnvs-secondary-font: "Gloock", Georgia, "Times New Roman", serif;

	--radius-s: 8px;
	--radius-m: 16px;
	--radius-pill: 999px;

	--ease-out: cubic-bezier(0.23, 1, 0.32, 1);
	--ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);

	--cnvs-footer-bg: #16211A;
	--cnvs-header-sticky-bg: #FFFDF7;
}

body {
	font-family: var(--cnvs-body-font);
	font-size: var(--fs-body);
	line-height: 1.65;
	color: var(--c-ink);
	background-color: var(--c-ground);
	-webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--cnvs-secondary-font);
	font-weight: 400;
	letter-spacing: -0.018em;
	text-wrap: balance;
	color: var(--c-ink);
}

p {
	color: var(--c-ink);
}

a {
	transition: color 150ms var(--ease-out), background-color 150ms var(--ease-out), border-color 150ms var(--ease-out);
}

:focus-visible {
	outline: 2px solid var(--c-accent);
	outline-offset: 2px;
}

::selection {
	background: var(--c-citrus);
	color: var(--c-ink);
}

#header {
	background-color: var(--c-ground);
	border-bottom: 1px solid var(--c-line);
}

#header #header-wrap {
	background-color: var(--c-ground);
}

#header .header-row {
	flex-wrap: nowrap;
	align-items: center;
	gap: var(--space-4);
	min-height: 78px;
}

#logo {
	min-width: 0;
	flex-shrink: 0;
}

#header .primary-menu {
	margin-left: auto;
}

#header .menu-container {
	gap: var(--space-4);
	flex-wrap: nowrap;
}

#header .cnvs-menu-link {
	font-family: var(--cnvs-body-font);
	font-size: var(--fs-small);
	font-weight: 500;
	letter-spacing: 0;
	padding: var(--space-2) 0;
	white-space: nowrap;
}

#header .header-misc {
	display: flex;
	align-items: center;
	gap: var(--space-3);
	flex-shrink: 0;
}

.cv-header-hours {
	display: flex;
	align-items: center;
	gap: var(--space-2);
	font-size: var(--fs-small);
	color: var(--c-muted);
	white-space: nowrap;
}

.cv-header-hours i {
	color: var(--c-accent-ink);
}

@media (max-width: 1199.98px) {
	#header .header-misc {
		display: none;
	}
	#header .menu-container {
		gap: var(--space-3);
	}
}

@media (max-width: 575.98px) {
	#header .header-misc .button {
		display: none;
	}
	#header .menu-container {
		gap: var(--space-3);
	}
}

.cv-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--space-2);
	min-height: 48px;
	padding: 14px 26px;
	border: 1px solid var(--c-accent);
	border-radius: var(--radius-pill);
	background-color: var(--c-accent);
	color: #FFFFFF;
	font-family: var(--cnvs-body-font);
	font-size: var(--fs-small);
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.2;
	text-transform: none;
	transition: background-color 160ms var(--ease-out), border-color 160ms var(--ease-out), transform 160ms var(--ease-out);
}

.cv-btn:hover,
.cv-btn:focus {
	background-color: var(--c-accent-deep);
	border-color: var(--c-accent-deep);
	color: #FFFFFF;
}

.cv-btn:active {
	transform: scale(0.97);
}

.cv-btn-sm {
	min-height: 40px;
	padding: 8px 18px;
	font-size: 14px;
}

.cv-btn-ghost {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 10px 22px;
	border: 1px solid var(--c-ink);
	border-radius: var(--radius-pill);
	background-color: transparent;
	color: var(--c-ink);
	font-family: var(--cnvs-body-font);
	font-size: var(--fs-small);
	font-weight: 600;
	transition: background-color 160ms var(--ease-out), color 160ms var(--ease-out), transform 160ms var(--ease-out);
}

.cv-btn-ghost:hover,
.cv-btn-ghost:focus {
	background-color: var(--c-ink);
	color: var(--c-ground);
}

.cv-btn-ghost:active {
	transform: scale(0.97);
}

.cv-quiet-link {
	display: inline-flex;
	align-items: center;
	gap: var(--space-2);
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--c-ink);
	text-decoration: none;
	border-bottom: 1px solid var(--c-line-soft);
	padding-bottom: 3px;
	transition: border-color 150ms var(--ease-out), color 150ms var(--ease-out);
}

.cv-quiet-link:hover {
	color: var(--c-accent-ink);
	border-color: var(--c-accent);
}

.cv-label {
	font-family: var(--cnvs-body-font);
	font-size: var(--fs-label);
	font-weight: 600;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: var(--c-accent-ink);
	margin: 0 0 var(--space-3);
}

.cv-h1 {
	font-size: var(--fs-h1);
	line-height: 1.04;
	letter-spacing: -0.02em;
	margin: 0 0 var(--space-4);
}

.cv-h2 {
	font-size: var(--fs-h2);
	line-height: 1.08;
	letter-spacing: -0.018em;
	margin: 0 0 var(--space-5);
	max-width: 18ch;
}

.cv-h2-light {
	color: var(--c-on-dark);
}

.cv-lead {
	font-size: var(--fs-lead);
	line-height: 1.6;
	color: var(--c-muted);
	max-width: 48ch;
	margin: 0 0 var(--space-5);
}

.cv-lead-light {
	color: var(--c-on-dark-muted);
}

.cv-section-intro {
	font-size: var(--fs-body);
	line-height: 1.65;
	color: var(--c-muted);
	max-width: 62ch;
	margin: 0 0 var(--space-5);
}

.cv-section-intro-dark {
	color: var(--c-ink);
}

.cv-band {
	padding: var(--band) 0;
	background-color: var(--c-ground);
	position: relative;
	overflow: visible;
}

.cv-band-compact {
	padding: var(--band-compact) 0;
}

.cv-band-leaf {
	background-color: var(--c-ground-2);
}

.cv-band-citrus {
	background-color: var(--c-citrus);
}

.cv-hero {
	padding: var(--space-7) 0 var(--band);
	background-color: var(--c-ground);
	position: relative;
	overflow: visible;
}

.cv-hero-row {
	row-gap: var(--gutter);
}

.cv-hero-copy {
	padding-top: var(--space-5);
}

.cv-hero-actions {
	display: flex;
	align-items: center;
	gap: var(--space-4);
	flex-wrap: wrap;
	margin-bottom: var(--space-6);
}

.cv-stat-row {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--space-4);
	list-style: none;
	margin: 0;
	padding: var(--space-4) 0 0;
	border-top: 1px solid var(--c-line);
}

.cv-stat-row li {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.cv-stat-row strong {
	font-family: var(--cnvs-secondary-font);
	font-size: 30px;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--c-ink);
	font-weight: 400;
}

.cv-stat-row span {
	font-size: 14px;
	line-height: 1.4;
	color: var(--c-muted);
}

.cv-hero-media {
	position: relative;
}

.cv-hero-figure {
	margin: 0;
	position: relative;
	border-radius: var(--radius-m);
	overflow: hidden;
	aspect-ratio: 4 / 5;
	background-color: var(--c-ground-2);
}

.cv-hero-figure img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cv-hero-caption {
	position: absolute;
	left: calc(var(--space-4) * -1);
	bottom: var(--space-5);
	display: flex;
	flex-direction: column;
	gap: var(--space-1);
	max-width: 260px;
	padding: var(--space-3) var(--space-4);
	background-color: var(--c-accent);
	border-radius: var(--radius-s);
	transform: rotate(-1.5deg);
}

.cv-hero-caption-label {
	font-family: var(--cnvs-body-font);
	font-size: var(--fs-label);
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: #FFFFFF;
}

.cv-hero-caption-text {
	font-size: 14px;
	line-height: 1.45;
	color: #FFFFFF;
}

.cv-tiles {
	row-gap: var(--gutter);
}

.cv-tiles > div {
	display: flex;
}

.cv-tile {
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
	width: 100%;
	padding: var(--space-4);
	border-radius: var(--radius-m);
}

.cv-tile-label {
	font-family: var(--cnvs-body-font);
	font-size: var(--fs-label);
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.cv-tile-name {
	font-size: 22px;
	line-height: 1.25;
	letter-spacing: -0.012em;
	margin: 0;
}

.cv-tile-note {
	font-size: 14px;
	line-height: 1.5;
	margin: 0;
}

.cv-tile-price {
	margin-top: auto;
	font-size: 14px;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
}

.cv-tile-citrus {
	background-color: var(--c-citrus);
	color: var(--c-ink);
}
.cv-tile-citrus .cv-tile-label,
.cv-tile-citrus .cv-tile-price,
.cv-tile-citrus .cv-tile-name,
.cv-tile-citrus .cv-tile-note { color: var(--c-ink); }

.cv-tile-green {
	background-color: #FFFFFF;
	color: var(--c-ink);
}
.cv-tile-green .cv-tile-label { color: var(--c-accent-ink); }
.cv-tile-green .cv-tile-name,
.cv-tile-green .cv-tile-note,
.cv-tile-green .cv-tile-price { color: var(--c-ink); }

.cv-tile-berry {
	background-color: var(--c-berry-soft);
	color: var(--c-ink);
}
.cv-tile-berry .cv-tile-label { color: var(--c-berry); }
.cv-tile-berry .cv-tile-name,
.cv-tile-berry .cv-tile-note,
.cv-tile-berry .cv-tile-price { color: var(--c-ink); }

.cv-tile-blend {
	background-color: var(--c-ink);
	color: var(--c-on-dark);
}
.cv-tile-blend .cv-tile-label { color: var(--c-citrus); }
.cv-tile-blend .cv-tile-name,
.cv-tile-blend .cv-tile-note,
.cv-tile-blend .cv-tile-price { color: var(--c-on-dark); }

.cv-menu-col {
	padding-right: var(--gutter);
}

.cv-filter-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-4);
	flex-wrap: wrap;
	margin-bottom: var(--space-5);
	padding-bottom: var(--space-4);
	border-bottom: 1px solid var(--c-line);
}

.cv-chips {
	display: flex;
	gap: var(--space-2);
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
}

.cv-chips button {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 6px 16px;
	border: 1px solid var(--c-line-soft);
	border-radius: var(--radius-pill);
	background-color: transparent;
	color: var(--c-ink);
	font-family: var(--cnvs-body-font);
	font-size: 14px;
	font-weight: 500;
	line-height: 1.2;
	cursor: pointer;
	transition: background-color 150ms var(--ease-out), border-color 150ms var(--ease-out), color 150ms var(--ease-out);
}

.cv-chips button:hover {
	border-color: var(--c-accent);
	color: var(--c-accent-ink);
}

.cv-chips button[aria-pressed="true"] {
	background-color: var(--c-ink);
	border-color: var(--c-ink);
	color: var(--c-ground);
}

.cv-filter-count {
	font-size: 14px;
	font-weight: 600;
	color: var(--c-muted);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.cv-menu-list {
	border-top: 1px solid var(--c-line);
}

.cv-menu-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--space-4);
	padding: var(--space-3) 0;
	border-bottom: 1px solid var(--c-line);
}

.cv-menu-main {
	min-width: 0;
}

.cv-menu-name {
	font-size: 24px;
	line-height: 1.2;
	letter-spacing: -0.012em;
	margin: 0 0 var(--space-1);
}

.cv-menu-ingredients {
	font-size: var(--fs-small);
	line-height: 1.5;
	color: var(--c-muted);
	margin: 0 0 var(--space-1);
}

.cv-menu-nutrition {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-3);
	margin: 0;
}

.cv-menu-nutrition span {
	font-size: 13px;
	line-height: 1.4;
	color: var(--c-muted);
	font-variant-numeric: tabular-nums;
}

.cv-menu-price {
	flex-shrink: 0;
	font-family: var(--cnvs-secondary-font);
	font-size: 22px;
	line-height: 1.2;
	color: var(--c-ink);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.cv-order-col {
	position: sticky;
	top: calc(var(--space-5) + 40px);
	align-self: flex-start;
}

.cv-panel {
	background-color: var(--c-ground-2);
	border: 1px solid var(--c-line);
	border-radius: var(--radius-m);
	padding: var(--space-5);
}

.cv-panel-title {
	font-size: 26px;
	line-height: 1.2;
	letter-spacing: -0.012em;
	margin: 0 0 var(--space-2);
}

.cv-panel-note {
	font-size: 14px;
	line-height: 1.55;
	color: var(--c-muted);
	margin: 0 0 var(--space-4);
}

.cv-field-group {
	border: 0;
	padding: 0;
	margin: 0 0 var(--space-4);
	min-width: 0;
}

.cv-legend {
	font-family: var(--cnvs-body-font);
	font-size: var(--fs-label);
	font-weight: 600;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: var(--c-muted);
	padding: 0;
	margin-bottom: var(--space-2);
	float: none;
	width: auto;
}

.cv-radio-row {
	display: flex;
	align-items: center;
	gap: var(--space-3);
	padding: 10px 0;
	border-bottom: 1px solid var(--c-line);
	cursor: pointer;
}

.cv-radio-row:last-child {
	border-bottom: 0;
}

.cv-radio-row input {
	flex-shrink: 0;
	width: 18px;
	height: 18px;
	accent-color: var(--c-accent);
	cursor: pointer;
}

.cv-radio-text {
	font-size: var(--fs-small);
	line-height: 1.4;
	color: var(--c-ink);
	flex: 1 1 auto;
	min-width: 0;
}

.cv-radio-text strong {
	font-weight: 600;
}

.cv-radio-price {
	flex-shrink: 0;
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--c-ink);
	font-variant-numeric: tabular-nums;
}

.cv-qty-row {
	display: flex;
	align-items: center;
	gap: var(--space-2);
}

.cv-qty-btn {
	width: 44px;
	height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--c-line-soft);
	border-radius: var(--radius-s);
	background-color: #FFFFFF;
	color: var(--c-ink);
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
	transition: background-color 150ms var(--ease-out), border-color 150ms var(--ease-out);
}

.cv-qty-btn:hover {
	border-color: var(--c-accent);
	color: var(--c-accent-ink);
}

.cv-qty-value {
	min-width: 48px;
	text-align: center;
	font-family: var(--cnvs-secondary-font);
	font-size: 26px;
	line-height: 1;
	color: var(--c-ink);
	font-variant-numeric: tabular-nums;
}

.cv-qty-hint {
	font-size: 14px;
	color: var(--c-muted);
}

.cv-switch-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-3);
}

.cv-switch-label {
	font-size: var(--fs-small);
	line-height: 1.45;
	color: var(--c-ink);
	margin: 0;
	flex: 1 1 auto;
}

.cv-switch {
	flex-shrink: 0;
	margin: 0;
}

.cv-switch .switch-toggle-round {
	width: 52px;
	height: 28px;
}

.cv-total-row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: var(--space-3);
	margin-top: var(--space-4);
	padding-top: var(--space-3);
	border-top: 1px solid var(--c-line-soft);
}

.cv-total-label {
	font-size: var(--fs-small);
	font-weight: 600;
	color: var(--c-ink);
}

.cv-total-value {
	font-family: var(--cnvs-secondary-font);
	font-size: 34px;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--c-ink);
	font-variant-numeric: tabular-nums;
}

.cv-estimate-fine {
	font-size: 13px;
	line-height: 1.45;
	color: var(--c-muted);
	margin: var(--space-3) 0 var(--space-4);
}

.cv-ing-figure {
	position: relative;
	margin: 0;
}

.cv-ing-figure > img:first-child {
	display: block;
	width: 100%;
	height: auto;
	border-radius: var(--radius-m);
}

.cv-ing-inset {
	position: absolute;
	right: calc(var(--space-4) * -1);
	bottom: calc(var(--space-4) * -1);
	width: 42%;
	height: auto;
	border-radius: var(--radius-s);
	border: 4px solid var(--c-ground-2);
}

.cv-figure-caption {
	font-size: 14px;
	line-height: 1.5;
	color: var(--c-muted);
	margin: var(--space-3) 0 0;
}

.cv-ing-copy {
	padding-left: var(--gutter);
}

.cv-ing-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.cv-ing-list li {
	display: grid;
	grid-template-columns: 130px 1fr;
	gap: var(--space-3);
	padding: var(--space-3) 0;
	border-top: 1px solid var(--c-line-soft);
}

.cv-ing-list li:last-child {
	border-bottom: 1px solid var(--c-line-soft);
}

.cv-ing-list strong {
	font-family: var(--cnvs-body-font);
	font-size: var(--fs-small);
	font-weight: 700;
	color: var(--c-ink);
}

.cv-ing-list span {
	font-size: 15px;
	line-height: 1.55;
	color: var(--c-muted);
}

.cv-process-title {
	max-width: 14ch;
}

.cx-steps {
	position: relative;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--gutter);
}

.cx-step {
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
	padding: var(--space-4);
	background-color: var(--c-ground);
	border: 1px solid var(--c-line);
	border-radius: var(--radius-m);
	position: relative;
}

.cx-step-n {
	font-family: var(--cnvs-body-font);
	font-size: var(--fs-label);
	font-weight: 600;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: var(--c-accent-ink);
	margin: 0;
}

.cv-step-title {
	font-size: 24px;
	line-height: 1.2;
	letter-spacing: -0.012em;
	margin: 0;
}

.cv-step-text {
	font-size: 15px;
	line-height: 1.6;
	color: var(--c-muted);
	margin: 0;
}

.cv-step-panel-figure {
	margin: 0;
	border-radius: var(--radius-s);
	overflow: hidden;
	aspect-ratio: 3 / 2;
}

.cv-step-panel-figure img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cv-seasonal {
	background-color: var(--c-ink);
	padding: var(--band) 0;
	position: relative;
	overflow: visible;
}

.cv-seasonal-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-areas:
		"photo-left copy"
		"photo-right copy";
	align-items: stretch;
}

.cv-seasonal-photo {
	position: relative;
	overflow: hidden;
	min-height: 260px;
}

.cv-seasonal-photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	inset: 0;
}

.cv-seasonal-photo:first-child {
	grid-area: photo-left;
}

.cv-seasonal-photo:last-child {
	grid-area: photo-right;
}

.cv-seasonal-copy {
	grid-area: copy;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	gap: var(--space-2);
	padding: var(--space-6) var(--gutter);
	background-color: var(--c-ink);
}

.cv-seasonal-copy .cv-h2 {
	color: var(--c-on-dark);
	margin-bottom: var(--space-3);
}

.cv-seasonal-copy .cv-lead {
	color: var(--c-on-dark-muted);
	margin-bottom: var(--space-3);
	max-width: 42ch;
}

.cv-seasonal-note {
	font-size: var(--fs-small);
	color: var(--c-citrus);
	margin: 0;
	font-weight: 600;
}

.cv-bento {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: var(--gutter);
}

.cv-bento-cell {
	border-radius: var(--radius-m);
	padding: var(--space-4);
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: var(--space-2);
	min-width: 0;
}

.cv-bento-quote {
	grid-column: span 7;
	grid-row: span 2;
	background-color: var(--c-ink);
	padding: var(--space-6);
}

.cv-pullquote {
	margin: 0;
}

.cv-pullquote p {
	font-family: var(--cnvs-secondary-font);
	font-size: 30px;
	line-height: 1.25;
	letter-spacing: -0.018em;
	color: var(--c-on-dark);
	margin: 0 0 var(--space-3);
}

.cv-pullquote footer {
	font-size: 14px;
	line-height: 1.5;
	color: var(--c-on-dark-muted);
}

.cv-bento-rating {
	grid-column: span 5;
	background-color: var(--c-citrus);
	justify-content: flex-start;
}

.cv-rating-figure {
	font-family: var(--cnvs-secondary-font);
	font-size: 62px;
	line-height: 1;
	letter-spacing: -0.025em;
	color: var(--c-ink);
	font-variant-numeric: tabular-nums;
}

.cv-rating-note {
	font-size: 14px;
	line-height: 1.45;
	color: var(--c-ink);
}

.cv-bento-review {
	grid-column: span 5;
	background-color: #FFFFFF;
	border: 1px solid var(--c-line);
}

.cv-bento-review p {
	font-size: 16px;
	line-height: 1.6;
	color: var(--c-ink);
	margin: 0;
}

.cv-bento-review span {
	font-size: 13px;
	line-height: 1.45;
	color: var(--c-muted);
}

.cv-bento-founder {
	grid-column: span 4;
	background-color: #FFFFFF;
	border: 1px solid var(--c-line);
	justify-content: flex-start;
}

.cv-founder-figure {
	margin: 0;
	width: 100%;
	border-radius: var(--radius-s);
	overflow: hidden;
	aspect-ratio: 3 / 2;
}

.cv-founder-figure img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cv-bento-founder p {
	font-size: 15px;
	line-height: 1.55;
	color: var(--c-ink);
	margin: var(--space-2) 0 0;
}

.cv-bento-founder span {
	font-size: 13px;
	color: var(--c-muted);
}

.cv-bento-count {
	grid-column: span 3;
	background-color: var(--c-ground-2);
}

.cv-count-figure {
	font-family: var(--cnvs-secondary-font);
	font-size: 62px;
	line-height: 1;
	letter-spacing: -0.025em;
	color: var(--c-ink);
	font-variant-numeric: tabular-nums;
}

.cv-count-note {
	font-size: 14px;
	line-height: 1.45;
	color: var(--c-muted);
}

.cv-form-card {
	background-color: #FFFFFF;
	border: 1px solid var(--c-line);
	border-radius: var(--radius-m);
	padding: var(--space-5);
}

.cv-form-card .form-control:where(:not(.form-select)) {
	height: 48px;
	border: 1px solid var(--c-line-soft);
	border-radius: var(--radius-s);
	background-color: var(--c-ground);
	color: var(--c-ink);
	font-family: var(--cnvs-body-font);
	font-size: var(--fs-small);
	padding: 10px 14px;
}

.cv-form-card textarea.form-control:where(:not(.form-select)) {
	height: auto;
}

.cv-form-card select.form-control:where(:not(.form-select)) {
	appearance: none;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2355625A' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	padding-right: 38px;
}

.cv-form-card .form-control:where(:not(.form-select)):focus {
	border-color: var(--c-accent);
	box-shadow: 0 0 0 2px rgba(var(--cnvs-themecolor-rgb), 0.22);
}

.cv-form-card label {
	font-family: var(--cnvs-body-font);
	font-size: 14px;
	font-weight: 600;
	color: var(--c-ink);
	margin-bottom: 6px;
}

.cv-form-card label small {
	color: var(--c-accent-ink);
}

.cv-form-note {
	font-size: 14px;
	line-height: 1.5;
	color: var(--c-muted);
	margin: var(--space-3) 0 0;
}

.cv-order-side {
	padding-left: var(--gutter);
}

.cv-order-figure {
	margin: 0 0 var(--space-4);
	border-radius: var(--radius-m);
	overflow: hidden;
	aspect-ratio: 4 / 3;
}

.cv-order-figure img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cv-detail-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.cv-detail-list li {
	display: flex;
	align-items: flex-start;
	gap: var(--space-3);
	padding: var(--space-3) 0;
	border-top: 1px solid var(--c-line);
}

.cv-detail-list li:last-child {
	border-bottom: 1px solid var(--c-line);
}

.cv-detail-list i {
	flex-shrink: 0;
	width: 20px;
	text-align: center;
	font-size: 16px;
	color: var(--c-accent-ink);
	margin-top: 2px;
}

.cv-detail-list span {
	font-size: 15px;
	line-height: 1.55;
	color: var(--c-ink);
}

.cv-detail-list strong {
	display: block;
	font-weight: 600;
}

.cv-detail-list a {
	color: var(--c-accent-ink);
	text-decoration: none;
}

.cv-detail-list a:hover {
	text-decoration: underline;
}

.cv-faq .toggle {
	border-bottom: 1px solid var(--c-line);
}

.cv-faq .toggle-header {
	padding: var(--space-4) 0;
	cursor: pointer;
}

.cv-faq .toggle-title {
	font-family: var(--cnvs-secondary-font);
	font-size: 21px;
	line-height: 1.25;
	letter-spacing: -0.012em;
	color: var(--c-ink);
}

.cv-faq .toggle-icon i {
	font-size: 18px;
	color: var(--c-accent-ink);
}

.cv-faq .toggle-content {
	font-size: 15px;
	line-height: 1.65;
	color: var(--c-muted);
	padding: 0 0 var(--space-4);
	max-width: 62ch;
}

.cv-faq-side {
	padding-top: var(--space-7);
}

.cv-faq-card {
	background-color: var(--c-ground-2);
	border: 1px solid var(--c-line);
	border-radius: var(--radius-m);
	padding: var(--space-4);
}

.cv-faq-card-title {
	font-size: 24px;
	line-height: 1.2;
	letter-spacing: -0.012em;
	margin: 0 0 var(--space-3);
}

.cv-detail-list-plain li:first-child {
	border-top: 0;
	padding-top: 0;
}

.cv-faq-card-note {
	font-size: 15px;
	line-height: 1.6;
	color: var(--c-muted);
	margin: var(--space-4) 0;
}

#footer {
	--cnvs-footer-bg: #16211A;
	background-color: #16211A;
	padding: var(--band) 0 0;
	color: var(--c-on-dark);
}

#footer .footer-widgets-wrap {
	padding: 0;
}

.cv-footer-row {
	row-gap: var(--gutter);
	margin-bottom: var(--space-6);
}

.cv-footer-row-lower {
	padding-top: var(--space-6);
	border-top: 1px solid rgba(var(--cnvs-themecolor-rgb), 0.28);
}

.cv-footer-lead {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--space-3);
}

.cv-footer-kicker {
	font-family: var(--cnvs-body-font);
	font-size: var(--fs-label);
	font-weight: 600;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: var(--c-citrus);
	margin: 0;
}

.cv-footer-closing {
	font-family: var(--cnvs-secondary-font);
	font-size: 52px;
	line-height: 1.05;
	letter-spacing: -0.022em;
	color: var(--c-on-dark);
	margin: 0;
}

.cv-btn-footer {
	margin-top: var(--space-1);
}

.cv-footer-lead-note {
	font-size: 15px;
	line-height: 1.6;
	color: var(--c-on-dark-muted);
	margin: var(--space-2) 0 0;
	max-width: 48ch;
}

.cv-status-panel {
	border: 1px solid rgba(var(--cnvs-themecolor-rgb), 0.35);
	border-radius: var(--radius-m);
	padding: var(--space-4);
	background-color: rgba(var(--cnvs-themecolor-rgb), 0.07);
	display: flex;
	flex-direction: column;
	gap: var(--space-2);
}

.cv-status-label {
	font-family: var(--cnvs-body-font);
	font-size: var(--fs-label);
	font-weight: 600;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: var(--c-citrus);
}

.cv-status-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.cv-status-list li {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: var(--space-3);
	padding: 9px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.cv-status-list li:last-child {
	border-bottom: 0;
}

.cv-status-list li span:first-child {
	font-family: var(--cnvs-body-font);
	font-size: 14px;
	font-weight: 600;
	color: var(--c-on-dark);
}

.cv-status-list li span:last-child {
	font-size: 14px;
	color: var(--c-on-dark-muted);
	text-align: right;
}

.cv-status-window {
	font-size: 13px;
	font-weight: 600;
	color: var(--c-on-dark);
	margin-top: var(--space-2);
}

.cv-footer-heading {
	font-family: var(--cnvs-body-font);
	font-size: var(--fs-label);
	font-weight: 600;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: var(--c-citrus);
	margin: 0 0 var(--space-3);
}

.cv-footer-links ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.cv-footer-links li {
	padding: 7px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.cv-footer-links li:last-child {
	border-bottom: 0;
}

#footer .cv-footer-links a {
	color: var(--c-on-dark);
	font-size: 15px;
	text-decoration: none;
	transition: color 150ms var(--ease-out);
}

#footer .cv-footer-links a:hover {
	color: var(--c-citrus);
}

.cv-footer-contact-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.cv-footer-contact-list li {
	display: flex;
	align-items: flex-start;
	gap: var(--space-3);
	padding: var(--space-2) 0;
}

.cv-footer-contact-list i {
	flex-shrink: 0;
	width: 20px;
	text-align: center;
	font-size: 16px;
	color: var(--c-citrus);
	margin-top: 3px;
}

.cv-footer-contact-list span {
	font-size: 15px;
	line-height: 1.55;
	color: var(--c-on-dark-muted);
}

#footer .cv-footer-contact-list a {
	color: var(--c-on-dark);
	text-decoration: none;
}

#footer .cv-footer-contact-list a:hover {
	color: var(--c-citrus);
}

.cv-footer-social {
	display: flex;
	gap: var(--space-2);
	margin-top: var(--space-3);
}

.cv-footer-social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 50%;
	color: var(--c-on-dark);
	font-size: 16px;
	text-decoration: none;
	transition: background-color 150ms var(--ease-out), border-color 150ms var(--ease-out), color 150ms var(--ease-out);
}

.cv-footer-social a:hover {
	background-color: var(--c-accent);
	border-color: var(--c-accent);
	color: #FFFFFF;
}

.cv-footer-phone {
	display: flex;
	flex-direction: column;
	gap: var(--space-2);
}

.cv-footer-phone-number {
	font-family: var(--cnvs-secondary-font);
	font-size: 38px;
	line-height: 1.1;
	letter-spacing: -0.022em;
	color: var(--c-on-dark);
	text-decoration: none;
	transition: color 150ms var(--ease-out);
}

.cv-footer-phone-number:hover {
	color: var(--c-citrus);
}

.cv-footer-phone-note {
	font-size: 14px;
	line-height: 1.55;
	color: var(--c-on-dark-muted);
	margin: 0;
	max-width: 40ch;
}

.cv-footer-ledger-list {
	list-style: none;
	margin: var(--space-2) 0 0;
	padding: 0;
}

.cv-footer-ledger-list li {
	display: flex;
	align-items: baseline;
	gap: var(--space-3);
	padding: 8px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.cv-footer-ledger-list li:last-child {
	border-bottom: 0;
}

.cv-footer-ledger-list li span:first-child {
	flex-shrink: 0;
	min-width: 62px;
	font-family: var(--cnvs-secondary-font);
	font-size: 20px;
	line-height: 1.2;
	color: var(--c-citrus);
	font-variant-numeric: tabular-nums;
}

.cv-footer-ledger-list li span:last-child {
	font-size: 14px;
	line-height: 1.5;
	color: var(--c-on-dark-muted);
}

#copyrights {
	background-color: #0F1812;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	padding: var(--space-3) 0;
}

.cv-copyright-row {
	row-gap: var(--space-3);
}

.cv-copyright-text {
	font-size: 14px;
	line-height: 1.5;
	color: #B9C3BC;
}

#copyrights a {
	color: var(--c-on-dark);
	text-decoration: underline;
	font-weight: 600;
}

#copyrights a:hover {
	color: var(--c-citrus);
}

@media (max-width: 1199.98px) {
	.cv-bento-quote { grid-column: span 12; grid-row: span 1; }
	.cv-bento-rating,
	.cv-bento-review { grid-column: span 6; }
	.cv-bento-founder { grid-column: span 6; }
	.cv-bento-count { grid-column: span 6; }
	.cv-footer-closing { font-size: 44px; }
}

@media (max-width: 991.98px) {
	:root {
		--band: 64px;
		--band-compact: 40px;
		--gutter: 16px;
		--fs-display: 54px;
		--fs-h1: 40px;
		--fs-h2: 32px;
		--fs-h3: 24px;
		--fs-lead: 18px;
		--fs-body: 16px;
	}

	.cv-hero {
		padding-top: var(--space-6);
	}

	.cv-hero-caption {
		left: var(--space-4);
	}

	.cv-menu-col,
	.cv-ing-copy,
	.cv-order-side {
		padding-left: 0;
		padding-right: 0;
	}

	.cv-order-col {
		position: static;
		margin-top: var(--gutter);
	}

	.cv-ing-inset {
		right: var(--space-3);
		bottom: calc(var(--space-3) * -1);
	}

	.cx-steps {
		grid-template-columns: minmax(0, 1fr);
	}

	.cv-seasonal-grid {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			"photo-left"
			"copy"
			"photo-right";
	}

	.cv-seasonal-photo {
		min-height: 220px;
	}

	.cv-bento-rating,
	.cv-bento-review,
	.cv-bento-founder,
	.cv-bento-count {
		grid-column: span 12;
	}

	.cv-faq-side {
		padding-top: var(--gutter);
	}

	.cv-footer-closing {
		font-size: 38px;
	}

	.cv-footer-phone-number {
		font-size: 32px;
	}
}

@media (max-width: 767.98px) {
	.cv-stat-row {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--space-3);
	}

	.cv-stat-row li {
		flex-direction: row;
		align-items: baseline;
		gap: var(--space-3);
	}

	.cv-stat-row strong {
		font-size: 24px;
		min-width: 74px;
	}

	.cv-ing-list li {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--space-1);
	}

	.cv-hero-actions {
		gap: var(--space-3);
	}

	.cv-pullquote p {
		font-size: 24px;
	}
}

@media (max-width: 575.98px) {
	.cv-hero-caption {
		position: static;
		transform: none;
		max-width: none;
		margin-top: var(--space-3);
	}

	.cv-hero-figure {
		aspect-ratio: 3 / 4;
	}

	.cv-menu-row {
		flex-direction: row;
		align-items: baseline;
	}

	.cv-menu-price {
		font-size: 20px;
	}

	.cv-total-value {
		font-size: 28px;
	}

	.cv-footer-closing {
		font-size: 32px;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.001ms !important;
		scroll-behavior: auto !important;
	}
}

html body #header-wrap a.button:not(:hover):not(:focus-visible) { color: #16211a; }
html body #home a.button:not(:hover):not(:focus-visible) { color: #16211a; }
html body #cv-menu-list > div:nth-of-type(1) > div:nth-of-type(1) > p:nth-of-type(1) { color: #646e68; }
html body #cv-menu-list > div:nth-of-type(1) > div:nth-of-type(1) > p:nth-of-type(2) > span:nth-of-type(1) { color: #646e68; }
html body #cv-menu-list > div:nth-of-type(1) > div:nth-of-type(1) > p:nth-of-type(2) > span:nth-of-type(2) { color: #646e68; }
html body #cv-menu-list > div:nth-of-type(1) > div:nth-of-type(1) > p:nth-of-type(2) > span:nth-of-type(3) { color: #646e68; }
html body #cv-menu-list > div:nth-of-type(4) > div:nth-of-type(1) > p:nth-of-type(1) { color: #646e68; }
html body #cv-menu-list > div:nth-of-type(4) > div:nth-of-type(1) > p:nth-of-type(2) > span:nth-of-type(1) { color: #646e68; }
html body #cv-menu-list > div:nth-of-type(4) > div:nth-of-type(1) > p:nth-of-type(2) > span:nth-of-type(2) { color: #646e68; }
html body #cv-menu-list > div:nth-of-type(4) > div:nth-of-type(1) > p:nth-of-type(2) > span:nth-of-type(3) { color: #646e68; }
html body #menu a.button:not(:hover):not(:focus-visible) { color: #16211a; }
html body #cv-order-form button.button:not(:hover):not(:focus-visible) { color: #16211a; }
html body #order > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(2) > ul:nth-of-type(1) > li:nth-of-type(3) > span:nth-of-type(1) > a:nth-of-type(1) { color: #8c380b; }
html body #faq > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(2) > div:nth-of-type(1) > ul:nth-of-type(1) > li:nth-of-type(3) > span:nth-of-type(1) > a:nth-of-type(1) { color: #b6490f; }
html body #footer a.button:not(:hover):not(:focus-visible) { color: #16211a; }

@media (min-width: 576px) { .cv-hero-row { --bs-gutter-x: var(--gutter); } }
@media (min-width: 576px) { .cv-tiles { --bs-gutter-x: var(--gutter); } }
@media (min-width: 576px) { .cv-footer-row { --bs-gutter-x: var(--gutter); } }
@media (min-width: 576px) { .cv-copyright-row { --bs-gutter-x: var(--space-3); } }

@media (min-width: 992px) { .row > [class*=col-].cv-order-col { position: sticky; top: calc(var(--space-5) + 40px); align-self: flex-start; } :is(.content-wrap, .section):has(.cv-order-col) { overflow-x: clip; overflow-y: visible; } }

@media (max-width: 991.98px) { #header .header-row, #header #header-wrap .header-row { flex-wrap: wrap; row-gap: 0; } }

:where(img[width][height]){height:auto}

:is(.content-wrap,.section):has([data-cx]){overflow-x:clip;overflow-y:visible}

:where(:has(> .cb-deco)){position:relative;isolation:isolate}

.cb-deco{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;--d1:var(--deco-1,var(--cnvs-themecolor,#e8590c));--d2:var(--deco-2,var(--d1));--d3:var(--deco-3,var(--d2))}

@keyframes cb-deco-drift{from{transform:translate3d(0,0,0) rotate(var(--r,0deg))}to{transform:translate3d(0,-10px,0) rotate(var(--r,0deg))}}

@keyframes cb-deco-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}

@keyframes cb-deco-twinkle{0%,100%{transform:scale(.82);opacity:.55}50%{transform:scale(1);opacity:1}}

@keyframes cb-deco-under{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}

@media (prefers-reduced-motion:reduce){.cb-deco,.cb-deco *,.cb-deco::before,.cb-deco::after,.cb-squiggle::after{animation:none!important}}

.cb-deco[data-deco=confetti]::before,.cb-deco[data-deco=confetti]::after{content:"";position:absolute;inset:-4%;background-repeat:no-repeat;animation:cb-deco-drift 9s ease-in-out infinite alternate}

.cb-deco[data-deco=confetti]::before{--r:-14deg;background-image:linear-gradient(var(--d1),var(--d1)),linear-gradient(var(--d2),var(--d2)),linear-gradient(var(--d3),var(--d3)),linear-gradient(var(--d1),var(--d1)),linear-gradient(var(--d2),var(--d2)),linear-gradient(var(--d3),var(--d3));background-size:12px 5px,9px 4px,12px 5px,10px 4px,12px 5px,9px 4px;background-position:6% 16%,13% 70%,3% 44%,92% 12%,96% 56%,87% 86%}

.cb-deco[data-deco=confetti]::after{animation-duration:12s;animation-direction:alternate-reverse;background-image:radial-gradient(circle,var(--d2) 0 3px,transparent 3.5px),radial-gradient(circle,var(--d1) 0 2.5px,transparent 3px),radial-gradient(circle,var(--d3) 0 3px,transparent 3.5px),radial-gradient(circle,var(--d1) 0 2px,transparent 2.5px),radial-gradient(circle,transparent 0 3px,var(--d2) 3.5px 5px,transparent 5.5px),radial-gradient(circle,transparent 0 3px,var(--d3) 3.5px 5px,transparent 5.5px);background-size:12px 12px;background-position:9% 30%,17% 90%,90% 34%,97% 78%,81% 8%,5% 92%}

@media (max-width:767.98px){.cb-deco[data-deco=confetti]::after{display:none}.cb-deco[data-deco=confetti]::before{opacity:.7}}

.cb-squiggle{position:relative;display:inline-block;white-space:nowrap}

.cb-squiggle::after{content:"";position:absolute;left:-2%;right:-2%;bottom:-.14em;height:.24em;background:var(--deco-1,var(--cnvs-themecolor,#e8590c));-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 12' preserveAspectRatio='none'%3E%3Cpath d='M2 8c10-7 18-7 28 0s18 7 28 0 18-7 28 0 18 7 30-1' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 12' preserveAspectRatio='none'%3E%3Cpath d='M2 8c10-7 18-7 28 0s18 7 28 0 18-7 28 0 18 7 30-1' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 100% no-repeat;animation:cb-deco-under .9s cubic-bezier(.65,0,.35,1) .4s both;pointer-events:none}

.content-wrap {
	padding-top: 0;
	padding-bottom: 0;
}

.section {
	margin-top: 0;
	margin-bottom: 0;
}

.cv-form-card .cv-btn[type="submit"] { background-color: var(--c-accent-ink); border-color: var(--c-accent-ink); }
.cv-form-card .cv-btn[type="submit"]:hover,
.cv-form-card .cv-btn[type="submit"]:focus { background-color: #A8430E; border-color: #A8430E; }
.cv-hero-caption { background-color: var(--c-accent-ink); }
.cv-h1 > span.cb-squiggle:not(.nocolor):not(.badge) { color: #E0601A; }
.cv-detail-list li > span > a:not(.btn-link):not(.text-decoration-underline) { text-decoration: underline !important; text-underline-offset: 0.2em; }
#footer .cv-footer-contact-list a { text-decoration: underline !important; text-underline-offset: 0.2em; }
}
