*,::backdrop,:after,:before {
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x: ;
    --tw-pan-y: ;
    --tw-pinch-zoom: ;
    --tw-scroll-snap-strictness: proximity;
    --tw-gradient-from-position: ;
    --tw-gradient-via-position: ;
    --tw-gradient-to-position: ;
    --tw-ordinal: ;
    --tw-slashed-zero: ;
    --tw-numeric-figure: ;
    --tw-numeric-spacing: ;
    --tw-numeric-fraction: ;
    --tw-ring-inset: ;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: #3b82f680;
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur: ;
    --tw-brightness: ;
    --tw-contrast: ;
    --tw-grayscale: ;
    --tw-hue-rotate: ;
    --tw-invert: ;
    --tw-saturate: ;
    --tw-sepia: ;
    --tw-drop-shadow: ;
    --tw-backdrop-blur: ;
    --tw-backdrop-brightness: ;
    --tw-backdrop-contrast: ;
    --tw-backdrop-grayscale: ;
    --tw-backdrop-hue-rotate: ;
    --tw-backdrop-invert: ;
    --tw-backdrop-opacity: ;
    --tw-backdrop-saturate: ;
    --tw-backdrop-sepia: ;
    --tw-contain-size: ;
    --tw-contain-layout: ;
    --tw-contain-paint: ;
    --tw-contain-style:
}

/*! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com*/
*,:after,:before {
    border: 0 solid #e5e7eb;
    box-sizing: border-box
}

:after,:before {
    --tw-content: ""
}

:host,html {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    font-family: ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;
    font-feature-settings: normal;
    font-variation-settings: normal;
    -moz-tab-size: 4;
    tab-size: 4;
    -webkit-tap-highlight-color: transparent
}

b,strong {
    font-weight: bolder
}

code,kbd,pre,samp {
    font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;
    font-feature-settings: normal;
    font-size: 1em;
    font-variation-settings: normal
}

sub,sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: initial
}

button,input,optgroup,select,textarea {
    color: inherit;
    font-family: inherit;
    font-feature-settings: inherit;
    font-size: 100%;
    font-variation-settings: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    margin: 0;
    padding: 0
}

button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]) {
    -webkit-appearance: button;
    background-color: initial;
    background-image: none
}

progress {
    vertical-align: initial
}

dialog {
    padding: 0
}

audio,canvas,embed,iframe,img,object,svg,video {
    display: block;
    vertical-align: middle
}

[hidden]:where(:not([hidden=until-found])) {
    display: none
}

.container {
    width: 100%
}

.visible {
    visibility: visible
}

.collapse {
    visibility: collapse
}

.static {
    position: static
}

.fixed {
    position: fixed
}

.absolute {
    position: absolute
}

.relative {
    position: relative
}

.sticky {
    position: sticky
}

.left-0 {
    left: 0
}

.z-\[100\] {
    z-index: 100
}

.mx-auto {
    margin-left: auto;
    margin-right: auto
}

.block {
    display: block
}

.inline {
    display: inline
}

.flex {
    display: flex
}

.inline-flex {
    display: inline-flex
}

.grid {
    display: grid
}

.contents {
    display: contents
}

.hidden {
    display: none
}

.w-8 {
    width: 2rem
}

.w-full {
    width: 100%
}

.max-w-none {
    max-width: none
}

.flex-shrink,.shrink {
    flex-shrink: 1
}

.transform {
    transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.cursor-pointer {
    cursor: pointer
}

.select-none {
    -webkit-user-select: none;
    user-select: none
}

.resize {
    resize: both
}

.flex-wrap {
    flex-wrap: wrap
}

.items-center {
    align-items: center
}

.justify-center {
    justify-content: center
}

.text-wrap {
    text-wrap: wrap
}

.rounded {
    border-radius: .25rem
}

.\!border {
    border-width: 1px!important
}

.border {
    border-width: 1px
}

.border-\[--c-dark-green-20\] {
    border-color: var(--c-dark-green-20)
}

.bg-white {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255/var(--tw-bg-opacity,1))
}

.p-1\.5 {
    padding: .375rem
}

.py-2 {
    padding-bottom: .5rem;
    padding-top: .5rem
}

.pl-8 {
    padding-left: 2rem
}

.text-left {
    text-align: left
}

.uppercase {
    text-transform: uppercase
}

.italic {
    font-style: italic
}

.leading-none {
    line-height: 1
}

.underline {
    text-decoration-line: underline
}

.no-underline {
    text-decoration-line: none
}

.outline {
    outline-style: solid
}

.blur {
    --tw-blur: blur(8px)
}

.blur,.drop-shadow {
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)
}

.drop-shadow {
    --tw-drop-shadow: drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f)
}

.grayscale {
    --tw-grayscale: grayscale(100%)
}

.filter,.grayscale {
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)
}

.backdrop-filter {
    -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
    backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)
}

.transition {
    transition-duration: .15s;
    transition-property: color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;
    transition-timing-function: cubic-bezier(.4,0,.2,1)
}

.ease-in-out {
    transition-timing-function: cubic-bezier(.4,0,.2,1)
}

.ease-out {
    transition-timing-function: cubic-bezier(0,0,.2,1)
}

.hover\:bg-gray-100:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(243 244 246/var(--tw-bg-opacity,1))
}

@media (min-width: 640px) {
    .container {
        max-width:640px
    }
}

@media (min-width: 768px) {
    .container {
        max-width:768px
    }
}

@media (min-width: 1024px) {
    .container {
        max-width:1024px
    }
}

@media (min-width: 1280px) {
    .container {
        max-width:1280px
    }
}

@media (min-width: 1536px) {
    .container {
        max-width:1536px
    }
}

@keyframes color-transition {
    0% {
        color: var(--c-light-light-gray)
    }

    30% {
        color: var(--c-lime)
    }

    to {
        color: var(--c-dark-green)
    }
}

*,:after,:before {
    border: 0 solid;
    box-sizing: border-box
}

html {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    font-family: ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;
    font-feature-settings: normal;
    font-variation-settings: normal;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4
}

body {
    line-height: inherit;
    margin: 0
}

hr {
    border-top-width: 1px;
    color: inherit;
    height: 0
}

abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

h1,h2,h3,h4,h5,h6 {
    font-size: inherit;
    font-weight: inherit
}

a {
    color: inherit;
    text-decoration: inherit
}

.animated-strong b,.animated-strong strong {
    font-weight: inherit
}

code,kbd,pre,samp {
    font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;
    font-size: 1em
}

small {
    font-size: 80%
}

sub,sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

table {
    border-collapse: collapse;
    border-color: inherit;
    text-indent: 0
}

button,input,optgroup,select,textarea {
    color: inherit;
    font-family: inherit;
    font-size: 100%;
    font-weight: inherit;
    line-height: inherit;
    margin: 0;
    padding: 0
}

button,select {
    text-transform: none
}

[type=button],[type=reset],[type=submit],button {
    -webkit-appearance: button;
    background-color: transparent;
    background-image: none
}

