/* fonts.css */
:root {
	--fnt-t: 'Anton', sans-serif;
	--fnt-m: 'Inter', sans-serif;

	--fnt-t-big-ff: var(--fnt-t); /* { friendly: 'Title Big (Display) Font Family' } */
	--fnt-t-big-ls: 0.03em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Title Big (Display) Letter Spacing' } */
	--fnt-t-big-w: 400; /* { friendly: 'Title Big (Display) Font Weight' } */
	--fnt-t-big-tt: uppercase; /* { friendly: 'Title Big (Display) Case' } */
	--fnt-t-big-fs: normal; /* { friendly: 'Title Big Font Style' } */

	--fnt-t-co-ff: var(--fnt-t); /* { friendly: 'Callout Font Family' } */
	--fnt-t-co-ls: 0.03em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Callout Letter Spacing' } */
	--fnt-t-co-w: 400; /* { friendly: 'Callout Font Weight' } */
	--fnt-t-co-tt: uppercase; /* { friendly: 'Callout Case' } */
	--fnt-t-co-fs: normal; /* { friendly: 'Callout Font Style' } */

	--fnt-t-k-ff: var(--fnt-m); /* { friendly: 'Kicker Font Family' } */
	--fnt-t-k-ls: 0.1em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Kicker Letter Spacing' } */
	--fnt-t-k-w: 700; /* { friendly: 'Kicker Font Weight' } */
	--fnt-t-k-tt: uppercase; /* { friendly: 'Kicker Case' } */
	--fnt-t-k-fs: normal; /* { friendly: 'Kicker Font Style' } */

	--fnt-t-1-ff: var(--fnt-t); /* { friendly: 'Title 1 (h1) Font Family' } */
	--fnt-t-1-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Title 1 (h1) Letter Spacing' } */
	--fnt-t-1-w: 700; /* { friendly: 'Title 1 (h1) Font Weight' } */
	--fnt-t-1-tt: none; /* { friendly: 'Title 1 (h1) Case' } */
	--fnt-t-1-fs: normal; /* { friendly: 'Title 1 Font Style' } */

	--fnt-t-2-ff: var(--fnt-m); /* { friendly: 'Title 2 (h2) Font Family' } */
	--fnt-t-2-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Title 2 (h2) Letter Spacing' } */
	--fnt-t-2-w: 700; /* { friendly: 'Title 2 (h2) Font Weight' } */
	--fnt-t-2-tt: none; /* { friendly: 'Title 2 (h2) Case' } */
	--fnt-t-2-fs: normal; /* { friendly: 'Title 2 Font Style' } */

	--fnt-t-3-ff: var(--fnt-m); /* { friendly: 'Title 3 (h3) Font Family' } */
	--fnt-t-3-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Title 3 (h3) Letter Spacing' } */
	--fnt-t-3-w: 700; /* { friendly: 'Title 3 (h3) Font Weight' } */
	--fnt-t-3-tt: none; /* { friendly: 'Title 3 (h3) Case' } */
	--fnt-t-3-fs: normal; /* { friendly: 'Title 3 Font Style' } */

	--fnt-t-4-ff: var(--fnt-m); /* { friendly: 'Title 4 (h4) Font Family' } */
	--fnt-t-4-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Title 4 (h4) Letter Spacing' } */
	--fnt-t-4-w: 700; /* { friendly: 'Title 4 (h4) Font Weight' } */
	--fnt-t-4-tt: none; /* { friendly: 'Title 4 (h4) Case' } */
	--fnt-t-4-fs: normal; /* { friendly: 'Title 4 Font Style' } */

	--fnt-t-5-ff: var(--fnt-m); /* { friendly: 'Title 5 (h5) Font Family' } */
	--fnt-t-5-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Title 5 (h5) Letter Spacing' } */
	--fnt-t-5-w: 700; /* { friendly: 'Title 5 (h5) Font Weight' } */
	--fnt-t-5-tt: none; /* { friendly: 'Title 5 (h5) Case' } */
	--fnt-t-5-fs: normal; /* { friendly: 'Title 5 Font Style' } */

	--fnt-t-6-ff: var(--fnt-m); /* { friendly: 'Title 6 (h6) Font Family' } */
	--fnt-t-6-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Title 6 (h6) Letter Spacing' } */
	--fnt-t-6-w: 700; /* { friendly: 'Title 6 (h6) Font Weight' } */
	--fnt-t-6-tt: none; /* { friendly: 'Title 6 (h6) Case' } */
	--fnt-t-6-fs: normal; /* { friendly: 'Title 6 Font Style' } */

	--fnt-nv-pry-ff: var(--fnt-m); /* { friendly: 'Primary Nav Link Font Family' } */
	--fnt-nv-pry-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Primary Nav Link Letter Spacing' } */
	--fnt-nv-pry-w: 700; /* { friendly: 'Primary Nav Link Font Weight' } */
	--fnt-nv-pry-tt: none; /* { friendly: 'Primary Nav Link Case' } */
	--fnt-nv-pry-fs: normal; /* { friendly: 'Primary Nav Link Style' } */

	--fnt-nv-sec-ff: var(--fnt-m); /* { friendly: 'Secondary Nav Link Font Family' } */
	--fnt-nv-sec-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Secondary Nav Link Letter Spacing' } */
	--fnt-nv-sec-w: 700; /* { friendly: 'Secondary Nav Link Font Weight' } */
	--fnt-nv-sec-tt: none; /* { friendly: 'Secondary Nav Link Case' } */
	--fnt-nv-sec-fs: normal; /* { friendly: 'Secondary Nav Link Style' } */

	--fnt-qte-ff: var(--fnt-m); /* { friendly: 'Quote Font Family' } */
	--fnt-qte-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Quote Letter Spacing' } */
	--fnt-qte-w: 400; /* { friendly: 'Quote Font Weight' } */
	--fnt-qte-tt: none; /* { friendly: 'Quote Case' } */
	--fnt-qte-fs: normal; /* { friendly: 'Quote Font Style' } */

	--fnt-atr-ff: var(--fnt-m); /* { friendly: 'Author Font Family' } */
	--fnt-atr-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Author Letter Spacing' } */
	--fnt-atr-w: 700; /* { friendly: 'Author Font Weight' } */
	--fnt-atr-tt: none; /* { friendly: 'Author Case' } */
	--fnt-atr-fs: normal; /* { friendly: 'Author Font Style' } */

	--fnt-phn-ff: var(--fnt-t); /* { friendly: 'Phone Font Family' } */
	--fnt-phn-ls: 0.03em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Phone Letter Spacing' } */
	--fnt-phn-w: 400; /* { friendly: 'Phone Font Weight' } */
	--fnt-phn-fs: normal; /* { friendly: 'Phone Font Style' } */

	--fnt-t-itm-ff: var(--fnt-m); /* { friendly: 'Item Title Font Family' } */
	--fnt-t-itm-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Item Title Letter Spacing' } */
	--fnt-t-itm-w: 600; /* { friendly: 'Item Title Font Weight' } */
	--fnt-t-itm-tt: none; /* { friendly: 'Item Title Case' } */
	--fnt-t-itm-fs: normal; /* { friendly: 'Item Title Font Style' } */

	--fnt-t-nt-ff: var(--fnt-m); /* { friendly: 'Note Font Family' } */
	--fnt-t-nt-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Note Letter Spacing' } */
	--fnt-t-nt-w: 400; /* { friendly: 'Note Font Weight' } */
	--fnt-t-nt-tt: none; /* { friendly: 'Note Case' } */
	--fnt-t-nt-fs: normal; /* { friendly: 'Note Font Style' } */

	--fnt-t-cpn-ff: var(--fnt-t); /* { friendly: 'Coupon Value Font Family' } */
	--fnt-t-cpn-ls: 0.03em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Coupon Value Letter Spacing' } */
	--fnt-t-cpn-w: 400; /* { friendly: 'Coupon Value Font Weight' } */
	--fnt-t-cpn-tt: uppercase; /* { friendly: 'Coupon Value Case' } */
	--fnt-t-cpn-fs: normal; /* { friendly: 'Coupon Value Font Style' } */

	--tag-ff: var(--fnt-m); /* { friendly: 'Tag Font Family' } */
	--tag-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Tag Letter Spacing' } */
	--tag-w: 700; /* { friendly: 'Tag Font Weight' } */
	--tag-tt: none; /* { friendly: 'Tag Case' } */
	--tag-fs: normal; /* { friendly: 'Tag Font Style' } */

	--btn-ff: var(--fnt-t); /* { friendly: 'Button Font Family' } */
	--btn-ls: 0.05em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Button Letter Spacing' } */
	--btn-w: 400; /* { friendly: 'Button Font Weight' } */
	--btn-tt: uppercase; /* { friendly: 'Button Case' } */
	--btn-fs: normal; /* { friendly: 'Button Font Style' } */

	--fnt-frm-ff: var(--fnt-m); /* { friendly: 'Form Label Font Family' } */
	--fnt-frm-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Form Label Letter Spacing' } */
	--fnt-frm-w: 400; /* { friendly: 'Form Label Font Weight' } */
	--fnt-frm-tt: none; /* { friendly: 'Form Label Case' } */
	--fnt-frm-fs: normal; /* { friendly: 'Form Font Style' } */
  }
/* font-declaration.css */
/* Variable Declarations */
:root {
	--fnt-cnt-s: 1rem;
	--fnt-cnt-lh: 1.8;
	--fnt-pl-s: 1.11rem;
	
	/* Title Big (Display) */

	--fnt-t-big-s: 2.5rem; /* { friendly: 'Title Big (Display) Font Size - Mobile' } */
	--fnt-t-big-s-d: 5.8125rem; /* { friendly: 'Title Big (Display) Font Size - Desktop' } */
	--fnt-t-big-lh: 1; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Title Big (Display) Line Height' } */

	--fnt-t-big-sml-s: 2.25rem; /* { friendly: 'Title Big (Display) Font Size Small - Mobile' } */
	--fnt-t-big-sml-s-d: 5rem; /* { friendly: 'Title Big (Display) Font Size Small - Desktop' } */
	--fnt-t-big-smlr-s: 2rem; /* { friendly: 'Title Big (Display) Font Size Smaller - Mobile' } */
	--fnt-t-big-smlr-s-d: 4.5rem; /* { friendly: 'Title Big (Display) Font Size Smaller - Desktop' } */


	/* Callout */
	
	--fnt-t-co-s: 2.2rem; /* { friendly: 'Callout Font Size' } */
	--fnt-t-co-s-d: 2.778rem; /* { friendly: 'Callout Font Size' } */
	--fnt-t-co-lh: 1; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Callout Line Height' } */
	

	/* Kicker */
	
	--fnt-t-k-s: 1rem; /* { friendly: 'Kicker Font Size' } */
	--fnt-t-k-s-d: 1rem; /* { friendly: 'Kicker Font Size' } */
	--fnt-t-k-lh: 1; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Kicker Line Height' } */

	--fnt-t-k-sml-s: 0.9rem; /* { friendly: 'Kicker Font Size Small - Mobile' } */
	--fnt-t-k-sml-s-d: 0.9rem; /* { friendly: 'Kicker Font Size Small - Desktop' } */
	--fnt-t-k-smlr-s: 0.8rem; /* { friendly: 'Kicker Font Size Smaller - Mobile' } */
	--fnt-t-k-smlr-s-d: 0.8rem; /* { friendly: 'Kicker Font Size Smaller - Desktop' } */
	

	/* Title 1 (h1) */
	--fnt-t-1-s: 3rem; /* { friendly: 'Title 1 (h1) Font Size' } */
	--fnt-t-1-s-d: 5.556rem; /* { friendly: 'Title 1 (h1) Font Size' } */
	--fnt-t-1-lh: 1; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Title 1 (h1) Line Height' } */

	--fnt-t-1-sml-s: 2.4rem; /* { friendly: 'Title 1 (h1) Font Size Small - Mobile' } */
	--fnt-t-1-sml-s-d: 4.4rem; /* { friendly: 'Title 1 (h1) Font Size Small - Desktop' } */
	--fnt-t-1-smlr-s: 2rem; /* { friendly: 'Title 1 (h1) Font Size Smaller - Mobile' } */
	--fnt-t-1-smlr-s-d: 3.5rem; /* { friendly: 'Title 1 (h1) Font Size Smaller - Desktop' } */


	/* Title 2 (h2) */
	
	--fnt-t-2-s: 1.4rem; /* { friendly: 'Title 2 (h2) Font Size' } */
	--fnt-t-2-s-d: 1.5rem; /* { friendly: 'Title 2 (h2) Font Size' } */
	--fnt-t-2-lh: 1.5; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Title 2 (h2) Line Height' } */
	

	/* Title 3 (h3) */
	
	--fnt-t-3-s: 1.4rem; /* { friendly: 'Title 3 (h3) Font Size' } */
	--fnt-t-3-s-d: 1.5rem; /* { friendly: 'Title 3 (h3) Font Size' } */
	--fnt-t-3-lh: 1.5; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Title 3 (h3) Line Height' } */
	

	/* Title 4 (h4) */
	
	--fnt-t-4-s: 1.25rem; /* { friendly: 'Title 4 (h4) Font Size' } */
	--fnt-t-4-s-d: 1.22rem; /* { friendly: 'Title 4 (h4) Font Size' } */
	--fnt-t-4-lh: 1.5; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Title 4 (h4) Line Height' } */
	

	/* Title 5 (h5) */
	
	--fnt-t-5-s: 1.25rem; /* { friendly: 'Title 5 (h5) Font Size' } */
	--fnt-t-5-s-d: 1.111rem; /* { friendly: 'Title 5 (h5) Font Size' } */
	--fnt-t-5-lh: 1.5; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Title 5 (h5) Line Height' } */
	

	/* Title 6 (h6) */
	
	--fnt-t-6-s: 1.25rem; /* { friendly: 'Title 6 (h6) Font Size' } */
	--fnt-t-6-s-d: 1.25rem; /* { friendly: 'Title 6 (h6) Font Size' } */
	--fnt-t-6-lh: 1; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Title 6 (h6) Line Height' } */
	

	/* Primary Nav */
	
	--fnt-nv-pry-s: 1rem; /* { friendly: 'Primary Nav Link Font Size' } */
	--fnt-nv-pry-s-d: 1rem; /* { friendly: 'Primary Nav Link Font Size' } */
	--fnt-nv-pry-ls: 0em; /* { min: -0.05, max: 0.5, step: 0.01, friendly: 'Primary Nav Link Letter Spacing' } */
	

	/* Secondary Nav */
	
	--fnt-nv-sec-s: 0.875rem; /* { friendly: 'Secondary Nav Link Font Size' } */
	--fnt-nv-sec-s-d: 0.889rem; /* { friendly: 'Secondary Nav Link Font Size' } */
	

	/* Quote */
	
	--fnt-qte-s: 1.5rem; /* { friendly: 'Quote Font Size' } */
	--fnt-qte-s-d: 2.222rem; /* { friendly: 'Quote Font Size' } */
	--fnt-qte-lh: 1.2; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Quote Line Height' } */
	

	/* Author */
	
	--fnt-atr-s: 1rem; /* { friendly: 'Author Font Size' } */
	--fnt-atr-s-d: 1rem; /* { friendly: 'Author Font Size' } */
	--fnt-atr-lh: 1.5; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Author Line Height' } */
	

	/* Phone */
	
	--fnt-phn-s: 2rem; /* { friendly: 'Phone Font Size' } */
	--fnt-phn-s-d: 2rem; /* { friendly: 'Phone Font Size' } */
	--fnt-phn-lh: 1; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Phone Line Height' } */
	

	/* Coupon Value */
	
	--fnt-t-cpn-s: 2rem; /* { friendly: 'Coupon Value Font Size - Mobile' } */
	--fnt-t-cpn-s-d: 5rem; /* { friendly: 'Coupon Value Font Size - Desktop' } */
	--fnt-t-cpn-lh: 1; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Coupon Value Line Height' } */
	

	/* Item Title */
	
	--fnt-t-itm-s: 1.25rem; /* { friendly: 'Item Title Font Size' } */
	--fnt-t-itm-s-d: 1.5rem; /* { friendly: 'Item Title Font Size' } */
	--fnt-t-itm-lh: 1; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Item Title Line Height' } */
	

	/* Note */
	
	--fnt-t-nt-s: 1rem; /* { friendly: 'Note Font Size' } */
	--fnt-t-nt-s-d: 0.889rem; /* { friendly: 'Note Font Size' } */
	--fnt-t-nt-lh: 1; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Note Line Height' } */
	

	/* Tag */
	
	--tag-s: 0.75rem; /* { friendly: 'Tag Font Size' } */
	--tag-s-d: 0.667rem; /* { friendly: 'Tag Font Size' } */
	

	/* Button */
	
	--btn-s: 1.111rem; /* { friendly: 'Button Font Size' } */
	--btn-s-d: 1.111rem; /* { friendly: 'Button Font Size' } */
	--btn-lh: 1; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Button Line Height' } */
	

	/* Form Label */
	
	--fnt-frm-lh: 1.2; /* { min: .8, max: 2.2, step: 0.05, type: 'range', friendly: 'Form Label Line Height' } */
	

}
/* Body & Content */
body {
	font-family: var(--fnt-m);
	line-height: var(--fnt-cnt-lh);
	text-wrap: pretty;
}

li {
	line-height: var(--fnt-itm-lh);
}

.cnt-stl {
	font-size: var(--fnt-cnt-s);
}

.fnt_pl {
	font-size: var(--fnt-pl-s);
	line-height: 1.6;
}

small i {
	font-weight: 300;
}

[class*="fnt_"] {
	display: block;
	font-style: normal;
}

section header em {
	font-style: normal;
}

section header > strong,
section header > a > strong,
section header > b,
section header > a > b {
	display: block;
}

/* Type Classes */
.fnt_t-big {
	font-family: var(--fnt-t-big-ff);
	font-size: var(--fnt-t-big-s);
	letter-spacing: var(--fnt-t-big-ls);
	line-height: var(--fnt-t-big-lh);
	font-weight: var(--fnt-t-big-w);
	text-transform: var(--fnt-t-big-tt);
	font-style: var(--fnt-t-big-fs);
	text-wrap: balance;
	
	> :is(strong, b) {
		display: block;
	}
	
}

.fnt_t-big-sml  { font-size: var(--fnt-t-big-sml-s); }
.fnt_t-big-smlr { font-size: var(--fnt-t-big-smlr-s); }

.fnt_t-co {
	font-family: var(--fnt-t-co-ff);
	font-size: var(--fnt-t-co-s);
	letter-spacing: var(--fnt-t-co-ls);
	line-height: var(--fnt-t-co-lh);
	font-weight: var(--fnt-t-co-w);
	text-transform: var(--fnt-t-co-tt);
	font-style: var(--fnt-t-co-fs);
	text-wrap: balance;
}

.fnt_t-k {
	font-family: var(--fnt-t-k-ff);
	font-size: var(--fnt-t-k-s);
	letter-spacing: var(--fnt-t-k-ls);
	line-height: var(--fnt-t-k-lh);
	font-weight: var(--fnt-t-k-w);
	text-transform: var(--fnt-t-k-tt);
	font-style: var(--fnt-t-k-fs);
}

.fnt_t-k-sml  { font-size: var(--fnt-t-k-sml-s); }
.fnt_t-k-smlr { font-size: var(--fnt-t-k-smlr-s); }



h1,
.fnt_t-1,
section header > :first-child:not( a, [class*='fnt_t'] ),
section .cnt-stl:not(.xpnd) > :first-child:is( h1, h2, h3, h4, h5, h6 ) {
	font-family: var(--fnt-t-1-ff);
	font-size: var(--fnt-t-1-s);
	letter-spacing: var(--fnt-t-1-ls);
	line-height: var(--fnt-t-1-lh);
	font-weight: var(--fnt-t-1-w);
	text-transform: var(--fnt-t-1-tt);
	font-style: var(--fnt-t-1-fs);
	text-wrap: balance;

	> :is(strong, b) {
		display: block;
		font-weight: inherit;
	}

}

.fnt_t-1-sml  { font-size: var(--fnt-t-1-sml-s); }
.fnt_t-1-smlr { font-size: var(--fnt-t-1-smlr-s); }

h2,
.fnt_t-2,
section header > *:nth-child(2):not(p, [class*='fnt_t'], .flr_hd, svg),
section header > *:nth-child(2):is(.flr_hd)  + :nth-child(3):is( h1, h2, h3, h4, h5, h6 ),
section .cnt-stl > :nth-child(2):is( h1, h2, h3, h4, h5, h6 ) {
	font-family: var(--fnt-t-2-ff);
	font-size: var(--fnt-t-2-s);
	letter-spacing: var(--fnt-t-2-ls);
	line-height: var(--fnt-t-2-lh);
	font-weight: var(--fnt-t-2-w);
	text-transform: var(--fnt-t-2-tt);
	font-style: var(--fnt-t-2-fs);
}

h3,
.fnt_t-3,
aside header > *:first-child:not(a, [class*='fnt_t']) {
	font-family: var(--fnt-t-3-ff);
	font-size: var(--fnt-t-3-s);
	letter-spacing: var(--fnt-t-3-ls);
	line-height: var(--fnt-t-3-lh);
	font-weight: var(--fnt-t-3-w);
	text-transform: var(--fnt-t-3-tt);
	font-style: var(--fnt-t-3-fs);
}

.fnt_t-4,
.cnt-stl h4 {
	font-family: var(--fnt-t-4-ff);
	font-size: var(--fnt-t-4-s);
	letter-spacing: var(--fnt-t-4-ls);
	line-height: var(--fnt-t-4-lh);
	font-weight: var(--fnt-t-4-w);
	text-transform: var(--fnt-t-4-tt);
	font-style: var(--fnt-t-4-fs);
}

.fnt_t-5,
.cnt-stl h5 {
	font-family: var(--fnt-t-5-ff);
	font-size: var(--fnt-t-5-s);
	letter-spacing: var(--fnt-t-5-ls);
	line-height: var(--fnt-t-5-lh);
	font-weight: var(--fnt-t-5-w);
	text-transform: var(--fnt-t-5-tt);
	font-style: var(--fnt-t-5-fs);
}

.fnt_t-6,
.cnt-stl h6 {
	font-family: var(--fnt-t-6-ff);
	font-size: var(--fnt-t-6-s);
	letter-spacing: var(--fnt-t-6-ls);
	line-height: var(--fnt-t-6-lh);
	font-weight: var(--fnt-t-6-w);
	text-transform: var(--fnt-t-6-tt);
	font-style: var(--fnt-t-6-fs);
}

/* Primary Nav */
.fnt_nv-pry {
	font-family: var(--fnt-nv-pry-ff);
	font-size: var(--fnt-nv-pry-s);
	letter-spacing: var(--fnt-nv-pry-ls);
	font-weight: var(--fnt-nv-pry-w);
	text-transform: var(--fnt-nv-pry-tt);
	font-style: var(--fnt-nv-pry-fs);
}

/* Secondary Nav */
.fnt_nv-sec {
	font-family: var(--fnt-nv-sec-ff);
	font-size: var(--fnt-nv-sec-s);
	letter-spacing: var(--fnt-nv-sec-ls);
	font-weight: var(--fnt-nv-sec-w);
	text-transform: var(--fnt-nv-sec-tt);
	font-style: var(--fnt-nv-sec-fs);
}

/* Quote */
.fnt_qte {
	font-family: var(--fnt-qte-ff);
	font-size: var(--fnt-qte-s);
	letter-spacing: var(--fnt-qte-ls);
	line-height: var(--fnt-qte-lh);
	font-weight: var(--fnt-qte-w);
	text-transform: var(--fnt-qte-tt);
	font-style: var(--fnt-qte-fs);
}

.fnt_atr {
	font-family: var(--fnt-atr-ff);
	font-size: var(--fnt-atr-s);
	letter-spacing: var(--fnt-atr-ls);
	line-height: var(--fnt-atr-lh);
	font-weight: var(--fnt-atr-w);
	text-transform: var(--fnt-atr-tt);
	font-style: var(--fnt-atr-fs);
}

/* Phone */
.fnt_phn {
	font-family: var(--fnt-phn-ff);
	font-size: var(--fnt-phn-s);
	letter-spacing: var(--fnt-phn-ls);
	line-height: var(--fnt-phn-lh);
	font-weight: var(--fnt-phn-w);
	font-style: var(--fnt-phn-fs);
}

/* Coupon Value */
.fnt_t-cpn {
	font-family: var(--fnt-t-cpn-ff);
	font-size: var(--fnt-t-cpn-s);
	letter-spacing: var(--fnt-t-cpn-ls);
	line-height: var(--fnt-t-cpn-lh);
	font-weight: var(--fnt-t-cpn-w);
	text-transform: var(--fnt-t-cpn-tt);
	font-style: var(--fnt-t-cpn-fs);
	text-wrap: balance;
}

/* Item */
.fnt_t-itm {
	font-family: var(--fnt-t-itm-ff);
	font-size: var(--fnt-t-itm-s);
	letter-spacing: var(--fnt-t-itm-ls);
	line-height: var(--fnt-t-itm-lh);
	font-weight: var(--fnt-t-itm-w);
	text-transform: var(--fnt-t-itm-tt);
	font-style: var(--fnt-t-itm-fs);
}

/* Note */
.fnt_t-nt {
	font-family: var(--fnt-t-nt-ff);
	font-size: var(--fnt-t-nt-s);
	letter-spacing: var(--fnt-t-nt-ls);
	line-height: var(--fnt-t-nt-lh);
	font-weight: var(--fnt-t-nt-w);
	text-transform: var(--fnt-t-nt-tt);
	font-style: var(--fnt-t-nt-fs);
}

/* Tag */
.tag {
	font-family: var(--tag-ff);
	font-size: var(--tag-s);
	letter-spacing: var(--tag-ls);
	font-weight: var(--tag-w);
	text-transform: var(--tag-tt);
	font-style: var(--tag-fs);
	line-height: 1;
}

/* Buttons */
.btn {
	font-family: var(--btn-ff);
	font-size: var(--btn-s);
	letter-spacing: var(--btn-ls);
	line-height: var(--btn-lh);
	font-weight: var(--btn-w);
	text-transform: var(--btn-tt);
	font-style: var(--btn-fs);
}

