.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-brown {background-color: var(--brown);}
.bg-light {background-color: var(--light);}
.bg-light-2 {background-color: var(--light-2);}
.bg-space-blue {background-color: var(--space-blue);}
.bg-red {background-color: var(--red);}

.color-white {color: var(--white);}
.color-black {color: var(--black);}
.color-primary {color: var(--primary);}
.color-brown {color: var(--brown);}
.color-light {color: var(--light);}
.color-light-2 {color: var(--light-2);}
.color-space-blue {color: var(--space-blue);}
.color-red {color: var(--red);}

.color-brown-gradient {
	background: linear-gradient(83deg, #B87156 8.98%, #DAAF9E 95.33%);
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	padding-bottom: 2%;
}

h1, .h1 {font-size: clamp(2rem, 1.4rem + 3vw, 5rem) !important; font-family: var(--font-secondary); line-height: 100% !important; margin: 0 0 calc(var(--pad) * 4) 0; text-wrap: pretty;}
h2, .h2 {font-size: clamp(1.75rem, 1.475rem + 1.375vw, 3.125rem) !important; font-family: var(--font-secondary); line-height: 110% !important; margin: 0 0 calc(var(--pad) * 4) 0; text-wrap: pretty;}
h3, .h3 {font-size: 2rem !important; line-height: 110% !important; margin: 0 0 calc(var(--pad) * 4) 0; text-wrap: pretty;}
h4, .h4 {font-size: 1.625rem !important; line-height: 130% !important; margin: 0 0 calc(var(--pad) * 4) 0; text-wrap: pretty;}
h5, .h5 {font-size: 1.375rem !important; line-height: 140% !important; margin: 0 0 calc(var(--pad) * 4) 0; text-wrap: pretty;}
h6, .h6 {font-size: 1.25rem !important; line-height: 145% !important; margin: 0 0 calc(var(--pad) * 4) 0; text-wrap: pretty;}

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(--primary); color: var(--light-2);
	height: calc(var(--pad) * 7); text-align: center; font-size: 1rem; white-space: nowrap; font-weight: 600;
	padding: 0 calc(var(--pad) * 4.5); transition: var(--transition1);
}
a.button:hover, .button a:hover, button.button:hover, input.button:hover, span.button:hover, a:hover span.button {background: var(--brown); color: var(--white);}

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

a.scrollto {}

a.button.small,
.button.small a,
button.button.small,
input.button.small,
span.button.small {height: calc(var(--pad) * 6); padding: 0 calc(var(--pad) * 4);}

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

a.button.brown,
.button.brown a,
button.button.brown,
input.button.brown,
span.button.brown {background: var(--brown);}

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

a.button.underlined,
.button.underlined a,
button.button.underlined,
input.button.underlined,
span.button.underlined {background: none !important; color: var(--primary); font-size: 1.625rem; font-weight: 600; height: unset; padding: 5px 0; border-bottom: solid 3px var(--brown);}

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); color: var(--primary);}

a.button.underlined.white,
.button.underlined.white a,
button.button.underlined.white,
input.button.underlined.white,
span.button.underlined.white {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(--white); color: var(--white);}

a.button.underlined.small,
.button.underlined.small a,
button.button.underlined.small,
input.button.underlined.small,
span.button.underlined.small {font-size: 1rem; border-width: 2px;}

a.button.underlined.with-arrow,
.button.underlined.with-arrow a,
button.button.underlined.with-arrow,
input.button.underlined.with-arrow,
span.button.underlined.with-arrow {margin-left: 20px;}

a.button.underlined.with-arrow:before,
.button.underlined.with-arrow a:before,
button.button.underlined.with-arrow:before,
input.button.underlined.with-arrow:before,
span.button.underlined.with-arrow:before {content: " "; display: inline-flex; width: 9px; aspect-ratio: 9 / 12; position: absolute; left: -20px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='12' viewBox='0 0 9 12' fill='none'%3E%3Cpath d='M9.53989e-08 1.66869e-07L9 6L-9.53674e-07 12L9.53989e-08 1.66869e-07Z' fill='%23B87156'/%3E%3C/svg%3E") no-repeat center / cover;
}

ul.ul-points {display: grid; grid-template-columns: repeat(3, 1fr); gap: calc(var(--pad) * 3) calc(var(--pad) * 8); counter-reset: counter;}
ul.ul-points li {display: flex; gap: calc(var(--pad) * 3); align-items: center; margin: 0; padding: 0;}
ul.ul-points li:before {counter-increment: counter; content: counter(counter); display: inline-flex; align-items: center; justify-content: center;
	width: calc(var(--pad) * 7); aspect-ratio: 1; border-radius: 100%; background: var(--white); color: var(--brown); font-weight: 600; font-size: 1.5rem;
	position: unset; left: unset; top: unset;
}
ul.ul-points li span {flex: 1; font-size: 1.375rem; line-height: 130%;}

ul.ul-points.vertical {grid-template-columns: unset;}
ul.ul-points.brown li:before {background: var(--brown); 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.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;} */