:-moz-focusring {
    outline: auto
}

:-moz-ui-invalid {
    box-shadow: none
}

progress {
    vertical-align: baseline
}

::-webkit-inner-spin-button,::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

summary {
    display: list-item
}

blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre {
    margin: 0
}

fieldset {
    margin: 0
}

fieldset,legend {
    padding: 0
}

menu,ol,ul {
    list-style: none;
    margin: 0;
    padding: 0
}

textarea {
    resize: vertical
}

input::-moz-placeholder,textarea::-moz-placeholder {
    color: #9ca3af;
    opacity: 1
}

input::placeholder,textarea::placeholder {
    color: #9ca3af;
    opacity: 1
}

[role=button],button {
    cursor: pointer
}

:disabled {
    cursor: default
}

audio,canvas,embed,iframe,img,object,picture,svg,video {
    display: block;
    vertical-align: middle
}

img,video {
    height: auto;
    max-width: 100%
}

[hidden] {
    display: none
}

input:-webkit-autofill,input:-webkit-autofill:active,input:-webkit-autofill:focus,input:-webkit-autofill:hover {
    -webkit-background-clip: text;
    -webkit-text-fill-color: #fff;
    box-shadow: inset 0 0 20px 20px #23232329;
    -webkit-transition: background-color 5000s ease-in-out 0s;
    transition: background-color 5000s ease-in-out 0s
}

input::-webkit-contacts-auto-fill-button,input::-webkit-credentials-auto-fill-button {
    position: absolute;
    right: 0;
    visibility: hidden
}

@font-face {
    font-family: SuisseIntl;
    font-style: normal;
    font-weight: 400;
    src: url(../static/fonts/SuisseIntl-Regular.woff2) format("woff2")
}

@font-face {
    font-family: SuisseIntl;
    font-style: normal;
    font-weight: 450;
    src: url(../static/fonts/SuisseIntl-Book.woff2) format("woff2")
}

@font-face {
    font-family: SuisseIntl;
    font-style: normal;
    font-weight: 600;
    src: url(../static/fonts/SuisseIntl-Semibold.woff2) format("woff2")
}

@font-face {
    font-family: SuisseIntl;
    font-style: normal;
    font-weight: 500;
    src: url(../static/fonts/SuisseIntl-Medium.woff2) format("woff2")
}

@font-face {
    font-family: Geist Mono;
    font-style: normal;
    font-weight: 400;
    src: url(../static/fonts/GeistMono-Regular.woff2) format("woff2")
}

@font-face {
    font-family: Geist Mono;
    font-style: normal;
    font-weight: 600;
    src: url(../static/fonts/GeistMono-SemiBold.woff2) format("woff2")
}

@font-face {
    font-family: Geist Mono;
    font-style: normal;
    font-weight: 700;
    src: url(../static/fonts/GeistMono-Bold.woff2) format("woff2")
}

:root {
    --spacing: 5.128vw
}

.site-container {
    display: flex;
    padding: 0 5.128vw
}

.site-container .site-grid {
    margin: 0 auto;
    width: 100%
}

.site-grid {
    --cols: 2;
    --gap-x: toRem(10);
    --gap-y: toRem(10);
    display: grid;
    grid-template-columns: repeat(var(--cols),1fr);
    grid-gap: var(--gap-y) var(--gap-x)
}

.crosses__wrapper {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 2
}

.crosses__wrapper .cross__wrapper {
    position: absolute
}

.crosses__wrapper .cross__wrapper.top-left {
    left: 0;
    top: 0
}

.crosses__wrapper .cross__wrapper.top-right {
    right: -1px;
    top: 0
}

.crosses__wrapper .cross__wrapper.bottom-left {
    bottom: -1px;
    left: 0
}

.crosses__wrapper .cross__wrapper.bottom-right {
    bottom: -1px;
    right: -1px
}

.title-sequence {
    font-size: 3.625rem;
    font-style: normal;
    width: 90%
}

.title-h1,.title-sequence {
    font-weight: 400;
    line-height: .95
}

.title-h1 {
    font-size: 10.256vw;
    letter-spacing: -.308vw
}

.title-si {
    font-size: min(2.5rem,10.256vw);
    font-weight: 400;
    letter-spacing: min(-.075rem,-.308vw);
    line-height: 1
}

.title-h2 {
    font-size: min(2rem,8.205vw);
    letter-spacing: min(-.039375rem,-.164vw);
    line-height: 1.2
}

.title-h3 {
    font-size: min(1.5rem,6.154vw);
    letter-spacing: min(-.0225rem,-.092vw);
    line-height: 146%
}

.title-h4 {
    font-size: min(1.25rem,5.128vw);
    letter-spacing: min(-.01875rem,-.077vw);
    line-height: 1.46
}

.body-1 {
    font-size: min(1.4375rem,5.897vw);
    letter-spacing: min(-.014375rem,-.059vw)
}

.body-1,.body-2 {
    line-height: 1.26
}

.body-2 {
    letter-spacing: -.01em
}

.body-2,.body-3 {
    font-size: 1.25rem
}

.body-3 {
    letter-spacing: -.0125rem;
    line-height: 1.46
}

.body-4 {
    letter-spacing: .0225rem;
    line-height: 1.4
}

.body-4,.body-5 {
    font-size: 1.125rem
}

.body-5 {
    font-weight: 500
}

.body-5,.body-6 {
    line-height: 1.35
}

.body-6 {
    font-size: .875rem;
    font-weight: 400
}

.body-8 {
    font-size: 1.0625rem;
    line-height: 1.54
}

.label-1 {
    letter-spacing: -.02em;
    line-height: .81
}

.label-1,.label-2 {
    font-size: .9375rem
}

.label-2 {
    letter-spacing: .05em;
    line-height: 1.1
}

.label-3 {
    font-size: .8125rem
}

.label-3,.label-4 {
    letter-spacing: .18em;
    line-height: .81
}

.label-4 {
    font-size: .6875rem
}

.label-5 {
    font-size: 1.0625rem;
    letter-spacing: -.0106rem;
    line-height: .95
}

.label-6 {
    font-size: .75rem;
    letter-spacing: .16em;
    line-height: 1
}

.footer-title {
    font-size: 7.692vw;
    font-weight: 400;
    letter-spacing: -.077vw;
    line-height: .95
}

.mono-number {
    color: var(--c-light-gray);
    font-family: var(--font-mono);
    font-size: .8125rem;
    font-weight: 600;
    letter-spacing: .14625rem;
    line-height: .81
}

.menu-typo {
    font-size: min(2.875rem,11.795vw);
    font-weight: 450;
    letter-spacing: min(-.02875rem,-.118vw);
    line-height: 1.2
}

.font-nav {
    font-size: .875rem;
    font-style: normal;
    font-weight: 450;
    letter-spacing: .02625rem;
    line-height: 100%
}

@property --text-highlight-progress {
    syntax: "<number>";
    inherits: false;
    initial-value: 0
}

