.font-primary {font-family: var(--font-primary) !important;}
.font-secondary {font-family: var(--font-secondary) !important;}

.font-weight-200 {font-weight: 200 !important;}
.font-weight-300 {font-weight: 300 !important;}
.font-weight-400 {font-weight: 400 !important;}
.font-weight-500 {font-weight: 500 !important;}
.font-weight-600 {font-weight: 600 !important;}
.font-weight-700 {font-weight: 700 !important;}
.font-weight-800 {font-weight: 800 !important;}
.font-weight-900 {font-weight: 900 !important;}

.bg-white {background-color: var(--white);}
.bg-black {background-color: var(--black);}
.bg-primary {background-color: var(--primary);}
.bg-blue {background-color: var(--blue);}
.bg-blue-light {background-color: var(--blue-light);}
.bg-green {background-color: var(--green);}
.bg-yellow {background-color: var(--yellow);}
.bg-purple {background-color: var(--purple);}
.bg-red {background-color: var(--red);}

.color-white {color: var(--white);}
.color-black {color: var(--black);}
.color-primary {color: var(--primary);}
.color-blue {color: var(--blue);}
.color-blue-light {color: var(--blue-light);}
.color-green {color: var(--green);}
.color-yellow {color: var(--yellow);}
.color-purple {color: var(--purple);}
.color-red {color: var(--red);}
.color-gradient {
	background: var(--gradient);
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

h1, .h1 {font-size: clamp(3rem, 1.9rem + 5.5vw, 8.5rem) !important; font-family: var(--font-secondary); line-height: 70% !important; margin: 0 0 calc(var(--pad) * 3) 0; text-wrap: balance; font-weight: 700;}
h2, .h2 {font-size: clamp(2.5rem, 2.25rem + 1.25vw, 3.75rem) !important; font-family: var(--font-secondary); line-height: 100% !important; margin: 0 0 calc(var(--pad) * 3) 0; text-wrap: balance; font-weight: 700;}
h3, .h3 {font-size: 2.25rem !important; line-height: 110% !important; margin: 0 0 calc(var(--pad) * 3) 0; text-wrap: balance; font-weight: 600;}
	h4, .h4 {font-size: 2rem !important; line-height: 120% !important; margin: 0 0 calc(var(--pad) * 3) 0;}
h5, .h5 {font-size: 1.625rem !important; line-height: 135% !important; margin: 0 0 calc(var(--pad) * 3) 0;}
	h6, .h6 {font-size: 1.375rem !important; line-height: 145% !important; margin: 0 0 calc(var(--pad) * 3) 0;}

h1 em, .h1 em,
h2 em, .h2 em {font-weight: 400;}
h1 .color-gradient, .h1 .color-gradient,
h2 .color-gradient, .h2 .color-gradient {padding-right: 1%; margin-right: -0.5%;}

h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child,
.h1:last-child, .h2:last-child, .h3:last-child, .h4:last-child, .h5:last-child, .h6:last-child {margin: 0;}

a.button, .button a, button.button, input.button, span.button {display: inline-flex; align-items: center; justify-content: center; vertical-align: middle; position: relative; gap: calc(var(--pad) * 2);
	background: var(--blue); color: var(--white); overflow: hidden; border-radius: 5px;
	height: calc(var(--pad) * 7); text-align: center; font-size: 1.75rem; white-space: nowrap; font-weight: 700; text-transform: uppercase; font-family: var(--font-secondary);
	padding: 0 calc(var(--pad) * 4); transition: var(--transition1);
}
a.button:hover, .button a:hover, button.button:hover, input.button:hover, span.button:hover, a:hover span.button {background: var(--green); color: var(--white);}

.button.full-width {width: 100%;}
.button:disabled {opacity: 0.5; pointer-events: none;}

a.scrollto {}

a.button.large,
.button.large a,
button.button.large,
input.button.large,
span.button.large {height: calc(var(--pad) * 9);}

/* a.button.small,
.button.small a,
button.button.small,
input.button.small,
span.button.small {height: calc(var(--pad) * 5); font-size: 1rem; padding: 0 calc(var(--pad) * 3);}

a.button.orange,
.button.orange a,
button.button.orange,
input.button.orange,
span.button.orange {background: var(--orange); color: var(--primary);}

a.button.orange:hover,
.button.orange a:hover,
button.button.orange:hover,
input.button.orange:hover,
span.button.orange:hover,
a:hover span.button.orange {background: var(--primary); color: var(--white);}

a.button.with-arrow,
.button.with-arrow a,
button.button.with-arrow,
input.button.with-arrow,
span.button.with-arrow {padding-right: calc(var(--pad) * 9);}
a.button.with-arrow .arrow,
.button.with-arrow a .arrow,
button.button.with-arrow .arrow,
input.button.with-arrow .arrow,
span.button.with-arrow .arrow {display: inline-flex; align-items: center; justify-content: center; vertical-align: middle; width: calc(var(--pad) * 5); aspect-ratio: 1; border-radius: 100%; margin-right: calc(var(--pad) * 1.5); position: absolute; right: 0; background: var(--white); overflow: hidden;}
a.button.with-arrow .arrow:before,
.button.with-arrow a .arrow:before,
button.button.with-arrow .arrow:before,
input.button.with-arrow .arrow:before,
span.button.with-arrow .arrow:before {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='25' height='15' viewBox='0 0 25 15' fill='none'%3E%3Cpath d='M24.7071 8.07112C25.0976 7.6806 25.0976 7.04743 24.7071 6.65691L18.3431 0.292946C17.9526 -0.0975785 17.3195 -0.0975785 16.9289 0.292946C16.5384 0.68347 16.5384 1.31664 16.9289 1.70716L22.5858 7.36401L16.9289 13.0209C16.5384 13.4114 16.5384 14.0446 16.9289 14.4351C17.3195 14.8256 17.9526 14.8256 18.3431 14.4351L24.7071 8.07112ZM0 7.36401V8.36401H24V7.36401V6.36401H0V7.36401Z' fill='%23FF0006'/%3E%3C/svg%3E");
	transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s ease;
}
a.button.with-arrow:hover .arrow:before,
.button.with-arrow a:hover .arrow:before,
button.button.with-arrow:hover .arrow:before,
input.button.with-arrow:hover .arrow:before,
span.button.with-arrow:hover .arrow:before,
a:hover span.button.with-arrow .arrow:before {
	transform: translateX(28px);
	opacity: 0;
}
a.button.with-arrow .arrow:after,
.button.with-arrow a .arrow:after,
button.button.with-arrow .arrow:after,
input.button.with-arrow .arrow:after,
span.button.with-arrow .arrow:after {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='25' height='15' viewBox='0 0 25 15' fill='none'%3E%3Cpath d='M24.7071 8.07112C25.0976 7.6806 25.0976 7.04743 24.7071 6.65691L18.3431 0.292946C17.9526 -0.0975785 17.3195 -0.0975785 16.9289 0.292946C16.5384 0.68347 16.5384 1.31664 16.9289 1.70716L22.5858 7.36401L16.9289 13.0209C16.5384 13.4114 16.5384 14.0446 16.9289 14.4351C17.3195 14.8256 17.9526 14.8256 18.3431 14.4351L24.7071 8.07112ZM0 7.36401V8.36401H24V7.36401V6.36401H0V7.36401Z' fill='%23FF0006'/%3E%3C/svg%3E");
	display: flex;
	position: absolute;
	transform: translateX(-28px);
	opacity: 0;
	transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s ease;
}
a.button.with-arrow:hover .arrow:after,
.button.with-arrow a:hover .arrow:after,
button.button.with-arrow:hover .arrow:after,
input.button.with-arrow:hover .arrow:after,
span.button.with-arrow:hover .arrow:after,
a:hover span.button.with-arrow .arrow:after {
	transform: translate(0, 0);
	opacity: 1;
}
a.button.with-arrow.full-width .arrow,
.button.with-arrow.full-width a .arrow,
button.button.with-arrow.full-width .arrow,
input.button.with-arrow.full-width .arrow,
span.button.with-arrow.full-width .arrow {position: absolute; right: 0; margin-right: calc(var(--pad) * 1.5);} */

/* .button.large {line-height: calc(var(--pad) * 6.25);}

:is(.bg-black, .bg-primary) a.button:hover,
:is(.bg-black, .bg-primary) .button a:hover,
:is(.bg-black, .bg-primary) button.button:hover,
:is(.bg-black, .bg-primary) input.button:hover,
:is(.bg-black, .bg-primary) a:hover span.button {background: var(--white); color: var(--black);}

a.button.primary,
.button.primary a,
button.button.primary,
input.button.primary,
span.button.primary {background: var(--primary); color: var(--white);}

a.button.primary:hover,
.button.primary a:hover,
button.button.primary:hover,
input.button.primary:hover,
span.button.primary:hover,
a:hover span.button.primary {background: var(--black); color: var(--brown) !important;}

ul.custom-bullets li {font-size: 1.5rem; line-height: 130%;}
ul.custom-bullets li:before {width: var(--pad) !important; top: 6px !important;}

ul.bullets-two-columns {columns: 2; gap: calc(var(--pad) * 8);}
ul.bullets-two-columns li {
	break-inside: avoid;
	page-break-inside: avoid;
	-webkit-column-break-inside: avoid;
}

a.button.primary,
.button.primary a,
button.button.primary,
input.button.primary,
span.button.primary {background: var(--primary); color: var(--yellow);}

a.button.primary:hover,
.button.primary a:hover,
button.button.primary:hover,
input.button.primary:hover,
span.button.primary:hover,
a:hover span.button.primary {background: var(--primary); color: var(--orange) !important;}

.bg-yellow a.button.primary,
.bg-yellow .button.primary a,
.bg-yellow button.button.primary,
.bg-yellow input.button.primary,
.bg-yellow span.button.primary {color: var(--white);}

a.button.underlined,
.button.underlined a,
button.button.underlined,
input.button.underlined,
span.button.underlined {background: none !important; color: var(--primary); line-height: 100%; padding: 6px 0; border-bottom: solid 2px transparent;}

a.button.underlined:hover,
.button.underlined a:hover,
button.button.underlined:hover,
input.button.underlined:hover,
span.button.underlined:hover,
a:hover span.button.underlined {border-color: var(--primary);}

a.button.with-arrow,
.button.with-arrow a,
button.button.with-arrow,
input.button.with-arrow,
span.button.with-arrow {background: none !important; color: var(--orange); line-height: calc(var(--pad) * 3.5); padding: 0 calc(var(--pad) * 4.5) 0 0;}

a.button.with-arrow:after,
.button.with-arrow a:after,
button.button.with-arrow:after,
input.button.with-arrow:after,
span.button.with-arrow:after {content: " "; display: block; width: calc(var(--pad) * 3.5); aspect-ratio: 1; position: absolute; right: 0; top: 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='27' height='27' viewBox='0 0 27 27' fill='none'%3E%3Cmask id='mask0_358_325' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='27' height='27'%3E%3Crect x='27' y='27' width='27' height='27' transform='rotate(-180 27 27)' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_358_325)'%3E%3Cpath d='M15.75 6.75L22.5 13.5L15.75 20.25L14.175 18.6187L18.1687 14.625L4.5 14.625L4.5 12.375L18.1688 12.375L14.175 8.38125L15.75 6.75Z' fill='%23F16549'/%3E%3C/g%3E%3C/svg%3E") no-repeat center center / cover;
}

a.button.with-arrow:hover,
.button.with-arrow a:hover,
button.button.with-arrow:hover,
input.button.with-arrow:hover,
span.button.with-arrow:hover,
a:hover span.button.with-arrow {padding: 0 calc(var(--pad) * 5) 0 0;} */

/*
.button.large {line-height: calc(var(--pad) * 8.5); padding: 0 calc(var(--pad) * 6); font-size: 1.125rem;}

a.button.bordered,
.button.bordered a,
button.button.bordered,
input.button.bordered,
span.button.bordered {background: none !important; border: solid 2px var(--red); color: var(--white); line-height: calc(var(--pad) * 6);}

a.button.bordered:hover,
.button.bordered a:hover,
button.button.bordered:hover,
input.button.bordered:hover,
span.button.bordered:hover,
a:hover span.button.bordered {border-color: var(--primary); color: var(--white);}

a.button.bordered.white,
.button.bordered.white a,
button.button.bordered.white,
input.button.bordered.white,
span.button.bordered.white {border-color: var(--white); color: var(--white);}

a.button.bordered.white:hover,
.button.bordered.white a:hover,
button.button.bordered.white:hover,
input.button.bordered.white:hover,
span.button.bordered.white:hover,
a:hover span.button.bordered.white {color: var(--red);}

a.button.bordered.primary,
.button.bordered.primary a,
button.button.bordered.primary,
input.button.bordered.primary,
span.button.bordered.primary {border-color: var(--primary); color: var(--red);}

a.button.bordered.primary:hover,
.button.bordered.primary a:hover,
button.button.bordered.primary:hover,
input.button.bordered.primary:hover,
span.button.bordered.primary:hover,
a:hover span.button.bordered.primary {border-color: var(--red); color: var(--red);}



a.button.underlined.white,
.button.underlined.white a,
button.button.underlined.white,
input.button.underlined.white,
span.button.underlined {border-color: var(--primary); color: var(--white);}

a.button.underlined.white:hover,
.button.underlined.white a:hover,
button.button.underlined.white:hover,
input.button.underlined.white:hover,
span.button.underlined.white:hover,
a:hover span.button.underlined.white {border-color: var(--red);}

.button-arrow-right {display: inline-block; vertical-align: middle; font-weight: 700; font-size: 0.875rem; position: relative; padding: 0 calc(var(--pad) * 5.5) 0 0; color: var(--red); transition: var(--transition1);}
.button-arrow-right:after {content: " "; display: block; width: calc(var(--pad) * 4); aspect-ratio: 2 / 1; position: absolute; right: 0; top: -1px;
	background: url(images/arrow-1.svg) no-repeat 0 0;
}
a.button-arrow-right:hover, 
a:hover .button-arrow-right {padding: 0 calc(var(--pad) * 6.5) 0 0;} */