.Form,
fieldset,
.Form fieldset {
	margin: 0;
	padding: 0;
	border: 0;
	box-sizing: border-box;
}
.Form label {
	display: block;
	box-sizing: border-box;
	/* font-family: "hhAgendaBold", sans-serif; */
	font-family: "hhAgendaMedium", sans-serif;
	margin: 0;
	padding: 0;
	/* line-height: 100%; */
	margin-bottom: calc(var(--gap) / 3) !important;
	cursor: pointer;
	line-height: 1.2;
}
.Form label small {
	display: block;
	font-family: "hhAgendaMedium", sans-serif;
	font-size: inherit;
	opacity: .5;
}
.Form input[type='radio'] {
	accent-color: #000000;
	transform: scale(1.6);
}
.Form input:not([type='radio']):not([type='checkbox']):not([type='range']), .Form textarea, .Form select {
	-webkit-appearance: none;
	appearance: none;
	display: block;
	font: inherit;
	box-sizing: border-box;
	width: 100%;
	/* width: calc(attr(size) * 1ch); */ /* COMMENTED OUT 02/11/2025 DUE TO ISSUE DISPLAYING IN PREPROD & PROD */
	max-width: 100%;
	margin: 0;
	padding: .5em;
	border-radius: 6px;
	border: 1px solid #54585A;
}
.Form input.InputWide,
.Form select.InputWide,
.Form textarea.InputWide {
	width: 100%;
}
.Form.Big input {
	font-size: 1.5rem !important;
}
.Form.Big button {
	font-size: 1.25rem;
	padding-inline: calc(var(--gap) * 3);
}
select {
	cursor: pointer;
}
.Form select {
	min-width: 3.5rem;
	background: #fff url(/_icons/icon-chevron-down.black.svg) no-repeat calc(100% - 0.5em) center/0.8em;
	/* background-size: 1rem; */
	padding-right: calc(var(--gap) * 1) !important;
	color: var(--hh-black);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.Form > fieldset {
	padding-bottom: var(--gap)
}

.Form fieldset.FormFlex {
	display: flex;
	column-gap: calc(var(--gap) * 1);
	row-gap: var(--gap);
	flex-wrap: wrap;
}
.Form fieldset.FormFlex.FormFlexCentered {
	justify-content: center;
}

.Form .RadioFlex {
	display: flex;
	column-gap: calc(var(--gap) * 1.5);
	/* padding-bottom: 0; */
}
.Form .RadioFlex label {
	display: grid !important;
	grid-template-columns: auto 1fr;
	column-gap: calc(var(--gap) / 2);
	align-items: center;
	padding-bottom: calc(var(--gap) / 2);
	margin-left: 0 !important;
	cursor: pointer;
}
.Form .RadioFlex input[type="radio"] {
	transform: scale(1.2) !important;
}

@media (max-width: 700px) {
	.Form fieldset.MobileGrow {
		flex-grow: 1;
	}
}

input[type="range"] {
	all: unset;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	box-sizing: border-box;
	width: 100%;
	height: 12px;
	border-radius: 6px;
	background: var(--hh-grey);
	outline: none;
	border: none;
	margin: 0;
}
input[type="range"]:focus {
	outline: none;
}
input[type="range"]::-webkit-slider-runnable-track {
	border: none;
}
input[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--hh-red);
	border: none;
	cursor: pointer;
}
input[type="range"]::-moz-range-track {
	order: none;
}

input[type="range"]::-moz-range-thumb {
	-moz-appearance: none;
	appearance: none;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--hh-red);
	border: none;
	cursor: pointer;
}
input[type="range"]::-ms-track {
	width: 100%;
	height: 12px;
	border-radius: 6px;
	background: var(--hh-grey);
	border: none;
	color: transparent;
	background: transparent;
	box-shadow: none;
	border-color: transparent;
}
input[type="range"]::-ms-thumb {
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--hh-red);
	border: none;
	cursor: pointer;
}
input[type="range"]:focus::-ms-thumb {
	background: var(--hh-red);
}
#markers {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}