/* Form Inputs */
fieldset li label:not([class*="fnt_"]) {
	font-family: var(--fnt-frm-ff);
	letter-spacing: var(--fnt-frm-ls);
	line-height: var(--fnt-frm-lh);
	font-weight: var(--fnt-frm-w);
	text-transform: var(--fnt-frm-tt);
	font-style: var(--fnt-frm-fs);
}


/* 1280px Responsive (min-width) */
@media screen and (width >= 1280px) {

	:root {
		--fnt-t-big-s: var(--fnt-t-big-s-d);
		--fnt-t-big-sml-s: var(--fnt-t-big-sml-s-d);
		--fnt-t-big-smlr-s: var(--fnt-t-big-smlr-s-d);
		--fnt-t-co-s: var(--fnt-t-co-s-d);
		--fnt-t-k-s: var(--fnt-t-k-s-d);
		--fnt-t-k-sml-s: var(--fnt-t-k-sml-s-d);
		--fnt-t-k-smlr-s: var(--fnt-t-k-smlr-s-d);
		--fnt-t-1-s: var(--fnt-t-1-s-d);
		--fnt-t-1-sml-s: var(--fnt-t-1-sml-s-d);
		--fnt-t-1-smlr-s: var(--fnt-t-1-smlr-s-d);
		--fnt-t-2-s: var(--fnt-t-2-s-d);
		--fnt-t-3-s: var(--fnt-t-3-s-d);
		--fnt-t-4-s: var(--fnt-t-4-s-d);
		--fnt-t-5-s: var(--fnt-t-5-s-d);
		--fnt-t-6-s: var(--fnt-t-6-s-d);
		--fnt-qte-s: var(--fnt-qte-s-d);
		--fnt-phn-s: var(--fnt-phn-s-d);
		--fnt-t-itm-s: var(--fnt-t-itm-s-d);
		--fnt-t-nt-s: var(--fnt-t-nt-s-d);
		--fnt-t-cpn-s: var(--fnt-t-cpn-s-d);
		--fnt-btn-s: var(--fnt-btn-s-d);
	}

}
/* color-structure.css */
@layer reset, tokens, utilities, components;

@layer tokens {

	:root {
		--valid-color: #8AC74C; /* { readonly: true } */
		--invalid-color: #F34039; /* { readonly: true } */
		--highlight-color: #0066EE; /* { readonly: true } */

		--black: #000000;

		/* ── Backward-compat aliases ─────────────────────────────────────────── */
		/* Used by make.css, buttons.css hover states, and other inherited rules  */

		--main-bg:       var(--lt-bg);
		--main-bg-alt:   var(--dk-bg);
		--inner-bg:      var(--lt-alt-bg);
		--inner-bg-alt:  var(--dk-alt-bg);
		--text:          var(--lt-txt);
		--text-alt:      var(--dk-btn-pry-txt); /* white — used for btn text & hover */
		--link-alt:      var(--dk-lnk);
		--buttons:       var(--lt-btn-pry);

		/* ── Shape Colors ────────────────────────────────────────────────────── */
		/* References contextual palette vars; scopes override per theme context  */

		--shape-clr-1-dyn: var(--lt-accent);
		--shape-clr-2-dyn: var(--lt-callout);
		--shape-clr-1-alt: #ffffff;
	}


	/* ══════════════════════════════════════════════════════════════════════ */
	/* Light Colors                                                           */
	/* ══════════════════════════════════════════════════════════════════════ */
	@scope ( [data-colors="primary-light"], [data-colors="alternate-light"] .lk-bg, [data-colors="primary-dark"] .ulk-bg ) {

		:scope {
			/* Palette identity */
			--pal-id:        var(--lt-id);
			--pal-name:      var(--lt-name);
			--pal-creative:  var(--lt-creative);

			/* Backgrounds */
			--background:    var(--lt-bg);
			--inner-theme:   var(--lt-alt-bg);

			/* Text */
			--text-color:    var(--lt-txt);
			--link-color:    var(--lt-lnk);
			--link-hover:    var(--lt-lnk-hov);

			/* Headings */
			--fnt-t-big:  var(--lt-h1);
			--fnt-t-co:   var(--lt-callout);
			--fnt-t-k:    var(--lt-accent);
			--fnt-t-1:    var(--lt-h1);
			--fnt-t-2:    var(--lt-h2);
			--fnt-t-3:    var(--lt-h3);
			--fnt-t-4:    var(--lt-h4);
			--fnt-t-5:    var(--lt-h5);
			--fnt-t-6:    var(--lt-txt);
			--fnt-t-itm:  var(--lt-h1);
			--fnt-t-nt:   var(--lt-txt);
			--fnt-qte:    var(--lt-lnk);
			--fnt-atr:    var(--lt-lnk);
			--fnt-phn:    var(--lt-txt);

			/* Accent & callout */
			--accent:        var(--lt-accent);
			--callout:       var(--lt-callout);

			/* Buttons */
			--btn-pry:       var(--lt-btn-pry);
			--btn-pry-txt:   var(--lt-btn-pry-txt);
			--btn-sec:       var(--lt-btn-sec);
			--btn-sec-txt:   var(--lt-btn-sec-txt);
			--btn-trt-txt:   var(--lt-btn-trt-txt);

			/* Button Hover */
			--btn-hvr-pry:  var(--dk-bg);
			--btn-hvr-pry-txt: var(--dk-txt);

			/* Compat — buttons.css / make.css */
			--buttons:            var(--lt-btn-pry);
			--btn-bg-clr-lt:      var(--lt-btn-pry);
			--btn-txt-clr-lt:     var(--lt-btn-pry-txt);
			--btn-bg-clr-lt-alt:  var(--dk-btn-pry);
			--btn-txt-clr-lt-alt: var(--dk-btn-pry-txt);
			--main-bg:            var(--lt-bg);
			--main-bg-alt:        var(--dk-bg);
			--text-alt:           var(--dk-btn-pry-txt);

			/* Border */
			--bdr-clr:       var(--lt-bdr);
			--bg-bx-bdr-clr: var(--lt-txt);

			/* Shapes */
			--shape-clr-1-dyn: var(--lt-accent);
			--shape-clr-2-dyn: var(--lt-callout);
			--shape-clr-1-alt: #ffffff;

			/* Flair */
			--flr-hdr-clr:   var(--lt-btn-pry);
		}

		&.lk-bg, &.ulk-bg {
			--background:    var(--lt-alt-bg);
			--inner-theme:   var(--lt-bg);
		}

		.btn-clr {
			--background: var(--buttons);
			--text-color: var(--text-alt);

			&.active {
				--background: var(--main-bg-alt);
				--text-color: var(--text-alt);
			}

			@media (hover: hover) and (pointer: fine) {
				&:is(a:hover,a:focus-visible),
				&:is(button:hover,button:focus-visible),
				a:is(:hover,:focus-visible) {
					--background: var(--main-bg-alt);
					--text-color: var(--text-alt);
					--link-hover: var(--text-color);
				}
			}
		}

		.clr-pry { --text-color: var(--fnt-t-1); }
		.clr-sec { --text-color: var(--fnt-t-2); }
		.clr-acc { --text-color: var(--accent); }
		.clr-lnk { --text-color: var(--link-color); }
		.clr-blk { --text-color: var(--black); }

	}

		/* ══════════════════════════════════════════════════════════════════════ */
	/* Light Colors                                                           */
	/* ══════════════════════════════════════════════════════════════════════ */
	@scope ( [data-colors="alternate-light"], [data-colors="primary-light"] .lk-bg, [data-colors="alternate-dark"] .ulk-bg ) {

		:scope {
			--pal-id:        var(--lt-alt-id);
			--pal-name:      var(--lt-alt-name);
			--pal-creative:  var(--lt-alt-creative);

			--background:    var(--lt-alt-bg);
			--inner-theme:   var(--lt-bg);

			--text-color:    var(--lt-alt-txt);
			--link-color:    var(--lt-alt-lnk);
			--link-hover:    var(--lt-alt-lnk-hov);

			--fnt-t-big:  var(--lt-alt-h1);
			--fnt-t-co:   var(--lt-alt-callout);
			--fnt-t-k:    var(--lt-alt-accent);
			--fnt-t-1:    var(--lt-alt-h1);
			--fnt-t-2:    var(--lt-alt-h2);
			--fnt-t-3:    var(--lt-alt-h3);
			--fnt-t-4:    var(--lt-alt-h4);
			--fnt-t-5:    var(--lt-alt-h5);
			--fnt-t-6:    var(--lt-alt-txt);
			--fnt-t-itm:  var(--lt-alt-h1);
			--fnt-t-nt:   var(--lt-alt-txt);
			--fnt-qte:    var(--lt-alt-lnk);
			--fnt-atr:    var(--lt-alt-lnk);
			--fnt-phn:    var(--lt-alt-txt);

			--accent:        var(--lt-alt-accent);
			--callout:       var(--lt-alt-callout);

			--btn-pry:       var(--lt-alt-btn-pry);
			--btn-pry-txt:   var(--lt-alt-btn-pry-txt);
			--btn-sec:       var(--lt-alt-btn-sec);
			--btn-sec-txt:   var(--lt-alt-btn-sec-txt);
			--btn-trt-txt:   var(--lt-alt-btn-trt-txt);

			--btn-hvr-pry:  var(--dk-alt-bg);
			--btn-hvr-pry-txt: var(--dk-alt-txt);

			--buttons:            var(--lt-alt-btn-pry);
			--btn-bg-clr-lt:      var(--lt-alt-btn-pry);
			--btn-txt-clr-lt:     var(--lt-alt-btn-pry-txt);
			--btn-bg-clr-lt-alt:  var(--dk-bg);
			--btn-txt-clr-lt-alt: var(--dk-btn-pry-txt);

			--bdr-clr:       var(--lt-alt-bdr);
			--bg-bx-bdr-clr: var(--lt-alt-txt);

			--shape-clr-1-dyn: var(--lt-alt-accent);
			--shape-clr-2-dyn: var(--lt-alt-callout);
			--shape-clr-1-alt: #ffffff;

			--flr-hdr-clr:   var(--lt-alt-btn-pry);
		}

		&.lk-bg {
			--background:    var(--lt-bg);
			--inner-theme:   var(--lt-alt-bg);
		}

		.btn-clr {
			--background: var(--buttons);
			--text-color: var(--text-alt);

			&.active {
				--background: var(--main-bg-alt);
				--text-color: var(--text-alt);
			}

			@media (hover: hover) and (pointer: fine) {
				&:is(a:hover,a:focus-visible),
				&:is(button:hover,button:focus-visible),
				a:is(:hover,:focus-visible) {
					--background: var(--main-bg-alt);
					--text-color: var(--text-alt);
					--link-hover: var(--text-color);
				}
			}
		}

		.clr-pry { --text-color: var(--fnt-t-1); }
		.clr-sec { --text-color: var(--fnt-t-2); }
		.clr-acc { --text-color: var(--accent); }
		.clr-lnk { --text-color: var(--link-color); }
		.clr-blk { --text-color: var(--black); }

	}


	/* ══════════════════════════════════════════════════════════════════════ */
	/* Dark Colors                                                            */
	/* ══════════════════════════════════════════════════════════════════════ */
	@scope ( [data-colors="primary-dark"], [data-colors="alternate-dark"] .lk-bg, [data-colors="primary-light"] .ulk-bg ) {

		:scope {
			/* Palette identity */
			--pal-id:        var(--dk-id);
			--pal-name:      var(--dk-name);
			--pal-creative:  var(--dk-creative);

			/* Backgrounds */
			--background:    var(--dk-bg);
			--inner-theme:   var(--dk-alt-bg);

			/* Text */
			--text-color:    var(--dk-txt);
			--link-color:    var(--dk-lnk);
			--link-hover:    var(--dk-lnk-hov);

			/* Headings */
			--fnt-t-big:  var(--dk-h1);
			--fnt-t-co:   var(--dk-callout);
			--fnt-t-k:    var(--dk-accent);
			--fnt-t-1:    var(--dk-h1);
			--fnt-t-2:    var(--dk-h2);
			--fnt-t-3:    var(--dk-h3);
			--fnt-t-4:    var(--dk-h4);
			--fnt-t-5:    var(--dk-h5);
			--fnt-t-6:    var(--dk-txt);
			--fnt-t-itm:  var(--dk-h1);
			--fnt-t-nt:   var(--dk-txt);
			--fnt-qte:    var(--dk-txt);
			--fnt-atr:    var(--dk-txt);
			--fnt-phn:    var(--dk-txt);

			/* Accent & callout */
			--accent:        var(--dk-accent);
			--callout:       var(--dk-callout);

			/* Buttons */
			--btn-pry:       var(--dk-btn-pry);
			--btn-pry-txt:   var(--dk-btn-pry-txt);
			--btn-sec:       var(--dk-btn-sec);
			--btn-sec-txt:   var(--dk-btn-sec-txt);
			--btn-trt-txt:   var(--dk-btn-trt-txt);

			/* Button Hover */
			--btn-hvr-pry:  var(--lt-bg);
			--btn-hvr-pry-txt: var(--lt-txt);

			/* Compat - review this!! */
			--buttons:            var(--dk-btn-pry);
			--btn-bg-clr-dk:      var(--dk-btn-pry);
			--btn-txt-clr-dk:     var(--dk-btn-pry-txt);
			--btn-bg-clr-dk-alt:  var(--lt-bg);
			--btn-txt-clr-dk-alt: var(--lt-btn-pry-txt);
			--main-bg:            var(--dk-bg);
			--main-bg-alt:        var(--lt-bg);
			--text-alt:           var(--lt-btn-pry-txt);

			/* Border */
			--bdr-clr:       var(--dk-bdr);
			--bg-bx-bdr-clr: var(--dk-bdr);

			/* Shapes */
			--shape-clr-1-dyn: var(--dk-accent);
			--shape-clr-2-dyn: var(--dk-callout);
			--shape-clr-1-alt: #ffffff; /* Review this */

			/* Flair */
			--flr-hdr-clr:   var(--shape-clr-1-dyn);
		}

		&.lk-bg, &.ulk-bg {
			--background:    var(--dk-alt-bg);
			--inner-theme:   var(--dk-bg);
		}
	
		/* Review all of this */
		.ulk-bg, .alt-bg {
			.btn-clr {
				@media (hover: hover) and (pointer: fine) {
					&:is(a:hover,a:focus-visible),
					a:is(:hover,:focus-visible) {
						--background: var(--main-bg-alt);
						--text-color: var(--dk-txt);
						--link-hover: var(--text-color);
					}
				}
			}
		}

		.btn-clr {
			--background: var(--btn-pry);
			--text-color: var(--btn-pry-txt);

			&.active {
				--background: var(--main-bg-alt);
				--text-color: var(--lt-txt);
			}

			@media (hover: hover) and (pointer: fine) {
				&:is(a:hover,a:focus-visible),
				&:is(button:hover,button:focus-visible),
				a:is(:hover,:focus-visible) {
					--background: var(--main-bg-alt);
					--text-color: var(--dk-txt);
					--link-hover: var(--text-color);
				}
			}
		}

	}

		/* ══════════════════════════════════════════════════════════════════════ */
	/* Dark Colors                                                            */
	/* ══════════════════════════════════════════════════════════════════════ */
	@scope ( [data-colors="alternate-dark"], [data-colors="primary-dark"] .lk-bg, [data-colors="alternate-light"] .ulk-bg ) {

		:scope {
			--pal-id:        var(--dk-alt-id);
			--pal-name:      var(--dk-alt-name);
			--pal-creative:  var(--dk-alt-creative);

			--background:    var(--dk-alt-bg);
			--inner-theme:   var(--dk-bg);

			--text-color:    var(--dk-alt-txt);
			--link-color:    var(--dk-alt-lnk);
			--link-hover:    var(--dk-alt-lnk-hov);

			--fnt-t-big:  var(--dk-alt-h1);
			--fnt-t-co:   var(--dk-alt-callout);
			--fnt-t-k:    var(--dk-alt-accent);
			--fnt-t-1:    var(--dk-alt-h1);
			--fnt-t-2:    var(--dk-alt-h2);
			--fnt-t-3:    var(--dk-alt-h3);
			--fnt-t-4:    var(--dk-alt-h4);
			--fnt-t-5:    var(--dk-alt-h5);
			--fnt-t-6:    var(--dk-alt-txt);
			--fnt-t-itm:  var(--dk-alt-h1);
			--fnt-t-nt:   var(--dk-alt-txt);
			--fnt-qte:    var(--dk-alt-txt);
			--fnt-atr:    var(--dk-alt-txt);
			--fnt-phn:    var(--dk-alt-txt);

			--accent:        var(--dk-alt-accent);
			--callout:       var(--dk-alt-callout);

			--btn-pry:       var(--dk-alt-btn-pry);
			--btn-pry-txt:   var(--dk-alt-btn-pry-txt);
			--btn-sec:       var(--dk-alt-btn-sec);
			--btn-sec-txt:   var(--dk-alt-btn-sec-txt);
			--btn-trt-txt:   var(--dk-alt-btn-trt-txt);

			--btn-hvr-pry:  var(--lt-alt-bg);
			--btn-hvr-pry-txt: var(--lt-alt-txt);

			--buttons:            var(--dk-alt-btn-pry);
			--btn-bg-clr-dk:      var(--dk-alt-btn-pry);
			--btn-txt-clr-dk:     var(--dk-alt-btn-pry-txt);
			--btn-bg-clr-dk-alt:  var(--lt-bg);
			--btn-txt-clr-dk-alt: var(--lt-btn-pry-txt);

			--bdr-clr:       var(--dk-alt-bdr);
			--bg-bx-bdr-clr: var(--dk-alt-bdr);

			--shape-clr-1-dyn: var(--dk-alt-accent);
			--shape-clr-2-dyn: var(--dk-alt-callout);
			--shape-clr-1-alt: #ffffff;

			--flr-hdr-clr:   var(--shape-clr-1-dyn);
		}

		&.lk-bg {
			--background:    var(--dk-bg);
			--inner-theme:   var(--dk-alt-bg);
		}

		/* Review all of this */
		.ulk-bg, .alt-bg {
			.btn-clr {
				@media (hover: hover) and (pointer: fine) {
					&:is(a:hover,a:focus-visible),
					a:is(:hover,:focus-visible) {
						--background: var(--main-bg-alt);
						--text-color: var(--dk-txt);
						--link-hover: var(--text-color);
					}
				}
			}
		}

	

		.btn-clr {
			--background: var(--btn-pry);
			--text-color: var(--btn-pry-txt);

			&.active {
				--background: var(--main-bg-alt);
				--text-color: var(--lt-txt);
			}

			@media (hover: hover) and (pointer: fine) {
				&:is(a:hover,a:focus-visible),
				&:is(button:hover,button:focus-visible),
				a:is(:hover,:focus-visible) {
					--background: var(--main-bg-alt);
					--text-color: var(--dk-txt);
					--link-hover: var(--text-color);
				}
			}
		}

	}


/* ══════════════════════════════════════════════════════════════════════ */
	/* Two-flip overrides                                                     */
	/* When a .bg-bx has two nested flip classes in its ancestry within a     */
	/* [data-colors] root, it lands at a cumulative destination palette.      */
	/* Two semantics combined here:                                           */
	/*   * Interleave (ulk + lk in either order): diagonal of starting palette*/
	/*   * Same-class double (ulk² or lk²): equivalent to a single flip of    */
	/*     the opposite class (ulk² = lk, lk² = ulk)                          */
	/* Each block below lands its element directly at the terminal palette,  */
	/* beating the one-flip scopes above by source order and specificity.    */
	/* No re-flip block — already at the destination.                         */
	/* ══════════════════════════════════════════════════════════════════════ */

	/* All paths landing at alternate-light (A_L):                          */
	/*   primary-dark  > ulk/lk  > lk/ulk    (interleave / diagonal)         */
	/*   primary-light > ulk     > ulk       (ulk² = lk)                     */
	/*   alternate-dark > lk     > lk        (lk² = ulk)                     */
	@scope ( [data-colors="primary-dark"] :is(.ulk-bg .lk-bg, .lk-bg .ulk-bg), [data-colors="primary-light"] .ulk-bg .ulk-bg, [data-colors="alternate-dark"] .lk-bg .lk-bg ) {

		:scope {
			--pal-id:        var(--lt-alt-id);
			--pal-name:      var(--lt-alt-name);
			--pal-creative:  var(--lt-alt-creative);

			--background:    var(--lt-alt-bg);
			--inner-theme:   var(--lt-bg);

			--text-color:    var(--lt-alt-txt);
			--link-color:    var(--lt-alt-lnk);
			--link-hover:    var(--lt-alt-lnk-hov);

			--fnt-t-big:  var(--lt-alt-h1);
			--fnt-t-co:   var(--lt-alt-callout);
			--fnt-t-k:    var(--lt-alt-callout);
			--fnt-t-1:    var(--lt-alt-h1);
			--fnt-t-2:    var(--lt-alt-h2);
			--fnt-t-3:    var(--lt-alt-h3);
			--fnt-t-4:    var(--lt-alt-h4);
			--fnt-t-5:    var(--lt-alt-h5);
			--fnt-t-6:    var(--lt-alt-h5);
			--fnt-t-itm:  var(--lt-alt-h1);
			--fnt-t-nt:   var(--lt-alt-txt);
			--fnt-qte:    var(--lt-alt-lnk);
			--fnt-atr:    var(--lt-alt-txt);
			--fnt-phn:    var(--lt-alt-h1);

			--accent:        var(--lt-alt-accent);
			--callout:       var(--lt-alt-callout);

			--btn-pry:       var(--lt-alt-btn-pry);
			--btn-pry-txt:   var(--lt-alt-btn-pry-txt);
			--btn-sec:       var(--lt-alt-btn-sec);
			--btn-sec-txt:   var(--lt-alt-btn-sec-txt);
			--btn-trt-txt:   var(--lt-alt-btn-trt-txt);

			--btn-hvr-pry:  var(--dk-alt-bg);
			--btn-hvr-pry-txt: var(--dk-alt-txt);

			--buttons:            var(--lt-alt-btn-pry);
			--btn-bg-clr-dk:      var(--lt-alt-btn-pry);
			--btn-txt-clr-dk:     var(--lt-alt-btn-pry-txt);
			--btn-bg-clr-dk-alt:  var(--dk-alt-bg);
			--btn-txt-clr-dk-alt: var(--dk-alt-btn-pry-txt);
			--main-bg:            var(--lt-alt-bg);
			--main-bg-alt:        var(--dk-alt-bg);
			--text-alt:           var(--dk-alt-txt);

			--bdr-clr:       var(--lt-alt-bdr);
			--bg-bx-bdr-clr: var(--lt-alt-txt);

			--shape-clr-1-dyn: var(--lt-alt-accent);
			--shape-clr-2-dyn: var(--lt-alt-callout);
			--shape-clr-1-alt: #ffffff;

			--flr-hdr-clr:   var(--lt-alt-btn-pry);
		}

	}

	/* All paths landing at primary-light (P_L):                            */
	/*   alternate-dark  > ulk/lk  > lk/ulk  (interleave / diagonal)         */
	/*   alternate-light > ulk     > ulk     (ulk² = lk)                     */
	/*   primary-dark    > lk      > lk      (lk² = ulk)                     */
	@scope ( [data-colors="alternate-dark"] :is(.ulk-bg .lk-bg, .lk-bg .ulk-bg), [data-colors="alternate-light"] .ulk-bg .ulk-bg, [data-colors="primary-dark"] .lk-bg .lk-bg ) {

		:scope {
			--pal-id:        var(--lt-id);
			--pal-name:      var(--lt-name);
			--pal-creative:  var(--lt-creative);

			--background:    var(--lt-bg);
			--inner-theme:   var(--lt-alt-bg);

			--text-color:    var(--lt-txt);
			--link-color:    var(--lt-lnk);
			--link-hover:    var(--lt-lnk-hov);

			--fnt-t-big:  var(--lt-h1);
			--fnt-t-co:   var(--lt-callout);
			--fnt-t-k:    var(--lt-callout);
			--fnt-t-1:    var(--lt-h1);
			--fnt-t-2:    var(--lt-h2);
			--fnt-t-3:    var(--lt-h3);
			--fnt-t-4:    var(--lt-h4);
			--fnt-t-5:    var(--lt-h5);
			--fnt-t-6:    var(--lt-h5);
			--fnt-t-itm:  var(--lt-h1);
			--fnt-t-nt:   var(--lt-txt);
			--fnt-qte:    var(--lt-lnk);
			--fnt-atr:    var(--lt-txt);
			--fnt-phn:    var(--lt-h1);

			--accent:        var(--lt-accent);
			--callout:       var(--lt-callout);

			--btn-pry:       var(--lt-btn-pry);
			--btn-pry-txt:   var(--lt-btn-pry-txt);
			--btn-sec:       var(--lt-btn-sec);
			--btn-sec-txt:   var(--lt-btn-sec-txt);
			--btn-trt-txt:   var(--lt-btn-trt-txt);

			--btn-hvr-pry:  var(--dk-bg);
			--btn-hvr-pry-txt: var(--dk-txt);

			--buttons:            var(--lt-btn-pry);
			--btn-bg-clr-lt:      var(--lt-btn-pry);
			--btn-txt-clr-lt:     var(--lt-btn-pry-txt);
			--btn-bg-clr-lt-alt:  var(--dk-btn-pry);
			--btn-txt-clr-lt-alt: var(--dk-btn-pry-txt);
			--main-bg:            var(--lt-bg);
			--main-bg-alt:        var(--dk-bg);
			--text-alt:           var(--dk-btn-pry-txt);

			--bdr-clr:       var(--lt-bdr);
			--bg-bx-bdr-clr: var(--lt-txt);

			--shape-clr-1-dyn: var(--lt-accent);
			--shape-clr-2-dyn: var(--lt-callout);
			--shape-clr-1-alt: #ffffff;

			--flr-hdr-clr:   var(--lt-btn-pry);
		}

	}

	/* All paths landing at alternate-dark (A_D):                           */
	/*   primary-light   > ulk/lk  > lk/ulk  (interleave / diagonal)         */
	/*   primary-dark    > ulk     > ulk     (ulk² = lk)                     */
	/*   alternate-light > lk      > lk      (lk² = ulk)                     */
	@scope ( [data-colors="primary-light"] :is(.ulk-bg .lk-bg, .lk-bg .ulk-bg), [data-colors="primary-dark"] .ulk-bg .ulk-bg, [data-colors="alternate-light"] .lk-bg .lk-bg ) {

		:scope {
			--pal-id:        var(--dk-alt-id);
			--pal-name:      var(--dk-alt-name);
			--pal-creative:  var(--dk-alt-creative);

			--background:    var(--dk-alt-bg);
			--inner-theme:   var(--dk-bg);

			--text-color:    var(--dk-alt-txt);
			--link-color:    var(--dk-alt-lnk);
			--link-hover:    var(--dk-alt-lnk-hov);

			--fnt-t-big:  var(--dk-alt-h1);
			--fnt-t-co:   var(--dk-alt-callout);
			--fnt-t-k:    var(--dk-alt-callout);
			--fnt-t-1:    var(--dk-alt-h1);
			--fnt-t-2:    var(--dk-alt-h2);
			--fnt-t-3:    var(--dk-alt-h3);
			--fnt-t-4:    var(--dk-alt-h4);
			--fnt-t-5:    var(--dk-alt-h5);
			--fnt-t-6:    var(--dk-alt-h5);
			--fnt-t-itm:  var(--dk-alt-h4);
			--fnt-t-nt:   var(--dk-alt-txt);
			--fnt-qte:    var(--dk-alt-lnk);
			--fnt-atr:    var(--dk-alt-txt);
			--fnt-phn:    var(--dk-alt-h1);

			--accent:        var(--dk-alt-accent);
			--callout:       var(--dk-alt-callout);

			--btn-pry:       var(--dk-alt-btn-pry);
			--btn-pry-txt:   var(--dk-alt-btn-pry-txt);
			--btn-sec:       var(--dk-alt-btn-sec);
			--btn-sec-txt:   var(--dk-alt-btn-sec-txt);
			--btn-trt-txt:   var(--dk-alt-btn-trt-txt);

			--btn-hvr-pry:  var(--lt-alt-bg);
			--btn-hvr-pry-txt: var(--lt-alt-txt);

			--buttons:            var(--dk-alt-btn-pry);
			--btn-bg-clr-dk:      var(--dk-alt-btn-pry);
			--btn-txt-clr-dk:     var(--dk-alt-btn-pry-txt);
			--btn-bg-clr-dk-alt:  var(--lt-alt-bg);
			--btn-txt-clr-dk-alt: var(--lt-alt-btn-pry-txt);
			--main-bg:            var(--dk-alt-bg);
			--main-bg-alt:        var(--lt-alt-bg);
			--text-alt:           var(--lt-alt-txt);

			--bdr-clr:       var(--dk-alt-bdr);
			--bg-bx-bdr-clr: var(--dk-alt-bdr);

			--shape-clr-1-dyn: var(--dk-alt-accent);
			--shape-clr-2-dyn: var(--dk-alt-callout);
			--shape-clr-1-alt: #ffffff;

			--flr-hdr-clr:   var(--shape-clr-1-dyn);
		}

	}

	/* All paths landing at primary-dark (P_D):                             */
	/*   alternate-light > ulk/lk  > lk/ulk  (interleave / diagonal)         */
	/*   alternate-dark  > ulk     > ulk     (ulk² = lk)                     */
	/*   primary-light   > lk      > lk      (lk² = ulk)                     */
	@scope ( [data-colors="alternate-light"] :is(.ulk-bg .lk-bg, .lk-bg .ulk-bg), [data-colors="alternate-dark"] .ulk-bg .ulk-bg, [data-colors="primary-light"] .lk-bg .lk-bg ) {

		:scope {
			--pal-id:        var(--dk-id);
			--pal-name:      var(--dk-name);
			--pal-creative:  var(--dk-creative);

			--background:    var(--dk-bg);
			--inner-theme:   var(--dk-alt-bg);

			--text-color:    var(--dk-txt);
			--link-color:    var(--dk-lnk);
			--link-hover:    var(--dk-lnk-hov);

			--fnt-t-big:  var(--dk-h1);
			--fnt-t-co:   var(--dk-callout);
			--fnt-t-k:    var(--dk-callout);
			--fnt-t-1:    var(--dk-h1);
			--fnt-t-2:    var(--dk-h2);
			--fnt-t-3:    var(--dk-h3);
			--fnt-t-4:    var(--dk-h4);
			--fnt-t-5:    var(--dk-h5);
			--fnt-t-6:    var(--dk-h5);
			--fnt-t-itm:  var(--dk-h4);
			--fnt-t-nt:   var(--dk-txt);
			--fnt-qte:    var(--dk-lnk);
			--fnt-atr:    var(--dk-txt);
			--fnt-phn:    var(--dk-h1);

			--accent:        var(--dk-accent);
			--callout:       var(--dk-callout);

			--btn-pry:       var(--dk-btn-pry);
			--btn-pry-txt:   var(--dk-btn-pry-txt);
			--btn-sec:       var(--dk-btn-sec);
			--btn-sec-txt:   var(--dk-btn-sec-txt);
			--btn-trt-txt:   var(--dk-btn-trt-txt);

			--btn-hvr-pry:  var(--lt-bg);
			--btn-hvr-pry-txt: var(--lt-txt);

			--buttons:            var(--dk-btn-pry);
			--btn-bg-clr-dk:      var(--dk-btn-pry);
			--btn-txt-clr-dk:     var(--dk-btn-pry-txt);
			--btn-bg-clr-dk-alt:  var(--lt-bg);
			--btn-txt-clr-dk-alt: var(--lt-btn-pry-txt);
			--main-bg:            var(--dk-bg);
			--main-bg-alt:        var(--lt-bg);
			--text-alt:           var(--lt-txt);

			--bdr-clr:       var(--dk-bdr);
			--bg-bx-bdr-clr: var(--dk-bdr);

			--shape-clr-1-dyn: var(--dk-accent);
			--shape-clr-2-dyn: var(--dk-callout);
			--shape-clr-1-alt: #ffffff;

			--flr-hdr-clr:   var(--shape-clr-1-dyn);
		}

	}


} /* end @layer tokens */


