:root{--font-heading:Geomanist,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-body:Monolisa,"SF Mono",Monaco,"Cascadia Code","Roboto Mono",Consolas,monospace;--h1:clamp(3rem,2.02vw + 2.273rem,5rem);--h2:clamp(2.5rem,2.525vw + 1.591rem,5rem);--h3:clamp(2.4rem,.765vw + 2.155rem,3.2rem);--h4:clamp(2.2rem,.574vw + 2.016rem,2.8rem);--h5:clamp(1.8rem,.382vw + 1.678rem,2.2rem);--h6:clamp(1.4rem,.382vw + 1.278rem,1.8rem);--text-xs:clamp(1.2rem,.191vw + 1.139rem,1.4rem);--text-s:clamp(1.3rem,.287vw + 1.208rem,1.6rem);--text-p:clamp(1.6rem,.202vw + 1.527rem,1.8rem);--text-l:clamp(2.25rem,.239vw + 2.174rem,2.5rem);--body-text-l:clamp(1.8rem,.202vw + 1.727rem,2rem);--section-heading:var(--h2);--section-heading--h1:var(--h1);--section-subheading:clamp(2.2rem,.765vw + 1.955rem,3rem);--section-subheading-s:clamp(1.9rem,.505vw + 1.718rem,2.4rem);--section-overline:var(--text-s);--line-height--heading:1.2;--line-height--body:1.5;--line-height--body-l:1.75;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--weight-black:900;--link:hsl(var(--primary-h),var(--primary-s),72%);--link-hover:hsl(var(--primary-h),var(--primary-s),82%);--link-visited:hsl(var(--primary-h),calc(var(--primary-s) - 20%),68%);--link-active:hsl(var(--primary-h),var(--primary-s),60%);--link-underline:hsla(var(--primary-h),var(--primary-s),72%,.4);--link-underline-hover:var(--link-hover)}body{font-size:var(--text-p);line-height:var(--line-height--body);font-weight:var(--weight-normal)}h1{font-size:var(--h1);line-height:var(--line-height--heading);font-weight:var(--weight-bold);color:var(--light)}h2{font-size:var(--h2);line-height:var(--line-height--heading);font-weight:var(--weight-bold);color:var(--light)}h3{font-size:var(--h3);line-height:var(--line-height--heading);font-weight:var(--weight-bold);color:var(--light)}h4{font-size:var(--h4);line-height:var(--line-height--heading);font-weight:var(--weight-semibold);color:var(--light)}h5{font-size:var(--h5);line-height:var(--line-height--heading);font-weight:var(--weight-semibold);color:var(--light)}h6{font-size:var(--h6);line-height:var(--line-height--heading);font-weight:var(--weight-semibold);color:var(--light)}p{line-height:var(--line-height--body);color:var(--light)}.display-h1{font-size:var(--h1);line-height:var(--line-height--heading);font-weight:var(--weight-bold)}.display-h2{font-size:var(--h2);line-height:var(--line-height--heading);font-weight:var(--weight-bold)}.display-h3{font-size:var(--h3);line-height:var(--line-height--heading);font-weight:var(--weight-bold)}.display-h4{font-size:var(--h4);line-height:var(--line-height--heading);font-weight:var(--weight-semibold)}.display-h5{font-size:var(--h5);line-height:var(--line-height--heading);font-weight:var(--weight-semibold)}.display-h6{font-size:var(--h6);line-height:var(--line-height--heading);font-weight:var(--weight-semibold)}.display-p{font-size:var(--text-p);line-height:var(--line-height--body);font-weight:var(--weight-normal)}.text--xs{font-size:var(--text-xs)}.text--s{font-size:var(--text-s)}.text--l{font-size:var(--text-l)}.body-text-l{font-size:var(--body-text-l);font-family:var(--font-body)}.weight--normal{font-weight:var(--weight-normal)}.weight--medium{font-weight:var(--weight-medium)}.weight--semibold{font-weight:var(--weight-semibold)}.weight--bold{font-weight:var(--weight-bold)}.weight--extrabold{font-weight:var(--weight-extrabold)}.weight--black{font-weight:var(--weight-black)}.line-height--heading{line-height:var(--line-height--heading)}.line-height--body{line-height:var(--line-height--body)}.line-height--body-l{line-height:var(--line-height--body-l)}.section-heading{font-size:var(--section-heading);line-height:var(--line-height--heading);font-weight:var(--weight-bold)}.section-heading--h1{font-size:var(--section-heading--h1)}.section-subheading{font-size:var(--section-subheading);line-height:var(--line-height--heading);font-weight:var(--weight-semibold)}.section-subheading-s{font-size:var(--section-subheading-s);line-height:var(--line-height--heading);font-weight:var(--weight-semibold);font-family:var(--font-body)}.section-overline{font-size:var(--section-overline);line-height:var(--line-height--body);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.1em}.font-gradient--primary{background:linear-gradient(90deg,hsl(var(--primary-h),var(--primary-s),74%),hsl(var(--secondary-h),var(--secondary-s),57%),hsl(var(--tertiary-h),var(--tertiary-s),65%),hsl(var(--secondary-h),var(--secondary-s),57%),hsl(var(--primary-h),var(--primary-s),74%));background-size:200% auto;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:gradient-shift 8s ease-in-out infinite}@keyframes gradient-shift{0%,100%{background-position:0 center}50%{background-position:100% center}}.text-clamp-1{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.text-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.text-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.text-clamp-4{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}a{color:var(--link);text-decoration:underline;text-decoration-style:dotted;text-decoration-color:var(--link-underline);text-underline-offset:3px;text-decoration-thickness:1px;transition:color 200ms ease,text-decoration-color 200ms ease}a:hover{color:var(--link-hover);text-decoration-style:solid;text-decoration-color:var(--link-underline-hover)}a:focus-visible{outline:2px solid var(--link);outline-offset:3px;border-radius:2px}a:visited{color:var(--link-visited)}a:active{color:var(--link-active)}.text-link{color:var(--link);text-decoration:underline;text-decoration-style:dotted;text-decoration-color:var(--link-underline);text-underline-offset:3px;text-decoration-thickness:1px}.text-link:hover{color:var(--link-hover);text-decoration-style:solid;text-decoration-color:var(--link-underline-hover)}.link--clean{text-decoration:none}.link--clean:hover{text-decoration:underline;text-decoration-style:solid;text-decoration-color:var(--link-underline-hover);text-underline-offset:3px}.link--gradient{text-decoration:none;background-image:linear-gradient(90deg,hsl(var(--primary-h),var(--primary-s),72%),hsl(var(--secondary-h),var(--secondary-s),57%),hsl(var(--tertiary-h),var(--tertiary-s),65%));background-size:0 2px;background-position:0 100%;background-repeat:no-repeat;transition:color 200ms ease,background-size 300ms ease}.link--gradient:hover{background-size:100% 2px}