.font-primary {font-family: var(--font-primary) !important;}
.font-secondary {font-family: var(--font-secondary) !important;}
.font-tertiary {font-family: var(--font-tertiary) !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-pink-1 {background-color: var(--pink-1);}
.bg-pink-2 {background-color: var(--pink-2);}
.bg-light-1 {background-color: var(--light-1);}
.bg-light-2 {background-color: var(--light-2);}
.bg-red {background-color: var(--red);}

.color-white {color: var(--white);}
.color-black {color: var(--black);}
.color-primary {color: var(--primary);}
.color-pink-1 {color: var(--pink-1);}
.color-pink-2 {color: var(--pink-2);}
.color-light-1 {color: var(--light-1);}
.color-light-2 {color: var(--light-2);}
.color-red {color: var(--red);}

h1, .h1 {font-size: clamp(2.5rem, 2rem + 2.5vw, 5rem) !important; line-height: 100% !important; margin: 0 0 calc(var(--pad) * 3) 0; text-wrap: pretty; font-family: var(--font-tertiary);}
h2, .h2 {font-size: 2.25rem !important; line-height: 115% !important; margin: 0 0 calc(var(--pad) * 3) 0; text-wrap: pretty; font-family: var(--font-secondary);}
h3, .h3 {font-size: 1.875rem !important; line-height: 115% !important; margin: 0 0 calc(var(--pad) * 3) 0; text-wrap: pretty; font-family: var(--font-secondary);}
h4, .h4 {font-size: 1.75rem !important; line-height: 120% !important; margin: 0 0 calc(var(--pad) * 3) 0; text-wrap: pretty; font-family: var(--font-secondary);}
h5, .h5 {font-size: 1.5rem !important; line-height: 130% !important; margin: 0 0 calc(var(--pad) * 3) 0; text-wrap: pretty; font-family: var(--font-secondary);}
h6, .h6 {font-size: 1.375rem !important; line-height: 140% !important; margin: 0 0 calc(var(--pad) * 3) 0; text-wrap: pretty; font-family: var(--font-secondary);}

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) * 1.25);
	background: var(--pink-1); color: var(--white) !important; overflow: hidden; border-radius: calc(var(--pad) * 1.25);
	height: calc(var(--pad) * 6); text-align: center; font-size: 1rem; white-space: nowrap;
	padding: 0 calc(var(--pad) * 3); transition: var(--transition1);
}
a.button:hover, .button a:hover, button.button:hover, input.button:hover, span.button:hover, a:hover span.button {background: var(--pink-2);}

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

a.scrollto {}

a.button.bordered,
.button.bordered a,
button.button.bordered,
input.button.bordered,
span.button.bordered {background: none; border: solid 2px var(--pink-1); color: var(--pink-1) !important;}

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 {background: var(--pink-1); color: var(--white) !important;}

a.button.bordered.white,
.button.bordered.white a,
button.button.bordered.white,
input.button.bordered.white,
span.button.bordered.white {background: none; border: solid 2px var(--white); color: var(--white) !important;}

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 {background: var(--white); color: var(--pink-1) !important;}