/* ── Apply It ───────────────────────────────────────────────────────────── */
[data-colors] {
	--blt-clr: var(--buttons);

	background-color: var(--background);
	color: var(--text-color);

	.bg-bx {
		color: var(--text-color);

		&:not(.no-bg, .bdr-bg) {
			background-color: var(--inner-theme);
		}

		.bg-bx {
			--inner-theme: var(--background);
		}
	}

	a, button {
		color: var(--link-color);
	}

	a.clr-swp, button.clr-swp {
		color: var(--text-color);
	}

	.flr_hd {
		color: var(--flr-hdr-clr);
	}

	:is( h1, h2, h3, h4, h5, h6, [class*='fnt_']:not(a), header > *:first-child:not(a) ) {
		color: var(--title-color);
	}

	.fnt_t-big {
		--title-color: var(--fnt-t-big);
		em, strong {
			--title-color: var(--accent);
			color: var(--title-color);
			font-style: normal;
			font-weight: inherit;
		}
	}

	.fnt_t-co {
		--title-color: var(--fnt-t-co);
		em, strong {
			--title-color: var(--accent);
			color: var(--title-color);
			font-style: normal;
			font-weight: inherit;
		}
	}

	:where(h1 > em, .fnt_t-k),
	header > *:first-child:not( a, [class*='fnt_t'] ) :is(strong, em) {
		--title-color: var(--fnt-t-k);
		color: var(--title-color);
	}

	h1,
	.fnt_t-1,
	header > *:first-child:not( a, [class*='fnt_t'] ),
	.cnt-stl:not(.xpnd) > :first-child:is( h1, h2, h3, h4, h5, h6 ) {
		--title-color: var(--fnt-t-1);
		em, strong {
			--title-color: var(--accent);
			color: var(--title-color);
			font-style: normal;
			font-weight: inherit;
		}
	}
	
	h2,
	.fnt_t-2,
	header > *:nth-child(2):not(p, [class*='fnt_t'], .flr_hd),
	.cnt-stl > :nth-child(2):is( h1, h2, h3, h4, h5, h6 ) {
		--title-color: var(--fnt-t-2);
		em, strong {
			--title-color: var(--accent);
			color: var(--title-color);
			font-style: normal;
			font-weight: inherit;
		}
	}

	header:has(*:first-child > :is(strong, em)) > *:nth-child(2):not(p, [class*='fnt_t'], .flr_hd) {
		--title-color: var(--fnt-t-1);
	}

	h3, .fnt_t-3 {
		--title-color: var(--fnt-t-3);
	}

	h4, .fnt_t-4 {
		--title-color: var(--fnt-t-4);
	}

	h5, .fnt_t-5 {
		--title-color: var(--fnt-t-5);
	}

	h6, .fnt_t-6 {
		--title-color: var(--fnt-t-6);
	}

	.fnt_t-itm {
		--title-color: var(--fnt-t-itm);
	}

	.fnt_t-nt {
		--title-color: var(--fnt-t-nt);
	}

	.fnt_qte {
		--title-color: var(--fnt-qte);
	}

	.fnt_atr {
		--title-color: var(--fnt-atr);
	}

	[href^=tel]:not([class*="btn"]) {
		--link-color: var(--fnt-phn);
		--link-hover: var(--fnt-phn);
	}

	.cnt-stl ul li:before {
		background-color: var(--blt-clr);
	}

	.btn-clr {
		background-color: var(--background);
		color: var(--text-color);
		transition: background-color var(--btn-trn-sp) var(--btn-trn-tf) 0s, color var(--btn-trn-sp) var(--btn-trn-tf) 0s;
	}


	[data-role="arrows"] button {
		color: var(--link-color);
	}

	@media (hover: hover) and (pointer: fine) {

		a:is(:hover, :focus-visible):not(.btn),
		button:not(.btn):is(:hover, :focus-visible),
		[data-role="arrows"] button:is(:hover, :focus-visible) {
			color: var(--link-hover);
		}

		a.clr-swp:is(:hover, :focus-visible):not(.btn),
		button.clr-swp:is(:hover, :focus-visible):not(.btn) {
			color: var(--link-color);
		}
	}

	select option {
		color: var(--text-color);
	}
}

[data-colors="alternate-dark"] {
	background: linear-gradient(to bottom, var(--background), var(--inner-theme));
}

/* make.css */
:root:is(html) {

	--bdr-stl: solid; /* { friendly: 'Border Style', group: 'Borders' } */
	--bdr-w: 1px; /* { min: 1, max: 4, step: 1, friendly: 'Border Width', group: 'Borders' } */
	--bdr-clr-o: 0.3; /* { min: 0.05,  max: 1, step: 0.05, friendly: 'Border Opacity', group: 'Borders' } */
	--bg-bx-o: 0.9;  /* { min: .2, max: 1, step: 0.05, friendly: 'Like/Unlike Box Opacity', group: 'Calculations' } */

	--img-fg-sat: 1; /* { min: 0, max: 1, step: 0.1, friendly: 'Saturation - Foreground Imagery', group: 'Images' } */
	--img-fg-sep: 0; /* { min: 0, max: 1, step: 0.1, friendly: 'Sepia - Foreground Imagery', group: 'Images' } */
	--img-fg-brt: 1; /* { min: 0, max: 1.5, step: 0.1, friendly: 'Brightness - Foreground Imagery', group: 'Images' } */
	--img-fg-con: 1; /* { min: 0, max: 1.5, step: 0.1, friendly: 'Contrast - Foreground Imagery', group: 'Images' } */
	--img-fg-blr: 0px; /* { min: 0, max: 10, step: .1, friendly: 'Blur - Foreground Imagery', group: 'Images' } */
	--img-fg-o: 1; /* { min: .2, max: 1, step: 0.05, friendly: 'Opacity - Foreground Imagery', group: 'Images' } */

	--img-bg-o: 0.2; /* { min: .2, max: 1, step: 0.05, friendly: 'Opacity - Background Imagery', group: 'Images' } */
	--img-bg-sat: 1; /* { min: 0, max: 1, step: 0.1, friendly: 'Saturation - Background Imagery', group: 'Images' } */
	--img-bg-sep: 0; /* { min: 0, max: 1, step: 0.1, friendly: 'Sepia - Background Imagery', group: 'Images' } */
	--img-bg-brt: 1; /* { min: 0, max: 1.5, step: 0.1, friendly: 'Brightness - Background Imagery', group: 'Images' } */
	--img-bg-con: 1; /* { min: 0, max: 1.5, step: 0.1, friendly: 'Contrast - Background Imagery', group: 'Images' } */
	--img-bg-blr: 0px; /* { min: 0, max: 10, step: .1, friendly: 'Blur - Background Imagery', group: 'Images' } */

	--dk-ptrn-bg: url("/media/patterns/light-pattern.png"); /* { readonly: true } */
	--dk-ptrn-o: 1; /* { readonly: true } */
	--dk-ptrn-blnd: unset; /* { readonly: true } */

	--lt-ptrn-bg: url("/media/patterns/dark-pattern.png"); /* { readonly: true } */
	--lt-ptrn-o: 1; /* { readonly: true } */
	--lt-ptrn-blnd: unset; /* { readonly: true } */

	--mstg-img-bg-o: 0.2; /* { min: .2, max: 1, step: 0.05, friendly: 'Opacity - Mainstage Background Imagery', group: 'Images' } */
	--mstg-img-bg-sat: 1; /* { min: 0, max: 1, step: 0.1, friendly: 'Saturation - Mainstage Background Imagery', group: 'Images' } */
	--mstg-img-bg-sep: 0; /* { min: 0, max: 1, step: 0.1, friendly: 'Sepia - Mainstage Background Imagery', group: 'Images' } */
	--mstg-img-bg-brt: 1; /* { min: 0, max: 1.5, step: 0.1, friendly: 'Brightness - Mainstage Background Imagery', group: 'Images' } */
	--mstg-img-bg-con: 1; /* { min: 0, max: 1.5, step: 0.1, friendly: 'Contrast - Mainstage Background Imagery', group: 'Images' } */
	--mstg-img-bg-blr: 0px; /* { min: 0, max: 10, step: .1, friendly: 'Blur - Mainstage Background Imagery', group: 'Images' } */

	--vid-bg-o: .4; /* { min: .2, max: 1, step: 0.05, friendly: 'Video Background Opacity', group: 'Calculations' } */

	--btn-txt-clr-lt: var(--text-alt); /* { friendly: 'Light Theme - Button V1 Text Color', group: 'Colors' } */
	--btn-bg-clr-lt: var(--buttons); /* { friendly: 'Light Theme - Button V1 BG Color', group: 'Colors' } */
	--btn-txt-clr-lt-alt: var(--text-alt); /* { friendly: 'Light Theme - Button V1 Alt Text Color', group: 'Colors' } */
	--btn-bg-clr-lt-alt: var(--main-bg-alt); /* { friendly: 'Light Theme - Button V1 Alt BG Color', group: 'Colors' } */

	--btn-txt-clr-dk: var(--text-alt); /* { friendly: 'Dark Theme - Button V1 Text Color', group: 'Colors' } */
	--btn-bg-clr-dk: var(--buttons); /* { friendly: 'Dark Theme - Button V1 BG Color', group: 'Colors' } */
	--btn-txt-clr-dk-alt: var(--text); /* { friendly: 'Dark Theme - Button V1 Alt Text Color', group: 'Colors' } */
	--btn-bg-clr-dk-alt: var(--main-bg); /* { friendly: 'Dark Theme - Button V1 Alt BG Color', group: 'Colors' } */



	--frm-bdr-stl: solid; /* { friendly: 'Form Input Border Style', group: 'Borders' } */
	--frm-bdr-w: 2px; /* { min: 1, max: 4, step: 1, friendly: 'Form Input Border Width', group: 'Borders' } */
	--frm-bdr-rds: 0.44rem; /* { min: 0,  max: 5, step: 0.1, friendly: 'Form Input Border Radius', group: 'Borders' } */

	--flx-gap: 3.889rem; /* { min: 4, max: 9, step: 0.1, friendly: 'Flex Gap Amount',group: 'Spacing' } */

	--g-cnt-k-ttl-m: 0.8rem; /* { min: 0.2, max: 2, step: 0.05, friendly: 'Kicker + Title Margin', group: 'Spacing' } */
	--g-cnt-ttl-ttl-m: 0.55rem; /* { min: 0.2, max: 1, step: 0.05, friendly: 'Title Margin', group: 'Spacing' } */
	--g-cnt-ttl-cnt-m: 1rem; /* { min: 0.5, max: 1.5, step: 0.05, friendly: 'Content Margin', group: 'Spacing' } */
	--g-cnt-full-img-m: 1.5rem; /* { min: 1, max: 3, step: 0.05, friendly: 'Full Content Image Top/Bottom Margin', group: 'Spacing' } */

	--g-trn-sp: .3s; /* { min: 0, max: 1, step: 0.05, friendly: 'Default Transition Speed', group: 'Other' } */
	--g-trn-tf: ease; /* { friendly: 'Default Transition Timing Function', group: 'Other' } */

	--grd-sp: 1.778rem; /* { min: 1, max: 2.5, step: 0.001, friendly: 'Grid Display Item Spacing', group: 'Spacing' } */
	--grd-sml-mpt: .5; /* { min: 0.1, max: 1, step: 0.1, friendly: 'Grid Small Multiplier', group: 'Spacing' } */
	--grd-lrg-mpt: 1.5; /* { min: 1, max: 2, step: 0.1, friendly: 'Grid Large Multiplier', group: 'Spacing' } */
	--grd-sp-sml: calc(var(--grd-sp) * var(--grd-sml-mpt)); /* { readonly: true } */
	--grd-sp-lrg: calc(var(--grd-sp) * var(--grd-lrg-mpt)); /* { readonly: true } */
	--grd-sp-dyn: var(--grd-sp); /* { readonly: true } */

	--mn-t: 75rem; /* { min: 15, max: 100, step: 1, friendly: 'Main Thin Value', group: 'Other' } */
	--mn-w: 89rem; /* { min: 15, max: 100, step: 1, friendly: 'Main Wide Value', group: 'Other' } */
	--mn-f: 22.5rem; /* { min: 15, max: 100, step: .1, friendly: 'Main Full Value', group: 'Other' } */
	--mn_ch-w: 85ch; /* { readonly: true } */
	--mn-sys: var(--mn-t); /* { readonly: true } */

	--mn_min: calc(var(--vw_) * 0.7); /* { readonly: true } */
	--mn_min-t: calc(var(--vw_) * 0.41); /* { readonly: true } */
	--mn_max: calc(var(--vw_) * 0.938); /* { readonly: true } */

	--st-w: 1920px; /* { friendly: 'Site Outer Max Width', group: 'Other' } */
	--vw_: min(100vw, var(--st-w)); /* { readonly: true } */

	--py-i-s: 1.4rem; /* { type: 'range', min: 1, max: 3, step: 0.1, friendly: 'Payment Icon Font Size', group: 'Calculations' } */

	--rvw-str-clr: #FFD80A; /* { friendly: 'Review Star Colors', group: 'Colors' } */
	--rvw-str-s: 1rem; /* { min: 1, max: 4, step: 0.1, friendly: 'Review Star Font Size', type: 'range' } */
	--rvw-str-o: .5; /* { min: .2, max: .9, step: 0.001, friendly: 'Review Opacity For Inactive Stars' } */

	--sl-trn-sp: .6s; /* { min: .3, max: 2, step: 0.1, friendly: 'Scrolling List Transition Speed', group: 'Other' } */
	--sl-trn-tf: ease; /* { friendly: 'Scrolling List Timing Function', group: 'Other' } */
	--sl-sa-s: 3.556rem; /* { type: 'range', min: 1, max: 3, step: 0.1, friendly: 'Scrolling Arrows Font Size', group: 'Calculations' } */

	--so-i-s: 1.4rem; /* { type: 'range', min: 1, max: 3, step: 0.1, friendly: 'Social Media Icon Font Size', group: 'Calculations' } */

    --sp-hp: 2rem; /* { min: 60, max: 120, step: 1, friendly: 'Horizontal Padding Desktop', group: 'Spacing' } */
	--sp-vp: 3.5rem; /* { min: 60, max: 125, step: 1, friendly: 'Vertical Padding Desktop', group: 'Spacing' } */
	--sp-qk: 1rem; /* { min: 0.5, max: 1.5, step: 0.25, friendly: 'Quick Spacing', group: 'Spacing' } */
	--sp-vm: 45; /* { min: 30, max: 60, step: 1, friendly: 'Vertical Margin Desktop', group: 'Spacing' } */
	--sp-vm-mbl: 30; /* { min: 20, max: 40, step: 1, friendly: 'Vertical Margin Mobile', group: 'Spacing' } */

	--sp-vp-min: 6.4%; /* { readonly: true } */
	--sp-vp-max: 10%; /* { readonly: true } */
	--sp-vp-mn: 6.4; /* { readonly: true } */
	--sp-vp-mx: 10; /* { readonly: true } */
	--sp-hp-min: 8%; /* { readonly: true } */
	--sp-hp-max: 10%; /* { readonly: true } */
	--sp-hp-mn: 8%; /* { readonly: true } */
	--sp-hp-mx: 10%; /* { readonly: true } */

	--sp-vp-mmc: clamp(calc(var(--sp-vp-mn) * 1vw), var(--sp-vp), calc(var(--sp-vp-mx) * 1vw));  /* { readonly: true } */

	--sp-vm-clc: calc((var(--sp-vm-mbl) * 1px) + (var(--sp-vm) - var(--sp-vm-mbl)) * ((var(--vw_) - 320px) / (1920 - 320))); /* { readonly: true } */

	--tag-pd-v: 0.4em ; /* { min: 0.3,  max: 1, step: 0.1, friendly: 'Tag Vertical Padding', group: 'Calculations' } */
    --tag-pd-h: 1em; /* { min: 0.3,  max: 1.5, step: 0.1, friendly: 'Tag Horizontal Padding', group: 'Calculations' } */
	--tag-bdr-rds: 5em; /* { min: 0,  max: 5, step: 0.1, friendly: 'Tag Border Radius', group: 'Calculations' } */

	--bg-bx-bdr-thc: 4px; /* { min: 1,  max: 20, step: 1, friendly: 'BG Box Border Width' } */
	--bg-bx-bdr-clr-o: 1; /* { min: 0.1,  max: 1, step: .1, friendly: 'BG Box Border Opacity' } */

	--three-8ths: 36.4%;  /* Override to match Design */

}


header:has(.hdr[data-colors="primary-light"]) + main > section[data-colors="primary-light"][class*="pd_v"]:not(.bg-image):first-child,
header:has(.hdr[data-colors="alternate-light"]) + main > section[data-colors="alternate-light"][class*="pd_v"]:not(.bg-image):first-child,
header:has(.hdr[data-colors="primary-dark"]) + main > section[data-colors="primary-dark"][class*="pd_v"]:not(.bg-image):first-child,
header:has(.hdr[data-colors="alternate-dark"]) + main > section[data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image):first-child {
	padding-top: clamp(calc(var(--sp-vp-min) * 0.5), var(--sp-vp), calc(var(--sp-vp-max) * 0.5) );
}

