:root {
	html,body{
		font-size: 18px;
		font-family: "Outfit";
		font-optical-sizing: auto;
	}
	scroll-behavior: smooth;
	--scroll-width: 7px;
	--default-transition-duration: 0.5s;
	::-webkit-scrollbar-thumb {
		border-radius: 0;
		background-color: #ecab03;
		-webkit-box-shadow: 0 0 1px rgb(255 255 255 / 50%);
	}

	::-webkit-scrollbar {
		border-radius: 0;
		-webkit-appearance: none;
		width: var(--scroll-width);
	}
}

.full-width-always {
	@media (width > 1690px) {
		--mw: 100dvw;
	}
	@media (width<768px) {
		--scroll-width: 0px;
		--mw: 100% !important;
	}
	align-items: center;
	max-width: calc(100dvw - var(--scroll-width));
	padding-left: calc(50vw - (var(--mw) / 2)) !important;
	padding-right: calc(50vw - (var(--mw) / 2)) !important;
	& > * {
		padding-inline: clamp(.5rem,1vw,1rem);
		flex: 1 1 30%;
		min-width: 280px;
		& * {
			max-width: 100dvw;
		}
	}
}
.full-width {
	@media (width>1024px) {		
		--mw: 98dvw;
		padding-left: calc(50vw - (var(--mw) / 2)) !important;
		padding-right: calc(50vw - (var(--mw) / 2)) !important;
	}
	@media (width<640px) {
		/* margin-left: calc( 50% - 50dvw - (var(--scroll-width)/2) );
		margin-right: calc( 50% - 50dvw - (var(--scroll-width)/2) ); */
	}
	@media (width<768px) {
		--scroll-width: 0px;
		--mw: 100% !important;
	}
	@media (width > 1690px) {
		--mw: 1536px;
		align-items: center;
		max-width: calc(100dvw - var(--scroll-width));
		padding-left: calc(50vw - (var(--mw) / 2)) !important;
		padding-right: calc(50vw - (var(--mw) / 2)) !important;
	}
	& > * {
		padding-inline: clamp(.5rem,1vw,1rem);
		/* flex: 1 1 30%; */
		min-width: 280px;
		& * {
			max-width: 100dvw;
		}
	}
}
section {
	@media (width<768px) {
		--scroll-width: 0px;
	}
	width: 100%;
	max-width: calc(100dvw - var(--scroll-width));
	scroll-margin-top: 2rem;
	position: relative;
	& > * {
		position: relative;
		z-index: 0;
	}
	&:is(.nopattern){
		z-index: 1;
	}
}

.text-Trim{
	text-box-trim: trim-both;
	text-box-edge: ex alphabetic;
}





:root {
	--basefont:10px;
	@media (width>768px) {
		--basefont:18px;
	}
	--viewport-index: 1.4vw;
	--viewport-multiplier: 1.618;

	--h6: clamp(
		calc( var(--basefont) * (var(--viewport-multiplier) * .7) ),
		var(--viewport-index),
		calc(var(--basefont) * var(--viewport-multiplier)) ) !important;
	--h5: clamp(
		calc(var(--basefont) * (var(--viewport-multiplier) * 1.25)),
		calc(var(--viewport-index)*1.5),
		calc(var(--basefont) * ( var(--viewport-multiplier) * 1.5)) ) !important;
	--h4: clamp(
		calc(var(--basefont) * (var(--viewport-multiplier)) *1.5),
		calc(var(--viewport-index)*2),
		calc(var(--basefont) * ( var(--viewport-multiplier) * 2)) ) !important;
	--h3: clamp(
		calc(var(--basefont) * ( var(--viewport-multiplier) * 1.75)),
		calc(var(--viewport-index)*1.9),
		calc(var(--basefont) * ( var(--viewport-multiplier) * 2.25)) ) !important;
	--h2: clamp(
		calc(var(--basefont) * ( var(--viewport-multiplier) * 1.1)),
		calc(var(--viewport-index)*2.8),
		calc(var(--basefont) * ( var(--viewport-multiplier) * 2.8)) ) !important;
	/* --h1: clamp(
		calc(var(--basefont) * (var(--viewport-multiplier) * 2.25)),
		calc(var(--viewport-index)*4.5),
		calc(var(--basefont) * ( var(--viewport-multiplier) * 4.5)) ) !important; */
	--h1: clamp(
		calc(var(--basefont) * (var(--viewport-multiplier) * 1.95)),
		calc(var(--viewport-index)*2.95),
		calc(var(--basefont) * ( var(--viewport-multiplier) * 3.95)) ) !important;
	--g1: clamp(
		calc(var(--basefont) * (var(--viewport-multiplier) * 2)),
		calc(var(--viewport-index)*5.7),
		calc(var(--basefont) * ( var(--viewport-multiplier) * 5.7) ) ) !important;
	--g2: clamp(
		calc(var(--basefont) * (var(--viewport-multiplier) * 1.6)),
		calc(var(--viewport-index)*4.0),
		calc(var(--basefont) * ( var(--viewport-multiplier) * 4.0) ) ) !important;
}

.G1 {
	font-size: var(--g1)!important;
	letter-spacing: -.06ch !important;
}
.G2 {
	font-size: var(--g2)!important;
	letter-spacing: -.06ch !important;
}
h1, .H1 {
	font-size: var(--h1)!important;
}
h2, .H2 {
	font-size: var(--h2)!important;
	letter-spacing:-.05rem;
}
h3, .H3 {
	font-size: var(--h3)!important;
	letter-spacing:-.04rem;
}
h4, .H4 {
	font-size: var(--h4)!important;
	letter-spacing:-.04rem;
}
h5, .H5 {
	font-size: var(--h5)!important;
	letter-spacing:-.025rem;
}
h6, .H6 {
	font-size: var(--h6)!important;
	@media(width<1024px){
		font-size: 18px!important;
	}
}

h1,h2,h3,h4,h5,h6
{
	font-family: "Outfit", sans-serif;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
}

h1,h2,h3,h4,h5,h6,
.H1,.H2,.H3,.H4,.H5,.H6{
	letter-spacing: -.025ch !important;
	@media (width<769px){
		text-wrap:balance;
	}
}


.outfit {
	font-family: "Outfit", sans-serif;
	font-optical-sizing: auto;
}

.montserrat {
	font-family: "Montserrat", sans-serif;
	font-optical-sizing: auto;
}


astral-accessibility {
	z-index: 2 !important;
}