.Form fieldset.Quantity {
	display: inline-grid;
	grid-auto-flow: column;
	border: 1px solid #000000;
	padding: .55em 1em !important;
	border-radius: 2em;
	overflow: hidden;
	margin-bottom: var(--gap);

}
.Form fieldset.Quantity > * {
	display: block;
	font: inherit;
	box-sizing: border-box;
	margin: 0;
	padding: 0 !important;
	border-radius: 0;
	border: none !important;
	background: transparent;
	text-align: center;
}
.Form fieldset.Quantity > input {
	padding-inline: .5em !important;
}



.Form .FormSearchCombo {
	display: grid;
	grid-template-columns: 1fr auto;
	border: 1px solid #000;
	padding: 0;
	border-radius: 2em;
	overflow: hidden;
	border: 1px solid #000;
	padding-right: .5em;
}
.Form .FormSearchCombo > label {
	display: none;
}
.Form .FormSearchCombo > input {
	padding: .55em 1.5em;
	border: 0;
	line-height: 100%;
}
.Form .FormSearchCombo > input:focus {
	outline: none;
}


.FormColumns {
	display: grid;
	column-gap: calc(var(--gap) / 1.5);
	justify-content: space-between;
	grid-template-columns: repeat(2, 1fr);
}
.FormColumns > fieldset {
	flex-grow: 1;
}
fieldset > fieldset {
	padding: 0 !important;
}
fieldset + label {
	padding-block: calc(var(--gap) / 2) !important;
}
.Form label {
	display: block;
	box-sizing: border-box;
	font-family: "hhAgendaMedium", sans-serif;
	margin: 0;
	padding: 0;
}
fieldset > label:has(button) {
	display: flex !important;
	justify-content: space-between;
}
hgroup + .Form {
	padding-top: var(--gap);
}
input[type="checkbox"] {
	padding: 0 !important;
	flex-shrink: 0;
}
.Invalid input[type="text"],
.Invalid input[type="email"],
.Invalid input[type="tel"],
.Invalid input[type="password"],
.Invalid textarea,
.Invalid select,
.Invalid > select,
.Invalid {
	border-color: var(--hh-red) !important;
}
/* .Form fieldset.Invalid label:not(input[type="checkbox"]), */
.Form fieldset.Invalid small {
	display: block;
}
.ErrorNote,
small span.ErrorNote,
.Form small.ErrorNote {
	color: var(--hh-red);
}
.Invalid .Error {
	display: block;
	color: var(--hh-red);
}
.Form small {
	font-size: 0.875rem;
	line-height: 1;
	display: block;
	padding-top: 0.75em;
}
.Form.Compact {
	max-width: 32rem;
}
.Form input[type=radio] {
	margin: calc(var(--gap) / 4);
	aspect-ratio: 1 / 1;
}


.FormChecklist {
	border: 0;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	text-transform: capitalize;
	/** gap: var(--gap) **/
}
html[lang=fr] .FormChecklist {
	text-transform: inherit !important;
}
.FormChecklist label{
	display: flex;
	align-items: center;
	column-gap: calc(var(--gap) * 0.5);
}
.FormChecklist input[type="checkbox"], 
.FormChecklist input[type="radio"] {
	/* margin-right: calc(var(--gap) * 0.875); */
	border-radius: 0;
}
.FormChecklist.FormColumns {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: calc(var(--gap) / 1.5);
	padding-block: calc(var(--gap) / 2) !important;
}
.FormChecklist.FormColumns > label {
	margin-bottom: 0 !important;
}
#form_qualified_trade_pro_contact .FormChecklist.FormColumns + fieldset,
#form_qualified_trade_pro_contact .FormChecklist.FormColumns + .ErrorNote + fieldset {
	padding-top: var(--gap) !important;
}
#form_qualified_trade_pro_contact .RadioFlex label {
	padding: 0 !important;
	margin: 0 !important;
}
hh-panel .FormChecklist label {
	/* margin-top: var(--gap); */
	align-items: center;
	cursor: pointer;
}
hh-panel .FormChecklist label:first-of-type {
    margin-top: var(--gap);
}
hh-panel .FormChecklist input[type="checkbox"],
hh-panel .FormChecklist input[type="radio"] {
	-webkit-appearance: none;
	appearance: none;
	background-color: none;
	border: 1px solid black;
	border-radius: 3px;
	display: inline-block;
	width: 1.125em;
	height: 1.125em;
	/* transform: translateY(-0.125em); */
	transform: translateY(0.125em);
	cursor: pointer;
	padding: 0;
	margin: 0;
	font-size: inherit;
	aspect-ratio: 1 / 1;
	flex-shrink: 0;
}
hh-panel .FormChecklist input[type="checkbox"]:checked,
hh-panel .FormChecklist input[type="radio"]:checked {
	background-color: var(--hh-black);
	border: 1px solid var(--hh-black);
	color: var(--hh-black);
}
hh-panel .FormChecklist input[type="checkbox"]:checked:after,
hh-panel .FormChecklist input[type="radio"]:checked:after {
	content: url('/_icons/icon-checkmark.white.svg');
}
hh-panel label + label:not(.FormChecklist label) {
	margin-left: var(--gap);
}