.debug {
    outline: 2px dashed red
}

.debug--blue {
    outline-color: #00f
}

.debug--green {
    outline-color: green
}

.debug--inset {
    outline-offset: -4px
}

.no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none
}

.no-scrollbar::-webkit-scrollbar {
    display: none
}

.link-active {
    display: inline-block;
    overflow: hidden;
    position: relative;
    text-decoration: none
}

.link-active:after {
    background-color: currentColor;
    bottom: 0;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .6s cubic-bezier(.85,0,.15,1);
    width: 100%;
    will-change: transform
}

.link-active-full {
    display: inline-block;
    overflow: hidden;
    position: relative;
    text-decoration: none
}

.link-active-full:after,.link-active-full:before {
    background-color: currentColor;
    bottom: 10%;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    transition: transform .6s cubic-bezier(.16,1,.3,1);
    width: 100%
}

.link-active-full:before {
    transform: scaleX(1);
    transform-origin: 100% 50%;
    transition-delay: .15s;
    will-change: transform
}

.link-active-full:after {
    transform: scaleX(0);
    transform-origin: 0 50%;
    will-change: transform
}

.link-active-full-dk-only {
    display: inline-block;
    overflow: hidden;
    position: relative;
    text-decoration: none
}

.link-active-full-dk-only:after,.link-active-full-dk-only:before {
    background-color: currentColor;
    bottom: 10%;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    transition: transform .6s cubic-bezier(.16,1,.3,1);
    width: 100%
}

.link-active-full-dk-only:before {
    transform: scaleX(1);
    transform-origin: 100% 50%;
    transition-delay: .15s;
    will-change: transform
}

.link-active-full-dk-only:after {
    transform: scaleX(0);
    transform-origin: 0 50%;
    will-change: transform
}

.link-active-full-dk-only:after,.link-active-full-dk-only:before {
    display: none
}

.link-active-full-small {
    display: inline-block;
    overflow: hidden;
    position: relative;
    text-decoration: none
}

.link-active-full-small:after,.link-active-full-small:before {
    background-color: currentColor;
    bottom: 10%;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    transition: transform .6s cubic-bezier(.16,1,.3,1);
    width: 100%
}

.link-active-full-small:before {
    transform: scaleX(1);
    transform-origin: 100% 50%;
    transition-delay: .15s;
    will-change: transform
}

.link-active-full-small:after {
    transform: scaleX(0);
    transform-origin: 0 50%;
    will-change: transform
}

.reveal-y-enter-active {
    transition: opacity .6s cubic-bezier(.39,.575,.565,1),transform 1.2s cubic-bezier(.19,1,.22,1)
}

.reveal-y-leave-active {
    transition: opacity .4s cubic-bezier(.39,.575,.565,1),transform .6s cubic-bezier(.25,.46,.45,.94)
}

.reveal-y-enter-from {
    opacity: 0;
    transform: translate3d(0,100%,0)
}

.reveal-y-leave-to {
    opacity: 0;
    transform: translate3d(0,-100%,0)
}

html.lenis,html.lenis body {
    height: auto
}

.lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain
}

.lenis.lenis-smooth iframe {
    pointer-events: none
}

.lenis.lenis-autoToggle {
    transition-behavior: allow-discrete;
    transition-duration: 1ms;
    transition-property: overflow
}

:root {
    --vw: 1vw;
    --vh: 1vh;
    --vh: calc(var(--vh, 1vh)*1);
    --dvh: 1dvh;
    --dvh: calc(var(--dvh, 1dvh)*1);
    --svh: 1svh;
    --svh: calc(var(--svh, 1svh)*1);
    --lvh: 1lvh;
    --lvh: calc(var(--lvh, 1lvh)*1);
    --nuxt-devtools-safe-area-top: env(safe-area-inset-top,0px);
    --nuxt-devtools-safe-area-right: env(safe-area-inset-right,0px);
    --nuxt-devtools-safe-area-bottom: env(safe-area-inset-bottom,0px);
    --nuxt-devtools-safe-area-left: env(safe-area-inset-left,0px);
    --svw: 1vw;
    --c-black: #000;
    --c-black-10: rgba(0,0,0,.1);
    --c-gray: #454742;
    --c-dark-gray: #7f7f7f;
    --c-light-gray: #c2c2c2;
    --c-dark-gray-008: rgba(39,39,39,.08);
    --c-light-light-gray: #ddd;
    --c-white: #fff;
    --c-white-40: hsla(0,0%,100%,.4);
    --c-white-30: hsla(0,0%,100%,.3);
    --c-white-20: hsla(0,0%,100%,.2);
    --c-white-15: hsla(0,0%,100%,.15);
    --c-white-0: hsla(0,0%,100%,0);
    --c-dirty-white: #f0f0f0;
    --c-lime: #abff02;
    --c-orange: #fb6b3c;
    --c-dark-green: #052424;
    --c-dark-green-20: rgba(5,36,36,.2);
    --c-dark-green-15: rgba(5,36,36,.15);
    --c-dark-green-05: rgba(5,36,36,.05);
    --ease-out: cubic-bezier(0,0,.58,1);
    --font-primary: "SuisseIntl",sans-serif;
    --font-mono: "Geist Mono",monospace
}