main:has( > section:last-child:is([data-colors="primary-light"][class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="primary-light"][class*="pd_v"]:not(.bg-image):first-child,
main:has( > section:last-child:is([data-colors="alternate-light"][class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="alternate-light"][class*="pd_v"]:not(.bg-image):first-child,
main:has( > section:last-child:is([data-colors="primary-dark"][class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="primary-dark"][class*="pd_v"]:not(.bg-image):first-child,
main:has( > section:last-child:is([data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image):first-child,
main:has( > form:last-child > section:is([data-colors="primary-light"][class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="primary-light"][class*="pd_v"]:not(.bg-image):first-child,
main:has( > form:last-child > section:is([data-colors="alternate-light"][class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="alternate-light"][class*="pd_v"]:not(.bg-image):first-child,
main:has( > form:last-child > section:is([data-colors="primary-dark"][class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="primary-dark"][class*="pd_v"]:not(.bg-image):first-child,
main:has( > form:last-child > section:is([data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image):first-child{
	padding-top: 0;
}

/* Waiting on PR */
.tag:not(:has(a)), .tag a {
	border: var(--bdr-stl) var(--bdr-w) hsl(from var(--text-color) h s l / var(--bdr-clr-o));
}

/* END Waiting on PR */

:where(.sd-zn, .cnt-zn) > * + * {
    margin-top: calc(var(--sp-vm-clc)* 1.6);
}

.grd:has(> [data-item="nr"]) {
	--itm-val: 100 !important;

	+ div {
		display: none;
	}
}

.pg-nv.start.end {
  display: none;
}

.bg-bx.pattern-bg {
    background-color: transparent;
    &::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-image: url("/media/foreground/bg-bx-pattern.png");
        opacity: .5;
		background-size: 200px 200px;
		background-position: top left;
		background-repeat: repeat;
		mix-blend-mode: multiply;
        z-index: -1;
    }

    &::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: var(--inner-theme);
        z-index: -2;
    }
}

.flr-pattern {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	opacity: 0.1;
	background-repeat: repeat;
	background-size: 23px 14px;
}

[data-colors*="-light"] .flr-pattern {
	opacity: 0.05;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 40'%3E%3Cpath d='M63.013 11.8212L53.5814 39.3639H9.43156L0 11.8212L18.9903 22.2591L31.5065 0L44.0227 22.2613L63.013 11.8234V11.8212Z' fill='%23000000'/%3E%3C/svg%3E");
}

[data-colors*="-dark"] .flr-pattern {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 40'%3E%3Cpath d='M63.013 11.8212L53.5814 39.3639H9.43156L0 11.8212L18.9903 22.2591L31.5065 0L44.0227 22.2613L63.013 11.8234V11.8212Z' fill='%23ffffff'/%3E%3C/svg%3E");
}


@media screen and (width >= 700px) {
	:root {
		--fnt-s-mtp: 1 !important;
	}
}


@media screen and (width >= 1280px) {
	:root {
		--mn_min: calc(var(--vw_) * 0.6); /* { readonly: true } */
	}


	/* Sets up system module widths to be easier to change */
	[class*="mn_"].sys_w {
		max-width: clamp(var(--mn_min), var(--mn-sys), var(--mn_max));
	}

	/* normal */
	[data-colors="primary-light"][class*="pd_v"]:not(.bg-image) + [data-colors="primary-light"][class*="pd_v"]:not(.bg-image),
	[data-colors="alternate-light"][class*="pd_v"]:not(.bg-image) + [data-colors="alternate-light"][class*="pd_v"]:not(.bg-image),
	[data-colors="primary-dark"][class*="pd_v"]:not(.bg-image) + [data-colors="primary-dark"][class*="pd_v"]:not(.bg-image),
	[data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image) + [data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image) {
	    padding-top: 0;
	}

	/* plus a form */
	[data-colors="primary-light"][class*="pd_v"]:not(.bg-image) + form [data-colors="primary-light"][class*="pd_v"]:not(.bg-image),
	[data-colors="alternate-light"][class*="pd_v"]:not(.bg-image) + form [data-colors="alternate-light"][class*="pd_v"]:not(.bg-image),
	[data-colors="primary-dark"][class*="pd_v"]:not(.bg-image) + form [data-colors="primary-dark"][class*="pd_v"]:not(.bg-image),
	[data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image) + form [data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image) {
	    padding-top: 0;
	}

	/* form plus (Doesn't work in FF) */
	form:has( [data-colors="primary-light"][class*="pd_v"]:not(.bg-image) ) + [data-colors="primary-light"][class*="pd_v"]:not(.bg-image),
	form:has( [data-colors="alternate-light"][class*="pd_v"]:not(.bg-image) ) + [data-colors="alternate-light"][class*="pd_v"]:not(.bg-image),
	form:has( [data-colors="primary-dark"][class*="pd_v"]:not(.bg-image) ) + [data-colors="primary-dark"][class*="pd_v"]:not(.bg-image),
	form:has( [data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image) ) + [data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image) {
	    padding-top: 0;
	}

	/* form plus form (Doesn't work in FF) */
	form:has( [data-colors="primary-light"][class*="pd_v"]:not(.bg-image) ) + form > [data-colors="primary-light"][class*="pd_v"]:not(.bg-image) ,
	form:has( [data-colors="alternate-light"][class*="pd_v"]:not(.bg-image) ) + form > [data-colors="alternate-light"][class*="pd_v"]:not(.bg-image),
	form:has( [data-colors="primary-dark"][class*="pd_v"]:not(.bg-image) ) + form > [data-colors="primary-dark"][class*="pd_v"]:not(.bg-image) ,
	form:has( [data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image) ) + form > [data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image)  {
	    padding-top: 0;
	}

}

@media screen and (width < 1280px) {
	:root {
		--sp-vp-max-mbl: 16%; /* { readonly: true } */
	}

	/* Footer padding if last panel is full-mbl */
	main:has( > section:last-child:is([data-colors="primary-light"].full-mbl[class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="primary-light"][class*="pd_v"]:not(.bg-image):first-child,
	main:has( > section:last-child:is([data-colors="alternate-light"].full-mbl[class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="alternate-light"][class*="pd_v"]:not(.bg-image):first-child,
	main:has( > section:last-child:is([data-colors="primary-light"].wht-bg.full-mbl[class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="primary-light"].wht-bg[class*="pd_v"]:not(.bg-image):first-child,
	main:has( > section:last-child:is([data-colors="primary-dark"].full-mbl[class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="primary-dark"][class*="pd_v"]:not(.bg-image):first-child,
	main:has( > section:last-child:is([data-colors="alternate-dark"].full-mbl[class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image):first-child,
	main:has( > section:last-child:is([data-colors="primary-dark"].blk-bg.full-mbl[class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="primary-dark"].blk-bg[class*="pd_v"]:not(.bg-image):first-child,
	main:has( > form:last-child > section:is([data-colors="primary-light"].full-mbl[class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="primary-light"][class*="pd_v"]:not(.bg-image):first-child,
	main:has( > form:last-child > section:is([data-colors="alternate-light"].full-mbl[class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="alternate-light"][class*="pd_v"]:not(.bg-image):first-child,
	main:has( > form:last-child > section:is([data-colors="primary-light"].wht-bg.full-mbl[class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="primary-light"].wht-bg[class*="pd_v"]:not(.bg-image):first-child,
	main:has( > form:last-child > section:is([data-colors="primary-dark"].full-mbl[class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="primary-dark"][class*="pd_v"]:not(.bg-image):first-child,
	main:has( > form:last-child > section:is([data-colors="alternate-dark"].full-mbl[class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="alternate-dark"][class*="pd_v"]:not(.bg-image):first-child,
	main:has( > form:last-child > section:is([data-colors="primary-dark"].blk-bg.full-mbl[class*="pd_v"]:not(.bg-image))) + footer > section[data-colors="primary-dark"].blk-bg[class*="pd_v"]:not(.bg-image):first-child {
		padding-top: var(--pd-v);
	}
}

/* ── Gutter pattern + body containing block (visible past 1920px cap) ── */

body, html {
    background-color: #999999;
    color: #fff;
}

body {
    position: relative;
	scrollbar-gutter: stable;
}

@media (min-width: 1920px) {
    :root:is(html) {
        --mn_max: calc(var(--vw_) * 0.85);
    }

    html::before {
        content: '';
        position: fixed;
        inset: 0;
        z-index: -1;
        background-image: url(/media/brand/logo-gutter-tile.png);
        background-size: 320px 520px;
        background-repeat: repeat;
        filter: grayscale(1) opacity(.18);
        pointer-events: none;
    }
}

/* global.css */

:root {
	--full: 100%; /* { readonly: true } */
	--half: 50%; /* { readonly: true } */
	--third: 33.333%; /* { readonly: true } */
	--fourth: 25%; /* { readonly: true } */
	--fifth: 20%; /* { readonly: true } */
	--sixth: 16.666%; /* { readonly: true } */
	--seventh: 14.285%; /* { readonly: true } */
	--two-3rds: 66.666%; /* { readonly: true } */
	--three-4ths: 75%; /* { readonly: true } */
	--three-8ths: 37.5%; /* { readonly: true } */
	--five-8ths: 62.5%; /* { readonly: true } */
	--forty-five: 45%; /* { readonly: true } */
	--fifty-five: 55%; /* { readonly: true } */
	--four-5ths: 80%; /* { readonly: true } */

	--min-fnt-s: 0.938rem; /* { readonly: true } */
	--max-fnt-s: 1rem; /* { readonly: true } */
	--clp-rng-1: 0.7520rem; /* { readonly: true } */
	--clp-rng-2: calc(var(--vw_) * 0.007936); /* { readonly: true } */
	--clp-rng: calc(var(--clp-rng-1) + var(--clp-rng-2) ); /* { readonly: true } */
	--mn_wth: clamp(var(--mn_min), var(--mn-f), var(--mn_max)); /* { readonly: true } */
	--mn_ch-w: 67ch; /* { readonly: true } */
	--shf-off-a: calc(((var(--vw_) - clamp(var(--mn_min), var(--mn-f), var(--mn_max)) ) / 2)); /* { readonly: true } */

	--black: #000000; /* { readonly: true } */
	--white: #FFFFFF; /* { readonly: true } */

	--hdr-lg-mx-ht: 180; /* { min: 50, max: 500, step: 10, friendly: 'Logo Max Height Desktop', group: 'Calculations' } */
	--hdr-lg-mx-ht-mbl: 100; /* { min: 10, max: 300, step: 1, friendly: 'Logo Max Height Mobile', group: 'Calculations' } */
	--hdr-lg-mx-wd: 398; /* { min: 50, max: 500, step: 10, friendly: 'Logo Max Width Desktop', group: 'Calculations' } */
	--hdr-lg-mx-wd-mbl: 170; /* { min: 10, max: 300, step: 1, friendly: 'Logo Max Width Mobile', group: 'Calculations' } */

	--vid-bg-o: 0.3; /* { min: .2, max: 1, step: 0.05, friendly: 'Video Background Opacity', group: 'Images' } */
	--mstg-img-bg-o: 0.3; /* { min: .2, max: 1, step: 0.05, friendly: 'Mainstage Background Opacity', group: 'Images' } */
	--bnr-img-bg-o: 0.3; /* { min: .2, max: 1, step: 0.05, friendly: 'Banner Background Image Opacity', , group: 'Images' } */
	--img-bg-o: 0.3; /* { min: .2, max: 1, step: 0.05, friendly: 'Background Imagery', group: 'Images' } */

	--awd-mx-wd: 280; /* { min: 50, max: 500, step: 10, friendly: 'Awards Max Width Desktop', group: 'Images' } */
	--awd-mx-wd-mbl: 170; /* { min: 10, max: 300, step: 1, friendly: 'Awards Max Width Mobile', group: 'Images' } */
	--awd-mx-wd-clc: calc((var(--awd-mx-wd-mbl) * 1px) + (var(--awd-mx-wd) - var(--awd-mx-wd-mbl)) * ((var(--vw_) - 320px) / (1920 - 320))); /* { readonly: true } */
	
	--awd-mx-ht: 180; /* { min: 50, max: 500, step: 10, friendly: 'Awards Max Height Desktop', group: 'Images' } */
	--awd-mx-ht-mbl: 100; /* { min: 10, max: 300, step: 1, friendly: 'Awards Max Height Mobile', group: 'Images' } */
	--awd-mx-ht-clc: calc((var(--awd-mx-ht-mbl) * 1px) + (var(--awd-mx-ht) - var(--awd-mx-ht-mbl)) * ((var(--vw_) - 320px) / (1920 - 320))); /* { readonly: true } */
}

html {
	font-size: clamp(var(--min-fnt-s), var(--clp-rng), var(--max-fnt-s));
	-webkit-tap-highlight-color: transparent;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
	background: var(--main-bg, #fff);
}

*, *:before, *:after {
	box-sizing: border-box;
}

.hd,
.ninja,
html[data-flr="0"] [class*="flr_"],
.no-flr [class*="flr_"] {
	display: none !important;
}

body {
	font-size: 100%;
	margin: 0 auto;
	max-width: var(--st-w);
	overflow-x: clip;
}

ol, ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

dl, dd {
	margin: 0;
}

sup {
	font-size: .5em;
}

a[href^=tel] {
	cursor: default;
}

address {
	font-style: normal;
}

img {
	max-width: 100%;
}

figure, 
blockquote {
	margin: 0;
}

video {
	display: block;
	width: 100%;
	
	&[poster] {
		object-fit: cover;
	}
}

.rlt {
	position: relative;
}

.abs {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.blk {
	display: block;
}

.nln-blk {
	display: inline-block;
}

.hdn {
	overflow: hidden;
}

.blk-bg {
	background-color: var(--black);
}

.psu-bfr, 
.psu-aft {
	z-index: 1;
	position: relative;
}

.psu-bfr::before, 
.psu-aft::after {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
	pointer-events: none;
}

.m-ato {
	margin-left: auto;
	margin-right: auto;
	display: block;
}

.disabled,
[disabled] {
	pointer-events: none;
	opacity: .7;
}

[aria-hidden="true"] {	
	visibility: hidden;
}

header:empty {
	display: none;
}

:where(div, header) > br:only-child {
	display: none;
}

[data-role="btn"] {
	cursor: pointer;
}

[class*="gp_sp"] {
	gap: var(--grd-sp-dyn);
	
	&[class*="-sml"] {
		--grd-sp-dyn: var(--grd-sp-sml);
	}
	
	&[class*="-lrg"] {
		--grd-sp-dyn: var(--grd-sp-lrg);
	}
	
    > .half {
		width: calc(var(--half) - (var(--grd-sp-dyn) * 0.5 ));
	}
	
	> .third {
		width: calc(var(--third) - (var(--grd-sp-dyn) * 0.667 ));
	}
	
	> .fourth {
		width: calc(var(--fourth) - (var(--grd-sp-dyn) * 0.75 ));
	}
	
}



/* Icon Defaults */
svg {
    height: 1em;
	width: 1em;
	
	
	&:not(.flr_hd &) {
        fill: currentColor;
		overflow: visible;

        [style*="stroke-width"],
        [stroke-width] {
            /* stroke: currentColor;  Temp removal for now  */
        }

        [style*="stroke-width"]:not([fill]),
        [stroke-width]:not([fill]) {
            fill: none;
        }
    }
	
	use {
	    opacity: 0;
		
		&:empty {
			display:none;
		}
	}
	
	* {
		pointer-events: none;
	}
	
}


/* Remove Transitions for People who Prefer Reduced Motion */
@media (prefers-reduced-motion: reduce) {
 
	body *, 
	body *:before, 
	body *:after {
		transition: none !important;	
	}
  
}

/* Fixes Animation Bug */
[class*='prlx'],
[class*='anm_'] {
	will-change: transform, opacity;
}

/* Lazy Load Styles */
.loading:where(img,video,source) {
	filter: blur(3px);
	opacity: 0;
    transition: none;
}

img, 
video, 
source {
	transition: filter var(--g-trn-sp) var(--g-trn-tf) .3s, opacity var(--g-trn-sp) var(--g-trn-tf) .3s;
}


/* General - layout */
section {
	position: relative;
}

[class*="mn_"] {
	width: 100%;
	max-width: var(--mn_wth);
	margin-inline: auto;
	position: relative;
}


/* Widths */
.full {
	width: var(--full);
}

.half {
	width: var(--half);
}

.third {
	width: var(--third);
}

.two-thirds {
	width: var(--two-3rds);
}

.fourth {
	width: var(--fourth);
}

.fifth {
	width: var(--fifth);
}

.three-8ths {
	width: var(--three-8ths);
}

.five-8ths {
	width: var(--five-8ths);
}

.forty-five {
	width: var(--forty-five);
}

.fifty-five {
	width: var(--fifty-five);
}

.max-cnt {
	width: max-content;
	max-width: 100%;
}

/* Link & Button Styles */
a {
	text-decoration: none;
	transition: color var(--g-trn-sp) var(--g-trn-tf) 0s;
}

button {
	border: none;
	text-align: inherit;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	outline: none;
	cursor: pointer;
	margin: 0;
	padding: 0;
	background-color: transparent;
	color: inherit;
}



/* Show/Hide Utilities */
[class*="sw-"],
[class*='flx-at-'][class*="sw-"] {
    display: none;
}

[class*="hd-"] {
    display: block;
}

/* Logo & Watermark Display */
.dk-lg,
.lt-lg,
.wtr-mrk,
.lt-bg .bg-bx:not(.lk-bg, .no-bg, .bdr-bg) :is(.dk-lg, .dk-mrk),
.dk-bg .bg-bx:not(.lk-bg, .no-bg, .bdr-bg) :is(.lt-lg, .lt-mrk) {
    display: none;
}

.lt-bg :is(.dk-lg, .dk-mrk),
.dk-bg :is(.lt-lg, .lt-mrk),
.lt-bg :is(.ulk-bg, .alt-bg) :is(.lt-lg, .lt-mrk),
.dk-bg :is(.ulk-bg, .alt-bg) :is(.dk-lg, .dk-mrk) {
	display: block;
}

/* Images General Styles */
img {
	display: block;
}

picture {
	display: block;
	
	source {
		width: 0;
	}

	img {
		width: 100%;
	}
}

picture:not([data-usc5]) {

	img:where([src*=".jpg"],[src*=".webp"]),
	img.static-map {
		object-fit: cover;
	}
	
	img[src*=".png"]:not(.static-map),
	img[src*=".webp"].png {
		object-fit: contain;
	}
	
}

picture[data-usc5] {

	img[src*=".png"] {
		--opacity: 1;
		
		object-fit: contain;
	}

	&.bg img,
	img:not([src*=".png"]) {
		object-fit: cover;
	}

}


.bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	
	img {
		position: relative;
	    left: 50%;
	    top: 50%;
	    width: calc(100% + 2px);
	    height: calc(100% + 2px);
	    transform: translate(-50%,-50%);
	}
}

:is(section, aside):not(.bg-image) > .bg,
:is(section, aside):not(.bg-image) .bg-wrp .bg {
	display: none;
}

/* BG Boxes */
.bg-bx {
	position: relative;
	z-index: 1;

	&.no-bg {
		box-shadow: none !important;
		border-radius: unset !important;
		padding: 0;
		
		&.grd {
			gap: var(--grd-sp-dyn);
	
			> [class*='pd_'] {
				padding-block: 0;
			}
		}
	
		> [class*='pd_'] {
			padding-inline: 0;
	
			&:first-child {
				padding-block-start: 0;
			}
	
			&:last-child {
				padding-block-end: 0;
			}
		}
		
	}

	&.bdr-bg {
		border: solid var(--bg-bx-bdr-thc, 4px) hsl(from var(--bdr-clr, var(--text-color)) h s l / var(--bg-bx-bdr-clr-o, 0.4));
	}
}

[data-role="list"]:has(.crd:is(.no-bg,.bdr-bg)) {
	filter: none;	
}

/* BG Pattern Styles */

.bg-pattern > .bg {
	display: none;
}

.bg-pattern {

	&::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
	
	&.bg-bx::before {
		z-index: -1;
	}
}

.lt-bg.bg-pattern::before {
	opacity: var(--lt-ptrn-o);
	background-image: var(--lt-ptrn-bg);
	background-blend-mode: var(--lt-ptrn-blnd);
}

.dk-bg.bg-pattern::before {
	opacity: var(--dk-ptrn-o);
	background-image: var(--dk-ptrn-bg);
	background-blend-mode: var(--dk-ptrn-blnd);
}

.bg-bx.bg-pattern::before {
	opacity: var(--lt-inr-ptrn-o);
	background-image: var(--lt-inr-ptrn-bg);
	mix-blend-mode: var(--lt-inr-ptrn-blnd);
}

.bg-bx.alt-bg.bg-pattern::before {
	opacity: var(--alt-inr-ptrn-o);
	background-image: var(--alt-inr-ptrn-bg);
	background-blend-mode: var(--alt-inr-ptrn-blnd);
}

.dk-bg .lk-bg.bg-pattern::before,
.lt-bg .ulk-bg.bg-pattern::before {
	opacity: var(--dk-inr-ptrn-o);
	background-image: var(--dk-inr-ptrn-bg);
	background-blend-mode: var(--dk-inr-ptrn-blnd);
}


/* Social Media & Payment Icon Styles */
.so-lk svg {
	font-size: var(--so-i-s);
}

.py-lk svg {
	font-size: var(--py-i-s);
}

/* Text Alignment */

[class*="ta_"] {
	text-align: center;
}

:where(img, svg)[class*="ta_"] {
	margin-left: auto;
	margin-right: auto;
}

/* Tag */
.tag:not(:has(a)), .tag a {
	display: inline-block;
	padding: var(--tag-pd-v) var(--tag-pd-h);
	border-radius: var(--tag-bdr-rds);
	border: var(--bdr-stl) var(--bdr-w) hsl(from var(--text-color) h s l / var(--bdr-clr-o));
	transition: background-color var(--g-trn-sp) var(--g-trn-tf) 0s, color var(--g-trn-sp) var(--g-trn-tf) 0s;
}

/* Dialpad Fix */
.sw-phone:not([class*="hd"]) {
	display: inline-block !important;
}

[class*="flx"].sw-phone {
	display: flex !important;
}

html body a[href].btn.sw-phone:not(:hover) {
	color: var(--text-alt) !important;
}

:where(.lt-bg,.dk-bg) {
	[href^=dialpad]:not([class*="btn"]) {
		--link-color: var(--fnt-phn);
		--link-hover: var(--fnt-phn);
	}
}

/* 700px Responsive (min-width) */
@media screen and (min-width:700px) {
    :root {
    	--fnt-s-mtp: .9375; /* { min: .9375, max: 1, step: .005, type: 'range', friendly: 'Site Font Size Multiplier (700px - 1919px)' } */
        --min-fnt-s: calc(1rem * var(--fnt-s-mtp)); /* { readonly: true } */
        --max-fnt-s: calc(1.063rem * var(--fnt-s-mtp)); /* { readonly: true } */
        --clp-rng-1: calc(0.5590rem * var(--fnt-s-mtp)); /* { readonly: true } */
        --clp-rng-2: calc(var(--vw_) * 0.010080 * var(--fnt-s-mtp)); /* { readonly: true } */
    }

	.sw-700[class*="flx-at-700"]{
		display: flex;
	}
	
	.sw-700:not([class*="flx-at-700"]) {
		display: block;
	}
	
	.hd-700 {
		display: none !important;
	}
	
	.ta_l-700 {
		text-align: left;
	}

	.ta_r-700 {
		text-align: right;
	}
	
	:where(img, svg).ta_r-700 {
		margin-left: auto; 
		margin-right: 0;
	}
	
	:where(img, svg).ta_l-700 {
		margin-right: auto; 
		margin-left: 0;
	}
	
}

/* 1280px Responsive (min-width) */
@media screen and (min-width:1280px) {
    :root {
        --min-fnt-s: calc(0.938rem * var(--fnt-s-mtp)); /* { readonly: true } */
        --max-fnt-s: calc(1.063rem * var(--fnt-s-mtp)); /* { readonly: true } */
        --clp-rng-1: calc(0.2107rem * var(--fnt-s-mtp)); /* { readonly: true } */
        --clp-rng-2: calc(var(--vw_) * 0.009091 * var(--fnt-s-mtp)); /* { readonly: true } */
		--mn_wth: var(--mn_max); /* { readonly: true } */
    }
	
	.mn_wd {
		max-width: clamp(var(--mn_min), var(--mn-w), var(--mn_max));
	}

	.mn_tn {
		max-width: clamp(var(--mn_min-t), var(--mn-t), var(--mn_max));
	}

	.mn_ch {
		max-width: var(--mn_ch-w);
	}

	.sw-1280[class*="flx-at-1280"] {
		display: flex;
	}
	
	.sw-1280:not([class*="flx-at-1280"]) {
		display: block;
	}
	
	.hd-1280 {
		display: none;
	}

	.ta_l-1280 {
		text-align: left;
	}
	
	.ta_r-1280 {
		text-align: right;
	}
	
	:where(img, svg).ta_r-1280 {
		margin-left: auto; 
		margin-right: 0;
	}
	
	:where(img, svg).ta_l-1280 {
		margin-right: auto; 
		margin-left: 0;
	}
	
	:where(.sd-zn, .cnt-zn) > * + * {
		margin-top: calc(var(--sp-vm-clc) * 1.6);
	}

    .stcky {
        position: sticky;
        top: var(--pd-v);
		align-self: flex-start;
    }

}

/* 1500px Responsive (min-width) */
@media screen and (min-width:1500px) {
    :root {
        --min-fnt-s: calc(1rem * var(--fnt-s-mtp)); /* { readonly: true } */
        --max-fnt-s: calc(1.063rem * var(--fnt-s-mtp)); /* { readonly: true } */
        --clp-rng-1: calc(0.0550rem * var(--fnt-s-mtp)); /* { readonly: true } */
        --clp-rng-2: calc(var(--vw_) * 0.010080 * var(--fnt-s-mtp)); /* { readonly: true } */
    }
}

/* 1920px Responsive (min-width) */
@media screen and (min-width:1920px) {
    :root {
        --fnt-s-mtp: 1; /* { min: .89, max: 1, step: .01, type: 'range', friendly: 'Site Font Size Multiplier (1920px & Above)' } */
        --min-fnt-s: calc(1.125rem * var(--fnt-s-mtp)); /* { readonly: true } */
        --max-fnt-s: calc(1.375rem * var(--fnt-s-mtp)); /* { readonly: true } */
        --clp-rng-1: calc(-0.3295rem * var(--fnt-s-mtp)); /* { readonly: true } */
        --clp-rng-2: calc(var(--vw_) * 0.012121 * var(--fnt-s-mtp)); /* { readonly: true } */
    }

	.sw-1920[class*="flx-"]{
		display: flex;
	}
	
	.sw-1920:not([class*="flx-"]) {
		display: block;
	}

	.ta_l-1920 {
		text-align: left;
	}
	
	.ta_r-1920 {
		text-align: right;
	}
	
	:where(img, svg).ta_r-1920 {
		margin-left: auto; 
		margin-right: 0;
	}
	
	:where(img, svg).ta_l-1920 {
		margin-right: auto; 
		margin-left: 0;
	}
	
}

@media screen and (max-width:1279px) {
	
	.cms-content .hdr .mbl-mnu { 
		translate: 0;
		opacity: 1;
	}

	section.full-mbl {
		padding-block: 0;
		
		.mbl-fx, 
		&:has([class*="mn_"] > .full-mbl.no-bg:only-child) {
			padding-block: var(--sp-vp-mmc);
		}
		
		.full-mbl {
			width: calc(var(--vw_) + 1px);
			left: 50%;
			transform: translateX(-50%);
			
			> [class*="pd_h"],
			&[class*="pd_h"] {
				padding-left: var(--shf-off-a);
				padding-right: var(--shf-off-a);
			}
			
			> img {
				position: relative;
				left: 50%;
				transform: translateX(-50%);
				width: calc(var(--vw_) + 1px) !important;
				max-width: none;
			}
			
			&.bg > img {
				transform: translate(-50%,-50%);
			}
	
			&.no-bg:not(:only-child)  {
				> [class*="pd_v"], &[class*="pd_v"] {
					padding-bottom: var(--sp-vp-mmc);
				}
			}
		}
	
		aside {
			.full-mbl.bg-bx {
				> [class*="pd_v"], &[class*="pd_v"] {
					padding-bottom: var(--sp-vp-mmc);
				}
			}
		}
	}

	.sd-zn {
		> *:has(.full-mbl) + *:has(.full-mbl) {
			margin-top: 0;
		}
	}		
	
	[class*="flx"].ta_l-1280,
	.ta_l-1280 [class*="flx"],
	[class*="flx"].ta_r-1280,
	.ta_r-1280 [class*="flx"] {
		justify-content: center;
	}

	@supports not (animation-timeline: scroll()) {
	
		[class*="anm_"].full-mbl {
			transform: translateX(-50%) !important;
		}
	}
	
}

@media screen and (max-width:699px) {

	[class*="flx"].ta_l-700,
	.ta_l-700 [class*="flx"],
	[class*="flx"].ta_r-700,
	.ta_r-700 [class*="flx"] {
		justify-content: center;
	}
	
}

@supports not (animation-timeline: scroll()) {
	[class*='anm_'],
	[class*='anm_lst'] > * {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
		translate: none !important;
	}
}


/* image-styles.css */

:root {
	--opacity: var(--img-fg-o);
	--filter: saturate(var(--img-fg-sat)) sepia(var(--img-fg-sep)) brightness(var(--img-fg-brt)) contrast(var(--img-fg-con)) blur(var(--img-fg-blr));
}

picture img {
	opacity: var(--opacity);
    filter: var(--filter);
}

.bg-image,
.ovrly {
	--opacity: var(--img-bg-o);
	--filter: saturate(var(--img-bg-sat)) sepia(var(--img-bg-sep)) brightness(var(--img-bg-brt)) contrast(var(--img-bg-con)) blur(var(--img-bg-blr));
}

.mstg-tls {
    --opacity: var(--mstg-img-fg-o);
    --filter: saturate(var(--mstg-img-fg-sat)) sepia(var(--mstg-img-fg-sep)) brightness(var(--mstg-img-fg-brt)) contrast(var(--mstg-img-fg-con)) blur(var(--mstg-img-fg-blr));
	
	&.bg-image,
	.ovrly {
	    --opacity: var(--mstg-img-bg-o);
	    --filter: saturate(var(--mstg-img-bg-sat)) sepia(var(--mstg-img-bg-sep)) brightness(var(--mstg-img-bg-brt)) contrast(var(--mstg-img-bg-con)) blur(var(--mstg-img-bg-blr));
	}
	
}

.bnr-tls {
    --opacity: var(--bnr-img-fg-o);
    --filter: saturate(var(--bnr-img-fg-sat)) sepia(var(--bnr-img-fg-sep)) brightness(var(--bnr-img-fg-brt)) contrast(var(--bnr-img-fg-con)) blur(var(--bnr-img-fg-blr));
	
	&.bg-image,
	.ovrly {
	    --opacity: var(--bnr-img-bg-o);
	    --filter: saturate(var(--bnr-img-bg-sat)) sepia(var(--bnr-img-bg-sep)) brightness(var(--bnr-img-bg-brt)) contrast(var(--bnr-img-bg-con)) blur(var(--bnr-img-bg-blr));
	}
}

li picture:not(.ovrly) img,
.bg-image picture:not(.bg) img { 
	opacity: 1 !important;
	filter: none !important;
}

section:has(picture.wtr-mrk img) {
	--wtr-mrk-tp: 20%; /* { min: -50, max: 50, step: 1, type: 'range', friendly: 'Watermark Top Position', group: 'Images' } */
	--wtr-mrk-lt: 0%; /* { min: -30, max: 30, step: 1, type: 'range', friendly: 'Watermark Left Position', group: 'Images' } */
	--wtr-mrk-w: 40%; /* { min: 0, max: 100, step: 1, type: 'range', friendly: 'Watermark Width', group: 'Images' } */
	--wtr-mrk-o: 1; /* { min: 0, max: 100, step: 1, type: 'range', friendly: 'Watermark Opacity', group: 'Images' } */
	
	picture.wtr-mrk {
			
		> img {
			position: absolute;
			top: var(--wtr-mrk-tp);
			left: var(--wtr-mrk-lt);
			opacity: var(--wtr-mrk-o);
			max-width: var(--wtr-mrk-w);
			height: max-content;
			transform: none;
		}
	}
	
	&.f_rev {
		picture.wtr-mrk img {
			left: auto;
			right: var(--wtr-mrk-lt);
		}
	}
}

/* frosted-bg.css */
/* Frosted Glass — frst-bg
 *
 * Apply alongside bg-bx to replace the solid inner-theme background with
 * a semi-transparent frosted glass surface.
 *
 * Works in any color context — the glass tint derives from --text-color,
 * so it automatically adapts when used with lk-bg or ulk-bg.
 *
 * Overrideable vars (set on the element or a parent):
 *   --frst-bg-clr  — color channel source  (default: --text-color)
 *   --frst-bg-o    — background opacity     (default: 0.07)
 *   --frst-bdr-o   — border opacity         (default: 0.15)
 *   --frst-blur    — backdrop blur amount   (default: 12px)
 */

.bg-bx.frst-bg {
    --frst-bg-clr: var(--inner-theme);
    --frst-bg-o:   0.5;
    --frst-blur:   12px;

    background-color:        hsl(from var(--frst-bg-clr) h s l / var(--frst-bg-o));
    border:                  1px solid hsl(from var(--bdr-clr, var(--text-color)) h s l / var(--bdr-clr-o));
    backdrop-filter:         blur(var(--frst-blur));
    -webkit-backdrop-filter: blur(var(--frst-blur));

    &.blk-bg
    {
        --frst-bg-clr: var(--black);
    }
}

/* review-stars.css */

:root {
	--rvw-str-gp: 3px;
	--rvw-str-clr: #FFD80A;
	--rvw-str-s: 1.5rem; /* { min: 1, max: 4, step: 0.1, friendly: 'Review Star Font Size', group: 'Calculations' } */
	--rvw-str-o: 0.5; /* { min: 0, max: 0.9, step: 0.01, friendly: 'Opacity For Inactive Review Stars', group: 'Calculations' } */
}

/* Review Stars */
.strs {
	gap: var(--rvw-str-gp);
	font-size: var(--rvw-str-s);
	color: var(--rvw-str-clr);
	
	&[class*='rt-1'] {
		
		&:is(.rt-1, .rt-1-0) > :nth-child(n + 2), 
		&:not( :is(.rt-1, .rt-1-0) ) > :nth-child(n + 3) {
			opacity: var(--rvw-str-o);
		}
		
		&:not( :is(.rt-1, .rt-1-0) ) > svg:nth-child(2), 
		&:not( :is(.rt-1, .rt-1-0) ) > :nth-child(2) svg {
			fill: url(#StarsGradient);
		}
		
	}
	
	&[class*='rt-2'] {
		
		&:is(.rt-2, .rt-2-0) > :nth-child(n + 3), 
		&:not( :is(.rt-2, .rt-2-0) ) > :nth-child(n + 4) {
			opacity: var(--rvw-str-o);
		}
		
		&:not( :is(.rt-2, .rt-2-0) ) > svg:nth-child(3), 
		&:not( :is(.rt-2, .rt-2-0) ) > :nth-child(3) svg {
			fill: url(#StarsGradient);
		}
		
	}
	
	&[class*='rt-3'] {
		
		&:is(.rt-3, .rt-3-0) > :nth-child(n + 4), 
		&:not( :is(.rt-3, .rt-3-0) ) > :nth-child(n + 5) {
			opacity: var(--rvw-str-o);
		}
		
		&:not( :is(.rt-3, .rt-3-0) ) > svg:nth-child(4), 
		&:not( :is(.rt-3, .rt-3-0) ) > :nth-child(4) svg {
			fill: url(#StarsGradient);
		}
		
	}
	
	&[class*='rt-4'] {
		
		&:is(.rt-4, .rt-4-0) > :nth-child(n + 5) {
			opacity: var(--rvw-str-o);
		}
		
		&:not( :is(.rt-4, .rt-4-0) ) > svg:nth-child(5), 
		&:not( :is(.rt-4, .rt-4-0) ) > :nth-child(5) svg {
			fill: url(#StarsGradient);
		}
		
	}
}

/* scrolling-list.css */

[data-role="scroller"] {
	
	&:not(.start.end) [data-role="list"] {
		justify-content: flex-start;
		will-change: scroll-position;
	}
	
	
	&:not(.msr){
		
		[data-role="list"] {			
			scroll-snap-type: x mandatory;
		}
	
		[data-direction="vertical"] [data-role="list"] {
			scroll-snap-type: y mandatory;
		}
	}
	
	[data-role="list"] {
		overflow-x: auto;
		scroll-behavior: smooth;
		flex-wrap: nowrap !important;
		will-change: scroll-position;
		
		&.instant {
			scroll-behavior:  auto;
		}

		&::-webkit-scrollbar {
			display: none;
		}
	}

	[data-direction="vertical"] [data-role="list"] {
		flex-wrap: wrap !important;
		overscroll-behavior: contain;
	}
		
	[data-role="item"] {
		scroll-snap-align: start;
	}
		
	

	&.start.end [data-role="arrows"],
	&:not(.s-active) [data-role="arrows"],
	&.tabbing [data-role="arrows"] {
		display: none !important;
	}
	
	&.start [data-action="Prev"],
	&.end [data-action="Next"] {
		opacity: 0.5;
		pointer-events: none;
	}
	
}

[data-role="arrows"] {
	gap: var(--sp-qk);
	pointer-events: none;

	button {
		pointer-events: auto;
	}

	button svg.icn {
		font-size: var(--sl-sa-s);
		transition: color var(--g-trn-sp) var(--g-trn-tf) 0s;
	}
}

/* scrolling-list-side-arrows.css */

@media screen and (min-width:1280px) {
	
	[data-role="scroller"] {
		--sl-sa-pd-mtp: 1.5; /*{ min: 1, max: 2.5, step: 0.1, type: 'range', friendly: 'Side Scrolling Arrows Padding' }*/
	
		.sl_sa-edg {
			position: relative;
			padding-left: calc(var(--sl-sa-s) * var(--sl-sa-pd-mtp) );
			padding-right: calc(var(--sl-sa-s) * var(--sl-sa-pd-mtp) );
			
			[data-role="container"] {
				z-index: 2;
			}
			
			[data-role="arrows"] {
				position: absolute;
				width: 100%;
				top: 50%;
				left: 0;
				z-index: 1;
				margin-top: 0;
				justify-content: space-between;
				transform: translateY(-50%);
			}
		}
		
	}
}
 

/* ui-scroll.css */

/* Scroll Bar */
:root {
    --ui-scroll-brd-rds: 12px; /* { readonly: true } */
    --ui-scroll-w: 0.278rem; /* { readonly: true } */
}

.ui-scroll {
    overflow: auto;
	
	&::-webkit-scrollbar {
	    width: var(--ui-scroll-w) !important;
	    height: calc(var(--ui-scroll-w) * 2) !important;
	}
	
	&::-webkit-scrollbar-thumb {
	    background-color: var(--text-color);
	    border-radius: var(--ui-scroll-brd-rds);
	    border: 0;
	}
	
	&::-webkit-scrollbar-track {
	    background-color: hsl(from var(--text-color) h s l / var(--bdr-clr-o));
	    border-radius: var(--ui-scroll-brd-rds);
	    box-shadow: none;
	    opacity: .3;
	}

	&[class*="ht-"] {
		--ui-height: auto;
		max-height: var(--ui-height);
	}
	
	&.ht-10 {
		--ui-height: 10rem;
	}

	&.ht-15 {
		--ui-height: 15rem;
	}

	&.ht-20 {
		--ui-height: 20rem;
	}

}

/* pop-up.css */

/* Pop-up General */
[popover].pop {
	width: 100%;
	border: none;
	padding: 0;
	opacity: 0;
	transform: scale(0.8);
	background-color: transparent;
	transition-property: opacity, transform, overlay, display;
	transition-duration: var(--g-trn-sp);
	transition-behavior: allow-discrete;
	position: fixed;
	
	&::backdrop {
		opacity: 0;
		backdrop-filter: blur(0.5rem);
		background: hsl(from var(--black) h s l / 0.7);
		transition: opacity var(--g-trn-sp) var(--g-trn-tf);
	}
		        
    &:popover-open { 
		opacity: 1;
		transform: scale(1);
		
		&::backdrop {
			opacity: 1;
		}
		
		@starting-style {
			opacity: 0;
			transform: scale(0.8);
							
			&::backdrop {
				opacity: 0;
			}
			
		}
	}

	[popovertargetaction="hide"] {
		margin-left: auto;
		color: var(--link-alt);
		
		svg {
			margin: 4px;
			font-size: 1.5rem;
			transition: var(--g-trn-sp) var(--g-trn-tf) 0s;
		}
		
		&:is(:hover, :focus-visible) svg {
			transform: rotate(90deg) scale(1.1,1.1);
		}
		
	}
	
	.ui-scroll {
		max-height: calc(100vh - 11rem);
		max-height: calc(100dvh - 11rem);
	}
	
}

/* video-bg.css */

.vid-bg-tls {
	.bg {

		video {
			object-fit: cover;
			opacity: var(--vid-bg-o, 1);
			height: 100%;
			visibility: visible;
		}
		
		ul, .ctrls {
			position: absolute;
			bottom: 2em;
			left: 0;
			width: 100%;
			z-index: 1;
			
			a, button {
				font-size: 1.75rem;
				padding: .4rem;
				transition: color var(--g-trn-sp) var(--g-trn-tf) 0s;
			}

			&.cms-disabled {
				display: none;
			}
		}

		
		video[src=""], 
		picture:has(img[src=""]),
		video[src*="/"] + picture,
		&:has(> video[src=""]) .ctrls,
		&:not(:has(video)) .ctrls {
			display: none;
		}
	}
}

.cms-content .vid-bg-tls {
	.bg {
		position: relative;

		video {
			display: none;
		}
	}

	[popover]:not(:popover-open) {
		transform: none;
		opacity: 1;
		position: relative !important;
		visibility: visible;
		display: block;
	}
}


/* skip-to-content.css */
.skip-to-content {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10000;
	transform: translateY(-110%);
	transition: transform 0.15s ease-out;
	padding: 0.75rem 1.25rem;
	background: #000;
	color: #fff;
	font: inherit;
	text-decoration: none;
	border: 0;
	border-radius: 0 0 0.25rem 0;
	cursor: pointer;
}

.skip-to-content:focus,
.skip-to-content:focus-visible {
	transform: translateY(0);
	outline: 2px solid #fff;
	outline-offset: -4px;
}

/* content.css */

/* Title Styles */
h1, h2, h3, h4, h5, h6 {
	margin: 0;
}

h1 > :where(b,strong),
section header > *:first-child:not(a) > :where(b,strong) {
	display: inline-block;
}

section header > *:first-child + :where(p, h2, h3, h4, h5, strong) {
	margin-top: var(--g-cnt-ttl-ttl-m);
}

.cnt-stl {

	:where(h1,h2,h3,h4,h5,h6) {
		margin-block: var(--g-cnt-ttl-ttl-m);
	}

	:is(p, ol, ul) {
		margin-block: var(--g-cnt-ttl-cnt-m);
	}

	:is(ul) {
		list-style-type: none;
		padding: 0;

		li {
			position: relative;
			padding: .1em 0 .1em 1.5em;

			&::before {
				content: '';
				position: absolute;
				top: .55rem;
				left: 0;
				width: 0.5em;
				height: 0.5em;
				border-radius: 50%;
				background-color: var(--buttons);
			}

			li {
				&::before {
					top: calc(var(--fnt-itm-lh) / 2 * 1rem - (0.5rem / 2));
					height: 0.5rem;
					width: 0.5rem;
					border-radius: 50%;
					background-color: initial;
					border: 1px solid var(--blt-clr);
				}

				li {
					&::before {
						background-color: var(--blt-clr);
						border-radius: 0;
						border: none;
					}

					li {
						&::before {
							border: none;
							border-radius: 50%;
						}

						li {
							&::before {
								background-color: initial;
								border: 1px solid var(--blt-clr);
							}
						}
					}
				}
			}
		}

		ul, ol {
			margin-top: .25em;
			margin-bottom: 0;
		}
	}

	:is(ol) {
		list-style-type: decimal;
		padding: 0 0 0 1.5em;

		li {
			position: relative;
			padding: .1em 0;

			&:has(> :is(strong,b):first-child)::marker {
				font-weight: bold;
			}
		}

		ol, ul {
			margin-top: .25em;
			margin-bottom: 0;
		}
	}

	:not(.spl-lst) :is(ul,ol):not(.el-tab-box) li + li {
		margin-top: .3em;
	}

	:is(ol):not(.spl-lst) li + li {
		margin-top: 0.3em;
	}

	.spl-lst li {
		margin-top: .5em;
	}

	/* Content Styles */
	> *:first-child {
		margin-top: 0;
	}

	> *:last-child {
		margin-bottom: 0;
	}

	figure.image {
		margin: var(--g-cnt-full-img-m) auto;
	}

	img:is(.media-right, .media-left) {
		margin-bottom: 1rem;
	}

	.media-small {
		width: 25%;
	}

	.media-medium {
		width: 50%;
	}

	.media-large {
		width: 100%;
	}

	:is(.media-right, figure.image-style-side) {
		float: right;
		margin-left: 1rem;
		margin-top: 0;
		max-width: 50%;
	}

	.media-left {
		float: left;
		margin-right: 1rem;
	}

	.txt-hlt {

		--txt-hlt-bg:  var(--dk-bg);
		--txt-hlt-txt: var(--dk-txt);

		[data-colors="alternate-light"] & { --txt-hlt-bg: var(--dk-alt-bg); --txt-hlt-txt: var(--dk-alt-txt); }
		[data-colors="primary-dark"] &    { --txt-hlt-bg: var(--lt-bg);     --txt-hlt-txt: var(--lt-txt); }
		[data-colors="alternate-dark"] &  { --txt-hlt-bg: var(--lt-alt-bg); --txt-hlt-txt: var(--lt-alt-txt); }

		&.v1 {
			padding-block: calc(var(--sp-qk) * var(--sp-t-mpt-70));
			padding-inline: clamp(calc(var(--sp-hp-min) * 0.5), var(--sp-hp), calc(var(--sp-hp-max) * 0.5));
			background-color: var(--inner-theme);
			border-radius: var(--bdr-rds-crd);
		}

		&.v2 {
			padding-block: calc(var(--sp-qk) * var(--sp-t-mpt-70));
			padding-inline: clamp(calc(var(--sp-hp-min) * 0.5), var(--sp-hp), calc(var(--sp-hp-max) * 0.5));
			background-color: var(--txt-hlt-bg);
			border-radius: var(--bdr-rds-crd);
			color: var(--txt-hlt-txt);
		}

		&.v3 {
			padding-block: calc(var(--sp-qk) * var(--sp-t-mpt-70));
			padding-inline: clamp(calc(var(--sp-hp-min) * 0.5), var(--sp-hp), calc(var(--sp-hp-max) * 0.5));
			border-radius: var(--bdr-rds-crd);
			border-color: hsl(from var(--bdr-clr, var(--text-color)) h s l / var(--bdr-clr-o));
			border-width: 1px;
			border-style: solid;
		}

		&.v4 {
			padding-block: calc(var(--sp-qk) * var(--sp-t-mpt-70));
			border-color: hsl(from var(--bdr-clr, var(--text-color)) h s l / var(--bdr-clr-o));
			border-width: 0;
			border-style: solid;
			border-top-width: 1px;
			border-bottom-width: 1px;
		}

		&.v5 {
			padding-inline: clamp(calc(var(--sp-hp-min) * 0.5), var(--sp-hp), calc(var(--sp-hp-max) * 0.5));
			border-color: hsl(from var(--bdr-clr, var(--text-color)) h s l / var(--bdr-clr-o));
			border-width: 0;
			border-style: solid;
			border-left-width: 1px;
			border-right-width: 1px;
		}
	}

	@media screen and (max-width:1279px) {

		figure.image img,
		img[class*="media-"] {
			width: 100%;
		}
	}
}

/* Bullet color override inside alt-bg boxes */
:is(.lt-bg,.dk-bg) .bg-bx.alt-bg ul li::before {
	background-color: var(--buttons);
}

/* coupon-print.css */
body.is-printing-coupon {
	*:not(:has(.cpn--printing), .cpn--printing, .cpn--printing *) {
		display: none !important;
	}

	*:has(.cpn--printing) {
		width: 100%;
	}

	.cpn--printing {
		width: 100%;

		&, * {
			background-color: white !important;
			color: black !important;
		}

		.act {
			display: none !important;
		}
	}
}

@media (pointer: fine) {
	.cpn-act-share { display: none !important; }
}

@media (pointer: coarse) {
	.cpn-act-download { display: none !important; }
}

/* flex.css */

/* General Flex Styles */
[class*='flx'] {
	align-items: stretch;
	align-content: space-around;
	display: flex;
	
	&[class*='flx-at-']:not([class*="sw-"]) {
	    display: block;
	}
	
	&:is(.f_gp) > :is(:not([data-columns],.fit), :only-child),
	.ato {
		flex: 1 1 auto;
	}
	
	.fit {
		flex: 0 0 auto;
	}
	
	.str {
		align-self: stretch;
	}
}

.f_c {
	justify-content: center;
}

.f_r {
	justify-content: flex-end;
}

.f_sb {
	justify-content: space-between;
}

.f_sa {
	justify-content: space-around;
}

.f_gp {
    column-gap: var(--flx-gap);
    
    > .half {
		width: calc(var(--half) - (var(--flx-gap) / 2 ));
	}
	
	> .third {
		width: calc(var(--third) - (var(--flx-gap) / 2 ));
	}
	
	> .two-thirds {
		width: calc(var(--two-3rds) - (var(--flx-gap) / 2 ));
	}
	
	> .three-8ths {
		width: calc(var(--three-8ths) - (var(--flx-gap) / 2 ));
	}
	
	> .five-8ths {
		width: calc(var(--five-8ths) - (var(--flx-gap) / 2 ));
	}

	> .forty-five {
		width: calc(var(--forty-five) - (var(--flx-gap) / 2 ));
	}

	> .fifty-five {
		width: calc(var(--fifty-five) - (var(--flx-gap) / 2 ));
	}
}

.f_m {
	align-items: center;
}

.f_t {
	align-items: flex-start;
}

.f_b {
	align-items: flex-end;
}

.f_bl {
	align-items: baseline;
}

.f_wrp {
	flex-wrap: wrap;
}

.f_rev {
	flex-direction: row-reverse;
}

.f_clm {
	flex-direction: column;
}

.f_nln {
	display: inline-flex;
}

/* 700px Responsive (min-width) */
@media screen and (min-width:700px) {
    [class*='flx'][class*="-at-700"]:not([class*="sw-"]) {
        display: flex;
	    
	    > * { 
	        margin-block: 0 !important;
	    }
    }

}

/* 1280px Responsive (min-width) */
@media screen and (min-width: 1280px) {

    [class*='flx'][class*="-at-1280"]:not([class*="sw-"]) {
        display: flex;
	    
	    > * {
	        margin-block: 0 !important;
	    }
    }


}

/* 1500px Responsive (min-width) */
@media screen and (min-width:1500px) {

    [class*='flx'][class*="-at-1500"]:not([class*="sw-"]) {
        display: flex;
	    
	    > * {
	        margin-block: 0 !important;
	    }
    }


}

/* 1499px Responsive */
@media screen and (max-width:1499px) {

	[class*='flx'][class*="-at-1500"] {
		
		&[class*="gp_sp"] > * + * {
			margin-top: var(--grd-sp-dyn);
		}
		
		> :not(svg, .full-mbl, .btn, .max-cnt) {
			width: 100% !important;
			max-width: 100% !important;
			margin-inline: 0;
			
		}
	}
	
}

/* 1279px Responsive */
@media screen and (max-width:1279px) {
	
	[class*='flx'][class*="-at-1280"] {
		
		&[class*="gp_sp"] > * + * {
			margin-top: var(--grd-sp-dyn);
		}
		
		> :not(svg, .full-mbl, .btn, .max-cnt) {
			width: 100% !important;
			max-width: 100% !important;
			margin-inline: 0;
		}
	}

}

/* 699px Responsive */
@media screen and (max-width:699px) {	
	
	[class*='flx'][class*="-at-700"] {
		
		&[class*="gp_sp"] > * + * {
			margin-top: var(--grd-sp-dyn);
		}
		
		> :not(svg, .full-mbl, .btn, .max-cnt) {
			width: 100% !important;
			max-width: 100% !important;
			margin-inline: 0;
			
		}
	}
	
}


/* grid.css */

:has( > .grd ) {
	container-type: inline-size;
}

.grd {
	--itm-val: 100;
	--itm-w: calc(var(--itm-val) * 1%);
	--itm-grw: 1;
	
	display: flex;
	flex-wrap: wrap;
		
	&[class*="gp_sp"] {
		--itm-w: calc( var(--itm-val) * 1% - ( var(--grd-sp-dyn) * ( (100 - var(--itm-val)) * .01 ) ) );
	}
    
	&.ato-fit {
		--itm-grw: 0;
	}
	
	&.mx-6, &.mx-7 {
		--itm-val: 50;
	}
	
	> * {
		flex: var(--itm-grw) 0 var(--itm-w);
	}

	@container (width >= 35rem) {
		
		&:not([class*="mx-"]) {
			--itm-val: 50;
		}
		
		&.mx-6 {
			--itm-val: 33.333;
		}
		
		&.mx-7 {
			--itm-val: 25;
		}
			
	}
	
	@container (width >= 50rem) {
		
		&.mx-2, &.mx-3, &.mx-4 {
			--itm-val: 50;
		}
		
		&:not([class*="mx-"]) {
			--itm-val: 33.333;
		}
		
		&.mx-6 {
			--itm-val: 25;
		}
		
	}
	
	@container (width >= 78rem) {
		
		&.mx-3 {
			--itm-val: 33.333;
		}
		
		&.mx-4 {
			--itm-val: 25;
		}
		
		&:not([class*="mx-"]) {
			--itm-val: 20;
		}
		
		&.mx-6 {
			--itm-val: 16.66667;
		}
		
		&.mx-7 {
			--itm-val: 14.285;
		}
		
	}
	
}

/* spacings.css */

/* General - Spacing */
:root {
	--sp-t-mpt-10: .2; /* { readonly: true } */
	--sp-t-mpt-20: .4; /* { readonly: true } */
	--sp-t-mpt-30: .6; /* { readonly: true } */
	--sp-t-mpt-40: .8; /* { readonly: true } */
	--sp-t-mpt-60: 1.2; /* { readonly: true } */
	--sp-t-mpt-70: 1.4; /* { readonly: true } */
	--sp-t-mpt-80: 1.6; /* { readonly: true } */
	--sp-t-mpt-90: 1.8; /* { readonly: true } */
}

[class*="pd_v"] {
	--pd-v: clamp(var(--sp-vp-min), var(--sp-vp), var(--sp-vp-max));
	padding-block: var(--pd-v);
	
	&[class*="v-70"] {
		--pd-v: clamp(calc(var(--sp-vp-min) * 1.5), var(--sp-vp), calc(var(--sp-vp-max) * 1.5) );
	}
	
	@media screen and (min-width:700px) {
		&[class*="v-30"] {
			--pd-v: clamp(calc(var(--sp-vp-min) * 0.5), var(--sp-vp), calc(var(--sp-vp-max) * 0.5) );
		}
	}
}

[class*="pd_h"] {
	--pd-h: clamp(var(--sp-hp-min), var(--sp-hp), var(--sp-hp-max));
	padding-inline: var(--pd-h);
	
	&[class*="h-70"] {
		--pd-h: clamp(calc(var(--sp-hp-min) * 1.5), var(--sp-hp), calc(var(--sp-hp-max) * 1.5) );
	}
	
	&[class*="h-30"] {
		--pd-h: clamp(calc(var(--sp-hp-min) * 0.5), var(--sp-hp), calc(var(--sp-hp-max) * 0.5) );
	}
}

.pd_lt-0 {
	padding-left: 0;
}

.pd_rt-0 {
	padding-right: 0;
}

.mrg_tp {
	margin-top: var(--sp-vm-clc);
}

.mrg_tp-0 {
	margin-top: 0;
}

.mrg_tp-10 {
	margin-top: calc(var(--sp-vm-clc) * var(--sp-t-mpt-10));
}

.mrg_tp-20 {
	margin-top: calc(var(--sp-vm-clc) * var(--sp-t-mpt-20));
}

.mrg_tp-30 {
	margin-top: calc(var(--sp-vm-clc) * var(--sp-t-mpt-30));
}

.mrg_tp-40 {
	margin-top: calc(var(--sp-vm-clc) * var(--sp-t-mpt-40));
}

.mrg_tp-60 {
	margin-top: calc(var(--sp-vm-clc) * var(--sp-t-mpt-60));
}

.mrg_tp-70 {
	margin-top: calc(var(--sp-vm-clc) * var(--sp-t-mpt-70));
}

.mrg_tp-80 {
	margin-top: calc(var(--sp-vm-clc) * var(--sp-t-mpt-80));
}

.mrg_tp-90 {
	margin-top: calc(var(--sp-vm-clc) * var(--sp-t-mpt-90));
}

.mrg_bt {
	margin-bottom: var(--sp-vm-clc);
}

.mrg_bt-0 {
	margin-bottom: 0;
}

.mrg_bt-10 {
	margin-bottom: calc(var(--sp-vm-clc) * var(--sp-t-mpt-10));
}

.mrg_bt-20 {
	margin-bottom: calc(var(--sp-vm-clc) * var(--sp-t-mpt-20));
}

.mrg_bt-30 {
	margin-bottom: calc(var(--sp-vm-clc) * var(--sp-t-mpt-30));
}

.mrg_bt-40 {
	margin-bottom: calc(var(--sp-vm-clc) * var(--sp-t-mpt-40));
}

.mrg_bt-60 {
	margin-bottom: calc(var(--sp-vm-clc) * var(--sp-t-mpt-60));
}

.mrg_bt-70 {
	margin-bottom: calc(var(--sp-vm-clc) * var(--sp-t-mpt-70));
}

.mrg_bt-80 {
	margin-bottom: calc(var(--sp-vm-clc) * var(--sp-t-mpt-80));
}

.mrg_bt-90 {
	margin-bottom: calc(var(--sp-vm-clc) * var(--sp-t-mpt-90) );
}

/* Quick - Spacings */
.pd_tp {
	padding-top: var(--sp-qk);
}

.pd_tp-0 {
	padding-top: 0;
}

.pd_tp-10 {
	padding-top: calc(var(--sp-qk) * var(--sp-t-mpt-10));
}

.pd_tp-20 {
	padding-top: calc(var(--sp-qk) * var(--sp-t-mpt-20));
}

.pd_tp-30 {
	padding-top: calc(var(--sp-qk) * var(--sp-t-mpt-30));
}

.pd_tp-40 {
	padding-top: calc(var(--sp-qk) * var(--sp-t-mpt-40));
}

.pd_tp-60 {
	padding-top: calc(var(--sp-qk) * var(--sp-t-mpt-60));
}

.pd_tp-70 {
	padding-top: calc(var(--sp-qk) * var(--sp-t-mpt-70));
}

.pd_tp-80 {
	padding-top: calc(var(--sp-qk) * var(--sp-t-mpt-80));
}

.pd_tp-90 {
	padding-top: calc(var(--sp-qk) * var(--sp-t-mpt-90));
}

.pd_bt {
	padding-bottom: var(--sp-qk);
}

.pd_bt-0 {
	padding-bottom: 0;
}

.pd_bt-10 {
	padding-bottom: calc(var(--sp-qk) * var(--sp-t-mpt-10));
}

.pd_bt-20 {
	padding-bottom: calc(var(--sp-qk) * var(--sp-t-mpt-20));
}

.pd_bt-30 {
	padding-bottom: calc(var(--sp-qk) * var(--sp-t-mpt-30));
}

.pd_bt-40 {
	padding-bottom: calc(var(--sp-qk) * var(--sp-t-mpt-40));
}

.pd_bt-60 {
	padding-bottom: calc(var(--sp-qk) * var(--sp-t-mpt-60));
}

.pd_bt-70 {
	padding-bottom: calc(var(--sp-qk) * var(--sp-t-mpt-70));
}

.pd_bt-80 {
	padding-bottom: calc(var(--sp-qk) * var(--sp-t-mpt-80));
}

.pd_bt-90 {
	padding-bottom: calc(var(--sp-qk) * var(--sp-t-mpt-90));
}

.mrg_lt {
	margin-left: var(--sp-qk);
}

.mrg_lt-10 {
	margin-left: calc(var(--sp-qk) * var(--sp-t-mpt-10));
}

.mrg_lt-20 {
	margin-left: calc(var(--sp-qk) * var(--sp-t-mpt-20));
}

.mrg_lt-30 {
	margin-left: calc(var(--sp-qk) * var(--sp-t-mpt-30));
}

.mrg_lt-40 {
	margin-left: calc(var(--sp-qk) * var(--sp-t-mpt-40));
}

.mrg_lt-60 {
	margin-left: calc(var(--sp-qk) * var(--sp-t-mpt-60));
}

.mrg_lt-70 {
	margin-left: calc(var(--sp-qk) * var(--sp-t-mpt-70));
}

.mrg_lt-80 {
	margin-left: calc(var(--sp-qk) * var(--sp-t-mpt-80));
}

.mrg_lt-90 {
	margin-left: calc(var(--sp-qk) * var(--sp-t-mpt-90));
}

.mrg_rt {
	margin-right: var(--sp-qk);
}

.mrg_rt-10 {
	margin-right: calc(var(--sp-qk) * var(--sp-t-mpt-10));
}

.mrg_rt-20 {
	margin-right: calc(var(--sp-qk) * var(--sp-t-mpt-20));
}

.mrg_rt-30 {
	margin-right: calc(var(--sp-qk) * var(--sp-t-mpt-30));
}

.mrg_rt-40 {
	margin-right: calc(var(--sp-qk) * var(--sp-t-mpt-40));
}

.mrg_rt-60 {
	margin-right: calc(var(--sp-qk) * var(--sp-t-mpt-60));
}

.mrg_rt-70 {
	margin-right: calc(var(--sp-qk) * var(--sp-t-mpt-70));
}

.mrg_rt-80 {
	margin-right: calc(var(--sp-qk) * var(--sp-t-mpt-80));
}

.mrg_rt-90 {
	margin-right: calc(var(--sp-qk) * var(--sp-t-mpt-90));
}

/* animation.css */
/* panels fade-up */
@keyframes anim-fade-up {
    0% {
        opacity: 0;
        transform: translateY(32px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

section:not(.cnt) [class*="mn_"]:not(.pop) {
    animation: anim-fade-up 0.5s ease-out both;
    animation-timeline: view();
    animation-range: entry 25% entry 60%;

    /* Animation properties create a new stacking context; this z-index
       keeps descendants from falling behind siblings with z-index: 0. */
    position: relative;
    z-index: 1;
}

/* mainstage-animation.css */
:root { --animation-mainstage-id: 'rotate-in'; }

/* mainstages rotate-in */
@keyframes anim-rotate-in {
    0% {
        opacity: 0;
        transform: rotate(-12deg) scale(.9)
    }

    to {
        opacity: 1;
        transform: rotate(0) scale(1)
    }
}

.mstg [class*="mn_"] {
    animation: anim-rotate-in 0.35s cubic-bezier(0.22, 0.61, 0.36, 1) both;

    /* Animation properties create a new stacking context; this z-index
       keeps descendants from falling behind siblings with z-index: 0. */
    position: relative;
    z-index: 1;
}

/* basic-hovers.css */
:root {
	--hvr-trns: transform var(--g-trn-sp) var(--g-trn-tf) 0s, opacity var(--g-trn-sp) var(--g-trn-tf) 0s, filter var(--g-trn-sp) var(--g-trn-tf) 0s;
	--hvr-y-amt: 2rem;
}

/* Opacity Out */
.hvr_op-out {
	opacity: 1;
	transition: var(--hvr-trns);
}

@media (hover: hover) and (pointer: fine) {
	a:is(:hover, :focus-visible) .hvr_op-out, 
	.hvr_op-out:is(:hover, :focus-visible) {
		opacity: .55;
	}
}

/* Opacity In */
.hvr_op-in {
	opacity: 0;
	transition: var(--hvr-trns);
}

.hvr_op-in.abs {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

@media (hover: hover) and (pointer: fine) {
	a:is(:hover, :focus-visible) .hvr_op-in, 
	.hvr_op-in:is(:hover, :focus-visible) {
		opacity: 1;
	}
}

/* Opacity List */
.hvr_op-lst {
	transition: var(--hvr-trns);
}

@media (hover: hover) and (pointer: fine) {
	ul:has(.hvr_op-lst:is(:hover,:focus-visible)) .hvr_op-lst:not(:is(:hover,:focus-visible)) {
		opacity: 0.5;
	}
}

/* Scale Down List */
.hvr_scl-lst {
	transition: var(--hvr-trns);
}

@media (hover: hover) and (pointer: fine) {
	ul:has(.hvr_scl-lst:is(:hover,:focus-visible)) .hvr_scl-lst:not(:is(:hover,:focus-visible)) {
		transform: scale(0.9);
	}
}

/* Blur List */
.hvr_blr-lst {
	transition: var(--hvr-trns);
}

@media (hover: hover) and (pointer: fine) {
	ul:has(.hvr_blr-lst:is(:hover,:focus-visible)) .hvr_blr-lst:not(:is(:hover,:focus-visible)) {
		filter: blur(3px);
	}
}

/* Grayscale List */
.hvr_gry-lst img {
	transition: var(--hvr-trns);
}

@media (hover: hover) and (pointer: fine) {
	ul:has(.hvr_gry-lst:is(:hover,:focus-visible)) .hvr_gry-lst:not(:is(:hover,:focus-visible)) img {
		filter: grayscale(1);
	}
}

/* Grayscale */
.hvr_gry {
	transition: var(--hvr-trns);
	
	@media (hover: hover) and (pointer: fine) {
		&:is(:hover,:focus-visible) {
			filter: grayscale(1);
		}
	}
}

/* Scale Up */
.hvr_scl-up {
	transition: var(--hvr-trns);
}

@media (hover: hover) and (pointer: fine) {
	a:is(:hover, :focus-visible) .hvr_scl-up, 
	.hvr_scl-up:is(:hover, :focus-visible) {
		transform: scale(1.05,1.05);
	}
}

/* Scale Down */
.hvr_scl-dwn {
	transition: var(--hvr-trns);
	
	@media (hover: hover) and (pointer: fine) {
		&:is(:hover,:focus-visible) {
			transform: scale(0.9);
		}
	}
}

/* translateY - Up */
.hvr_trn-up {
	--hvr-y-amt: 1rem;
	transition: var(--hvr-trns);
	
	@media (hover: hover) and (pointer: fine) {
		&:is(:hover,:focus-visible) {
			transform: translateY(calc(-1 * var(--hvr-y-amt)));
		}
	}
}

/* translateY - Down */
.hvr_trn-dwn {
	transition: var(--hvr-trns);
	
	@media (hover: hover) and (pointer: fine) {
		&:is(:hover,:focus-visible) {
			transform: translateY(var(--hvr-y-amt));
		}
	}
}

ul:has([class*="hvr_trn"]) {
	padding-block: var(--hvr-y-amt);
}

/* Shift Image */
.hvr_shf {
	overflow: hidden;
	
	img {
		width: calc(100% + var(--hvr-y-amt));
		max-width: none;
		transform: translateX(calc(-.5 * var(--hvr-y-amt)));
		transition: var(--hvr-trns);
	}
	
	@media (hover: hover) and (pointer: fine) {
		&:is(:hover,:focus-visible) img {
			transform: translateX(0);
		}
	}
}

/* Underline */
.hvr_und {
	position: relative;
	
	&::before {
		content: '';
		position: absolute;
		width: 100%;
		height: var(--bdr-w);
		bottom: 0;
		left: 0;
		background-color: var(--text-color);
		transform: scaleX(0.65);
		opacity: 0;
		transform-origin: 0 50%;
		transition: var(--hvr-trns);
	}
	
	&.clr-swp::before {
		background-color: var(--link);
	}
}

@media (hover: hover) and (pointer: fine) {
	a:is(:hover, :focus-visible, .active, .selected) .hvr_und:before, 
	.hvr_und:is(:hover, :focus-visible, .active, .selected):before {
		opacity: 1;
		transform: scaleX(1);
	}
}
/* custom.css */
#scorpion_connect {
    z-index: 5000 !important;
}
/* colors.css */
:root {

	/* ── Palette: Primary Dark ───────────────────────────────────────── */

	--dk-id: "primary-dark";
	--dk-name: "Primary Dark";
	--dk-creative: "Midnight Ledger";

	--dk-h1: #f7fafc;
	--dk-h2: #d4e1ff;
	--dk-h3: #b6d4f2;
	--dk-h4: #f0f4ff;
	--dk-h5: #e7ecff;

	--dk-accent: #74acfb;
	--dk-callout: #e6f1f9;

	--dk-btn-pry: #3856ac;
	--dk-btn-pry-txt: #ffffff;
	--dk-btn-sec: #f0f4ff;
	--dk-btn-sec-txt: #202e5b;
	--dk-btn-trt-txt: #f0f4ff;

	--dk-bg: #243878;
	--dk-txt: #f0f4ff;
	--dk-lnk: #8dc1f1;
	--dk-lnk-hov: #61b0e5;
	--dk-bdr: #4a5d96;

	/* ── Palette: Alternate Dark ─────────────────────────────────────── */

	--dk-alt-id: "alternate-dark";
	--dk-alt-name: "Alternate Dark";
	--dk-alt-creative: "Voltage Blue";

	--dk-alt-h1: #ffffff;
	--dk-alt-h2: #bde7ff;
	--dk-alt-h3: #c7e6ff;
	--dk-alt-h4: #f8fbff;
	--dk-alt-h5: #eef3ff;

	--dk-alt-accent: #ffffff;
	--dk-alt-callout: #e4e8f7;

	--dk-alt-btn-pry: #ffffff;
	--dk-alt-btn-pry-txt: #3856ac;
	--dk-alt-btn-sec: #c92c0c;
	--dk-alt-btn-sec-txt: #f8fbff;
	--dk-alt-btn-trt-txt: #f8fbff;

	--dk-alt-bg: #3856ac;
	--dk-alt-txt: #f8fbff;
	--dk-alt-lnk: #ffffff;
	--dk-alt-lnk-hov: #c2d5e8;
	--dk-alt-bdr: #f8fbff;

	/* ── Palette: Primary Light ──────────────────────────────────────── */

	--lt-id: "primary-light";
	--lt-name: "Primary Light";
	--lt-creative: "Bright Ledger";

	--lt-h1: #c92c0c;
	--lt-h2: #df3917;
	--lt-h3: #39578d;
	--lt-h4: #42659c;
	--lt-h5: #3f599c;

	--lt-accent: #5369b0;
	--lt-callout: #193584;

	--lt-btn-pry: #c92c0c;
	--lt-btn-pry-txt: #ffffff;
	--lt-btn-sec: #ffffff;
	--lt-btn-sec-txt: #1a243f;
	--lt-btn-trt-txt: #4f6ec2;

	--lt-bg: #ffffff;
	--lt-txt: #1a243f;
	--lt-lnk: #e61f25;
	--lt-lnk-hov: #4576bc;
	--lt-bdr: #dde3f4;

	/* ── Palette: Alternate Light ────────────────────────────────────── */

	--lt-alt-id: "alternate-light";
	--lt-alt-name: "Alternate Light";
	--lt-alt-creative: "Iced Steel Section";

	--lt-alt-h1: #b53103;
	--lt-alt-h2: #c13504;
	--lt-alt-h3: #39578d;
	--lt-alt-h4: #42659c;
	--lt-alt-h5: #3f599c;

	--lt-alt-accent: #216abf;
	--lt-alt-callout: #3856ac;

	--lt-alt-btn-pry: #c92c0c;
	--lt-alt-btn-pry-txt: #ffffff;
	--lt-alt-btn-sec: #ffffff;
	--lt-alt-btn-sec-txt: #1a243f;
	--lt-alt-btn-trt-txt: #142041;

	--lt-alt-bg: #f6f9ff;
	--lt-alt-txt: #1a243f;
	--lt-alt-lnk: #e11c22;
	--lt-alt-lnk-hov: #3856ac;
	--lt-alt-bdr: #c3cde6;

}

/* flair.css */
:root {
    --flr-bx-w: 85;
    --flr-bx-w-mbl: 65;
    --flr-mrg-tp: 0rem;
    --flr-mrg-bt: 1rem;
    --flr-bx-w-clc: calc((var(--flr-bx-w-mbl) * 1px) + (var(--flr-bx-w) - var(--flr-bx-w-mbl)) * ((var(--vw_) - 320px) / (1920 - 320)));
	--flr-hdr-clr: var(--buttons) !important;
}

.flr_hd {
	width: var(--flr-bx-w-clc);
	overflow: hidden;
	line-height: 1;
	margin-top: var(--flr-mrg-tp);
	margin-bottom: var(--flr-mrg-bt);
}

[class*="ta_"] .flr_hd,
.flr_hd[class*="ta_"] {
	margin-left: auto;
	margin-right: auto;
}

.flr_hd > svg {
	font-size: var(--flr-bx-w-clc);
	width: auto;
	height: auto;
	fill: currentColor;
}


/* 700px Responsive (min-width) */
@media screen and (min-width:700px) {
	
	.flr_hd.ta_r-700,
	.ta_r-700 .flr_hd {
		margin-left: auto; 
		margin-right: 0;
	}
	
	.flr_hd.ta_l-700,
	.ta_l-700 .flr_hd {
		margin-right: auto; 
		margin-left: 0;
	}
}


/* 1280px Responsive (min-width) */
@media screen and (min-width:1280px) {
	
	.flr_hd.ta_r-1280,
	.ta_r-1280 .flr_hd {
		margin-left: auto; 
		margin-right: 0;
	}
	
	.flr_hd.ta_l-1280,
	.ta_l-1280 .flr_hd {
		margin-right: auto; 
		margin-left: 0;
	}
	
}

/* theme-structure.css */
/* ── Border Radius ──────────────────────────────────────────────────────────── */

[class*="bdr-rds"] {
	border-radius: calc(var(--bdr-rds) * var(--bdr-tl-rds)) calc(var(--bdr-rds) * var(--bdr-tr-rds)) calc(var(--bdr-rds) * var(--bdr-br-rds)) calc(var(--bdr-rds) * var(--bdr-bl-rds));

	.bg {
		border-radius: inherit;
	}
}

.crd {
	border-radius: calc(var(--bdr-rds-crd) * var(--bdr-tl-rds-crd)) calc(var(--bdr-rds-crd) * var(--bdr-tr-rds-crd)) calc(var(--bdr-rds-crd) * var(--bdr-br-rds-crd)) calc(var(--bdr-rds-crd) * var(--bdr-bl-rds-crd));
	overflow: hidden;
}

@media screen and (width < 1280px) {

	.bdr-rds-dsk {
		border-radius: 0;
	}

}

/* ── Box Shadow ─────────────────────────────────────────────────────────────── */

.bx-sdw {
	box-shadow: var(--bx-sdw-x) var(--bx-sdw-y) var(--bx-sdw-blr) hsl(from var(--black) h s l / var(--bx-sdw-o));
}

[data-role="list"]:has(.crd) {
	filter: drop-shadow(var(--bx-sdw-crd-x) var(--bx-sdw-crd-y) var(--bx-sdw-crd-blr) hsl(from var(--black) h s l / var(--bx-sdw-crd-o)));

	.crd {
		box-shadow: none !important;
	}
}

.crd {
	box-shadow: var(--bx-sdw-crd-x) var(--bx-sdw-crd-y) var(--bx-sdw-crd-blr) hsl(from var(--black) h s l / var(--bx-sdw-crd-o));
}

@media screen and (min-width: 1280px) {

	.bx-sdw-dsk:not([src*=".png"]) {
		box-shadow: var(--bx-sdw-dsk-x) var(--bx-sdw-dsk-y) var(--bx-sdw-dsk-blr) hsl(from var(--black) h s l / var(--bx-sdw-dsk-o));
	}

}

/* ── Buttons ────────────────────────────────────────────────────────────────── */

[data-colors="primary-light"] {

	.btn.v1 {
		--btn-bg: var(--btn-pry);
		--btn-clr: var(--btn-pry-txt);
	}

	.btn.v2 {
		--btn-bg: var(--btn-sec);
		--btn-clr: var(--btn-sec-txt);
		border-color: var(--bdr-clr);
	}

}

[data-colors="alternate-light"] {

	.btn.v1 {
		--btn-bg: var(--btn-pry);
		--btn-clr: var(--btn-pry-txt);
	}

	.btn.v2 {
		--btn-bg: var(--btn-sec);
		--btn-clr: var(--btn-sec-txt);
		border-color: var(--bdr-clr);
	}

}

/* Dark Theme */
[data-colors="primary-dark"] {

	.btn.v1 {
		--btn-bg: var(--btn-pry);
		--btn-clr: var(--btn-pry-txt);
	}

	.btn.v2 {
		--btn-bg: var(--btn-sec);
		--btn-clr: var(--btn-sec-txt);
		border-color: var(--bdr-clr);
	}

}

[data-colors="alternate-dark"] {

	.btn.v1 {
		--btn-bg: var(--btn-pry);
		--btn-clr: var(--btn-pry-txt);
	}

	.btn.v2 {
		--btn-bg: var(--btn-sec);
		--btn-clr: var(--btn-sec-txt);
		border-color: var(--bdr-clr);
	}

}

/* Buttons */
.btn {
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	column-gap: 0.5em;
	text-align: center;

	&.v1 {
		background-color: var(--btn-bg);
		color: var(--btn-clr);
		padding: var(--btn-v1-pd);
		border-radius: var(--btn-v1-bdr-rds);
		box-shadow: var(--btn-v1-bx-sdw-x) var(--btn-v1-bx-sdw-y) var(--btn-v1-bx-sdw-blr) hsl(from var(--black) h s l / var(--btn-v1-bx-sdw-o));
		transition: 0.3s ease 0s;

		&.sml {
			--btn-v1-pd-v-mtp: 0.5; /* { min: 0.2, max: 0.8, step: 0.05, friendly: 'Button V1 Small Vertical Padding Multiplier' } */
			--btn-v1-pd-h-mtp: 0.5; /* { min: 0.2, max: 0.8, step: 0.05, friendly: 'Button V1 Small Horizontal Padding Multiplier' } */
			--btn-v1-pd: calc(var(--btn-v1-pd-t) * var(--btn-v1-pd-v-mtp)) calc(var(--btn-v1-pd-r) * var(--btn-v1-pd-h-mtp)) calc(var(--btn-v1-pd-b) * var(--btn-v1-pd-v-mtp)) calc(var(--btn-v1-pd-l) * var(--btn-v1-pd-h-mtp)); /* { readonly: true } */
		}

	}

	&.v2 {
		background-color: var(--btn-bg);
		color: var(--btn-clr);
		border-color: var(--btn-bg);
		border-width: var(--btn-v2-bdr-w);
		border-style: var(--btn-v2-bdr-stl);
		padding: var(--btn-v2-pd);
		border-radius: var(--btn-v2-bdr-rds);
		box-shadow: var(--btn-v2-bx-sdw-x) var(--btn-v2-bx-sdw-y) var(--btn-v2-bx-sdw-blr) hsl(from var(--black) h s l / var(--btn-v2-bx-sdw-o));
		transition: 0.3s ease 0s;
	}

	&.v3 {
		--btn-v3-pd-t: 0rem !important;
		--btn-v3-pd-b: 0rem !important;
		--btn-v3-pd-l: 0rem !important;
		--btn-v3-pd-r: 0rem !important;
		--btn-v3-pd: var(--btn-v3-pd-t) var(--btn-v3-pd-r) var(--btn-v3-pd-b) var(--btn-v3-pd-l);

		column-gap: 0.89rem;
		color: var(--btn-trt-txt);
		padding: var(--btn-v3-pd);
		transition: color var(--btn-trn-sp) var(--btn-trn-tf) 0s;

		svg {
			font-size: 1.22rem;
		}
	}
}

/* V1 Hovers */
@media (hover: hover) and (pointer: fine) {

	/* Light Theme */
	[data-colors="primary-light"] {

		&:is(a:hover, a:focus-visible) .btn.v1, a:is(:hover, :focus-visible) .btn.v1, .btn.v1:is(:hover, :focus-visible) {
			--btn-bg: var(--btn-hvr-pry);
			--btn-clr: var(--btn-hvr-pry-txt);
			background-color: var(--btn-bg);
			color: var(--btn-clr);
		}

		&:is(a:hover, a:focus-visible) .btn.v2, a:is(:hover, :focus-visible) .btn.v2, .btn.v2:is(:hover, :focus-visible) {
			--btn-bg: var(--btn-hvr-pry);
			--btn-clr: var(--btn-hvr-pry-txt);
			border-color: var(--btn-bg);
			background-color: var(--btn-bg);
		}

	}

	[data-colors="alternate-light"] {

		&:is(a:hover, a:focus-visible) .btn.v1, a:is(:hover, :focus-visible) .btn.v1, .btn.v1:is(:hover, :focus-visible) {
			--btn-bg: var(--btn-hvr-pry);
			--btn-clr: var(--btn-hvr-pry-txt);
			background-color: var(--btn-bg);
		}

		&:is(a:hover, a:focus-visible) .btn.v2, a:is(:hover, :focus-visible) .btn.v2, .btn.v2:is(:hover, :focus-visible) {
			--btn-bg: var(--btn-hvr-pry);
			--btn-clr: var(--btn-hvr-pry-txt);
			border-color: var(--btn-bg);
			background-color: var(--btn-bg);
		}

	}

	/* Dark Theme [Hovers] */
	[data-colors="primary-dark"] {

		&:is(a:hover, a:focus-visible) .btn.v1, a:is(:hover, :focus-visible) .btn.v1, .btn.v1:is(:hover, :focus-visible) {
			--btn-bg: var(--btn-hvr-pry);
			--btn-clr: var(--btn-hvr-pry-txt);
			background-color: var(--btn-bg);
		}

		&:is(a:hover, a:focus-visible) .btn.v2, a:is(:hover, :focus-visible) .btn.v2, .btn.v2:is(:hover, :focus-visible) {
			--btn-bg: var(--btn-hvr-pry);
			--btn-clr: var(--btn-hvr-pry-txt);
			border-color: var(--btn-bg);
			background-color: var(--btn-bg);
		}

	}

	[data-colors="alternate-dark"] {

		&:is(a:hover, a:focus-visible) .btn.v1, a:is(:hover, :focus-visible) .btn.v1, .btn.v1:is(:hover, :focus-visible) {
			--btn-bg: var(--btn-hvr-pry);
			--btn-clr: var(--btn-hvr-pry-txt);
			background-color: var(--btn-bg);
		}

		&:is(a:hover, a:focus-visible) .btn.v2, a:is(:hover, :focus-visible) .btn.v2, .btn.v2:is(:hover, :focus-visible) {
			--btn-bg: var(--btn-hvr-pry);
			--btn-clr: var(--btn-hvr-pry-txt);
			border-color: var(--btn-bg);
		}

	}

}

/* V2 Hovers */
@media (hover: hover) and (pointer: fine) {

	&:is(button:hover, button:focus-visible) .btn.v3, button:is(:hover, :focus-visible) .btn.v3,
	&:is(a:hover, a:focus-visible) .btn.v3, a:is(:hover, :focus-visible) .btn.v3, .btn.v3:is(:hover, :focus-visible) {
		color: var(--link-color);
	}

}

/* ── Flair (Shapes & Decorative) ────────────────────────────────────────────── */

.flr_hd {
	width: var(--flr-bx-w-clc);
	overflow: hidden;
	line-height: 1;
	margin-top: var(--flr-mrg-tp);
	margin-bottom: var(--flr-mrg-bt);
	max-width: 100%;
}

[class*="ta_"] .flr_hd,
.flr_hd[class*="ta_"] {
	margin-left: auto;
	margin-right: auto;
}

.flr_hd > svg {
	font-size: var(--flr-bx-w-clc);
	width: auto;
	height: auto;
}

@media screen and (min-width: 700px) {

	.flr_hd.ta_r-700,
	.ta_r-700 .flr_hd {
		margin-left: auto;
		margin-right: 0;
	}

	.flr_hd.ta_l-700,
	.ta_l-700 .flr_hd {
		margin-right: auto;
		margin-left: 0;
	}

}

@media screen and (min-width: 1280px) {

	.flr_hd.ta_r-1280,
	.ta_r-1280 .flr_hd {
		margin-left: auto;
		margin-right: 0;
	}

	.flr_hd.ta_l-1280,
	.ta_l-1280 .flr_hd {
		margin-right: auto;
		margin-left: 0;
	}

}

/* ── Containers & Cards Border ───────────────────────────────────────────────── */

.bg-bx.bdr-bg {
	border: var(--bg-bx-bdr-thc) solid hsl(from var(--bg-bx-bdr-clr) h s l / var(--bg-bx-bdr-clr-o));
}

.crd-bdr {
	border: var(--crd-bdr-w) solid hsl(from var(--bg-bx-bdr-clr) h s l / var(--bg-bx-bdr-clr-o));
}

.crd-bdr-thc {
	border: var(--bg-bx-bdr-thc) solid hsl(from var(--bg-bx-bdr-clr) h s l / var(--bg-bx-bdr-clr-o));
}

/* ── Dividers & Separators ───────────────────────────────────────────────────── */

.tag:not(:has(a)), .tag a {
	border: var(--bdr-stl) var(--bdr-w) hsl(from var(--text-color) h s l / var(--bdr-clr-o));
}

/* header-tools.css */
:root {
	--hdr-mnu-btn-s: 2.2rem; /* { min: 1.5, max: 3, step: .1, friendly: 'Mobile | Header Menu Button Size', group: 'Calculations' } */
	--hdr-phn-icn-s: 1.3rem; /* { min: 1, max: 2, step: .1, friendly: 'Mobile | Header Phone Icon Size', group: 'Calculations' } */
	
	--hdr-lg-mx-wd: 280; /* { min: 50, max: 500, step: 10, friendly: 'Logo Max Width Desktop', group: 'Calculations' } */
	--hdr-lg-mx-wd-mbl: 170; /* { min: 10, max: 300, step: 1, friendly: 'Logo Max Width Mobile', group: 'Calculations' } */
	--hdr-lg-mx-wd-clc: calc((var(--hdr-lg-mx-wd-mbl) * 1px) + (var(--hdr-lg-mx-wd) - var(--hdr-lg-mx-wd-mbl)) * ((var(--vw_) - 320px) / (1920 - 320))); /* { readonly: true } */
	
	--hdr-lg-mx-ht: 180; /* { min: 50, max: 500, step: 10, friendly: 'Logo Max Height Desktop', group: 'Calculations' } */
	--hdr-lg-mx-ht-mbl: 100; /* { min: 10, max: 300, step: 1, friendly: 'Logo Max Height Mobile', group: 'Calculations' } */
	--hdr-lg-mx-ht-clc: calc((var(--hdr-lg-mx-ht-mbl) * 1px) + (var(--hdr-lg-mx-ht) - var(--hdr-lg-mx-ht-mbl)) * ((var(--vw_) - 320px) / (1920 - 320))); /* { readonly: true } */
	
	--hdr-lg-sp: 100; /* { min: 50, max: 500, step: 10, friendly: 'Logo Margin Desktop', group: 'Calculations' } */
	--hdr-lg-sp-lpt: 50; /* { min: 10, max: 300, step: 1, friendly: 'Logo Margin Laptop', group: 'Calculations' } */
	--hdr-lg-sp-clc: calc((var(--hdr-lg-sp-lpt) * 1px) + (var(--hdr-lg-sp) - var(--hdr-lg-sp-lpt)) * ((var(--vw_) - 1280px) / (1920 - 1280))); /* { readonly: true } */
	
	--hdr-nv-sp: 50; /* { min: 50, max: 500, step: 10, friendly: 'Top Nav Link Spacing Desktop', group: 'Calculations' } */
	--hdr-nv-sp-lpt: 20; /* { min: 10, max: 300, step: 1, friendly: 'Top Nav Link Spacing Laptop', group: 'Calculations' } */
	--hdr-nv-sp-clc: calc((var(--hdr-nv-sp-lpt) * 1px) + (var(--hdr-nv-sp) - var(--hdr-nv-sp-lpt)) * ((var(--vw_) - 1280px) / (1920 - 1280))); /* { readonly: true } */
	
	--hdr-bnr-icn-sz: 1.2em; /* { readonly: true } */
	
	--hdr-tb-arw-s: 0.9rem; /* { readonly: true } */
	
	--ovlp-hdr-bg-o: 0; /* { min: 0, max: 0.9, step: 0.05, friendly: 'Overlap Header BG Opacity', group: 'Calculations' } */
}
#HeaderZone {
	z-index: 10;
	position: relative;
}

.hdr {
	
	.tp-lg {
		max-width: var(--hdr-lg-mx-wd-clc);
		
		img {
			max-height: var(--hdr-lg-mx-ht-clc);
		} 
	}
	
	.nv .el-tab,
	.nv .el-sec-tab {
		outline: none;
		font-size: var(--hdr-tb-arw-s);
		margin-left: var(--hdr-tb-arw-s);
	}
	
	.nv .el-tab:is(:hover, :focus),
	nav li.selected > a {
		color: var(--link-hover);
	}
	
	/* Menu Button Styles */
	.mnu-btn {
		position: relative;
		cursor: pointer;
		font-size: var(--hdr-mnu-btn-s);
	}
	
	.btn-tp {
	    top: 0;
	    left: 0;
		z-index: 4;
	    position: fixed;
	    padding: 1.222rem;
	    visibility: hidden;
	    transform: translateX(-100%);
	    transition: transform var(--btn-trn-sp) var(--btn-trn-tf) 0s, background-color var(--btn-trn-sp) var(--btn-trn-tf) 0s, color var(--btn-trn-sp) var(--btn-trn-tf) 0s, visibility var(--btn-trn-sp) var(--btn-trn-tf) 0s;
	    transition-behavior: allow-discrete;
	}
	
	.nt-bnr svg {
		font-size: var(--hdr-bnr-icn-sz);
	}
	
	.srch {
		font-size: 1.5rem;
	}

	&.nv-sml {
		--hdr-nv-sp: 35;
		--hdr-nv-sp-lpt: 10;
		--hdr-nv-sp-clc: calc((var(--hdr-nv-sp-lpt) * 1px) + (var(--hdr-nv-sp) - var(--hdr-nv-sp-lpt)) * ((var(--vw_) - 1280px) / (1920 - 1280)));

		.nv > ul > li > a {
			font-size: 1rem;
		}
	}

	@media screen and (min-width:1280px) {

		.tp-lg {
			margin-right: var(--hdr-lg-sp-clc);
		}

		.nv > ul:not(.mnu-nv) > li + li {
			margin-left: var(--hdr-nv-sp-clc);
		}

		.nv:last-child > ul li:last-child {
		    margin-right: 0;
		}

		.fly-nv {
			max-width: 25rem;
			min-width: 15rem;
			width: max-content;
			max-height: calc(100dvh - 20rem);
			position: absolute;
			left: 0;
			top: 100%;
			opacity: 0;
			overflow-y: auto;
			visibility: hidden;
			display: block;
			transition: visibility var(--g-trn-sp) var(--g-trn-tf) 0s, opacity var(--g-trn-sp) var(--g-trn-tf) 0s;
			transition-behavior: allow-discrete;
			z-index: 4;

			ul li a:not(:only-child) {
			    max-width: calc(100% - (var(--hdr-tb-arw-s) * 2 ));
			}

		}

		li:is(:hover,:focus-visible) > .fly-nv,
		li:has(a:is(:hover,:focus-visible)) > .fly-nv,
		.fly-nv:has(a:is(:hover,:focus-visible)) {
			opacity: 1;
			visibility: visible;
		}

	}

	@media screen and (max-width:1279px) {

		.mbl-mnu {
			width: 83%;
			height: 100dvh;
			left: 0;
			right: auto;
			overflow: auto;
			padding-top: 0.811rem;
			padding-bottom: 4rem;
			translate: -100% 0;
			border: none;
			position: fixed;
			transition: translate var(--g-trn-sp) var(--g-trn-tf), display var(--g-trn-sp) var(--g-trn-tf) allow-discrete, overlay var(--g-trn-sp) var(--g-trn-tf) allow-discrete;

			&::backdrop {
				opacity: 0;
				background: hsl(from var(--black) h s l / var(--bx-sdw-o));
				transition: opacity var(--g-trn-sp) var(--g-trn-tf);
				backdrop-filter: blur(3px);
			}

		    &:popover-open {
				translate: 0 0;

				&::backdrop {
					opacity: 1;
				}

				@starting-style {
					translate: -100% 0;

					&::backdrop {
						opacity: 0;
					}

				}
			}

			.mbl-mnu {
				width: 75%;
			}

			.mbl-nv {
				flex: 1 1 auto;
			}

			/* Social links carry a themed background (bg-bx alt-bg) but no
			   box of their own — pad and center so the fill reads as a chip. */
			.so-lk {
				display: inline-flex;
				align-items: center;
				justify-content: center;
				padding: 0.75rem;
				border-radius: 50%;
			}
		}

		.phn-icn {
		    font-size: var(--hdr-phn-icn-s);
		    border-radius: 50%;
		    padding: 0.922rem;
		}

		.input-text {
		    border: none;
		}

		.lg-bx {
			width: 100%;
		}

	    &.lt-bg .nv {
			background-color: var(--inner-bg);
		}

		&.dk-bg .nv {
			background-color: var(--inner-bg-alt);
		}
	}

}

.overlap {
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
	
	.hdr {
		background: hsl(from var(--background) h s l / var(--ovlp-hdr-bg-o));
	}
}

.layout-system {
	.overlap {
		position: relative;
	}
}

/* To Top Button Styles */
.scrolled-down .btn-tp {
    visibility: visible;
    transform: translateX(0);
}

@media screen and (min-width:1921px) {
	:root {
		--hdr-nv-sp-clc: calc(var(--hdr-nv-sp) * 1px);
	}
}

@media screen and (max-width:1279px) {

	.mnu-opn .hdr .nv {
		transform: translateX(0);
		opacity: 1;
		visibility: visible;
	}

}

@media screen and (max-width:700px) {
	
	.cms-content .hdr .nv {
		position: relative;
		transform: none;
		opacity: 1;
		width: 20rem;
		max-height: 20rem;
	}
	
}
/* borders.css */

/* Borders */
[class*="bdr_"] {
	border-color: hsl(from var(--bdr-clr, var(--text-color)) h s l / var(--bdr-clr-o));
	border-style: var(--bdr-stl);
	border-width: 0;
}

.bdr_a {
	border-width: var(--bdr-w);
}

.bdr_tp {
	border-top-width: var(--bdr-w);
}

.bdr_bt {
	border-bottom-width: var(--bdr-w);
}

.bdr_rt {
	border-right-width: var(--bdr-w);
}

.bdr_lt {
	border-left-width: var(--bdr-w);
}

.bdr_a-thc {
	border-width: var(--bdr-w-thc, var(--bg-bx-bdr-thc));
}

.bdr_tp-thc {
	border-top-width: var(--bdr-w-thc, var(--bg-bx-bdr-thc));
}

.bdr_bt-thc {
	border-bottom-width: var(--bdr-w-thc, var(--bg-bx-bdr-thc));
}

.bdr_rt-thc {
	border-right-width: var(--bdr-w-thc, var(--bg-bx-bdr-thc));
}

.bdr_lt-thc {
	border-left-width: var(--bdr-w-thc, var(--bg-bx-bdr-thc));
}

/* banner-tools.css */
/* Banner Tools */
.bnr-tls {
	--bnr-tls-pd-v-tp: 165; /* { readonly: true } */
	--bnr-tls-pd-v-tp-mbl: 75; /* { readonly: true } */
	--bnr-tls-pd-v-bt: 165; /* { readonly: true } */
	--bnr-tls-pd-v-bt-mbl: 75; /* { readonly: true } */

	--bnr-tls-pd-v-tp-clc: calc((var(--bnr-tls-pd-v-tp-mbl) * 1px) + (var(--bnr-tls-pd-v-tp) - var(--bnr-tls-pd-v-tp-mbl)) * ((var(--vw_) - 320px) / (1920 - 320))); /* { readonly: true } */
	--bnr-tls-pd-v-bt-clc: calc((var(--bnr-tls-pd-v-bt-mbl) * 1px) + (var(--bnr-tls-pd-v-bt) - var(--bnr-tls-pd-v-bt-mbl)) * ((var(--vw_) - 320px) / (1920 - 320))); /* { readonly: true } */

	padding-top: var(--bnr-tls-pd-v-tp-clc);
	padding-bottom: var(--bnr-tls-pd-v-bt-clc);

	.cms-content & {
		[field="Title"] [data-sysheader] {
			display: none;
		}

		[field="Title"] if[p-hide='true'] {
			display: block;
		}
	}
}

.overlap {
	.bnr-tls [class*="mn_"],
	+ .bnr-tls [class*="mn_"] {
		padding-top: var(--bnr-tls-pd-v-tp-clc);
	}
}
/* reviews-tools.css */
/* Reviews panel tools */
.svg-con {
    line-height: 1;
    svg {
        font-size: 1.33rem;
    }
}
/* forms.css */

/* Form Styles */
fieldset {		
	min-inline-size: auto;
	border: none;
	padding: 0;
	margin: 0;
	
	legend {
		padding: 0;
	}
	
	ul {
	    flex-wrap: wrap;
	}
}

label {
	display: block;
	text-align: left;
	transition: color var(--g-trn-sp) var(--g-trn-tf) 0s;
}


/* Form Input Styles */
input, textarea, select {
	border: 0;
	width: 100%;
	outline: none;
	color: inherit;
	font-size: inherit;
	font-weight: normal;
	font-family: inherit;
	line-height: inherit;
	text-transform: none;
	background-color: transparent;
	line-height: var(--fnt-frm-lh);
}

select,
input[type='search'] {
	appearance: none;
}

textarea {
	resize: none;
	overflow: auto;
	min-height: 4.5rem;
}

:invalid {
	box-shadow: none;
}

.inp-mrk,
.input-text {
	position: relative;
}

.input-text #Consent + small {
    text-wrap: balance;
}

[class*="ta_"] {
	.input-text #Consent + small {
		text-align: center;
	}

	@media screen and (min-width:1280px) {
		&[class*="l-1280"] {
			.input-text #Consent + small {
				text-align: left;
			}
		}

		&[class*="r-1280"] {
			.input-text #Consent + small {
				text-align: right;
			}
		}
	}
	
}

.input-text  {
	text-align: left;
	font-size: 1rem;
	background-clip: padding-box !important;
	
	:is(input, select, textarea) {
		border-width: var(--frm-bdr-w);
		border-style: var(--frm-bdr-stl);
		border-radius: var(--frm-bdr-rds);
		transition: border-color var(--g-trn-sp) var(--g-trn-tf) 0s;
		padding: 1em;
	}
	
	&:has( > svg ) :is(input, select, textarea) {
		padding-right: 3em;
	}

	select {
		 option {
			background-color: var(--main-bg);
			color: var(--text);
		}
	}

	:is(input, select, textarea)::placeholder,
	select:has(option[value=""]:checked) {
		font-size: 0.875rem;
		font-weight: 500;
		letter-spacing: 0.175rem;
		text-transform: uppercase;
		opacity: 1;
	}

	label {

		&.abs {
			top: 1em;
			left: 1em;
			opacity: 0;
			pointer-events: none;
			transform: scale(1);
			transform-origin: 0 50%;
			transition: transform var(--g-trn-sp) var(--g-trn-tf) 0s, top var(--g-trn-sp) var(--g-trn-tf) 0s, opacity var(--g-trn-sp) var(--g-trn-tf) 0s;
		}

	}
	
	> svg {
		bottom: calc(50% - .5em);
		right: 1em;
		position: absolute;
		pointer-events: none;
		color: var(--link-color);
	}
}

/* Form Checkbox Styles */

.inp-mrk {
	
	.input-text {
		border: 0;
		padding: 0;
	}
	
	input {
		position: absolute;
		opacity: 0;
		top: 0;
		left: 0;
		margin: 0;
		padding: 0;
		cursor: pointer;
		-webkit-appearance: none;
		z-index: 3;
		
		&:checked + label.replace:before {
			opacity: 1;
			transform: none;
		}
		
		&[type=radio] + label.replace {
			border-radius: 50%;
		}
		
	}
	
	label {
		user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		
		&.toggle,
		&.replace {
			flex: 0 0 auto;
			cursor: pointer;
			
			+ label {
				margin: 0;
				line-height: 1.55;
				position: relative;
				padding-left: .625em;	
			}
		}
		
		&.replace {
			margin: 0;
			width: 1.5em;
			height: 1.5em;
			border-width: 1px;
			position: relative;
			border-style: solid;
			transition: border-color var(--g-trn-sp) var(--g-trn-tf) 0s;
			
			&::before {
				content: '';
				top: 4px;
				left: 4px;
				right: 4px;
				bottom: 4px;
				opacity: 0;
				position: absolute;
				transform: scale(.7);
				border-radius: inherit;
				transition: background-color var(--g-trn-sp) var(--g-trn-tf) 0s, transform var(--g-trn-sp) var(--g-trn-tf) 0s, opacity var(--g-trn-sp) var(--g-trn-tf) 0s;
			}
		}
	}
}

/* Ui-Condidional */
html:not(.cms-content) .ui-conditional-panel:not(.active) {
	display: none;
	visibility: hidden;
}


/* Form Colors */
@scope (form) to (.inp-mrk) {
	
	.input-text {
		--text-color: var(--text);
		--background: var(--white);

		:is(input, select, textarea) {
			color: var(--text-color);
			border-color: hsl(from var(--text-color) h s l / var(--bdr-clr-o));
			background: var(--background);
		}
		
		label.abs {
			color: var(--text-color);
		}
		
	}

	.focused .input-text :is(input, select, textarea) {
		border-color: var(--highlight-color) !important;
	}
	
	.invalid .input-text :is(input, select, textarea) {
		border-color: var(--invalid-color) !important;
	}
	
	.valid .input-text :is(input, select, textarea) {
		border-color: var(--valid-color);
	}
	
}

.inp-mrk label.replace {
	border-color: hsl(from var(--text-color) h s l / var(--bdr-clr-o));
}

.inp-mrk input:checked + label.replace {
	border-color: var(--link-color);
}

.inp-mrk label.replace.disabled,
.inp-mrk input:disabled + label.replace {
	background-color: hsl(from var(--text-color) h s l / var(--bdr-clr-o));
}

.inp-mrk label.replace.disabled::before,
.inp-mrk input:disabled + label.replace::before {
	background-color: hsl(from var(--text-color) h s l / var(--bdr-clr-o));
}

.inp-mrk label.replace::before {
	background-color: hsl(from var(--text-color) h s l / var(--bdr-clr-o));
}

.inp-mrk input:checked + label.replace::before {
	background-color: var(--link-color);
}

.inp-mrk label.replace + label,
.inp-mrk label.toggle + label {
	color: var(--text-color);
}

.inp-mrk label.replace.disabled + label,
.inp-mrk input:disabled + label.replace + label {
	color: hsl(from var(--text-color) h s l / var(--bdr-clr-o));
}

/* footer-tools.css */
/* Footer Panel Tools */
:root {
	--ftr-lg-mx-wd: 288; /* { min: 50, max: 500, step: 10, friendly: 'Footer Logo Max Width Desktop', group: 'Calculations' } */
	--ftr-lg-mx-wd-mbl: 170; /* { min: 10, max: 300, step: 1, friendly: 'Footer Logo Max Width Mobile', group: 'Calculations' } */
	--ftr-mct-tp-ovlp: 1rem; /* { min: 0, max: 12, step: 0.5, type: 'range', friendly: 'Footer Mascot Top Overlap Amount'} */
	--ftr-mct-mx-w: 30%; /* { min: 0, max: 100, step: 1, type: 'range', friendly: 'Footer Mascot Max Width'} */
	--ftr-lg-mx-wd-clc: calc((var(--ftr-lg-mx-wd-mbl) * 1px) + (var(--ftr-lg-mx-wd) - var(--ftr-lg-mx-wd-mbl)) * ((var(--vw_) - 320px) / (1920 - 320))); /* { readonly: true } */
}

.ftr {

	.ftr-lg {
		max-width: var(--ftr-lg-mx-wd-clc);
		width: fit-content;
	}

	div:has( + picture.mct) {
		z-index: 1;
	}

	picture.mct {
		margin-top: calc(-1 * var(--ftr-mct-tp-ovlp));
		max-width: var(--ftr-mct-mx-w);

		> img {
			width: auto;
		}
	}

	@media screen and (max-width: 1279px) {

		.ta_l-1280 .ftr-lg {
			margin-inline: auto;
		}

	}

	@media screen and (max-width: 699px) {

		.ta_l-700 .ftr-lg {
			margin-inline: auto;
		}

	}
}

/* theme.css */
/* ── figma-theme-converter output ───────────────────────────────────────────── */
/* Theme:  Tango Violet Signal */
/* Source: tango-violet-signal.json */
/* Do not edit manually — re-run converter to regenerate */

:root {

	/* ── Border Radius ──────────────────────────────────────────────────────── */

	--bdr-rds: 1.5rem;
	--bdr-tl-rds: 1;
	--bdr-tr-rds: 1;
	--bdr-br-rds: 1;
	--bdr-bl-rds: 1;

	/* ── Card Border Radius ─────────────────────────────────────────────────── */

	--bdr-rds-crd: 2.5rem;
	--bdr-tl-rds-crd: 1;
	--bdr-tr-rds-crd: 1;
	--bdr-br-rds-crd: 1;
	--bdr-bl-rds-crd: 1;

	/* ── Card Box Shadow ────────────────────────────────────────────────────── */

	--bx-sdw-crd-x:   0rem;
	--bx-sdw-crd-y:   0rem;
	--bx-sdw-crd-blr: 0rem;
	--bx-sdw-crd-o:   0;

	/* ── Button V1 Padding ──────────────────────────────────────────────────── */

	--btn-v1-pd-t: 1.125rem;
	--btn-v1-pd-b: 1.125rem;
	--btn-v1-pd-l: 1.875rem;
	--btn-v1-pd-r: 1.875rem;
	--btn-v1-pd: var(--btn-v1-pd-t) var(--btn-v1-pd-r) var(--btn-v1-pd-b) var(--btn-v1-pd-l);

	/* ── Button V1 Border Radius ────────────────────────────────────────────── */

	--btn-v1-bdr-rds-tl: 1.5rem;
	--btn-v1-bdr-rds-tr: 1.5rem;
	--btn-v1-bdr-rds-br: 1.5rem;
	--btn-v1-bdr-rds-bl: 1.5rem;
	--btn-v1-bdr-rds: var(--btn-v1-bdr-rds-tl) var(--btn-v1-bdr-rds-tr) var(--btn-v1-bdr-rds-br) var(--btn-v1-bdr-rds-bl);

	/* ── Button V1 Box Shadow ───────────────────────────────────────────────── */

	--btn-v1-bx-sdw-x:   0rem;
	--btn-v1-bx-sdw-y:   0rem;
	--btn-v1-bx-sdw-blr: 0rem;
	--btn-v1-bx-sdw-o:   0;

	/* ── Button V1 Border (Alt Variant) ─────────────────────────────────────── */

	--btn-v1-bdr-w:   2px;
	--btn-v1-bdr-stl: solid;

	/* ── Button V2 Padding ──────────────────────────────────────────────────── */

	--btn-v2-pd-t: 0.889rem; /* { min: 0.5, max: 2, step: 0.1, friendly: 'Button V2 Padding Top'  } */
	--btn-v2-pd-b: 0.889rem; /* { min: 0.5, max: 2, step: 0.1, friendly: 'Button V2 Padding Bottom'  } */
	--btn-v2-pd-l: 1.667rem; /* { min: 0.5, max: 4, step: 0.1, friendly: 'Button V2 Padding Left'  } */
	--btn-v2-pd-r: 1.667rem; /* { min: 0.5, max: 4, step: 0.1, friendly: 'Button V2 Padding Right'  } */
	--btn-v2-pd: var(--btn-v2-pd-t) var(--btn-v2-pd-r) var(--btn-v2-pd-b) var(--btn-v2-pd-l); /* { readonly: true  } */

	/* ── Button V2 Border Radius ────────────────────────────────────────────── */

	--btn-v2-bdr-rds-tl: 3.125rem; /* { min: 0, max: 5, step: 0.1, friendly: 'Button V2 Border Radius Top Left'  } */
	--btn-v2-bdr-rds-tr: 3.125rem; /* { min: 0, max: 5, step: 0.1, friendly: 'Button V2 Border Radius Top Right'  } */
	--btn-v2-bdr-rds-br: 3.125rem; /* { min: 0, max: 5, step: 0.1, friendly: 'Button V2 Border Radius Bottom Right'  } */
	--btn-v2-bdr-rds-bl: 3.125rem; /* { min: 0, max: 5, step: 0.1, friendly: 'Button V2 Border Radius Bottom Left'  } */
	--btn-v2-bdr-rds: var(--btn-v2-bdr-rds-tl) var(--btn-v2-bdr-rds-tr) var(--btn-v2-bdr-rds-br) var(--btn-v2-bdr-rds-bl); /* { readonly: true  } */

	/* ── Button V2 Box Shadow ───────────────────────────────────────────────── */

	--btn-v2-bx-sdw-x: 0rem; /* { min: 0,  max: 2, step: 0.1, friendly: 'Button V2 Box Shadow \'X\' Position' } */
	--btn-v2-bx-sdw-y: 0.25rem; /* { min: 0,  max: 2, step: 0.05, friendly: 'Button V2 Box Shadow \'Y\' Position' } */
	--btn-v2-bx-sdw-blr: 0.875rem; /* { min: 0, max: 4, step: 0.1, friendly: 'Button V2 Box Shadow Blur' } */
	--btn-v2-bx-sdw-o: 0; /* { min: 0, max: 1, step: 0.05, friendly: 'Button V2 Box Shadow Opacity' } */

	--btn-v2-bdr-w: 2px; /* { min: 1, max: 3, step: 0.1, friendly: 'Button V2 Border Width'  } */
	--btn-v2-bdr-stl: solid; /* { friendly: 'Button V2 Border Style'  } */

	/* ── Flair (Shapes & Decorative) ────────────────────────────────────────── */

	--flr-img: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'><path fill='black' d='M31.0544 0.0537093C28.5615 0.0537093 26.2083 0.601722 24.0805 1.56878C21.9207 0.569482 19.5352 0 16.9993 0C7.65071 0 0.0537087 7.60732 0.0537087 16.9456C0.0537087 19.4385 0.601722 21.7917 1.56878 23.9195C0.569482 26.0793 0 28.4648 0 31.0007C0 40.3493 7.60731 47.9463 16.9456 47.9463C19.4385 47.9463 21.7917 47.3983 23.9195 46.4312C26.0793 47.4305 28.4648 48 31.0007 48C40.3493 48 47.9463 40.3927 47.9463 31.0544C47.9463 28.5615 47.3983 26.2083 46.4312 24.0805C47.4305 21.9207 48 19.5352 48 16.9993C48 7.65071 40.3927 0.0537093 31.0544 0.0537093ZM31.0544 2.20277C39.2099 2.20277 45.8509 8.84331 45.8509 16.9993C45.8509 18.6218 45.5823 20.1799 45.088 21.652C42.5306 17.8266 38.4475 15.1188 33.7197 14.3452C32.989 9.60652 30.3026 5.51238 26.4989 2.9232C27.9388 2.46115 29.4641 2.20277 31.0544 2.20277ZM31.7958 16.9559C31.7958 18.5785 31.5272 20.1365 31.0329 21.6086C29.8187 19.7927 28.2607 18.2131 26.4447 16.9881C27.8846 16.5261 29.4104 16.2682 31.0007 16.2682C31.2585 16.2682 31.5057 16.2897 31.7636 16.3112C31.7636 16.5261 31.7958 16.7517 31.7958 16.9666L31.7958 16.9559ZM30.0014 24.0262C28.626 26.5513 26.5199 28.6359 23.984 29.9898C21.4589 28.6144 19.3743 26.5083 18.0204 23.9725C19.3958 21.4473 21.5018 19.3628 24.0377 18.0088C26.5629 19.3842 28.6474 21.4903 30.0014 24.0262ZM31.0115 14.1082C28.5186 14.1082 26.1653 14.6562 24.0375 15.6233C21.8777 14.624 19.4922 14.0545 16.9563 14.0545C16.8166 14.0545 16.6877 14.076 16.548 14.076C17.429 9.6919 20.2551 6.00652 24.07 3.95375C27.8738 6.0383 30.6676 9.73467 31.5164 14.1296C31.3445 14.1296 31.1726 14.1081 31.0006 14.1081L31.0115 14.1082ZM16.9563 16.2143C18.5788 16.2143 20.1369 16.4829 21.609 16.9772C19.793 18.1914 18.2135 19.7494 16.9885 21.5654C16.5264 20.1255 16.2685 18.5998 16.2685 17.0095C16.2685 16.7516 16.29 16.5044 16.3115 16.2465C16.5264 16.2465 16.7521 16.2143 16.967 16.2143L16.9563 16.2143ZM15.6239 23.9832C14.6246 26.143 14.0551 28.5285 14.0551 31.0644C14.0551 31.2041 14.0766 31.333 14.0766 31.4727C9.69252 30.5917 6.00714 27.7656 3.95437 23.9507C6.03892 20.1469 9.73529 17.3531 14.1302 16.5043C14.1302 16.6762 14.1087 16.8482 14.1087 17.0201C14.1087 19.513 14.6568 21.8662 15.6238 23.994L15.6239 23.9832ZM16.2149 31.0534C16.2149 29.4309 16.4835 27.8728 16.9778 26.4007C18.192 28.2167 19.75 29.7962 21.5661 31.0212C20.1262 31.4833 18.6004 31.7412 17.0101 31.7412C16.7522 31.7412 16.505 31.7197 16.2471 31.6982C16.2471 31.4833 16.2149 31.2576 16.2149 31.0427L16.2149 31.0534ZM16.9993 33.9009C19.4922 33.9009 21.8454 33.3529 23.9732 32.3858C26.133 33.3851 28.5185 33.9546 31.0544 33.9546C31.1941 33.9546 31.3231 33.9331 31.4627 33.9331C30.5817 38.3172 27.7556 42.0026 23.9407 44.0553C20.1369 41.9708 17.3431 38.2744 16.4943 33.8795C16.6662 33.8795 16.8382 33.901 17.0101 33.901L16.9993 33.9009ZM31.0544 31.8055C29.4319 31.8055 27.8738 31.5369 26.4017 31.0426C28.2177 29.8284 29.7972 28.2704 31.0222 26.4544C31.4843 27.8943 31.7422 29.4201 31.7422 31.0104C31.7422 31.2682 31.7207 31.5154 31.6992 31.7733C31.4843 31.7733 31.2587 31.8055 31.0438 31.8055L31.0544 31.8055ZM32.3868 24.0263C33.3861 21.8665 33.9556 19.481 33.9556 16.9451C33.9556 16.8054 33.9341 16.6765 33.9341 16.5368C38.3182 17.4178 42.0036 20.2439 44.0564 24.0588C41.9718 27.8626 38.2754 30.6564 33.8805 31.5052C33.8805 31.3333 33.902 31.1613 33.902 30.9894C33.902 28.4965 33.354 26.1433 32.3869 24.0155L32.3868 24.0263ZM2.20309 16.9561C2.20309 8.80068 8.84364 2.15958 16.9996 2.15958C18.6222 2.15958 20.1802 2.42821 21.6523 2.92251C17.827 5.47992 15.1192 9.56306 14.3455 14.2908C9.60685 15.0215 5.51271 17.7079 2.92353 21.5117C2.46148 20.0718 2.20309 18.5464 2.20309 16.9561ZM16.9563 45.8071C8.80087 45.8071 2.15977 39.1665 2.15977 31.0106C2.15977 29.388 2.4284 27.83 2.9227 26.3579C5.48011 30.1832 9.56325 32.891 14.291 33.6647C15.0217 38.4033 17.7081 42.4975 21.5119 45.0866C20.072 45.5487 18.5466 45.8071 16.9563 45.8071ZM45.8073 31.0539C45.8073 39.2093 39.1667 45.8504 31.0108 45.8504C29.3882 45.8504 27.8302 45.5818 26.3581 45.0875C30.1834 42.5301 32.8912 38.4469 33.6649 33.7191C38.4035 32.9885 42.4976 30.3021 45.0868 26.4983C45.5489 27.9382 45.8073 29.4636 45.8073 31.0539Z'/></svg>"); /* { friendly: 'Flair Mask Image (Data URI)', group: 'Shapes & Decorative' } */

}

.btm-deco {
	position: absolute;
	bottom: -1px;
	z-index: 0;
	width: 100%;

	svg {
		width: 100%;
		height: 18.722rem;
		display: block;
	}

	@media screen and (max-width: 1279px) {
		margin-top: 2rem;
	}
}

section:has(> .btm-deco) {
	&:has(+ section[data-colors="primary-light"])   { --shape-clr-1-dyn: var(--lt-bg); }
	&:has(+ section[data-colors="alternate-light"]) { --shape-clr-1-dyn: var(--lt-alt-bg); }
	&:has(+ section[data-colors="primary-dark"])    { --shape-clr-1-dyn: var(--dk-bg); }
	&:has(+ section[data-colors="alternate-dark"])  { --shape-clr-1-dyn: var(--dk-alt-bg); }
}

/* When the btm-deco panel is the last thing in <main>, its visual neighbor is
   the first section of <footer>. Must set the var directly on the section
   (the @scope rule in color-structure.css sets --shape-clr-1-dyn on the
   section element itself, so a value set on a parent like <form> would be
   shadowed). Two paired selectors handle "section is direct last-child of
   main" and "section is wrapped (e.g. in <form>) as main's last-child". */
main:has(+ footer section[data-colors="primary-light"]:first-of-type)   > section:last-child:has(> .btm-deco),
main:has(+ footer section[data-colors="primary-light"]:first-of-type)   > :last-child section:has(> .btm-deco)   { --shape-clr-1-dyn: var(--lt-bg); }
main:has(+ footer section[data-colors="alternate-light"]:first-of-type) > section:last-child:has(> .btm-deco),
main:has(+ footer section[data-colors="alternate-light"]:first-of-type) > :last-child section:has(> .btm-deco)   { --shape-clr-1-dyn: var(--lt-alt-bg); }
main:has(+ footer section[data-colors="primary-dark"]:first-of-type)    > section:last-child:has(> .btm-deco),
main:has(+ footer section[data-colors="primary-dark"]:first-of-type)    > :last-child section:has(> .btm-deco)   { --shape-clr-1-dyn: var(--dk-bg); }
main:has(+ footer section[data-colors="alternate-dark"]:first-of-type)  > section:last-child:has(> .btm-deco),
main:has(+ footer section[data-colors="alternate-dark"]:first-of-type)  > :last-child section:has(> .btm-deco)   { --shape-clr-1-dyn: var(--dk-alt-bg); }

/* Same pattern for the header→main boundary: a btm-deco at the bottom of
   <header> (e.g. MainstageV2) needs to read the first <main> section to know
   what color to fade into. Sets --btm-deco-end-clr (only the solid bottom
   path uses it) so the translucent fan layers keep their scope-default tint
   and stay visible — otherwise a light next-section bg flattens the fan. */
header:has(+ main > section[data-colors="primary-light"]:first-of-type)   > section:last-child:has(> .btm-deco)   { --btm-deco-end-clr: var(--lt-bg); }
header:has(+ main > section[data-colors="alternate-light"]:first-of-type) > section:last-child:has(> .btm-deco)   { --btm-deco-end-clr: var(--lt-alt-bg); }
header:has(+ main > section[data-colors="primary-dark"]:first-of-type)    > section:last-child:has(> .btm-deco)   { --btm-deco-end-clr: var(--dk-bg); }
header:has(+ main > section[data-colors="alternate-dark"]:first-of-type)  > section:last-child:has(> .btm-deco)   { --btm-deco-end-clr: var(--dk-alt-bg); }
/* header-v2.css */
/* ── Header v2 ──────────────────────────────────────────────── */

.hdr.v2 {
    --hdr-nv-sp: 50;
    --hdr-nv-sp-lpt: 20;

    --hdr-lg-mx-wd: 400;
    --hdr-lg-mx-wd-clc: calc((var(--hdr-lg-mx-wd-mbl) * 1px) + (var(--hdr-lg-mx-wd) - var(--hdr-lg-mx-wd-mbl)) * ((var(--vw_) - 320px) / (1920 - 320)));

    /* v2 has no inner .bg-bx panel — the .hdr.v2 element is the visible header,
       painted with --background by [data-colors]. Expose that as --hdr-pnl-bg
       so descendant flyouts always match the header bg, regardless of the
       configured `colors` value. */
    --hdr-pnl-bg: var(--background);

    border-top-left-radius: 0;
    border-top-right-radius: 0;

    /* Top hat band — full-width alternate surface (light blue on primary-light).
       The .hdr.v2 root paints --background; this band uses --inner-theme, the
       palette's alternate surface color, so it stays in sync with the theme. */
    .hdr-top {
        background-color: #ACCDFD;
    }

    .tp-lg {
        margin-right: 0;
    }

    .btn.v1.alt {
        --btn-bg: var(--btn-hvr-pry);
        --btn-clr: var(--btn-hvr-pry-txt);

        @media (hover: hover) and (pointer: fine) {
            &:is(a:hover, a:focus-visible) {
                --btn-bg: var(--btn-pry);
                --btn-clr: var(--btn-pry-txt);
			    border-color: var(--btn-bg);
			    background-color: var(--btn-bg);
            }
        }
    }

    @media screen and (width >= 1280px) {
        .hdr-row {
            display: flex;
        }

        /* Align last flyout to the right to prevent overflow */
        .nv > ul > li:last-child .fly-nv {
            left: auto;
            right: 0;
        }
    }
}

.overlap:has(.hdr.v2) {
    z-index: 2;

    + section {
        margin-bottom: calc(-1 * var(--bdr-rds));
    }
}

/* banner-v2.css */
.bnr.v2 {
    --bnr-tls-pd-v-tp: 90;
    --bnr-tls-pd-v-tp-mbl: 50;
    --bnr-tls-pd-v-bt: 40;
    --bnr-tls-pd-v-bt-mbl: 30;
    --bnr-img-bg-o: .2;
    --bnr-v2-oft: 4.72rem;
    
    background: linear-gradient(180deg, hsl(from var(--black) h s l / .8) 11.54%, hsl(from var(--background) h s l / .8) 100%);

    position: relative;



    .bnr-v2-cnt {
        position: relative;
        z-index: 1;
        padding-top: 9rem;
        padding-bottom: 9rem;
    }

    picture.bg img {
        opacity: 1;
    }

    .bg-bx.frst-bg {
        --frst-bg-o: .75;
        --frst-blur: 7px;
        background-color: hsl(from #243878 h s l / var(--frst-bg-o));
        padding: 2rem 2.78rem;
        border: none;

        @media screen and (min-width:1280px) {
            & {
                gap: 4.4rem;
                margin-bottom: calc((4.72rem + var(--bnr-tls-pd-v-bt-clc)) * -1);
                .itm {
                    gap: 3.33rem;
                }
            }
        }

        .bnr-v2-cta-sub {
            --title-color: var(--fnt-t-co);
            font-family: var(--fnt-t);
            font-weight: var(--fnt-t-co-w);
            text-transform: uppercase;
            margin: 0;
        }
    }
}

header:has(.hdr.v1) + main .bnr.v2 {
    --bnr-tls-pd-v-tp: 68;
    --bnr-tls-pd-v-bt: 64;
}

.bnr.v2:has(.bg-bx.frst-bg) + section {
    --bnr-v2-oft: 4.72rem;
    padding-top: calc(var(--pd-v, 0px) + var(--bnr-v2-oft));
}

/* reviews-v8.css */
/* Reviews V8 — arched panel with twin vertical review scrollers */
.rvw.v8 {
	--rvw-str-s: 1.33rem;

	/* Panel fill shown behind the photo / at the panel edges */
	--rvw-v8-panel-bg: #2d4690;

	/* ── Panel (full-bleed: photo + arches span the full width) ────────── */
	.rvw-v8-panel {
		position: relative;
		overflow: hidden;
		background: var(--rvw-v8-panel-bg);
		isolation: isolate;
	}

	/* Background photo fills the panel, behind the tint */
	picture.bg {
		position: absolute;
		inset: 0;
		z-index: 0;
	}
	picture.bg,
	picture.bg img {
		width: 100%;
		height: 100%;
	}
	picture.bg img {
		object-fit: cover;
		opacity: 1;
	}

	/* Blue tint over the photo: heavier on the left (behind the copy) for
	   legibility, fading right so the photo reads through behind the cards. */
	.rvw-v8-panel::before {
		content: '';
		position: absolute;
		inset: 0;
		z-index: 1;
		pointer-events: none;
		background:
			linear-gradient(to right, hsl(226 54% 20% / 0.92) 0%, hsl(226 54% 20% / 0.78) 38%, hsl(226 54% 20% / 0.42) 70%, hsl(226 54% 20% / 0.28) 100%),
			linear-gradient(to bottom, hsl(226 54% 20% / 0.38), hsl(226 54% 20% / 0.18));
	}

	/* ── Content row (mn_wd handles the horizontal inset) ──────────────── */
	.rvw-v8-content {
		position: relative;
		z-index: 2;
		align-items: center;
		gap: 3.125rem;
		padding-block: clamp(2rem, 4vw, 4rem);
	}

	/* ── Left copy ─────────────────────────────────────────────────────── */
	.rvw-v8-lft {
		gap: 2rem;
	}

	/* Maple-leaf flair + subhead read white on the blue panel */
	.rvw-v8-lft .flr_hd { color: #fff; }
	.rvw-v8-lft h3 { --title-color: #e7ecff; }

	header em {
		--title-color: var(--lt-h1) !important; /* bold numbers → brand red */
		color: var(--title-color);
	}

	/* ── Right scroller ────────────────────────────────────────────────── */
	.rvw-v8-cols {
		--flx-gap: 1.5rem;
		position: relative;
		z-index: 2;
		height: 38rem;
	}

	.rvw-v8-col {
		height: 100%;
	}

	.rvw-v8-track {
		gap: 1.5rem;

		[aria-hidden] {
			visibility: visible;
		}

		&.ready[data-dir="up"] {
			animation: rvw-scroll-up var(--rvw-scroll-duration, 90s) linear infinite;
		}

		&.ready[data-dir="down"] {
			animation: rvw-scroll-down var(--rvw-scroll-duration, 110s) linear infinite;
		}
	}

	/* ── Arches — laid on top of the photo AND the scroller ────────────── */
	.rvw-v8-arch {
		position: absolute;
		left: 0;
		width: 100%;
		z-index: 4;
		height: clamp(7rem, 16vw, 13rem);
		line-height: 0;
		pointer-events: none;
		visibility: visible !important;
	}
	.rvw-v8-arch svg {
		display: block;
		width: 100%;
		height: 100%;
	}
	.rvw-v8-arch.is-top { top: 0; }
	.rvw-v8-arch.is-bot { bottom: 0; }

	/* ── Responsive ────────────────────────────────────────────────────── */
	@media screen and (max-width: 1279px) {
		.rvw-v8-cols { height: 32rem; }
	}

	@media screen and (max-width: 699px) {
		.rvw-v8-content { gap: 2rem; }
		.rvw-v8-cols { height: 26rem; width: 100%; }
		.rvw-v8-arch { height: clamp(5rem, 18vw, 9rem); }
	}

	@media (prefers-reduced-motion: reduce) {
		.rvw-v8-track.ready {
			animation: none !important;
		}
	}
}

@keyframes rvw-scroll-up {
	from { transform: translateY(0); }
	to   { transform: translateY(calc(-1 * var(--rvw-cycle-height))); }
}

@keyframes rvw-scroll-down {
	from { transform: translateY(calc(-1 * var(--rvw-cycle-height))); }
	to   { transform: translateY(0); }
}

/* contact-v1.css */
/* Contact V1 */
.ctc.v1 {

	.ctc-v1-card {
	
		background-color:hsl(from var(--inner-theme) h s l / 0.9);
		backdrop-filter: blur(4px);
		background: linear-gradient(270deg, rgba(255, 255, 255, 0.00) 0%, rgba(54, 134, 247, 0.21) 100%);


		@media screen and (min-width:1280px) {
			& {
				margin-bottom: 2rem;
			}
		}

		.ctc-v1-frm .input-text {
			select {
				option {
					background-color: #ffffff;
				}
			}
		}
	}

	/* ===== Left column: heading + mascot ===== */
	.ctc-v1-lft {
		gap: 1.5rem;
	}

	.ctc-v1-ttl {
		font-size: clamp(3rem, 5.2vw, 6.25rem);
		line-height: 1;
		text-align: center;
	}

	.ctc-v1-msc {
		flex: 1;
		display: flex;
		align-items: flex-end;
		justify-content: center;
		width: 100%;
		margin-bottom: -3rem;
		
		
		@media screen and (min-width:1280px) {

			& {
				margin-bottom: calc(-4 * var(--pd-v));
				position: absolute;
				top: 90%;
				left: 50%;
				transform: translate(-50%, -50%) scale(1.25);
			}
		}

		img {
			max-width: 26.2rem;
			width: 100%;
			height: auto;
			display: block;
		}
	}

	/* ===== Right column: form panel ===== */
	.ctc-v1-frm {
		padding: 2rem;
		gap: 1.25rem;

		&.bg-bx.ulk-bg {
			background-color: #C92C0C;
		}

		.input-text {
			:is(input, select, textarea)::placeholder {
				font-size: 0.875rem;
				font-weight: 500;
				letter-spacing: 0.175rem;
				text-transform: uppercase;
				color: #191919;
				opacity: 1;
			}

			/* Address map pin: muted */
			&.has-icn > svg {
				fill: #191919;
				opacity: 0.5;
			}
		}
	}

	.ctc-v1-legal {
		font-size: 0.875rem;
		line-height: 1.5;

		a {
			text-decoration: underline;
		}
	}

	/* ===== Responsive ===== */
	@media screen and (max-width: 1279px) {
		.ctc-v1-lft {
			min-height: 22rem;
		}
	}

}

/* footer-v1.css */
/* Footer V1 */
.ftr.v1 {
	background: linear-gradient(to bottom, var(--background), var(--inner-theme));

	picture.bg img {
		opacity: 1;
	}
}

/* ===== Divider ===== */
.ftr.v1 .ftr-rule {
	border: none;
	border-top: 1px solid hsl(from var(--text-color) h s l / .25);
	margin: 0;
}

/* ===== Col 2: Quick Links ===== */
.ftr.v1 .ftr-nav-lk {
	color: var(--white);
	font-size: 1.125rem;
	line-height: 1.7;
}

.ftr.v1 .ftr-nav-lk:hover {
	text-decoration: underline;
}

/* ===== Col 3: Locations ===== */
.ftr.v1 .ftr-addr {
	font-size: 1.125rem;
	line-height: 1.7;
}

.ftr.v1 .ftr-addr-lk {
	color: var(--accent);
}

.ftr.v1 .ftr-addr-lk:hover {
	text-decoration: underline;
}

/* ===== Social links ===== */
.ftr.v1 .so-lk {
	width: 2.5rem;
	height: 2.5rem;
	
}

/* ===== 4-column grid ===== */
.ftr.v1 .ftr-col-main {
	flex: 0 0 26rem;
	min-width: 0;
}

.ftr.v1 .ftr-col {
	min-width: 0;
}

/* ===== Legal bar ===== */
.ftr.v1 .ftr-legal {
	font-size: 0.875rem;

}


.ftr.v1 .ftr-scp-img svg {
	width: 50px;
	height: 50px;
}

.ftr.v1 .crtd-by {
	font-size: 10px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	letter-spacing: 4px;
	text-transform: uppercase;
	white-space: nowrap;
}