input[readonly] {
    cursor: not-allowed;
    color: var(--hh-dark-grey);
    background: var(--hh-grey);
}

label:has(input[type="radio"]),
label:has(input[type="checkbox"]) {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	cursor: pointer;
	column-gap: calc(var(--gap) * 0.5);
	max-width: fit-content;
}
label:has(input[type="checkbox"]) {
	align-items: flex-start !important;
}
label:has(input[type="radio"]):not(.RadioCheck) {
	align-items: center !important;
}

/* CHECKBOX GLOBAL STYLES */
input[type="checkbox"] {
	-webkit-appearance: none;
	appearance: none;
	background-color: var(--hh-white);
	border: 1px solid black !important;
	border-radius: 3px !important;
	display: inline-block;
	width: 1.125em;
	height: 1.125em;
	margin: 0;
	/* transform: translateY(-0.125em); */
	cursor: pointer;
	aspect-ratio: 1 / 1;
	font-size: inherit;
}
input[type="checkbox"]:checked {
	background-color: var(--hh-black);
	border: 1px solid var(--hh-black);
	color: var(--hh-black);
}
input[type="checkbox"]:checked:after {
	content: url('/_icons/icon-checkmark.white.svg');
}
/* label + label:not(.FormChecklist label) {
	margin-left: var(--gap);
} */

/* RADIO BUTTON GLOBAL STYLES */
input[type="radio"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font: inherit;
	display: inline-block;
	width: 1rem;
	height: 1rem;
	padding: 0;
	margin: 0;
	border: 1px solid var(--hh-black);
	border-radius: 50%;
	background-color: var(--hh-white);
	position: relative;
	cursor: pointer;
	transform: scale(1.2) !important;
}
hh-panel input[type="radio"] {
	transform: scale(1.2) translateY(calc(var(--gap) / 8)) !important;
}
input[type="radio"]:before {
	content: "";
	display: block;
	width: 0.625rem;
	height: 0.625rem;
	background-color: transparent;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) translateZ(0);
	transition: scale 0.25s cubic-bezier(0.68, -0.55, 0.27, 1.55);
	transform-origin: 0 0 ;
	scale: 0;
}
input[type="radio"]:checked {
	border-color: var(--hh-black);
}
input[type="radio"]:checked::before {
	background-color: var(--hh-black);
	scale: 1;
}

/* RADIO BUTTON TOGGLE STYLES */
input.Toggle {
	background: none;
	display: inline-block;
	height: 1.5rem; /* 24px */
	width: 3rem;
	background: #9EA2A2;
	border-radius: 1rem !important;
	border: none !important;
	cursor: pointer;
	position: relative;
	transition: background 0.3s ease-in-out, border-color 0.3s ease-in-out;
	transform: translateZ(0);
	appearance: none;
}
input.Toggle > * {
/* 	display: none; */
}
input.Toggle::before {
	content: '';
	position: absolute;
	height: 1.125rem;
	width: 1.125rem;
	background-color: #ffffff;
	border-radius: 50%;
	transition: all 0.3s cubic-bezier(0.68, -0.55, 0.27, 1.55);
	left: 0.1875rem;
	top: 0.1875rem;
}
input.Toggle:checked {
	background: #02873c;
}
input.Toggle:checked:before {
	background: #ffffff;
	transform: translateX(1.5rem);
}
input.Toggle:checked:after,
input.Toggle:checked:after {
	content: none !important;
}
label:has(input.Toggle) {
    display: flex;
    align-items: center !important;
	column-gap: calc(var(--gap) / 2);
}


