html.cf-theme-dark {
    color-scheme: dark;
}
:root, :root.cf-theme-dark .theme-inverted {
    --primary: #000;
    --primary-5: hsla(0, 0%, 0%, 0.05);
    --primary-10: hsla(0, 0%, 0%, 0.1);
    --primary-20: hsla(0, 0%, 0%, 0.2);
    --primary-30: hsla(0, 0%, 0%, 0.3);
    --primary-40: hsla(0, 0%, 0%, 0.4);
    --primary-50: hsla(0, 0%, 0%, 0.5);
    --primary-60: hsla(0, 0%, 0%, 0.6);
    --primary-70: hsla(0, 0%, 0%, 0.7);
    --primary-80: hsla(0, 0%, 0%, 0.8);
    --primary-90: hsla(0, 0%, 0%, 0.9);
    --primary-l-1: #1a1a1a;
    --primary-l-2: #2c2c2c;
    --primary-l-3: #404040;
    --primary-l-4: #565656;
    --primary-l-5: #6c6c6c;
    --primary-l-6: #828282;
    --primary-l-7: #9a9a9a;
    --primary-l-8: #b2b2b2;
    --primary-l-9: #cbcbcb;
    --primary-l-10: #e5e5e5;
    --header: #000;
    --bg-body: #fff;
    --bg-header: #000;
    --text-body: #000;
    --text-body-inverse: #fff;
    --text-title: #000;
    --text-title-inverse: #fff;
    --border-primary: hsla(0, 0%, 50%, 0.25);
    --shadow-primary: hsla(0, 0%, 0%, 0.15);
    --light: hsl(85, 0%, 100%);
    --light-5: hsla(0, 0%, 100%, 0.05);
    --light-10: hsla(0, 0%, 100%, 0.1);
    --light-20: hsla(0, 0%, 100%, 0.2);
    --light-30: hsla(0, 0%, 100%, 0.3);
    --light-40: hsla(0, 0%, 100%, 0.4);
    --light-50: hsla(0, 0%, 100%, 0.5);
    --light-60: hsla(0, 0%, 100%, 0.6);
    --light-70: hsla(0, 0%, 100%, 0.7);
    --light-80: hsla(0, 0%, 100%, 0.8);
    --light-90: hsla(0, 0%, 100%, 0.9);
    --dark: hsla(0, 0%, 0%, 1);
    --dark-5: hsla(0, 0%, 0%, 0.05);
    --dark-10: hsla(0, 0%, 0%, 0.1);
    --dark-20: hsla(0, 0%, 0%, 0.2);
    --dark-30: hsla(0, 0%, 0%, 0.3);
    --dark-40: hsla(0, 0%, 0%, 0.4);
    --dark-50: hsla(0, 0%, 0%, 0.5);
    --dark-60: hsla(0, 0%, 0%, 0.6);
    --dark-70: hsla(0, 0%, 0%, 0.7);
    --dark-80: hsla(0, 0%, 0%, 0.8);
    --dark-90: hsla(0, 0%, 0%, 0.9);
    --space-4xs: clamp(0.31rem, calc(-0.03vw + 0.33rem), 0.33rem);
    --space-3xs: clamp(0.41rem, calc(0.04vw + 0.4rem), 0.44rem);
    --space-2xs: clamp(0.51rem, calc(0.16vw + 0.48rem), 0.62rem);
    --space-xs: clamp(0.64rem, calc(0.35vw + 0.57rem), 0.88rem);
    --space-s: clamp(0.8rem, calc(0.65vw + 0.67rem), 1.24rem);
    --space-m: clamp(1rem, calc(1.11vw + 0.78rem), 1.75rem);
    --space-l: clamp(1.25rem, calc(1.81vw + 0.89rem), 2.47rem);
    --space-xl: clamp(1.56rem, calc(2.87vw + 0.99rem), 3.5rem);
    --space-2xl: clamp(1.95rem, calc(4.44vw + 1.07rem), 4.95rem);
    --space-3xl: clamp(2.44rem, calc(6.75vw + 1.09rem), 7rem);
    --space-4xl: clamp(3.05rem, calc(10.13vw + 1.02rem), 9.89rem);
    --text-xs: clamp(0.63rem, calc(-0.23vw + 0.84rem), 0.79rem);
    --text-s: clamp(0.84rem, calc(-0.07vw + 0.9rem), 0.89rem);
    --text-m: clamp(1rem, calc(0.19vw + 0.96rem), 1.13rem);
    --text-l: clamp(1.13rem, calc(0.55vw + 1.01rem), 1.5rem);
    --text-xl: clamp(1.27rem, calc(1.09vw + 1.05rem), 2rem);
    --text-2xl: clamp(1.42rem, calc(1.84vw + 1.06rem), 2.66rem);
    --text-3xl: clamp(1.6rem, calc(2.89vw + 1.02rem), 3.55rem);
    --text-4xl: clamp(1.8rem, calc(4.34vw + 0.93rem), 4.74rem);
    --header-width: 120px;
    --radius-xs: clamp(0.25rem, calc(0vw + 0.25rem), 0.25rem);
    --radius-s: clamp(0.5rem, calc(-0.19vw + 0.54rem), 0.38rem);
    --radius-m: clamp(0.75rem, calc(-0.19vw + 0.79rem), 0.63rem);
    --radius-l: clamp(1.25rem, calc(-0.37vw + 1.32rem), 1rem);
    --radius-xl: clamp(2rem, calc(-0.56vw + 2.11rem), 1.63rem);
    --radius-full: 999rem;
    --shadow-xs: 0 1px 2px var(--shadow-primary);
    --shadow-s: 0 1.5px 3px var(--shadow-primary);
    --shadow-m: 0 2px 6px var(--shadow-primary);
    --shadow-l: 0 3px 12px var(--shadow-primary);
    --shadow-xl: 0 6px 48px var(--shadow-primary);
}
:root.cf-theme-dark, :root.cf-theme-light .theme-inverted {
    --bg-body: #171717;
    --bg-header: #000;
    --text-body: #fff;
    --text-body-inverse: #000;
    --text-title: #fff;
    --text-title-inverse: #000;
    --border-primary: hsla(0, 0%, 75%, 0.1);
    --shadow-primary: hsla(0, 0%, 0%, 0.4);
    --light: hsla(0, 0%, 0%, 1);
    --light-5: hsla(0, 0%, 0%, 0.05);
    --light-10: hsla(0, 0%, 0%, 0.1);
    --light-20: hsla(0, 0%, 0%, 0.2);
    --light-30: hsla(0, 0%, 0%, 0.3);
    --light-40: hsla(0, 0%, 0%, 0.4);
    --light-50: hsla(0, 0%, 0%, 0.5);
    --light-60: hsla(0, 0%, 0%, 0.6);
    --light-70: hsla(0, 0%, 0%, 0.7);
    --light-80: hsla(0, 0%, 0%, 0.8);
    --light-90: hsla(0, 0%, 0%, 0.9);
    --dark: hsla(0, 0%, 100%, 1);
    --dark-5: hsla(0, 0%, 100%, 0.05);
    --dark-10: hsla(0, 0%, 100%, 0.1);
    --dark-20: hsla(0, 0%, 100%, 0.2);
    --dark-30: hsla(0, 0%, 100%, 0.3);
    --dark-40: hsla(0, 0%, 100%, 0.4);
    --dark-50: hsla(0, 0%, 100%, 0.5);
    --dark-60: hsla(0, 0%, 100%, 0.6);
    --dark-70: hsla(0, 0%, 100%, 0.7);
    --dark-80: hsla(0, 0%, 100%, 0.8);
    --dark-90: hsla(0, 0%, 100%, 0.9);
}
.btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-3xs);
    padding: var(--space-xs) var(--space-4xl);
    background: var(--primary);
    color: #fff;
    font-size: var(--text-m);
    font-weight: 600;
    border: none;
    border-radius: var(--radius-full);
    box-shadow: var(--shadow-m);
    transition: all 0.25s ease-in-out;
    outline: 0;
    cursor: pointer;
    text-transform: uppercase;
    -webkit-text-decoration: none;
    text-decoration: none;
}
.btn:hover {
    background: var(--primary-l-1);
}
.btn.small {
    font-size: var(--text-s);
    padding: var(--space-xs) var(--space-2xl);
}
.btn.ghost {
    color: var(--dark-80);
    background: transparent;
    border-color: transparent;
    box-shadow: none;
}
.btn.slight {
    color: var(--dark-80);
    background: var(--bg-surface);
    border-color: var(--border-primary);
    box-shadow: var(--shadow-s);
}
.btn.ghost:hover {
    background: var(--dark-10);
}
.btn.slight:hover {
    background: var(--dark-5);
}
.btn:focus {
    outline: 4px solid var(--primary-l-3);
    outline-offset: 2px;
}
.btn.no-bg {
    color: var(--dark-80);
    background: transparent;
    box-shadow: none;
    border-color: transparent;
}
.btn.no-bg:hover {
    color: var(--dark);
}
.link {
    color: var(--primary);
    font-size: var(--text-m);
    font-weight: 600;
    letter-spacing: 0.05rem;
    box-shadow: 0 2px 0 var(--primary-20);
    -webkit-text-decoration: none;
    text-decoration: none;
    transition: all 0.15s ease-in-out;
}
.link:hover {
    box-shadow: 0 2px 0 var(--primary-40);
}
.link:focus {
    background: var(--primary-10);
}
.link.secondary {
    color: var(--secondary);
    border-color: var(--secondary-20);
}
.link.tertiary {
    color: var(--tertiary);
    border-color: var(--tertiary-20);
}
.input {
    padding: var(--space-xs) 0;
    color: var(--text-title);
    font-size: var(--text-m);
    font-weight: 500;
    border: 0;
    border-bottom: 1px solid var(--text-title);
    transition: all 0.25s ease-in-out;
    -webkit-appearance: none;
            appearance: none;
    outline: 0;
}
.input::placeholder {
    color: var(--dark-40);
}
.select {
    padding: var(--space-xs);
    color: var(--text-body);
    font-size: var(--text-m);
    font-weight: 500;
    border: 0;
    border-bottom: 1px solid var(--text-title);
    transition: all 0.25s ease-in-out;
    outline: 0;
}
.select::placeholder {
    color: var(--dark-40);
}
.divider {
    min-width: 100%;
    width: 100%;
    max-width: 100%;
    min-height: 1px;
    height: 1px;
    max-height: 1px;
    background: var(--border-primary);
    margin: var(--space-m) 0;
    border: 0;
}
.divider.vertical {
    min-width: 1px;
    width: 1px;
    max-width: 1px;
    min-height: 100%;
    height: 100%;
    max-height: 100%;
}
.checkbox {
    -webkit-appearance: none;
            appearance: none;
    display: grid;
    place-content: center;
    border: 2px solid var(--dark-40);
    border-radius: var(--radius-s);
    width: clamp(1.38rem, calc(-0.37vw + 1.45rem), 1.13rem);
    height: clamp(1.38rem, calc(-0.37vw + 1.45rem), 1.13rem);
}
.checkbox:checked:before {
    transform: scale(1);
}
.checkbox::before {
    content: "";
    width: 1em;
    height: 1em;
    box-shadow: inset 1em 1em #fff;
    -webkit-clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
            clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
    transform: scale(0);
    transition: transform 0.2s;
}
.checkbox:hover {
    border-color: var(--primary);
}
.checkbox:focus {
    outline: 3px solid var(--primary-l-3);
    outline-offset: 2px;
}
.checkbox:checked {
    background: var(--primary);
    border-color: var(--primary);
}
.radio {
    -webkit-appearance: none;
            appearance: none;
    display: grid;
    place-content: center;
    border: 2px solid var(--dark-40);
    border-radius: var(--radius-full);
    width: clamp(1.38rem, calc(-0.37vw + 1.45rem), 1.13rem);
    height: clamp(1.38rem, calc(-0.37vw + 1.45rem), 1.13rem);
}
.radio:checked:before {
    transform: scale(1);
}
.radio::before {
    content: "";
    width: 1em;
    height: 1em;
    border-radius: 100%;
    transform: scale(0);
    transition: transform 0.2s;
    background: var(--primary);
}
.radio:hover {
    border-color: var(--primary);
}
.radio:focus {
    outline: 3px solid var(--primary-l-3);
    outline-offset: 2px;
}
.radio:checked {
    border-color: var(--primary);
}
.bg-primary {
    background-color: var(--primary);
}
.bg-primary-5 {
    background-color: var(--primary-5);
}
.bg-primary-10 {
    background-color: var(--primary-10);
}
.bg-primary-20 {
    background-color: var(--primary-20);
}
.bg-primary-30 {
    background-color: var(--primary-30);
}
.bg-primary-40 {
    background-color: var(--primary-40);
}
.bg-primary-50 {
    background-color: var(--primary-50);
}
.bg-primary-60 {
    background-color: var(--primary-60);
}
.bg-primary-70 {
    background-color: var(--primary-70);
}
.bg-primary-80 {
    background-color: var(--primary-80);
}
.bg-primary-90 {
    background-color: var(--primary-90);
}
.bg-primary-l-1 {
    background-color: var(--primary-l-1);
}
.bg-primary-l-2 {
    background-color: var(--primary-l-2);
}
.bg-primary-l-3 {
    background-color: var(--primary-l-3);
}
.bg-primary-l-4 {
    background-color: var(--primary-l-4);
}
.bg-primary-l-5 {
    background-color: var(--primary-l-5);
}
.bg-primary-l-6 {
    background-color: var(--primary-l-6);
}
.bg-primary-l-7 {
    background-color: var(--primary-l-7);
}
.bg-primary-l-8 {
    background-color: var(--primary-l-8);
}
.bg-primary-l-9 {
    background-color: var(--primary-l-9);
}
.bg-primary-l-10 {
    background-color: var(--primary-l-10);
}
.text-primary {
    color: var(--primary);
}
.text-primary-5 {
    color: var(--primary-5);
}
.text-primary-10 {
    color: var(--primary-10);
}
.text-primary-20 {
    color: var(--primary-20);
}
.text-primary-30 {
    color: var(--primary-30);
}
.text-primary-40 {
    color: var(--primary-40);
}
.text-primary-50 {
    color: var(--primary-50);
}
.text-primary-60 {
    color: var(--primary-60);
}
.text-primary-70 {
    color: var(--primary-70);
}
.text-primary-80 {
    color: var(--primary-80);
}
.text-primary-90 {
    color: var(--primary-90);
}
.text-primary-l-1 {
    color: var(--primary-l-1);
}
.text-primary-l-2 {
    color: var(--primary-l-2);
}
.text-primary-l-3 {
    color: var(--primary-l-3);
}
.text-primary-l-4 {
    color: var(--primary-l-4);
}
.text-primary-l-5 {
    color: var(--primary-l-5);
}
.text-primary-l-6 {
    color: var(--primary-l-6);
}
.text-primary-l-7 {
    color: var(--primary-l-7);
}
.text-primary-l-8 {
    color: var(--primary-l-8);
}
.text-primary-l-9 {
    color: var(--primary-l-9);
}
.text-primary-l-10 {
    color: var(--primary-l-10);
}
.border-primary {
    border-color: var(--primary);
    border-color: var(--border-primary);
}
.border-primary-5 {
    border-color: var(--primary-5);
}
.border-primary-10 {
    border-color: var(--primary-10);
}
.border-primary-20 {
    border-color: var(--primary-20);
}
.border-primary-30 {
    border-color: var(--primary-30);
}
.border-primary-40 {
    border-color: var(--primary-40);
}
.border-primary-50 {
    border-color: var(--primary-50);
}
.border-primary-60 {
    border-color: var(--primary-60);
}
.border-primary-70 {
    border-color: var(--primary-70);
}
.border-primary-80 {
    border-color: var(--primary-80);
}
.border-primary-90 {
    border-color: var(--primary-90);
}
.border-primary-l-1 {
    border-color: var(--primary-l-1);
}
.border-primary-l-2 {
    border-color: var(--primary-l-2);
}
.border-primary-l-3 {
    border-color: var(--primary-l-3);
}
.border-primary-l-4 {
    border-color: var(--primary-l-4);
}
.border-primary-l-5 {
    border-color: var(--primary-l-5);
}
.border-primary-l-6 {
    border-color: var(--primary-l-6);
}
.border-primary-l-7 {
    border-color: var(--primary-l-7);
}
.border-primary-l-8 {
    border-color: var(--primary-l-8);
}
.border-primary-l-9 {
    border-color: var(--primary-l-9);
}
.border-primary-l-10 {
    border-color: var(--primary-l-10);
}
.bg-body {
    background-color: var(--bg-body);
}
.bg-header {
    background-color: var(--bg-header);
}
.text-body {
    color: var(--text-body);
}
.text-body-inverse {
    color: var(--text-body-inverse);
}
.text-title {
    color: var(--text-title);
}
.text-title-inverse {
    color: var(--text-title-inverse);
}
.bg-light {
    background-color: var(--light);
}
.bg-light-5 {
    background-color: var(--light-5);
}
.bg-light-10 {
    background-color: var(--light-10);
}
.bg-light-20 {
    background-color: var(--light-20);
}
.bg-light-30 {
    background-color: var(--light-30);
}
.bg-light-40 {
    background-color: var(--light-40);
}
.bg-light-50 {
    background-color: var(--light-50);
}
.bg-light-60 {
    background-color: var(--light-60);
}
.bg-light-70 {
    background-color: var(--light-70);
}
.bg-light-80 {
    background-color: var(--light-80);
}
.bg-light-90 {
    background-color: var(--light-90);
}
.text-light {
    color: var(--light);
}
.text-light-5 {
    color: var(--light-5);
}
.text-light-10 {
    color: var(--light-10);
}
.text-light-20 {
    color: var(--light-20);
}
.text-light-30 {
    color: var(--light-30);
}
.text-light-40 {
    color: var(--light-40);
}
.text-light-50 {
    color: var(--light-50);
}
.text-light-60 {
    color: var(--light-60);
}
.text-light-70 {
    color: var(--light-70);
}
.text-light-80 {
    color: var(--light-80);
}
.text-light-90 {
    color: var(--light-90);
}
.border-light {
    border-color: var(--light);
}
.border-light-5 {
    border-color: var(--light-5);
}
.border-light-10 {
    border-color: var(--light-10);
}
.border-light-20 {
    border-color: var(--light-20);
}
.border-light-30 {
    border-color: var(--light-30);
}
.border-light-40 {
    border-color: var(--light-40);
}
.border-light-50 {
    border-color: var(--light-50);
}
.border-light-60 {
    border-color: var(--light-60);
}
.border-light-70 {
    border-color: var(--light-70);
}
.border-light-80 {
    border-color: var(--light-80);
}
.border-light-90 {
    border-color: var(--light-90);
}
.bg-dark {
    background-color: var(--dark);
}
.bg-dark-5 {
    background-color: var(--dark-5);
}
.bg-dark-10 {
    background-color: var(--dark-10);
}
.bg-dark-20 {
    background-color: var(--dark-20);
}
.bg-dark-30 {
    background-color: var(--dark-30);
}
.bg-dark-40 {
    background-color: var(--dark-40);
}
.bg-dark-50 {
    background-color: var(--dark-50);
}
.bg-dark-60 {
    background-color: var(--dark-60);
}
.bg-dark-70 {
    background-color: var(--dark-70);
}
.bg-dark-80 {
    background-color: var(--dark-80);
}
.bg-dark-90 {
    background-color: var(--dark-90);
}
.text-dark {
    color: var(--dark);
}
.text-dark-5 {
    color: var(--dark-5);
}
.text-dark-10 {
    color: var(--dark-10);
}
.text-dark-20 {
    color: var(--dark-20);
}
.text-dark-30 {
    color: var(--dark-30);
}
.text-dark-40 {
    color: var(--dark-40);
}
.text-dark-50 {
    color: var(--dark-50);
}
.text-dark-60 {
    color: var(--dark-60);
}
.text-dark-70 {
    color: var(--dark-70);
}
.text-dark-80 {
    color: var(--dark-80);
}
.text-dark-90 {
    color: var(--dark-90);
}
.border-dark {
    border-color: var(--dark);
}
.border-dark-5 {
    border-color: var(--dark-5);
}
.border-dark-10 {
    border-color: var(--dark-10);
}
.border-dark-20 {
    border-color: var(--dark-20);
}
.border-dark-30 {
    border-color: var(--dark-30);
}
.border-dark-40 {
    border-color: var(--dark-40);
}
.border-dark-50 {
    border-color: var(--dark-50);
}
.border-dark-60 {
    border-color: var(--dark-60);
}
.border-dark-70 {
    border-color: var(--dark-70);
}
.border-dark-80 {
    border-color: var(--dark-80);
}
.border-dark-90 {
    border-color: var(--dark-90);
}
.text-xs {
    font-size: 0.63rem;
    font-size: var(--text-xs);
}
.text-s {
    font-size: 0.84rem;
    font-size: var(--text-s);
}
.text-m {
    font-size: 1rem;
    font-size: var(--text-m);
}
.text-l {
    font-size: 1.13rem;
    font-size: var(--text-l);
}
.text-xl {
    font-size: 1.27rem;
    font-size: var(--text-xl);
}
.text-2xl {
    font-size: 1.42rem;
    font-size: var(--text-2xl);
}
.text-3xl {
    font-size: 1.6rem;
    font-size: var(--text-3xl);
}
.text-4xl {
    font-size: 1.8rem;
    font-size: var(--text-4xl);
}
H1 {
    font-size: var(--text-4xl);
    line-height: 1.1;
    font-weight: 200;
}
H2 {
    font-size: var(--text-3xl);
    line-height: 1.2;
    font-weight: 200;
}
H3 {
    font-size: var(--text-2xl);
    line-height: 1.3;
    font-weight: 200;
}
H4 {
    font-size: var(--text-xl);
    line-height: 1.3;
}
H5 {
    font-size: var(--text-l);
    line-height: 1.3;
}
H6 {
    font-size: var(--text-m);
    line-height: 1.4;
}
.tagline {
    text-transform: uppercase;
    font-weight: 600;
}