/* *.text-gradient {
	background: var(--fr-gradient);
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

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

a.button.white:hover,
.button.white a:hover,
button.button.white:hover,
input.button.white:hover,
span.button.white:hover,
a:hover span.button.white {background: var(--light-1); color: var(--blue);}

a.button.with-arrow,
.button.with-arrow a,
button.button.with-arrow,
input.button.with-arrow,
span.button.with-arrow {}
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; vertical-align: middle; width: calc(var(--pad) * 3); aspect-ratio: 1; position: relative; 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='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M5 12H19M19 12L13 18M19 12L13 6' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%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(30px);
	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='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M5 12H19M19 12L13 18M19 12L13 6' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	position: absolute;
	transform: translateX(-30px);
	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.white .arrow,
.button.with-arrow.white a .arrow,
button.button.with-arrow.white .arrow,
input.button.with-arrow.white .arrow,
span.button.with-arrow.white .arrow {}
a.button.with-arrow.white .arrow:before,
.button.with-arrow.white a .arrow:before,
button.button.with-arrow.white .arrow:before,
input.button.with-arrow.white .arrow:before,
span.button.with-arrow.white .arrow:before,
a.button.with-arrow.white .arrow:after,
.button.with-arrow.white a .arrow:after,
button.button.with-arrow.white .arrow:after,
input.button.with-arrow.white .arrow:after,
span.button.with-arrow.white .arrow:after {content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M5 12H19M19 12L13 18M19 12L13 6' stroke='%23182757' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");}

a.button.with-arrow.down .arrow,
.button.with-arrow.down a .arrow,
button.button.with-arrow.down .arrow,
input.button.with-arrow.down .arrow,
span.button.with-arrow.down .arrow {rotate: 90deg;}

a.button.with-arrow.back,
.button.with-arrow.back a,
button.button.with-arrow.back,
input.button.with-arrow.back,
span.button.with-arrow.back {padding: 0; height: unset; background: none;}
a.button.with-arrow.back .arrow,
.button.with-arrow.back a .arrow,
button.button.with-arrow.back .arrow,
input.button.with-arrow.back .arrow,
span.button.with-arrow.back .arrow {order: -1; rotate: 180deg;}

ul.list-with-checks {}
ul.list-with-checks li {padding: 0; margin: 0 0 calc(var(--pad) * 1.5) 0; display: flex; gap: calc(var(--pad) * 2); align-items: center;}
ul.list-with-checks li:before {display: none;}
ul.list-with-checks li:after {content: " "; width: calc(var(--pad) * 5); aspect-ratio: 1; border-radius: 100%; display: inline-flex; order: -1; align-self: flex-start;
	background: var(--light-1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36' fill='none'%3E%3Cpath d='M7.5 18L15 25.5L30 10.5' stroke='url(%23paint0_linear_627_3028)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cdefs%3E%3ClinearGradient id='paint0_linear_627_3028' x1='18.75' y1='25.5' x2='18.75' y2='10.5' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23023D94'/%3E%3Cstop offset='1' stop-color='%23192758'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E") no-repeat center / 60% auto; 
}
ul.list-with-checks .aligner {line-height: 140%; flex: 1; display: flex; flex-direction: column; justify-content: center;}
ul.list-with-checks .inner {line-height: 140%;}

ul.list-with-checks-large {}
ul.list-with-checks-large li {padding: 0; margin: 0 0 calc(var(--pad) * 5) 0; font-size: 1.5rem; line-height: 130%; display: flex; gap: calc(var(--pad) * 2); align-items: center;}
ul.list-with-checks-large li:before {display: none;}
ul.list-with-checks-large li:after {content: " "; width: calc(var(--pad) * 7); aspect-ratio: 1; border-radius: 100%; display: inline-flex; order: -1; align-self: flex-start;
	background: var(--light-1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36' fill='none'%3E%3Cpath d='M7.5 18L15 25.5L30 10.5' stroke='url(%23paint0_linear_627_3028)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cdefs%3E%3ClinearGradient id='paint0_linear_627_3028' x1='18.75' y1='25.5' x2='18.75' y2='10.5' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23023D94'/%3E%3Cstop offset='1' stop-color='%23192758'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E") no-repeat center / 60% auto; 
}
ul.list-with-checks-large .aligner {line-height: 130%; flex: 1; display: flex; flex-direction: column; justify-content: center;}
ul.list-with-checks-large .inner {line-height: 130%;}

ul.list-with-numbers-large {display: grid; gap: calc(var(--pad) * 7); counter-reset: section; align-items: start;}
ul.list-with-numbers-large.two-columns {grid-template-columns: repeat(2, 1fr);}
ul.list-with-numbers-large li {padding: 0; margin: 0; font-size: 1.5rem; line-height: 130%; display: flex; gap: calc(var(--pad) * 2); align-items: center;}
ul.list-with-numbers-large li:before {display: none;}
ul.list-with-numbers-large li:after {content: " "; width: calc(var(--pad) * 8); aspect-ratio: 1; border-radius: 100%; order: -1; align-self: flex-start;
	background: var(--blue-light); counter-increment: section; content: counter(section); display: inline-flex; align-items: center; justify-content: center; color: var(--white); font-size: 2.5rem;
}
ul.list-with-numbers-large .aligner {line-height: 130%; flex: 1; display: flex; flex-direction: column; justify-content: center;}
ul.list-with-numbers-large .inner {line-height: 130%;}

span.colored-box {display: block; padding: calc(var(--pad) * 2); border-radius: calc(var(--pad) * 1.25); line-height: 140%;} */