/* RADIO CHECKBOX STYLES */
label.RadioCheck {
	display: flex !important;
	gap: calc(var(--gap) / 4);
	align-items: start !important;
	margin: calc(var(--gap) / 3) 0 0 0 !important;
}
.RadioCheck > input[type="radio"] {
	-webkit-appearance: none;
	appearance: none;
	background-color: var(--hh-white);
	border: 1px solid black !important;
	border-radius: 3px !important;
	/* display: inline-block; */
	cursor: pointer;
	aspect-ratio: 1 / 1;
	font-size: inherit;
	/* transform: translateY(-0.125em) !important; */
	margin: 0 !important;
}
.RadioCheck > input[type="radio"]:checked {
	background-color: var(--hh-black);
	border: 1px solid var(--hh-black);
	color: var(--hh-black);
}
.RadioCheck > input[type="radio"]:checked:after {
	content: url('/_icons/icon-checkmark.white.svg');
}
.RadioCheck > input[type="radio"]:checked::before {
	/* background-color: transparent;
	scale: 0; */
	display: none;
}
@media (max-width: 700px) {
	label.RadioCheck {
		margin: calc(var(--gap) / 2) 0 0 0 !important;
	}
}


/* WEBSITE FORMS
-------------------------------------------------- */
.Tint:has(.ProgramSupport),
.Tint:has(.corporateGiftCards) {
	margin-bottom: var(--gap);
	box-shadow: none;
	clip-path: none;
	padding: var(--gap);
}
.ProgramSupport {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: calc(var(--gap) / 2) var(--gap);
}
.ProgramSupport label {
	grid-column: 1/-1;
}
.ProgramSupport p {
	padding-block: calc(var(--gap) / 4) 0;
}
.ProgramSupportStore {
	display: flex;
	flex-direction: column;
	gap: calc(var(--gap) / 3);
	background: var(--hh-white);
	border: 1px solid #54585A !important;
	border-radius: 6px;
	margin-top: var(--gap) !important;
	padding: calc(var(--gap) / 2) !important;
}
.ProgramSupportStore label {
	margin-bottom: 0 !important;
}
form.UltraNarrow,
.Form.UltraNarrow {
	margin-top: calc(var(--gap) * 2);
	margin-inline: auto;
}
form.UltraNarrow > fieldset > legend {
	font-family: 'hhAgendaBold';
	margin-bottom: calc(var(--gap) / 4);
	display: block;
}
.UltraNarrow .Form .ButtonGroup {
	width: 100% !important;
}
input[type="date"] {
	cursor: pointer;
	padding-right: calc(var(--gap) * 2);
	background: var(--hh-white) url(/_icons/icon-chevron-down.black.svg) no-repeat calc(100% - 0.5em) center/0.8em;
	/* background-size: 1rem; */
}
.formSuccessBlock {
	padding-block: calc(var(--gap) * 2);
}
.formSuccessBlock > .ButtonGroup {
	padding-block: calc(var(--gap)/2);
}
.formSuccessBlock > * {
	color: var(--hh-black);
}