* {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

html {
    background-color: var(--c-white);
    color: var(--c-dark-green);
    font-family: var(--font-primary);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.page-enter-active,.page-leave-active {
    transition: opacity .5s cubic-bezier(.39,.575,.565,1)
}

.page-enter-from,.page-leave-to {
    opacity: 0
}

@media (min-width: 768px) {
    .title-si {
        font-size:min(3.125rem,12.821vw);
        letter-spacing: min(-.075rem,-.308vw)
    }
}

@media (min-width: 1024px) {
    :root {
        --spacing:min(3.646vw,93.3333333333px)
    }

    .site-container {
        padding: 0 min(3.646vw,93.3333333333px)
    }

    .site-grid {
        --cols: 12
    }

    .title-sequence {
        width: 100%
    }

    .title-h1,.title-sequence {
        font-size: min(5.729vw,146.6666666667px);
        letter-spacing: min(-.057vw,-1.4666666667px)
    }

    .title-si {
        font-size: max(4.375rem,min(4.688vw,120px));
        letter-spacing: min(-.141vw,-3.6px)
    }

    .title-h2 {
        font-size: min(2.396vw,61.3333333333px);
        letter-spacing: min(-.024vw,-.6133333333px);
        line-height: .96
    }

    .title-h3,.title-h4 {
        font-size: min(1.563vw,40px);
        letter-spacing: min(-.016vw,-.4px)
    }

    .body-1 {
        font-size: min(1.198vw,30.6666666667px);
        letter-spacing: min(-.012vw,-.3066666667px)
    }

    .body-5 {
        font-size: 1.4375rem
    }

    .body-6 {
        font-size: 1.125rem;
        letter-spacing: .0225rem
    }

    .body-8 {
        font-size: 1.4375rem;
        line-height: 1.35
    }

    .label-2 {
        line-height: .81
    }

    .label-5 {
        font-size: 1.25rem;
        letter-spacing: -.0125rem
    }

    .label-6 {
        font-size: .6875rem;
        letter-spacing: .11rem
    }

    .footer-title {
        font-size: max(4.375rem,min(4.688vw,120px));
        letter-spacing: min(-.141vw,-3.6px)
    }

    .link-active-full-dk-only:after,.link-active-full-dk-only:before {
        display: block
    }
}

@media (max-width: 1023px) {
    .link-active-full:before {
        transform:scaleX(0);
        transform-origin: 100% 50%;
        transition-delay: 0s
    }

    .link-active-full:after {
        transform: scaleX(1);
        transform-origin: 0 50%;
        transition-delay: .15s
    }

    .link-active-full-dk-only:before {
        transform: scaleX(0);
        transform-origin: 100% 50%;
        transition-delay: 0s
    }

    .link-active-full-dk-only:after {
        transform: scaleX(1);
        transform-origin: 0 50%;
        transition-delay: .15s
    }

    .link-active-full-small:before {
        transform: scaleX(0);
        transform-origin: 100% 50%;
        transition-delay: 0s
    }

    .link-active-full-small:after {
        transform: scaleX(1);
        transform-origin: 0 50%;
        transition-delay: .15s
    }
}

@media (hover: hover) and (pointer:fine) {
    .link-active:hover:after {
        transform:scaleX(1);
        transform-origin: left
    }

    .link-active:not(:hover):after {
        transform-origin: 100% 50%
    }

    .link-active-full:hover:before {
        transform: scaleX(0);
        transform-origin: 100% 50%;
        transition-delay: 0s
    }

    .link-active-full:hover:after {
        transform: scaleX(1);
        transform-origin: 0 50%;
        transition-delay: .15s
    }

    .link-active-full-dk-only:hover:before {
        transform: scaleX(0);
        transform-origin: 100% 50%;
        transition-delay: 0s
    }

    .link-active-full-dk-only:hover:after {
        transform: scaleX(1);
        transform-origin: 0 50%;
        transition-delay: .15s
    }

    .link-active-full-small:hover:before {
        transform: scaleX(0);
        transform-origin: 100% 50%;
        transition-delay: 0s
    }

    .link-active-full-small:hover:after {
        transform: scaleX(1);
        transform-origin: 0 50%;
        transition-delay: .15s
    }
}

@keyframes color-transition-79500c25 {
    0% {
        color: var(--c-light-light-gray)
    }

    30% {
        color: var(--c-lime)
    }

    to {
        color: var(--c-dark-green)
    }
}

.title-sequence[data-v-79500c25] {
    font-size: 3.625rem;
    font-style: normal;
    width: 90%
}

.title-h1[data-v-79500c25],.title-sequence[data-v-79500c25] {
    font-weight: 400;
    line-height: .95
}

.title-h1[data-v-79500c25] {
    font-size: 10.256vw;
    letter-spacing: -.308vw
}

.title-si[data-v-79500c25] {
    font-size: min(2.5rem,10.256vw);
    font-weight: 400;
    letter-spacing: min(-.075rem,-.308vw);
    line-height: 1
}

.title-h2[data-v-79500c25] {
    font-size: min(2rem,8.205vw);
    letter-spacing: min(-.039375rem,-.164vw);
    line-height: 1.2
}

.title-h3[data-v-79500c25] {
    font-size: min(1.5rem,6.154vw);
    letter-spacing: min(-.0225rem,-.092vw);
    line-height: 146%
}

.title-h4[data-v-79500c25] {
    font-size: min(1.25rem,5.128vw);
    letter-spacing: min(-.01875rem,-.077vw);
    line-height: 1.46
}

.body-1[data-v-79500c25] {
    font-size: min(1.4375rem,5.897vw);
    letter-spacing: min(-.014375rem,-.059vw)
}

.body-1[data-v-79500c25],.body-2[data-v-79500c25] {
    line-height: 1.26
}

.body-2[data-v-79500c25] {
    letter-spacing: -.01em
}

.body-2[data-v-79500c25],.body-3[data-v-79500c25] {
    font-size: 1.25rem
}

.body-3[data-v-79500c25] {
    letter-spacing: -.0125rem;
    line-height: 1.46
}

.body-4[data-v-79500c25] {
    letter-spacing: .0225rem;
    line-height: 1.4
}

.body-4[data-v-79500c25],.body-5[data-v-79500c25] {
    font-size: 1.125rem
}

.body-5[data-v-79500c25] {
    font-weight: 500
}

.body-5[data-v-79500c25],.body-6[data-v-79500c25] {
    line-height: 1.35
}

.body-6[data-v-79500c25] {
    font-size: .875rem;
    font-weight: 400
}

.body-8[data-v-79500c25] {
    font-size: 1.0625rem;
    line-height: 1.54
}

.label-1[data-v-79500c25] {
    font-size: .9375rem;
    letter-spacing: -.02em;
    line-height: .81
}

.content-wrapper .content-text[data-v-79500c25] p,.label-2[data-v-79500c25] {
    font-size: .9375rem;
    letter-spacing: .05em;
    line-height: 1.1
}

.label-3[data-v-79500c25] {
    font-size: .8125rem
}

.label-3[data-v-79500c25],.label-4[data-v-79500c25] {
    letter-spacing: .18em;
    line-height: .81
}

.label-4[data-v-79500c25] {
    font-size: .6875rem
}

.label-5[data-v-79500c25] {
    font-size: 1.0625rem;
    letter-spacing: -.0106rem;
    line-height: .95
}

.label-6[data-v-79500c25] {
    font-size: .75rem;
    letter-spacing: .16em;
    line-height: 1
}

.footer-title[data-v-79500c25] {
    font-size: 7.692vw;
    font-weight: 400;
    letter-spacing: -.077vw;
    line-height: .95
}

.mono-number[data-v-79500c25] {
    color: var(--c-light-gray);
    font-family: var(--font-mono);
    font-size: .8125rem;
    font-weight: 600;
    letter-spacing: .14625rem;
    line-height: .81
}

.menu-typo[data-v-79500c25] {
    font-size: min(2.875rem,11.795vw);
    font-weight: 450;
    letter-spacing: min(-.02875rem,-.118vw);
    line-height: 1.2
}

.font-nav[data-v-79500c25] {
    font-size: .875rem;
    font-style: normal;
    font-weight: 450;
    letter-spacing: .02625rem;
    line-height: 100%
}

.nav-dropdown-trigger[data-v-79500c25] {
    align-items: center;
    cursor: pointer;
    display: flex;
    font-family: inherit;
    gap: .5rem;
    outline: none;
    padding: 1em 0;
    pointer-events: auto;
    position: relative
}

.nav-dropdown-trigger .arrow-icon[data-v-79500c25] {
    height: .75rem;
    transition: transform .3s var(--ease-out);
    width: .75rem
}

.nav-dropdown-trigger[data-v-79500c25]:after {
    background-color: var(--c-lime);
    bottom: .21875rem;
    content: "";
    height: .3125rem;
    left: 50%;
    opacity: 0;
    position: absolute;
    transform: translate(-50%) scale(0);
    transform-origin: center;
    transition: transform 1s cubic-bezier(.075,.82,.165,1),opacity .3s cubic-bezier(.39,.575,.565,1);
    width: .3125rem;
    will-change: transform
}

.nav-dropdown-trigger.is-open[data-v-79500c25],.nav-dropdown-trigger[data-v-79500c25]:is(:focus-visible) {
    color: var(--c-lime)
}

.nav-dropdown-trigger.is-open .arrow-icon[data-v-79500c25],.nav-dropdown-trigger:is(:focus-visible) .arrow-icon[data-v-79500c25] {
    transform: rotate(180deg)
}

.nav-dropdown-trigger.is-open[data-v-79500c25]:after,.nav-dropdown-trigger[data-v-79500c25]:is(:focus-visible):after {
    opacity: 1;
    transform: translate(-50%) scale(1.01)
}

[data-v-79500c25] .navigation-menu-viewport {
    display: flex;
    justify-content: center;
    left: 0;
    min-height: 25rem;
    pointer-events: auto;
    position: absolute;
    right: 0;
    top: 110%;
    width: 100%
}

[data-v-79500c25] .nav-dropdown-content {
    border-radius: 8px;
    overflow: hidden;
    pointer-events: auto;
    position: relative;
    scroll-behavior: smooth;
    width: 100%
}

[data-v-79500c25] .nav-dropdown-content:after {
    background: #454742fa;
    content: "";
    filter: blur(15px);
    top: -20%;
    right: -20%;
    bottom: -20%;
    left: -20%;
    overflow: hidden;
    position: absolute;
    z-index: -1
}

[data-v-79500c25] .dropdown-inner {
    display: grid;
    grid-template-columns: 21.5625rem 1fr;
    height: 100%
}

.dropdown-tabs[data-v-79500c25] {
    display: flex;
    flex-direction: column;
    gap: .375rem;
    padding: 1.5rem
}

.dropdown-tab[data-v-79500c25] {
    align-items: center;
    color: #fffc;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    padding: .5rem .75rem;
    text-align: left
}

.dropdown-tab .tab-label[data-v-79500c25] {
    flex: 1
}

.dropdown-tab .tab-arrow[data-v-79500c25] {
    height: 1rem;
    opacity: .6;
    transition: opacity .2s var(--ease-out);
    width: 1rem
}

.dropdown-tab.is-active[data-v-79500c25] {
    background-color: #0000001a;
    border-radius: .25rem;
    color: var(--c-white)
}

.dropdown-tab.is-active .tab-arrow[data-v-79500c25] {
    opacity: 1
}

.dropdown-tab[data-v-79500c25]:focus-visible {
    outline: 1px solid var(--c-lime)
}

.dropdown-content[data-v-79500c25] {
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    padding: 1.5rem
}

.content-wrapper[data-v-79500c25] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem
}

.content-wrapper .content-text[data-v-79500c25] p {
    line-height: normal!important;
    margin: 0 0 1rem
}

.content-wrapper .content-text[data-v-79500c25] p:last-child {
    margin-bottom: 0
}

.content-wrapper .content-text[data-v-79500c25] h2 {
    color: var(--c-white);
    font-size: 1.25rem;
    margin: 0 0 1rem
}

.content-links[data-v-79500c25] {
    display: flex;
    flex-direction: column;
    gap: .75rem;
    margin-top: .5rem
}

.content-link[data-v-79500c25] {
    align-items: center;
    color: var(--c-lime);
    display: flex;
    font-size: .875rem;
    font-weight: 500;
    gap: .5rem;
    padding: .25rem 0;
    text-decoration: none;
    transition: opacity .3s var(--ease-out);
    width: -moz-fit-content;
    width: fit-content
}

.content-link .content-link-text[data-v-79500c25] {
    position: relative
}

.content-link .content-link-text[data-v-79500c25]:after {
    background-color: var(--c-lime);
    bottom: -.125rem;
    content: "";
    height: .0625rem;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .3s var(--ease-out);
    width: 100%
}

.content-link[data-v-79500c25]:focus-visible {
    outline: 1px solid var(--c-lime)
}

.content-link .link-arrow[data-v-79500c25] {
    height: 1rem;
    transition: transform .3s var(--ease-out);
    width: 1rem
}

@media (min-width: 768px) {
    .title-si[data-v-79500c25] {
        font-size:min(3.125rem,12.821vw);
        letter-spacing: min(-.075rem,-.308vw)
    }
}

@media (min-width: 1024px) {
    .title-sequence[data-v-79500c25] {
        width:100%
    }

    .title-h1[data-v-79500c25],.title-sequence[data-v-79500c25] {
        font-size: min(5.729vw,146.6666666667px);
        letter-spacing: min(-.057vw,-1.4666666667px)
    }

    .title-si[data-v-79500c25] {
        font-size: max(4.375rem,min(4.688vw,120px));
        letter-spacing: min(-.141vw,-3.6px)
    }

    .title-h2[data-v-79500c25] {
        font-size: min(2.396vw,61.3333333333px);
        letter-spacing: min(-.024vw,-.6133333333px);
        line-height: .96
    }

    .title-h3[data-v-79500c25],.title-h4[data-v-79500c25] {
        font-size: min(1.563vw,40px);
        letter-spacing: min(-.016vw,-.4px)
    }

    .body-1[data-v-79500c25] {
        font-size: min(1.198vw,30.6666666667px);
        letter-spacing: min(-.012vw,-.3066666667px)
    }

    .body-5[data-v-79500c25] {
        font-size: 1.4375rem
    }

    .body-6[data-v-79500c25] {
        font-size: 1.125rem;
        letter-spacing: .0225rem
    }

    .body-8[data-v-79500c25] {
        font-size: 1.4375rem;
        line-height: 1.35
    }

    .content-wrapper .content-text[data-v-79500c25] p,.label-2[data-v-79500c25] {
        line-height: .81
    }

    .label-5[data-v-79500c25] {
        font-size: 1.25rem;
        letter-spacing: -.0125rem
    }

    .label-6[data-v-79500c25] {
        font-size: .6875rem;
        letter-spacing: .11rem
    }

    .footer-title[data-v-79500c25] {
        font-size: max(4.375rem,min(4.688vw,120px));
        letter-spacing: min(-.141vw,-3.6px)
    }
}

@media (hover: hover) and (pointer:fine) {
    .nav-dropdown-trigger[data-v-79500c25]:hover {
        color:var(--c-lime)
    }

    .nav-dropdown-trigger[data-v-79500c25]:hover:after {
        opacity: 1;
        transform: translate(-50%) scale(1.01)
    }

    .dropdown-tab[data-v-79500c25]:hover {
        color: #ffffffe6
    }

    .content-link[data-v-79500c25]:hover {
        opacity: 1
    }

    .content-link:hover .link-arrow[data-v-79500c25] {
        transform: translate(2px,-2px)
    }

    .content-link:hover .content-link-text[data-v-79500c25]:after {
        transform: scaleX(1)
    }
}

@keyframes color-transition-3faa160e {
    0% {
        color: var(--c-light-light-gray)
    }

    30% {
        color: var(--c-lime)
    }

    to {
        color: var(--c-dark-green)
    }
}

.site-header[data-v-3faa160e] {
    color: var(--c-white);
    inset: 1.5625rem 0 auto;
    pointer-events: none;
    position: fixed;
    z-index: 10
}

.site-header[data-v-3faa160e] .site-grid {
    align-items: center;
    grid-template-rows: 8px auto 8px calc(100dvh - 10rem);
    grid-template-rows: 8px auto 8px calc(var(--dvh, 1dvh)*100 - 10rem)
}

.site-header a[data-v-3faa160e],.site-header button[data-v-3faa160e] {
    pointer-events: auto;
    transition: color .3s var(--ease-out)
}

.site-header[data-v-3faa160e] button {
    pointer-events: auto
}

header .inner[data-v-3faa160e] {
    background-color: #0000004d
}

.inner[data-v-3faa160e] {
    -webkit-backdrop-filter: blur(30px);
    backdrop-filter: blur(30px);
    border-radius: 8px;
    display: grid;
    gap: 1.25rem;
    grid-column: 1/-1;
    grid-row: 2;
    grid-template-areas: "a b c";
    grid-template-columns: auto 1fr auto;
    justify-content: space-between;
    padding: 1.25rem 1.625rem;
    place-self: start stretch;
    position: relative;
    z-index: 1
}

.inner[data-v-3faa160e],.logo-link[data-v-3faa160e] {
    align-items: center
}

.logo-link[data-v-3faa160e] {
    display: flex;
    grid-area: a;
    height: 100%;
    justify-self: start
}

.back-to-resources-button[data-v-3faa160e] {
    align-self: center;
    color: #6b7280;
    display: none;
    font-size: 20px;
    position: relative
}

.back-to-resources-button span[data-v-3faa160e],.back-to-resources-button svg[data-v-3faa160e] {
    flex-shrink: 0
}

.logo[data-v-3faa160e] {
    color: var(--c-white);
    width: 6rem
}

.nav[data-v-3faa160e] {
    grid-area: b;
    justify-self: end
}

.nav ul[data-v-3faa160e] {
    gap: 1.5rem;
    list-style-type: none;
    margin: 0;
    padding: 0
}

.nav li[data-v-3faa160e],.nav ul[data-v-3faa160e] {
    align-items: center;
    display: flex
}

.nav a[data-v-3faa160e] {
    color: currentColor;
    padding: 1em 0;
    position: relative;
    text-decoration: none
}

.nav a[data-v-3faa160e]:focus-visible {
    outline: 1px solid var(--c-lime)
}

.nav a[data-v-3faa160e]:after {
    background-color: var(--c-lime);
    bottom: .21875rem;
    content: "";
    height: .3125rem;
    left: 50%;
    opacity: 0;
    position: absolute;
    transform: translate(-50%) scale(0);
    transform-origin: center;
    transition: transform 1s cubic-bezier(.075,.82,.165,1),opacity .3s cubic-bezier(.39,.575,.565,1);
    width: .3125rem;
    will-change: transform
}

.nav a[data-v-3faa160e]:is(:hover,:focus-visible,.router-link-active) {
    color: var(--c-lime)
}

.header-cta[data-v-3faa160e] {
    display: flex;
    grid-area: c;
    justify-self: end
}

.cta-button[data-v-3faa160e] {
    background-color: var(--c-white);
    border-radius: 8px;
    color: var(--c-dark-green);
    display: inline-block;
    font-family: var(--font-mono);
    font-size: .6875rem;
    font-weight: 600;
    letter-spacing: 1.5px;
    overflow: hidden;
    padding: .75rem 2rem;
    position: relative;
    text-decoration: none;
    transition: color .3s cubic-bezier(.39,.575,.565,1),background-color .3s cubic-bezier(.39,.575,.565,1);
    white-space: nowrap
}

.cta-button span[data-v-3faa160e] {
    pointer-events: none
}

.cta-button .link-active[data-v-3faa160e] {
    display: inline-block;
    overflow: visible;
    position: relative;
    z-index: 1
}

.cta-button .link-active[data-v-3faa160e]:after {
    background-color: var(--c-dark-green);
    bottom: -.1875rem;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .7s cubic-bezier(.19,1,.22,1),background-color .7s cubic-bezier(.19,1,.22,1);
    width: 100%;
    will-change: transform
}

.mobile-nav-back-button[data-v-3faa160e] {
    align-items: center;
    background: none;
    border: none;
    color: var(--c-white);
    cursor: pointer;
    display: flex;
    font-size: .875rem;
    gap: .5rem;
    grid-area: a;
    height: 100%;
    justify-self: start;
    padding: 0;
    pointer-events: auto
}

.mobile-nav-back-button svg[data-v-3faa160e] {
    flex-shrink: 0;
    height: 1rem;
    width: 1rem
}

.toggle-mobile-menu-button[data-v-3faa160e] {
    box-sizing: content-box;
    height: 1.5rem;
    justify-self: end;
    margin-right: -1.625rem;
    overflow: hidden;
    padding: 0;
    position: relative;
    touch-action: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 1.5rem
}

.toggle-mobile-menu-button .wrapper[data-v-3faa160e] {
    display: block;
    height: 100%;
    position: relative;
    width: 100%
}

.toggle-mobile-menu-button .t[data-v-3faa160e] {
    display: block;
    height: 2px;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.toggle-mobile-menu-button .hl[data-v-3faa160e] {
    background: #fff;
    top: .4375rem;
    transition: transform 1s cubic-bezier(.19,1,.22,1) .2s,opacity .2s cubic-bezier(.39,.575,.565,1) .2s
}

.toggle-mobile-menu-button .hl.--2[data-v-3faa160e] {
    top: .9375rem
}

.toggle-mobile-menu-button .cl[data-v-3faa160e] {
    rotate: -45deg;
    top: calc(50% - 1px);
    transform-origin: center center;
    transition: rotate 1s cubic-bezier(.19,1,.22,1) 0s,opacity .2s cubic-bezier(.39,.575,.565,1) .1s
}

.toggle-mobile-menu-button .cl.--2[data-v-3faa160e] {
    rotate: 45deg
}

.toggle-mobile-menu-button .cl.--2 .cli[data-v-3faa160e] {
    transform-origin: right center
}

.toggle-mobile-menu-button .cl .cli[data-v-3faa160e] {
    background: #fff;
    scale: 0 1;
    transform-origin: right center;
    transition: scale .3s cubic-bezier(.47,0,.745,.715)
}

.toggle-mobile-menu-button.active .cl[data-v-3faa160e] {
    opacity: 1;
    transition: rotate .7s cubic-bezier(.785,.135,.15,.86) .3s,opacity .2s cubic-bezier(.39,.575,.565,1) .2s
}

.toggle-mobile-menu-button.active .cl.--2 .cli[data-v-3faa160e] {
    transition: scale 1s cubic-bezier(.19,1,.22,1) .35s
}

.toggle-mobile-menu-button.active .cl.--2 .cli.--g[data-v-3faa160e] {
    background: var(--c-lime);
    transition: scale 1s cubic-bezier(.19,1,.22,1) .2s
}

.toggle-mobile-menu-button.active .cl .cli[data-v-3faa160e] {
    scale: 1 1;
    transition: scale 1s cubic-bezier(.19,1,.22,1) .45s
}

.toggle-mobile-menu-button.active .cl .cli.--g[data-v-3faa160e] {
    background: var(--c-lime);
    transition: scale 1s cubic-bezier(.19,1,.22,1) .3s
}

.toggle-mobile-menu-button.active .hl[data-v-3faa160e] {
    opacity: 0;
    transform: translate3d(105%,0,0);
    transition: transform .3s cubic-bezier(.445,.05,.55,.95),opacity .2s cubic-bezier(.445,.05,.55,.95) .1s
}

.toggle-mobile-menu-button.active .hl.--2[data-v-3faa160e] {
    transform: translate3d(-105%,0,0)
}

.mobile-menu[data-v-3faa160e] {
    -webkit-backdrop-filter: blur(50px);
    backdrop-filter: blur(50px);
    background: #45474299;
    border-radius: 8px;
    display: grid;
    grid-column: 1/-1;
    grid-row: 1/5;
    grid-template-areas: ". " "a" "b";
    grid-template-columns: 1fr;
    grid-template-rows: 4rem 1fr auto;
    height: 90svh;
    height: calc(var(--svh, 1svh)*90);
    margin: 0 -8px;
    overflow: hidden;
    padding: 2.051vw;
    place-self: start stretch;
    visibility: hidden
}

.mobile-menu .router-link-active[data-v-3faa160e] {
    background-color: #0000001a;
    border-radius: 8px;
    color: var(--c-lime)
}

.mobile-menu-items[data-v-3faa160e] {
    grid-area: a;
    height: 100%;
    max-height: 100%;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: scroll;
    padding: 1rem 0;
    place-self: stretch;
    position: relative;
    text-align: center;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    pointer-events: auto;
    touch-action: pan-y pinch-zoom;
    will-change: scroll-position
}

.mobile-menu-items ul[data-v-3faa160e] {
    display: flex;
    flex-direction: column;
    list-style: none;
    min-height: -moz-min-content;
    min-height: min-content;
    text-align: left;
    width: 100%
}

.mobile-menu-items li[data-v-3faa160e] {
    flex-shrink: 0;
    overflow: hidden
}

.mobile-menu-items[data-v-3faa160e] .--char {
    opacity: 0;
    will-change: opacity,transform
}

.mobile-menu-items-level-1[data-v-3faa160e] {
    gap: 1.5rem 0
}

.mobile-menu-items-level-1 .router-link-active[data-v-3faa160e] {
    padding: 0 0 0 1.5rem
}

.mobile-menu-items-level-2[data-v-3faa160e] {
    gap: 1.5rem 0
}

.nav-item-link[data-v-3faa160e] {
    color: var(--c-white);
    display: block;
    text-decoration: none;
    width: 100%
}

.nav-item-link.level-3[data-v-3faa160e] {
    padding: .5rem .5rem .5rem .75rem
}

.nav-item-button[data-v-3faa160e] {
    align-items: center;
    background: none;
    border: none;
    color: var(--c-white);
    cursor: pointer;
    display: flex;
    font-family: inherit;
    justify-content: space-between;
    padding: 0;
    text-align: left;
    width: 100%
}

.nav-item-button .chevron-down[data-v-3faa160e],.nav-item-button .chevron-right[data-v-3faa160e],.nav-item-button .chevron-up[data-v-3faa160e] {
    flex-shrink: 0;
    height: 1rem;
    margin-left: .75rem;
    transition: transform .3s var(--ease-out);
    width: 1rem
}

.nav-item-button .chevron-up[data-v-3faa160e] {
    transform: rotate(180deg)
}

.nav-item-level-2[data-v-3faa160e] {
    display: flex;
    flex-direction: column;
    gap: .75rem
}

.nav-item-level-2 .nav-item-button[data-v-3faa160e] {
    font-size: 2rem
}

.nav-level-3[data-v-3faa160e] {
    display: flex;
    flex-direction: column;
    font-size: 1.5rem;
    list-style: none
}

.mobile-menu-contact[data-v-3faa160e] {
    grid-area: b
}

.mobile-contact-button[data-v-3faa160e] {
    background-color: #fff;
    border-radius: 8px;
    color: var(--c-dark-green);
    display: block;
    font-family: var(--font-mono);
    font-weight: 700;
    padding: 1rem;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    transition: background-color .2s var(--ease-out);
    width: 100%
}

@media (min-width: 1024px) {
    .site-header[data-v-3faa160e] {
        inset:2.875rem 0 auto
    }

    .site-header[data-v-3faa160e] .site-grid {
        grid-template-rows: auto
    }

    header .inner[data-v-3faa160e] {
        background-color: #0000004d
    }

    .inner[data-v-3faa160e] {
        gap: min(4.688vw,120px);
        grid-column: 2/-2;
        grid-row: 1;
        grid-template-areas: "a b c";
        grid-template-columns: auto 1fr auto;
        justify-content: space-between;
        padding: 1.125rem 1.5rem;
        place-self: center
    }

    .logo[data-v-3faa160e] {
        width: 7rem
    }

    .mobile-nav-back-button[data-v-3faa160e] {
        display: none
    }

    .toggle-mobile-menu-button[data-v-3faa160e] {
        display: none;
        margin-right: 0
    }

    .mobile-menu[data-v-3faa160e] {
        display: none
    }
}

@media (min-width: 1280px) {
    .back-to-resources-button[data-v-3faa160e] {
        align-items:center;
        display: block;
        display: flex;
        gap: .5rem;
        grid-column: 1/3;
        grid-row: 1
    }
}

@media (max-width: 1023px) {
    .header-cta[data-v-3faa160e],.nav[data-v-3faa160e] {
        display:none
    }
}

@media (hover: hover) and (pointer:fine) {
    .back-to-resources-button[data-v-3faa160e]:hover {
        color:var(--c-lime)
    }

    .back-to-resources-button[data-v-3faa160e]:hover:after {
        opacity: 1;
        transform: translate(-50%) scale(1.01)
    }

    .logo[data-v-3faa160e] {
        transition: color .3s var(--ease-out)
    }

    .logo[data-v-3faa160e]:hover {
        color: var(--c-lime)
    }

    .nav a[data-v-3faa160e]:hover:after {
        opacity: 1;
        transform: translate(-50%) scale(1.01)
    }

    .cta-button[data-v-3faa160e]:before {
        background-color: var(--c-dark-green);
        content: "";
        height: calc(100% + 2px);
        left: -1px;
        position: absolute;
        top: -1px;
        transform: translate3d(0,100%,0);
        transform-origin: bottom;
        transition: transform .7s cubic-bezier(.19,1,.22,1);
        width: calc(100% + 2px);
        will-change: transform;
        z-index: 0
    }

    .cta-button[data-v-3faa160e]:hover {
        background-color: transparent;
        color: var(--c-lime)!important;
        transition: color .3s cubic-bezier(.39,.575,.565,1),background-color .3s cubic-bezier(.39,.575,.565,1) .2s
    }

    .cta-button[data-v-3faa160e]:hover:before {
        transform: translateZ(0)
    }

    .cta-button:hover .link-active[data-v-3faa160e]:after {
        background-color: var(--c-lime);
        transform: scaleX(1);
        transform-origin: left
    }
}

@keyframes color-transition-ebd3c3c9 {
    0% {
        color: var(--c-light-light-gray)
    }

    30% {
        color: var(--c-lime)
    }

    to {
        color: var(--c-dark-green)
    }
}

.svg-mask[data-v-ebd3c3c9] {
    position: relative
}

.svg[data-v-ebd3c3c9] {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.slot[data-v-ebd3c3c9] {
    overflow: clip
}

.slot:not(.ssr).use-clip[data-v-ebd3c3c9] {
    clip-path: var(--d27fb6da)
}

.slot[data-v-ebd3c3c9]:not(.ssr):not(.use-clip) {
    -webkit-mask-image: var(--b18bdda2);
    mask-image: var(--b18bdda2);
    mask-mode: alpha;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%
}

@keyframes color-transition-2a5cb2b0 {
    0% {
        color: var(--c-light-light-gray)
    }

    30% {
        color: var(--c-lime)
    }

    to {
        color: var(--c-dark-green)
    }
}

.app-transition[data-v-2a5cb2b0] {
    height: 100%;
    left: 0;
    opacity: 0;
    overflow: clip;
    position: fixed;
    top: 0;
    visibility: hidden;
    width: 100%;
    z-index: 999
}

.app-transition.active[data-v-2a5cb2b0] {
    pointer-events: none
}

.bg-overlay[data-v-2a5cb2b0] {
    background: #000000b3;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    position: absolute
}

.overlay[data-v-2a5cb2b0] {
    background: #ededed;
    opacity: 0;
    position: absolute
}

.app-loader[data-v-2a5cb2b0],.overlay[data-v-2a5cb2b0] {
    height: 100%;
    left: 0;
    top: 0;
    width: 100%
}

.app-loader[data-v-2a5cb2b0] {
    pointer-events: auto;
    pointer-events: none;
    position: fixed;
    z-index: 999
}

.loader[data-v-2a5cb2b0] {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between
}

.bottom[data-v-2a5cb2b0],.loader[data-v-2a5cb2b0],.top[data-v-2a5cb2b0] {
    overflow: hidden
}

.bottom-mask[data-v-2a5cb2b0],.top-mask[data-v-2a5cb2b0] {
    background: #ededed;
    height: 50svh;
    height: calc(var(--svh, 1svh)*50);
    overflow: hidden
}

.top-mask .full-wrapper[data-v-2a5cb2b0] {
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.bottom-mask[data-v-2a5cb2b0] {
    position: relative
}

.bottom-mask .full-wrapper[data-v-2a5cb2b0] {
    bottom: 0;
    left: 0;
    position: absolute;
    width: 100%
}

.full-wrapper[data-v-2a5cb2b0] {
    height: 100svh;
    height: calc(var(--svh, 1svh)*100);
    position: relative;
    width: 100%
}

.background-wrapper[data-v-2a5cb2b0] {
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0
}

.background-wrapper[data-v-2a5cb2b0],.background-wrapper svg[data-v-2a5cb2b0] {
    height: 100%;
    width: 100%
}

@keyframes color-transition-b5fe9da5 {
    0% {
        color: var(--c-light-light-gray)
    }

    30% {
        color: var(--c-lime)
    }

    to {
        color: var(--c-dark-green)
    }
}

.animated-logo[data-v-b5fe9da5] {
    align-items: center;
    display: flex;
    font-size: .25rem;
    gap: 1.5em;
    visibility: hidden
}

svg[data-v-b5fe9da5] {
    height: 10em;
    width: 10em
}

.text[data-v-b5fe9da5],svg[data-v-b5fe9da5] {
    flex: 0 0 auto
}

.text[data-v-b5fe9da5] {
    display: block;
    font-family: var(--font-primary);
    font-size: 10em;
    font-weight: 600;
    line-height: .78;
    overflow: hidden
}

.text .char-wrapper[data-v-b5fe9da5] {
    overflow: clip
}

.text .char-wrapper+.char-wrapper[data-v-b5fe9da5] {
    margin-left: -.05em
}

.text .char[data-v-b5fe9da5],.text .char-wrapper[data-v-b5fe9da5] {
    display: inline-block
}

@keyframes color-transition-aaa1b985 {
    0% {
        color: var(--c-light-light-gray)
    }

    30% {
        color: var(--c-lime)
    }

    to {
        color: var(--c-dark-green)
    }
}

svg[data-v-aaa1b985] {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

@keyframes color-transition-068da249 {
    0% {
        color: var(--c-light-light-gray)
    }

    30% {
        color: var(--c-lime)
    }

    to {
        color: var(--c-dark-green)
    }
}

.app-loader[data-v-068da249] {
    height: 100%;
    left: 0;
    pointer-events: auto;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999
}

.overlay[data-v-068da249] {
    background: #000000b3;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    position: absolute
}

.loader[data-v-068da249] {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between
}

.bottom[data-v-068da249],.loader[data-v-068da249],.top[data-v-068da249] {
    overflow: hidden
}

.bottom-mask[data-v-068da249],.top-mask[data-v-068da249] {
    background: #ededed;
    height: 50svh;
    height: calc(var(--svh, 1svh)*50);
    height: round(up,50svh,1px);
    height: round(up,calc(var(--svh, 1svh)*50),1px);
    overflow: hidden
}

.top-mask .full-wrapper[data-v-068da249] {
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.bottom-mask[data-v-068da249] {
    position: relative
}

.bottom-mask .full-wrapper[data-v-068da249] {
    bottom: 0;
    left: 0;
    position: absolute;
    width: 100%
}

.full-wrapper[data-v-068da249] {
    height: 100svh;
    height: calc(var(--svh, 1svh)*100);
    position: relative;
    width: 100%
}

.background-wrapper[data-v-068da249] {
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0
}

.background-wrapper[data-v-068da249],.background-wrapper svg[data-v-068da249],.logo-wrapper[data-v-068da249] {
    height: 100%;
    width: 100%
}

.logo-wrapper[data-v-068da249] {
    align-items: center;
    display: flex;
    justify-content: center;
    left: 0;
    position: absolute;
    top: 0
}