/* SIGNED UP CONFIRMATION BLOCK */
.SignedUp {
	padding-bottom: calc(var(--gap) * 2);
}
.SignedUp > section {
	container: SignedUpContainer / inline-size;
	padding: calc(var(--gap) * 2) var(--gap);
}
.SignedUp > section:not(.Unsubscribe) {
	background-color: var(--hh-light-grey);
	border-top: 1px solid var(--hh-medium-grey);
}
.SignedUp > h2 {
	padding-bottom: calc(var(--gap) / 2);
}
.SignedUp > .ButtonGroup {
	justify-content: center;
	padding-top: var(--gap);
}
.SignedUp > section > div {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	/* grid-template-rows: repeat(3, minmax(min-content, auto)); */
	max-width: 60%;
	margin: var(--gap) auto 0;
}
.SignedUp > section > div > div {
	display: grid;
	grid-row: auto/span 3;
	grid-template-rows: subgrid;
	gap: calc(var(--gap) / 2)
}
.SignedUp > section > div > div:not(:last-child) {
	border-right: 1px solid grey;
	padding-right: calc(var(--gap) * 2);
}
.SignedUp > section > div > div:last-child {
	padding-left: calc(var(--gap) * 2);
}
.SignedUp > section > div > div > *:first-child {
	align-content: flex-end;
}
.SignedUp > section > div > div > *:nth-of-type(2) {
	margin: 0;
	padding: 0;
}
.SignedUp > section > div > div > .SceneLogo {
	padding: 0;
	width: auto;
	height: 1.5em;
}
.SignedUp > section > div > div > button {
	grid-row: auto;
}
@container SignedUpContainer (inline-size < 1200px) {
	.SignedUp > section > div {
		max-width: 75%;
	}
}
@container SignedUpContainer (inline-size < 900px) {
	.SignedUp > section > div {
		max-width: 85%;
	}
}
@container SignedUpContainer (inline-size < 767px) {
	.SignedUp > section > div {
		max-width: 100%;
		grid-template-columns: 1fr;
		row-gap: calc(var(--gap) * 2);
	}
	.SignedUp > section > div > div:not(:last-child) {
		border-right: 0;
		padding-right: 0;
	}
	.SignedUp > section > div > div:last-child {
		padding-left: 0;
	}
	.SignedUp > section > div > div > button {
		justify-self: center;
	}
}



/* OLD RANGE SLIDER CSS - NOW DEPRECATED */
/* .Form input[type="range"] {
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}
.Form input[type=range] {
  --range: calc(var(--max) - var(--min));
  --ratio: calc((var(--value) - var(--min)) / var(--range));
  --sx: calc(0.5 * 18px + var(--ratio) * (100% - 18px));
}
.Form input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 18px;
  height: 18px;
  border-radius: 1em;
  background: #9ea2a2;
  border: none;
  margin-top: calc(max((8px - 2px - 2px) * 0.5,0px) - 18px * 0.5);
}
.Form input[type=range]::-webkit-slider-runnable-track {
  height: 8px;
  border: 2px solid #e6e7e8;
  border-radius: 5px;
  background: #ffffff;
  box-shadow: none;
}
.Form input[type=range]:hover::-webkit-slider-runnable-track {
  border-color: #e6e7e8;
}
.Form input[type=range]::-webkit-slider-runnable-track {
  background: linear-gradient(#E6E7E8,#E6E7E8) 0/var(--sx) 100% no-repeat, #ffffff;
}
.Form input[type=range]::-moz-range-thumb {
  width: 18px;
  height: 18px;
  border-radius: 1em;
  background: #9ea2a2;
  border: none;
}
.Form input[type=range]::-moz-range-track {
  height: max(calc(8px - 2px - 2px),0px);
  border: 2px solid #e6e7e8;
  border-radius: 5px;
  background: #ffffff;
  box-shadow: none;
}
.Form input[type=range]:hover::-moz-range-track {
  border-color: #e6e7e8;
}
.Form input[type=range]::-moz-range-track {
  background: #e6e7e8;
}
.Form input[type=range]::-ms-fill-upper {
  background: transparent;
  border-color: transparent;
}
.Form input[type=range]::-ms-fill-lower {
  background: transparent;
  border-color: transparent;
}
.Form input[type=range]::-ms-thumb {
  width: 18px;
  height: 18px;
  border-radius: 1em;
  background: #9ea2a2;
  border: none;
  margin-top: 0;
  box-sizing: border-box;
}
.Form input[type=range]::-ms-track {
  height: 8px;
  border-radius: 5px;
  background: #ffffff;
  border: 2px solid #e6e7e8;
  box-shadow: none;
  box-sizing: border-box;
}
.Form input[type=range]:hover::-ms-track {
  border-color: #e6e7e8;
}
.Form input[type=range]::-ms-fill-lower {
  height: max(calc(8px - 2px - 2px),0px);
  border-radius: 5px 0 0 5px;
  margin: -2px 0 -2px -2px;
  background: #e6e7e8;
  border: 2px solid #e6e7e8;
  border-right-width: 0;
} */