@charset "UTF-8";

/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

article,
aside,
footer,
header,
main,
nav,
section {
    display: block
}

a {
    background-color: transparent
}

a:active,
a:hover {
    outline: 0
}

.grid {
    background: hsla(0, 96%, 74%, .1);
    height: 100%;
    left: 50%;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    transform: translateX(-50%);
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    visibility: hidden;
    width: 100%;
    z-index: 1
}

@font-face {
    font-display: swap;
    font-family: Berkeley Mono;
    font-style: normal;
    font-weight: 400;
    src: url(fonts/BerkeleyMono-Regular.woff2) format("woff2"), url(https://integrated-reasoning.com/assets/fonts/BerkeleyMono-regular.woff) format("woff")
}

@font-face {
    font-display: swap;
    font-family: PP Neue Montreal;
    font-style: normal;
    font-weight: 500;
    src: url(fonts/PPNeueMontreal-Medium.woff2) format("woff2"), url(https://integrated-reasoning.com/assets/fonts/PPNeueMontreal-Medium.woff) format("woff")
}

.-t0 {
    font-size: 36.9230769231vw;
    font-weight: 500;
    letter-spacing: -.01em;
    line-height: 1
}

@media screen and (min-width:750px) {
    .-t0 {
        font-size: 38.8888888889vw
    }
}

.-t1 {
    font-size: 20.5128205128vw;
    font-weight: 500;
    line-height: 1;
    text-transform: uppercase
}

@media screen and (min-width:750px) {
    .-t1 {
        font-size: 16.1111111111vw
    }
}

.-t2 {
    font-size: 16.4102564103vw;
    font-weight: 500;
    line-height: 1
}

@media screen and (min-width:750px) {
    .-t2 {
        font-size: 10vw
    }
}

.-t3 {
    font-size: 10.2564102564vw;
    font-weight: 500;
    line-height: 1
}

@media screen and (min-width:750px) {
    .-t3 {
        font-size: 5.5555555556vw
    }
}

.-t4 {
    font-size: 6.1538461538vw;
    font-weight: 500;
    line-height: 1;
    text-transform: uppercase
}

@media screen and (min-width:750px) {
    .-t4 {
        font-size: 2.7777777778vw
    }
}

.-t5 {
    font-size: 8.2051282051vw;
    font-weight: 500;
    line-height: 1
}

@media screen and (min-width:750px) {
    .-t5 {
        font-size: 5.5555555556vw
    }
}

.-t6 {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1;
    text-transform: uppercase
}

@media screen and (min-width:750px) {
    .-t6 {
        font-size: 2.7777777778vw
    }
}

.-t7 {
    font-size: 10.2564102564vw;
    font-weight: 500;
    line-height: 1
}

@media screen and (min-width:750px) {
    .-t7 {
        font-size: 10vw
    }
}

.-p,
.-p1 {
    font-family: Berkeley Mono;
    font-size: 1.2rem;
    text-transform: uppercase
}

@media screen and (min-width:750px) {
    .-p1 {
        font-size: 1.6rem
    }
}

.-p2 {
    font-size: 2.4rem
}

.-p2,
.-p3 {
    font-weight: 500;
    line-height: 1;
    text-transform: uppercase
}

.-p3 {
    font-size: 1.6rem
}

@media screen and (min-width:750px) {
    .-p3 {
        font-size: 2.4rem
    }
}

.-p4 {
    font-size: 1.4rem
}

.-p4,
.-p5 {
    font-weight: 500;
    line-height: 1;
    text-transform: uppercase
}

.-p5,
.-p6 {
    font-size: 1.6rem
}

.-p6 {
    font-family: Berkeley Mono;
    text-transform: uppercase
}

* {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    text-rendering: optimizeLegibility
}

*,
:after,
:before {
    box-sizing: inherit
}

:root {
    --primary: #b7b7b7;
    --secondary: #000;
    --background: #000;
    --cardBackground: #000;
    --textNegative: #000;
    --textPositive: #b7b7b7;
    --mask: 0%;
    --sides: 50%;
    --tops: 50%
}

html {
    -webkit-tap-highlight-color: transparent;
    -webkit-text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
    -ms-text-size-adjust: none;
    background: #000;
    background: var(--background);
    box-sizing: border-box;
    font-family: PP Neue Montreal, arial;
    font-size: 10px;
    font-weight: 400;
    height: 100vh;
    height: var(--vh);
    overflow: hidden
}

@media screen and (min-width:1920px) {
    html {
        font-size: 12px
    }
}

body {
    color: #000;
    height: 100%;
    overscroll-behavior: none
}

::-moz-selection {
    background: #fff;
    color: #000;
    text-shadow: none
}

::selection {
    background: #fff;
    color: #000;
    text-shadow: none
}

a {
    color: #000;
    text-decoration: underline
}

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

li {
    line-height: 2
}

#icons {
    display: none
}

.-w {
    padding-left: 2.0512820513vw;
    padding-right: 2.0512820513vw;
    position: relative
}

@media screen and (min-width:750px) {
    .-w {
        padding-left: 1.6666666667vw;
        padding-right: 1.6666666667vw
    }
}

.-w2 {
    padding-left: 4.1025641026vw;
    padding-right: 2.0512820513vw;
    position: relative
}

@media screen and (min-width:750px) {
    .-w2 {
        padding-left: 1.6666666667vw;
        padding-right: 1.6666666667vw
    }
}

.-w3 {
    padding-left: 2.0512820513vw;
    padding-right: 2.0512820513vw;
    position: relative
}

@media screen and (min-width:750px) {
    .-w3 {
        padding-left: 1.6rem;
        padding-right: 1.6rem
    }
}

.-img-crop {
    left: 0;
    overflow: hidden;
    top: 0
}

.-cover,
.-img-crop {
    height: 100%;
    width: 100%
}

.-cover {
    -o-object-fit: cover;
    object-fit: cover
}

.-contain {
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%
}

@media screen and (min-width:750px) {
    .-mobile {
        display: none
    }
}

.-desktop {
    display: none
}

@media screen and (min-width:750px) {
    .-desktop {
        display: block
    }
}

.-nojs {
    align-items: center;
    background: #000;
    color: #fcfdff;
    display: flex;
    justify-content: center;
    z-index: 1
}

.page,
.single {
    opacity: 0
}

.page-container {
    height: 100vh;
    height: var(--vh);
    padding: 2.0512820513vw;
    position: fixed;
    width: 100%
}

@media screen and (min-width:750px) {
    .page-container {
        padding: 1.6rem
    }
}

.page-container-inner {
    border-radius: 1.6rem;
    height: 100%;
    overflow: hidden;
    position: relative;
    width: 100%
}

.site-background {
    border-radius: 30rem;
    height: 100%;
    left: 0;
    padding: 2.0512820513vw;
    position: fixed;
    top: 0;
    width: 100%
}

@media screen and (min-width:750px) {
    .site-background {
        padding: 1.6rem
    }
}

.site-background .background-inner {
    background: #000;
    background: var(--cardBackground);
    border-radius: 1.6rem;
    height: 100%;
    position: relative;
    width: 100%
}

.-rotate {
    align-items: center;
    background: #000;
    color: #fcfdff;
    display: none;
    justify-content: center;
    z-index: 1
}

.-rotate.--active {
    display: flex
}

.-fixed {
    height: 100%;
    left: 0;
    padding-left: 2.0512820513vw;
    padding-right: 2.0512820513vw;
    padding-top: 2.0512820513vw;
    pointer-events: none;
    position: fixed;
    top: 0;
    width: 100%
}

@media screen and (min-width:750px) {
    .-fixed {
        padding-left: 2.7777777778vw;
        padding-right: 2.7777777778vw;
        padding-top: 0
    }
}

.-df {
    align-items: center;
    display: flex;
    flex-wrap: wrap
}

[data-bg=black],
[data-bg=dark] {
    color: #b7b7b7
}

[data-bg=light] {
    color: #000
}

[data-bg=yellow] {
    color: #ffc91d
}

.-pink {
    background: #ff6363
}

.-orange {
    background: #ff4a01
}

.-red {
    background: #da0c00
}

.-yellow {
    background: #ffc91d
}

.-blue {
    background: #333dec
}

.-button {
    align-items: center;
    border-radius: 3.2rem;
    display: flex;
    height: 4.8rem;
    justify-content: center;
    text-decoration: none;
    width: 16rem
}

.-bg,
.-noise {
    left: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    width: 100%
}

.-bg {
    z-index: -1
}

.-noise {
    opacity: .15;
    z-index: 5
}

.preloader {
    align-items: center;
    background: #000;
    display: flex;
    height: 100%;
    justify-content: center;
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    visibility: hidden;
    width: 100%;
    z-index: 4
}

.loader {
    height: 60rem;
    position: relative;
    width: 60rem
}

.line-0,
.line-1 {
    overflow: hidden;
    white-space: nowrap
}

.is-smooth [data-taxi-view] {
    left: 0;
    position: fixed;
    top: 0;
    width: 100%
}

.is-smooth.is-device [data-taxi-view] {
    min-height: 100vh;
    position: relative
}

.scrollbar {
    background: #b7b7b7;
    width: 6px
}

.scrollbar .scrollbar__handle {
    background: #000
}

.is-device .scrollbar {
    display: none
}

.is-device .page-container {
    overflow: hidden
}

.is-device .page-container-inner {
    overflow-y: scroll
}

form {
    display: block
}

form label {
    display: none
}

form input,
form label {
    font-family: PP Neue Montreal, arial
}

form input {
    background: none;
    border: 0;
    border-radius: 0;
    color: #ffc91d;
    display: block;
    outline: none
}

form input::-moz-placeholder {
    color: #ffc91d
}

form input::placeholder {
    color: #ffc91d
}

form textarea {
    background: none;
    border: 0;
    border-radius: 0;
    color: #ffc91d;
    display: block;
    font-family: PP Neue Montreal, arial;
    outline: none;
    resize: none
}

form textarea::-moz-placeholder {
    color: #ffc91d
}

form textarea::placeholder {
    color: #ffc91d
}

form select {
    -webkit-appearance: none;
    background: none;
    border: 0;
    border-radius: 0;
    color: #ffc91d;
    display: block;
    font-family: PP Neue Montreal, arial;
    outline: none
}

form select::-moz-placeholder {
    color: #ffc91d
}

form select::placeholder {
    color: #ffc91d
}

form button {
    align-items: center;
    background: none;
    border: 0;
    color: #000;
    cursor: pointer;
    display: flex;
    font-family: PP Neue Montreal, arial;
    font-weight: 500;
    justify-content: center
}

.header {
    padding-left: .8rem;
    padding-right: .8rem;
    padding-top: 2rem;
    pointer-events: none;
    position: fixed;
    transform: translateY(-100%);
    width: 100%;
    z-index: 3
}

@media screen and (min-width:750px) {
    .header {
        padding-left: 1.6rem;
        padding-right: 1.6rem;
        padding-top: 4rem
    }
}

.header .header-content {
    align-items: center;
    display: flex;
    justify-content: space-between
}

@media screen and (min-width:750px) {
    .header .header-content {
        align-items: flex-start
    }
}

.header .header-logo {
    height: 3.2rem;
    pointer-events: all;
    width: 14.2rem
}

@media screen and (min-width:750px) {
    .header .header-logo {
        height: 4rem;
        width: 18rem
    }
}

.header .logo-icon {
    fill: #b7b7b7;
    fill: var(--textPositive);
    stroke: #b7b7b7;
    stroke: var(--textPositive);
    height: 100%;
    width: 100%
}

.header .menu-cta {
    background: none;
    border: 0;
    color: #b7b7b7;
    color: var(--textPositive);
    pointer-events: all;
    text-align: right;
    text-transform: uppercase;
    width: 8.3333333333vw
}

.header .menu {
    align-items: flex-start;
    display: none;
    text-transform: uppercase
}

@media screen and (min-width:750px) {
    .header .menu {
        display: flex
    }
}

.header .menu-nav {
    margin-right: 19.4444444444vw;
    pointer-events: all;
    width: 16.6666666667vw
}

.header .menu-item {
    line-height: 1;
    position: relative
}

.header .menu-item.active .line {
    transform: scaleX(1)
}

.header .line {
    background: #b7b7b7;
    background: var(--textPositive);
    bottom: 2px;
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .5s ease;
    width: 100%
}

.header .menu-link {
    color: #b7b7b7;
    color: var(--textPositive);
    display: inline-block;
    position: relative;
    text-decoration: none
}

.header .menu-link:hover .line {
    transform: scaleX(1);
    transform-origin: left
}

.header .mobile-open {
    display: flex;
    flex-direction: column;
    height: 1rem;
    justify-content: space-between;
    pointer-events: all;
    position: relative;
    width: 2.4rem
}

@media screen and (min-width:750px) {
    .header .mobile-open {
        display: none
    }
}

.header .mobile-open:after {
    content: "";
    height: 4rem;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 4rem
}

.header .burger-line {
    background: #b7b7b7;
    background: var(--textPositive);
    height: 2px;
    pointer-events: none;
    width: 100%
}

.header .burger-line:last-child {
    width: 50%
}

.hero {
    height: 100vh;
    height: calc(var(--vh) - 1.6rem);
    padding-top: 6rem
}

@media screen and (min-width:750px) {
    .hero {
        min-height: 55.5555555556vw;
        padding-top: 18rem
    }
}

.hero .hero-gl {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0
}

.hero .hero-content {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-bottom: .8rem
}

@media screen and (min-width:750px) {
    .hero .hero-content {
        padding-bottom: 4rem
    }
}

.hero .hero-art {
    -webkit-clip-path: inset(50% 50%);
    clip-path: inset(50% 50%);
    -webkit-clip-path: inset(var(--sides) var(--tops));
    clip-path: inset(var(--sides) var(--tops));
    display: block;
    flex: 1;
    margin-bottom: 1.6rem;
    position: relative;
    width: 100%
}

@media screen and (min-width:750px) {
    .hero .hero-art {
        margin-bottom: 3.2rem
    }
}

.hero .hero-art:before {
    background: transparent;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1
}

.hero .hero-art video {
    pointer-events: none;
    position: absolute
}

.hero .hero-description {
    margin: 0 auto 2.4rem;
    max-width: 82rem;
    overflow: hidden;
    text-align: left;
    width: 100%
}

@media screen and (min-width:750px) {
    .hero .hero-description {
        margin-bottom: 3.2rem;
        text-align: center;
        width: 77.7777777778vw
    }
}

.hero .hero-title {
    height: 3.9583333333vw;
    overflow: hidden;
    width: 100%
}

@media screen and (min-width:750px) {
    .hero .hero-title {
        display: block
    }
}

.foundation {
    height: 100vh;
    height: var(--vh);
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .foundation {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.foundation .foundation-bg {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.foundation .foundation-bg .line {
    background: #373737;
    height: 100%;
    left: 50%;
    position: absolute;
    transform-origin: center;
    width: 1px
}

.foundation .foundation-bg .line:nth-child(2) {
    transform: rotate(45deg)
}

.foundation .foundation-bg .line:nth-child(3) {
    transform: rotate(-45deg)
}

.foundation .foundation-content {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: flex-end
}

.foundation .foundation-block {
    position: relative
}

.foundation .foundation-block .line {
    background: #373737;
    height: 1px;
    left: 0;
    position: absolute;
    transform-origin: left;
    width: 100%
}

.foundation .foundation-block .line.line-1 {
    top: 12.9230769231vw
}

@media screen and (min-width:750px) {
    .foundation .foundation-block .line.line-1 {
        top: 3.3333333333vw
    }
}

.foundation .foundation-block .line.line-2 {
    top: 28vw
}

@media screen and (min-width:750px) {
    .foundation .foundation-block .line.line-2 {
        top: 6.9444444444vw
    }
}

.foundation .foundation-block .line.line-3 {
    top: 45.2307692308vw
}

@media screen and (min-width:750px) {
    .foundation .foundation-block .line.line-3 {
        top: 10.5555555556vw
    }
}

.foundation .foundation-block .line.line-4 {
    top: 60.3076923077vw
}

@media screen and (min-width:750px) {
    .foundation .foundation-block .line.line-4 {
        display: none
    }
}

.foundation .foundation-statements {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 53.8461538462vw;
    position: relative
}

@media screen and (min-width:750px) {
    .foundation .foundation-statements {
        margin-bottom: 13.8888888889vw
    }
}

.foundation .foundation-statement {
    line-height: 2.4
}

@media screen and (min-width:750px) {
    .foundation .foundation-statement {
        line-height: 1.3;
        width: 37.5vw
    }
}

.foundation .foundation-statement.statement-2 {
    padding-top: 3.5555555556vw;
    text-align: right
}

.foundation .line-0 {
    white-space: nowrap
}

.foundation .foundation-description {
    margin: 0 auto;
    max-width: 64rem;
    padding-bottom: 1.6rem;
    text-align: center
}

@media screen and (min-width:750px) {
    .foundation .foundation-description {
        padding-bottom: 3.2rem
    }
}

.intro {
    height: 300vh
}

@media screen and (min-width:750px) {
    .intro {
        height: 600vh
    }
}

.intro .intro-block {
    align-items: center;
    display: flex;
    justify-content: center;
    text-align: center
}

.intro .intro-player {
    border-radius: 1.6rem;
    left: 0;
    position: absolute;
    top: 0
}

.intro .sticky {
    height: 100vh;
    height: calc(var(--vh) - 1.6rem);
    left: 0;
    transform: translateZ(0);
    width: 100%;
    will-change: transform
}

@media screen and (min-width:750px) {
    .intro .sticky {
        height: calc(var(--vh) - 3.2rem)
    }
}

.intro .sticky.-fixed .intro-box {
    padding: 0 1.6rem
}

@media screen and (min-width:750px) {
    .intro .sticky.-fixed .intro-box {
        padding: 0
    }
}

.intro .sticky.-fixed .intro-asset {
    padding: 0 1.6rem
}

@media screen and (min-width:750px) {
    .intro .sticky.-fixed .intro-asset {
        padding: 0
    }
}

.intro .sticky.-fixed .intro-player {
    left: .8rem;
    top: .8rem
}

@media screen and (min-width:750px) {
    .intro .sticky.-fixed .intro-player {
        left: 1.6rem;
        top: 1.6rem
    }
}

.intro .intro-asset {
    padding: 0 .8rem;
    position: absolute;
    top: 7.2rem;
    width: 100%
}

@media screen and (min-width:750px) {
    .intro .intro-asset {
        bottom: 2.4rem;
        left: 1.6rem;
        padding: 0;
        top: auto;
        width: 38.8888888889vw
    }
}

@media screen and (min-width:1025px) {
    .intro .intro-asset {
        width: 22.2222222222vw
    }
}

.intro .intro-box {
    bottom: 2.4rem;
    overflow: hidden;
    padding: .8rem;
    position: absolute;
    width: 100%
}

@media screen and (min-width:750px) {
    .intro .intro-box {
        padding: 0;
        right: 1.6rem;
        width: 33.3333333333vw
    }
}

@media screen and (min-width:1025px) {
    .intro .intro-box {
        right: 1.6rem;
        width: 16.6666666667vw
    }
}

.intro .box-top {
    margin-bottom: .8rem;
    position: relative
}

.intro .box-title {
    left: 0;
    position: absolute;
    text-align: left;
    top: 0
}

.intro .box-description {
    text-align: justify
}

.unlimited {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .unlimited {
        padding-bottom: 5.5555555556vw;
        padding-top: 16.6666666667vw
    }
}

.unlimited .unlimited-line {
    position: relative
}

.unlimited .line-path,
.unlimited .line-text {
    position: absolute
}

.unlimited .line {
    display: block
}

.unlimited .unlimited-block.block-1 {
    height: 64.6153846154vw;
    margin: 0 auto;
    position: relative;
    width: 75.3846153846vw
}

@media screen and (min-width:750px) {
    .unlimited .unlimited-block.block-1 {
        height: 33.3333333333vw;
        width: 44.4444444444vw
    }
}

.unlimited .unlimited-block.block-2 {
    margin-bottom: 4.8rem;
    text-align: center
}

.unlimited .unlimited-title {
    margin-bottom: 1.6rem;
    text-transform: uppercase;
    width: 100%
}

@media screen and (min-width:750px) {
    .unlimited .unlimited-title {
        margin-bottom: 2.4rem
    }
}

.unlimited .unlimited-description {
    margin: 0 auto;
    max-width: 64rem
}

.unlimited .asset-item {
    position: absolute;
    transform: rotate(-90deg) translateY(-3rem)
}

.unlimited .asset-item.item-1 {
    left: -.5128205128vw;
    top: 27.6923076923vw
}

@media screen and (min-width:750px) {
    .unlimited .asset-item.item-1 {
        left: -.1388888889vw;
        top: 10.0694444444vw
    }
}

.unlimited .asset-item.item-2 {
    left: 6.6666666667vw;
    top: 5.1282051282vw
}

@media screen and (min-width:750px) {
    .unlimited .asset-item.item-2 {
        left: 2.9166666667vw;
        top: 6.9444444444vw
    }
}

.unlimited .asset-item.item-3 {
    left: 11.7948717949vw;
    top: 10.2564102564vw
}

@media screen and (min-width:750px) {
    .unlimited .asset-item.item-3 {
        left: 5.2777777778vw;
        top: 5.4166666667vw
    }
}

.unlimited .asset-item.item-4 {
    left: 18.9743589744vw;
    top: 12.8205128205vw
}

@media screen and (min-width:750px) {
    .unlimited .asset-item.item-4 {
        left: 8.4722222222vw;
        top: 5.5555555556vw
    }
}

.unlimited .asset-item.item-5 {
    left: 25.1282051282vw;
    top: 23.0769230769vw
}

@media screen and (min-width:750px) {
    .unlimited .asset-item.item-5 {
        left: 11.1111111111vw;
        top: 10.4166666667vw
    }
}

.unlimited .asset-item.item-6 {
    left: 32.3076923077vw;
    top: 13.3333333333vw
}

@media screen and (min-width:750px) {
    .unlimited .asset-item.item-6 {
        left: 14.3055555556vw;
        top: 6.9444444444vw
    }
}

.unlimited .asset-item.item-7 {
    left: 39.4871794872vw;
    top: 33.3333333333vw
}

@media screen and (min-width:750px) {
    .unlimited .asset-item.item-7 {
        left: 17.3611111111vw;
        top: 15.2777777778vw
    }
}

.unlimited .asset-item.item-8 {
    left: 44.1025641026vw;
    top: 11.2820512821vw
}

@media screen and (min-width:750px) {
    .unlimited .asset-item.item-8 {
        left: 19.4444444444vw;
        top: 5.8333333333vw
    }
}

.unlimited .asset-item.item-9 {
    left: 51.7948717949vw;
    top: -8.7179487179vw
}

@media screen and (min-width:750px) {
    .unlimited .asset-item.item-9 {
        left: 22.6388888889vw;
        top: -3.4722222222vw
    }
}

.unlimited .asset-item.item-10 {
    left: 55.8974358974vw;
    top: 2.5641025641vw
}

@media screen and (min-width:750px) {
    .unlimited .asset-item.item-10 {
        left: 24.7222222222vw;
        top: 1.3888888889vw
    }
}

.unlimited .asset-item.item-11 {
    left: 64.6153846154vw;
    top: 13.8461538462vw
}

@media screen and (min-width:750px) {
    .unlimited .asset-item.item-11 {
        left: 28.4722222222vw;
        top: 6.9444444444vw
    }
}

.unlimited .asset-item.item-12 {
    left: 69.2307692308vw;
    top: -2.5641025641vw
}

@media screen and (min-width:750px) {
    .unlimited .asset-item.item-12 {
        left: 30.5555555556vw;
        top: -1.3888888889vw
    }
}

.unlimited .asset-item.item-13 {
    left: 75.3846153846vw;
    top: 24.1025641026vw
}

@media screen and (min-width:750px) {
    .unlimited .asset-item.item-13 {
        left: 33.3333333333vw;
        top: 11.1111111111vw
    }
}

.company {
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .company {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.company .company-content {
    align-items: flex-end;
    display: flex;
    flex-wrap: wrap
}

.company .company-title {
    margin-bottom: 2rem
}

@media screen and (min-width:750px) {
    .company .company-title {
        margin-bottom: 4rem
    }
}

.company .company-block {
    display: flex;
    flex-wrap: wrap;
    width: 100%
}

@media screen and (min-width:750px) {
    .company .company-block {
        width: 50%
    }
}

.company .company-block.block-1 {
    align-items: flex-end;
    flex-direction: row
}

@media screen and (min-width:750px) {
    .company .company-block.block-1 {
        align-items: flex-start;
        flex-direction: column
    }
}

.company .company-block.block-2 {
    flex-direction: row;
    flex-wrap: wrap;
    padding-top: 3.2rem
}

@media screen and (min-width:750px) {
    .company .company-block.block-2 {
        padding-left: 2.7777777778vw;
        padding-top: 11.1111111111vw
    }
}

.company .company-art {
    overflow: hidden;
    position: relative;
    width: 100%
}

.company .company-art.art-1 {
    height: 46.1538461538vw;
    width: 50%
}

@media screen and (min-width:750px) {
    .company .company-art.art-1 {
        height: 27.7777777778vw;
        width: 100%
    }
}

.company .company-art .art-details {
    display: none;
    justify-content: space-between
}

.company .art-content {
    height: 100%;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%
}

@media screen and (min-width:750px) {
    .company .art-content {
        height: 100%;
        width: 60%
    }
}

.company .art-ring {
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

.company .company-message {
    width: 100%
}

@media screen and (min-width:750px) {
    .company .company-message {
        margin-bottom: 11.1111111111vw;
        width: 19.4444444444vw
    }
}

.company .company-message.message-1 {
    text-align: right;
    width: 50%
}

@media screen and (min-width:750px) {
    .company .company-message.message-1 {
        align-self: flex-end;
        margin-bottom: 4rem;
        padding-right: 2.2222222222vw;
        text-align: left;
        width: 19.4444444444vw
    }
}

.company .company-message.message-2 {
    text-align: justify
}

@media screen and (min-width:750px) {
    .company .company-message.message-2 {
        margin-right: 2.7777777778vw;
        padding-right: 2.7777777778vw;
        text-align: left
    }
}

.company .company-message.message-3 {
    margin-bottom: 2.4rem;
    text-align: justify
}

@media screen and (min-width:750px) {
    .company .company-message.message-3 {
        margin-bottom: 0;
        padding-right: 2.7777777778vw;
        text-align: left
    }
}

.company .company-message br {
    display: none
}

@media screen and (min-width:750px) {
    .company .company-message br {
        display: inline-block
    }
}

.company .company-footnotes.footnotes-1 {
    display: none
}

@media screen and (min-width:750px) {
    .company .company-footnotes.footnotes-1 {
        display: flex
    }
}

.company .company-footnotes.footnotes-2 {
    display: flex;
    margin-bottom: 2rem
}

@media screen and (min-width:750px) {
    .company .company-footnotes.footnotes-2 {
        display: none
    }
}

.company .footnote {
    width: 43.0769230769vw
}

@media screen and (min-width:750px) {
    .company .footnote {
        width: 11.1111111111vw
    }

    .company .footnote.footnote-1 {
        margin-right: 16.6666666667vw
    }
}

.company .footnote .-p {
    max-width: 12rem
}

.company .company-icon {
    display: block;
    width: 100%
}

.company .company-icon.icon-1 {
    height: .8rem;
    margin-left: .8rem;
    width: 1.2rem
}

.company .company-icon.icon-2 {
    height: .8rem;
    margin-left: .8rem;
    width: .8rem
}

.company .company-icon.icon-3 {
    height: 36.6666666667vw
}

@media screen and (min-width:750px) {
    .company .company-icon.icon-3 {
        height: 15.8333333333vw
    }
}

.company .company-icon.icon-4 {
    display: none;
    height: 7.1794871795vw;
    width: 200%
}

@media screen and (min-width:750px) {
    .company .company-icon.icon-4 {
        height: 1.7361111111vw;
        width: 100%
    }
}

.clients {
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .clients {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.clients .clients-block {
    display: flex;
    flex-wrap: wrap;
    padding-top: .8rem;
    position: relative
}

@media screen and (min-width:750px) {
    .clients .clients-block {
        padding-top: 1.6rem
    }
}

.clients .clients-block.block-1 {
    margin-bottom: .8rem
}

@media screen and (min-width:750px) {
    .clients .clients-block.block-1 {
        margin-bottom: 10rem
    }
}

.clients .clients-block .line {
    background: #000;
    height: 1px;
    left: 0;
    position: absolute;
    top: 0;
    transform-origin: left;
    width: 100%
}

.clients .clients-subhead.subhead-1 {
    margin-bottom: 32.3076923077vw;
    width: 100%
}

@media screen and (min-width:750px) {
    .clients .clients-subhead.subhead-1 {
        margin-bottom: 0;
        margin-right: 25vw;
        width: 25vw
    }
}

.clients .clients-list {
    flex-wrap: wrap;
    gap: 5.8153846154vw;
    width: 100%
}

@media screen and (min-width:750px) {
    .clients .clients-list {
        gap: 2.2222222222vw
    }
}

.clients .clients-list.list-1 {
    display: none
}

@media screen and (min-width:750px) {
    .clients .clients-list.list-1 {
        display: flex
    }
}

.clients .clients-list.list-2 {
    display: flex
}

@media screen and (min-width:750px) {
    .clients .clients-list.list-2 {
        display: none
    }
}

.clients .clients-item {
    height: 10.7692307692vw;
    width: 26.6666666667vw
}

@media screen and (min-width:750px) {
    .clients .clients-item {
        height: 5.5555555556vw;
        width: 13.8888888889vw
    }
}

.clients .clients-item.hidden {
    opacity: 0
}

.clients .clients-logo {
    background: #000;
    display: block;
    height: 100%;
    width: 100%
}

.table {
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .table {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.table .table-block {
    display: flex;
    padding-top: 1.6rem;
    position: relative
}

.table .table-block.block-1 {
    justify-content: space-between;
    margin-bottom: 8rem
}

@media screen and (min-width:750px) {
    .table .table-block.block-1 {
        justify-content: flex-start;
        margin-bottom: 10rem
    }
}

.table .table-block.block-2 {
    flex-wrap: wrap;
    gap: 2.2222222222vw
}

.table .line {
    background: #878787;
    height: 1px;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

@media screen and (min-width:750px) {
    .table .table-subhead {
        white-space: nowrap;
        width: 13.8888888889vw
    }

    .table .table-subhead.subhead-1 {
        margin-right: 27.7777777778vw
    }
}

@media screen and (min-width:1025px) {
    .table .table-subhead.subhead-1 {
        margin-right: 36.1111111111vw
    }
}

.table .table-subhead.subhead-2 {
    display: none;
    margin-right: 16.6666666667vw
}

@media screen and (min-width:750px) {
    .table .table-subhead.subhead-2 {
        display: block
    }
}

.table .table-list {
    display: block;
    width: 100%
}

.table .table-item {
    border-bottom: 1px solid #878787;
    display: flex;
    flex-direction: column;
    line-height: 1;
    margin-bottom: .8rem;
    padding-bottom: 1.6rem;
    width: 100%
}

@media screen and (min-width:750px) {
    .table .table-item {
        flex-direction: row;
        margin-bottom: 3.2rem;
        padding-bottom: .8rem
    }
}

.table .table-item:last-child {
    border-bottom: 0
}

.table .table-item:last-child .line {
    display: none
}

.table .table-item .line {
    bottom: 0;
    top: auto
}

.table .table-subitem {
    color: inherit;
    text-decoration: none
}

.table .table-subitem.subitem-1 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 3.4rem
}

@media screen and (min-width:750px) {
    .table .table-subitem.subitem-1 {
        display: block;
        margin-bottom: 0;
        padding-right: 5.5555555556vw;
        width: 41.6666666667vw
    }
}

@media screen and (min-width:1025px) {
    .table .table-subitem.subitem-1 {
        width: 50vw
    }
}

.table .table-subitem.subitem-1 .-p1 {
    display: block
}

@media screen and (min-width:750px) {
    .table .table-subitem.subitem-1 .-p1 {
        display: none
    }
}

.table .table-subitem.subitem-2 {
    display: none
}

@media screen and (min-width:750px) {
    .table .table-subitem.subitem-2 {
        display: block;
        padding-right: 5.5555555556vw;
        width: 30.5555555556vw
    }
}

.table .table-subitem.subitem-3 {
    display: none
}

@media screen and (min-width:750px) {
    .table .table-subitem.subitem-3 {
        display: block
    }
}

.table .table-subitem.subitem-4 {
    display: block
}

@media screen and (min-width:750px) {
    .table .table-subitem.subitem-4 {
        display: none
    }
}

.press {
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .press {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.press .press-gl {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0
}

.press .press-title {
    margin-bottom: 1.6rem
}

@media screen and (min-width:1025px) {
    .press .press-title {
        margin-bottom: 8rem
    }
}

.press .title-item {
    position: absolute;
    top: 0
}

.press .title-item.item-0 {
    position: relative
}

.press .title-item.item-0 .char-1 {
    opacity: 1;
    visibility: visible
}

.press .title-item .char-1 {
    opacity: 0;
    visibility: hidden
}

.press .press-block {
    display: flex;
    flex-wrap: wrap
}

.press .press-article {
    width: 100%
}

@media screen and (min-width:1025px) {
    .press .press-article {
        width: 50%
    }

    .press .press-article.article-1 {
        display: flex;
        flex-direction: column;
        justify-content: space-between
    }
}

.press .press-article.article-2 {
    display: flex;
    flex-wrap: wrap
}

@media screen and (min-width:1025px) {
    .press .press-article.article-2 {
        align-items: flex-end;
        justify-content: space-between;
        padding-left: 2.7777777778vw
    }
}

.press .article-subtitle {
    margin-bottom: 1.6rem;
    position: relative;
    width: 64.6153846154vw;
    z-index: 1
}

@media screen and (min-width:750px) {
    .press .article-subtitle {
        margin-bottom: 0;
        width: 19.4444444444vw
    }
}

.press .subtitle-item {
    position: absolute;
    top: 0
}

.press .subtitle-item.item-0 {
    position: relative
}

.press .subtitle-item.item-0 .line-0 {
    opacity: 1;
    visibility: visible
}

.press .subtitle-item .line-0 {
    opacity: 0;
    visibility: hidden
}

.press .article-asset {
    height: 53.8461538462vw;
    margin-bottom: 3.2rem;
    margin-top: -2.2rem;
    pointer-events: none;
    position: relative;
    width: 100%
}

@media screen and (min-width:1025px) {
    .press .article-asset {
        height: 22.2222222222vw;
        margin: -5.5555555556vw 0 5.5555555556vw auto;
        width: 38.8888888889vw
    }

    .press .article-asset.asset-1 {
        display: block
    }
}

.press .article-asset.asset-2 {
    display: none
}

@media screen and (min-width:1025px) {
    .press .article-asset.asset-2 {
        display: none
    }
}

.press .video-item {
    -o-object-fit: contain;
    object-fit: contain;
    opacity: 0;
    position: absolute;
    top: 0;
    visibility: hidden
}

.press .video-item:first-child {
    opacity: 1;
    visibility: visible
}

.press .article-footnote {
    display: flex;
    margin-bottom: 1.6rem
}

@media screen and (min-width:1025px) {
    .press .article-footnote {
        margin-bottom: 0
    }
}

.press .article-author {
    position: relative
}

.press .author-item {
    opacity: 0;
    position: absolute;
    top: 0;
    visibility: hidden
}

.press .author-item.item-0 {
    opacity: 1;
    position: relative;
    visibility: visible
}

.press .footnote-item {
    width: 32.3076923077vw
}

@media screen and (min-width:1025px) {
    .press .footnote-item {
        width: 13.8888888889vw
    }
}

.press .footnote-item.item-1 {
    margin-right: 5.5555555556vw
}

.press .footnote-item .-p {
    max-width: 12rem
}

.press .article-excerpt {
    margin-bottom: 4rem;
    position: relative;
    width: 100%
}

@media screen and (min-width:1025px) {
    .press .article-excerpt {
        margin-bottom: 0;
        max-width: 24rem;
        width: 16.6666666667vw
    }
}

.press .excerpt-item {
    opacity: 0;
    position: absolute;
    top: 0;
    visibility: hidden
}

.press .excerpt-item.item-0 {
    opacity: 1;
    position: relative;
    visibility: visible
}

.press .excerpt-text {
    display: none
}

@media screen and (min-width:1025px) {
    .press .excerpt-text {
        display: block
    }
}

.press .excerpt-readmore {
    align-items: center;
    border: 2px solid #000;
    border-radius: 3.2rem;
    display: flex;
    height: 4.8rem;
    justify-content: center;
    position: relative;
    text-decoration: none;
    width: 12rem
}

@media screen and (min-width:1025px) {
    .press .excerpt-readmore {
        width: 16rem
    }
}

.press .article-sources {
    display: flex;
    gap: 8px;
    position: relative;
    width: 100%
}

@media screen and (min-width:1025px) {
    .press .article-sources {
        display: block;
        width: 13.8888888889vw
    }
}

.press .source-item {
    align-items: center;
    border: 1px solid #000;
    cursor: pointer;
    display: flex;
    height: 17.2307692308vw;
    justify-content: center;
    position: relative;
    width: 100%
}

@media screen and (min-width:750px) {
    .press .source-item {
        height: 9.6923076923vw
    }
}

@media screen and (min-width:1025px) {
    .press .source-item {
        height: 8.3333333333vw;
        margin-bottom: 1.6rem
    }
}

.press .source-item.active {
    background: #000;
    border: 0
}

.press .source-item.active .source-time {
    display: block
}

.press .source-item.active .logo-black {
    display: none
}

.press .source-item.active .logo-white {
    display: block
}

.press .source-item:last-child {
    margin-bottom: 0
}

.press .source-time {
    background: #878787;
    display: none;
    height: .4rem;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%
}

@media screen and (min-width:1025px) {
    .press .source-time {
        height: .8rem
    }
}

.press .source-time .source-time-inner {
    background: #ffc91d;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 0
}

.press .source-logo {
    height: 2.7777777778vw;
    outline: none;
    pointer-events: none;
    position: relative;
    width: 5.5555555556vw
}

.press .logo-black {
    display: block
}

.press .logo-white {
    display: none
}

.press .article-date {
    position: relative
}

.press .date-item {
    opacity: 0;
    position: absolute;
    top: 0;
    visibility: hidden
}

.press .date-item.item-0 {
    opacity: 1;
    position: relative;
    visibility: visible
}

.feed {
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .feed {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.feed .feed-block {
    display: block;
    overflow-x: scroll;
    white-space: nowrap
}

@media screen and (min-width:750px) {
    .feed .feed-block {
        display: flex;
        gap: 1.8055555556vw;
        overflow: hidden;
        white-space: wrap
    }
}

.feed .feed-article {
    display: inline-block;
    margin-right: 1.6rem;
    width: 75.3846153846vw
}

@media screen and (min-width:750px) {
    .feed .feed-article {
        display: block;
        margin-right: 0;
        width: 38.8888888889vw
    }
}

@media screen and (min-width:1025px) {
    .feed .feed-article {
        width: 22.2222222222vw
    }
}

.feed .article-link {
    color: #b7b7b7;
    display: block;
    text-decoration: none
}

.feed .article-asset {
    margin-bottom: 2.4rem;
    padding-top: 100%;
    position: relative
}

.feed .asset-crop {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.feed .article-content {
    display: flex;
    justify-content: space-between;
    white-space: normal
}

.feed .article-title {
    white-space: normal;
    width: 50%
}

@media screen and (min-width:750px) {
    .feed .article-title {
        width: 22.2222222222vw
    }
}

@media screen and (min-width:1025px) {
    .feed .article-title {
        width: 13.8888888889vw
    }
}

.feed .article-date {
    min-width: 8rem;
    position: relative;
    text-align: right
}

@media screen and (min-width:750px) {
    .feed .article-date {
        width: 5.5555555556vw
    }
}

.irxhonu {
    height: 200vh
}

@media screen and (min-width:750px) {
    .irxhonu {
        height: 250vh
    }
}

.irxhonu .sticky {
    height: 100vh;
    height: calc(var(--vh) - 2.05128vw);
    left: 0;
    transform: translateZ(0);
    width: 100%;
    will-change: transform
}

@media screen and (min-width:750px) {
    .irxhonu .sticky {
        height: calc(var(--vh) - 3.2rem)
    }
}

.irxhonu .sticky-content {
    pointer-events: none;
    position: relative
}

.irxhonu .irxhonu-background {
    height: 115.3846153846vw;
    left: -21.5384615385vw;
    position: absolute;
    top: 50%;
    transform: translate(-10%, -50%);
    width: 164.1025641026vw
}

@media screen and (min-width:750px) {
    .irxhonu .irxhonu-background {
        height: 100%;
        left: -2.7777777778vw;
        top: 0;
        transform: none;
        width: 100%
    }
}

.irxhonu .irxhonu-top {
    pointer-events: none
}

.irxhonu .irxhonu-bottom {
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0
}

.irxhonu .irxhonu-hover {
    stroke-width: 1rem;
    stroke: red
}

.irxhonu .irxhonu-group {
    position: relative
}

.irxhonu .irxhonu-problem {
    background: #d9d9d9;
    color: #000;
    opacity: 0;
    overflow: hidden;
    padding: .4rem .8rem;
    pointer-events: none;
    position: absolute;
    transform: translate(15%, -170%);
    visibility: hidden;
    z-index: 1
}

.irxhonu .irxhonu-problem:before {
    left: -1.5rem;
    top: -1rem
}

.irxhonu .irxhonu-problem:after,
.irxhonu .irxhonu-problem:before {
    background-color: #000;
    content: "";
    height: 2rem;
    position: absolute;
    transform: rotate(45deg);
    width: 2rem
}

.irxhonu .irxhonu-problem:after {
    bottom: -1rem;
    right: -1.5rem
}

.irxhonu .irxhonu-problem.problem-20 {
    left: 47.2222222222vw;
    top: 38.8888888889vw
}

.irxhonu .irxhonu-problem.problem-19 {
    left: 46.6666666667vw;
    top: 40vw
}

.irxhonu .irxhonu-problem.problem-18 {
    left: 46.1111111111vw;
    top: 41.1111111111vw
}

.irxhonu .irxhonu-problem.problem-17 {
    left: 45.5555555556vw;
    top: 42.2222222222vw
}

.irxhonu .irxhonu-problem.problem-16 {
    left: 45vw;
    top: 42.7777777778vw
}

.irxhonu .irxhonu-problem.problem-15 {
    left: 44.4444444444vw;
    top: 43.3333333333vw
}

.irxhonu .irxhonu-problem.problem-14 {
    left: 42.7777777778vw;
    top: 43.8888888889vw
}

.irxhonu .irxhonu-problem.problem-13 {
    left: 42.2222222222vw;
    top: 44.4444444444vw
}

.irxhonu .irxhonu-problem.problem-12 {
    left: 41.6666666667vw;
    top: 45vw
}

.irxhonu .irxhonu-problem.problem-11 {
    left: 40.5555555556vw;
    top: 45.5555555556vw
}

.irxhonu .irxhonu-problem.problem-10 {
    left: 40vw;
    top: 46.1111111111vw
}

.irxhonu .irxhonu-problem.problem-9 {
    left: 23.3333333333vw;
    top: 37.7777777778vw
}

.irxhonu .irxhonu-problem.problem-8 {
    left: 22.2222222222vw;
    top: 38.3333333333vw
}

.irxhonu .irxhonu-problem.problem-7 {
    left: 20.5555555556vw;
    top: 38.8888888889vw
}

.irxhonu .irxhonu-problem.problem-6 {
    left: 19.4444444444vw;
    top: 39.4444444444vw
}

.irxhonu .irxhonu-problem.problem-5 {
    left: 18.3333333333vw;
    top: 40vw
}

.irxhonu .irxhonu-problem.problem-4 {
    left: 16.6666666667vw;
    top: 40.5555555556vw
}

.irxhonu .irxhonu-problem.problem-3 {
    left: 15.5555555556vw;
    top: 41.1111111111vw
}

.irxhonu .irxhonu-problem.problem-2 {
    left: 14.4444444444vw;
    top: 42.2222222222vw
}

.irxhonu .irxhonu-problem.problem-1 {
    left: 12.7777777778vw;
    top: 42.7777777778vw
}

.irxhonu .irxhonu-problem.problem-0 {
    left: 11.6666666667vw;
    top: 43.3333333333vw
}

.irxhonu .irxhonu-line {
    stroke: #373737;
    transition: stroke .4s ease
}

.irxhonu .irxhonu-line:hover {
    stroke: #b7b7b7
}

.irxhonu .irxhonu-block {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    overflow: hidden;
    padding-bottom: .8rem
}

@media screen and (min-width:750px) {
    .irxhonu .irxhonu-block {
        justify-content: center;
        padding-bottom: 0
    }
}

.irxhonu .irxhonu-title {
    margin-bottom: 75.3846153846vw
}

@media screen and (min-width:750px) {
    .irxhonu .irxhonu-title {
        margin-bottom: 2rem
    }
}

.irxhonu .irxhonu-description {
    margin: 0 auto;
    max-width: 28rem;
    text-align: center
}

@media screen and (min-width:750px) {
    .irxhonu .irxhonu-description {
        text-align: left
    }
}

.largetitle {
    padding-bottom: 10.7692307692vw;
    padding-top: 10.7692307692vw
}

@media screen and (min-width:750px) {
    .largetitle {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.largetitle .largetitle-content {
    align-items: center;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    text-align: center
}

.largetitle .largetitle-block {
    position: relative
}

.largetitle .largetitle-block.block-1 {
    height: 86.1538461538vw;
    margin: 0 auto 6.4rem;
    width: 100%
}

@media screen and (min-width:750px) {
    .largetitle .largetitle-block.block-1 {
        height: 50vw;
        margin-bottom: 8rem;
        width: 50vw
    }
}

.largetitle .largetitle-title {
    margin: 0 auto;
    text-align: justify;
    text-transform: uppercase
}

@media screen and (min-width:750px) {
    .largetitle .largetitle-title {
        max-width: 83.3333333333vw;
        text-align: center
    }
}

.largetitle .largetitle-title br {
    display: none
}

@media screen and (min-width:750px) {
    .largetitle .largetitle-title br {
        display: inline-block
    }
}

.marquee {
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .marquee {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.marquee .marquee-content {
    position: relative
}

.marquee .marquee-block {
    overflow: hidden;
    width: 100%
}

.marquee .marquee-line {
    display: flex
}

.marquee .marquee-line:nth-child(odd) {
    justify-content: flex-end
}

.marquee .marquee-line.-mobile {
    display: flex
}

@media screen and (min-width:750px) {
    .marquee .marquee-line.-mobile {
        display: none
    }
}

.marquee .marquee-item {
    padding: 0 .4rem;
    text-transform: uppercase;
    white-space: nowrap
}

@media screen and (min-width:750px) {
    .marquee .marquee-item {
        padding: 0 2rem
    }
}

.message {
    height: 100vh;
    height: var(--vh);
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .message {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.message .message-content {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: flex-end
}

.message .message-block {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center
}

@media screen and (min-width:750px) {
    .message .block-team .message-description {
        max-width: 90rem
    }
}

.message .message-asset {
    height: 87.1794871795vw;
    margin-bottom: 10.7692307692vw;
    width: 100%
}

@media screen and (min-width:750px) {
    .message .message-asset {
        height: 33.3333333333vw;
        margin-bottom: 2.7777777778vw;
        width: 33.3333333333vw
    }
}

.message .message-description {
    margin: 0 auto;
    padding: 0 2rem;
    text-align: center
}

@media screen and (min-width:750px) {
    .message .message-description {
        max-width: 80rem;
        padding: 0
    }
}

.message .message-description br {
    display: none
}

@media screen and (min-width:750px) {
    .message .message-description br {
        display: inline-block
    }
}

.message .message-description br:nth-child(3),
.message .message-description br:nth-child(4) {
    display: block
}

.testimonials {
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .testimonials {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.testimonials .testimonials-title {
    padding-bottom: .8rem
}

@media screen and (min-width:750px) {
    .testimonials .testimonials-title {
        padding-bottom: 0
    }
}

.testimonials .testimonials-block {
    border-top: 1px solid;
    display: flex;
    padding-top: 1.6rem
}

.testimonials .testimonials-list {
    padding-left: 0;
    width: 100%
}

@media screen and (min-width:750px) {
    .testimonials .testimonials-list {
        padding-left: 11.1111111111vw;
        padding-top: 4rem
    }
}

@media screen and (min-width:1025px) {
    .testimonials .testimonials-list {
        padding-left: 22.2222222222vw
    }
}

.testimonials .testimonial-item {
    border-bottom: 1px solid;
    display: flex;
    margin-bottom: 1.6rem;
    padding-bottom: 7.2rem;
    position: relative
}

@media screen and (min-width:750px) {
    .testimonials .testimonial-item {
        margin-bottom: 3.2rem;
        padding-bottom: 4.8rem
    }
}

.testimonials .testimonial-item:last-child {
    margin-bottom: 0
}

.testimonials .testimonial-nr {
    width: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .testimonials .testimonial-nr {
        width: 11.1111111111vw
    }
}

.testimonials .nr-bullet {
    align-items: center;
    border: 2px solid;
    border-radius: 50%;
    display: flex;
    height: 3.2rem;
    justify-content: center;
    width: 3.2rem
}

@media screen and (min-width:750px) {
    .testimonials .nr-bullet {
        height: 4rem;
        width: 4rem
    }
}

.testimonials .testimonial-quote {
    display: flex;
    flex-direction: column-reverse
}

@media screen and (min-width:750px) {
    .testimonials .testimonial-quote {
        flex-direction: row
    }

    .testimonials .testimonial-author {
        width: 16.6666666667vw
    }

    .testimonials .testimonial-author .-p2 {
        max-width: 19rem
    }
}

.testimonials .testimonial-text {
    margin-bottom: 1.6rem;
    width: 64.6153846154vw
}

@media screen and (min-width:750px) {
    .testimonials .testimonial-text {
        margin-bottom: 0;
        width: 38.8888888889vw
    }
}

.faq {
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .faq {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.faq .faq-title {
    padding-bottom: .8rem
}

@media screen and (min-width:750px) {
    .faq .faq-title {
        padding-bottom: 0
    }
}

.faq .faq-block {
    border-top: 1px solid;
    display: flex;
    padding-top: 1.6rem
}

.faq .faq-dropdown {
    padding-top: 9.6rem;
    width: 100%
}

@media screen and (min-width:750px) {
    .faq .faq-dropdown {
        padding-left: 22.2222222222vw;
        padding-top: 11.1111111111vw
    }
}

.faq .dropdown-item {
    border-bottom: 1px solid;
    margin-bottom: 2.4rem;
    position: relative
}

@media screen and (min-width:750px) {
    .faq .dropdown-item {
        margin-bottom: 3.2rem
    }
}

.faq .dropdown-item:last-child {
    margin-bottom: 0
}

.faq .dropdown-title {
    cursor: pointer;
    display: flex;
    padding-bottom: 2.4rem;
    padding-left: 4rem;
    position: relative
}

@media screen and (min-width:750px) {
    .faq .dropdown-title {
        padding-bottom: 1.6rem;
        padding-left: 5.5555555556vw
    }
}

.faq .dropdown-title .-p3 {
    pointer-events: none
}

.faq .dropdown-icon {
    background: #000;
    border-radius: 50%;
    height: 1.6rem;
    left: 0;
    pointer-events: none;
    position: absolute;
    width: 1.6rem
}

@media screen and (min-width:750px) {
    .faq .dropdown-icon {
        height: 2.4rem;
        width: 2.4rem
    }
}

.faq .dropdown-content {
    overflow: hidden
}

.faq .dropdown-content p {
    margin-bottom: 3.2rem
}

.faq .dropdown-content p:last-child {
    margin-bottom: 0
}

.faq .dropdown-content ul {
    list-style: disc;
    margin-bottom: 3.2rem;
    padding-left: 3rem
}

.faq .dropdown-content ul:last-child {
    margin-bottom: 0
}

.faq .content-text {
    padding-bottom: 4rem;
    padding-left: 4rem
}

@media screen and (min-width:750px) {
    .faq .content-text {
        padding-bottom: 2.4rem;
        padding-left: 5.5555555556vw;
        padding-top: 2.4rem
    }
}

.statement {
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .statement {
        min-height: 100vh;
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.statement .statement-content {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: flex-end
}

.statement .statement-title {
    margin-bottom: 1.6rem;
    padding-bottom: 34.4615384615vw;
    position: relative;
    text-align: justify;
    text-transform: uppercase
}

@media screen and (min-width:750px) {
    .statement .statement-title {
        padding-bottom: 11.1111111111vw
    }
}

.statement .statement-title strong {
    color: #878787;
    font-weight: 400
}

.statement .line {
    background: #878787;
    bottom: 0;
    height: 1px;
    left: 0;
    position: absolute;
    transform-origin: left;
    width: 100%
}

.statement .statement-description {
    text-align: justify
}

@media screen and (min-width:750px) {
    .statement .statement-description {
        text-align: left
    }
}

.productinfo {
    padding-bottom: 10.7692307692vw;
    padding-top: 10.7692307692vw
}

@media screen and (min-width:750px) {
    .productinfo {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.productinfo .productinfo-content {
    display: flex;
    flex-wrap: wrap
}

.productinfo .productinfo-title {
    margin-bottom: 2rem
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-title {
        margin-bottom: 4rem
    }
}

.productinfo .productinfo-block {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-block {
        justify-content: flex-start;
        width: 50%
    }
}

.productinfo .productinfo-block.block-1 {
    align-items: flex-end;
    flex-direction: row
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-block.block-1 {
        align-items: flex-start;
        flex-direction: column
    }
}

.productinfo .productinfo-block.block-2 {
    flex-direction: row;
    flex-wrap: wrap;
    padding-top: 4rem
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-block.block-2 {
        padding-left: 2.7777777778vw;
        padding-top: 11.1111111111vw
    }
}

.productinfo .productinfo-block.block-3 {
    display: none;
    padding-left: 25vw;
    width: 100%
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-block.block-3 {
        display: flex
    }
}

.productinfo .productinfo-art {
    overflow: hidden;
    width: 100%
}

.productinfo .productinfo-art.art-1 {
    height: 66.6666666667vw;
    width: 100%
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-art.art-1 {
        height: 34.7222222222vw
    }
}

.productinfo .productinfo-art .art-details {
    display: flex;
    justify-content: space-between
}

.productinfo .productinfo-message {
    width: 41.0256410256vw
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-message {
        width: 19.4444444444vw
    }
}

.productinfo .productinfo-message.message-1 {
    text-align: right;
    width: 50%
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-message.message-1 {
        align-self: flex-end;
        margin-bottom: 4rem;
        padding-right: 2.7777777778vw;
        text-align: left;
        width: 19.4444444444vw
    }
}

.productinfo .productinfo-message.message-2 {
    text-align: left
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-message.message-2 {
        margin-right: 2.7777777778vw
    }
}

.productinfo .productinfo-message.message-3 {
    margin-bottom: 2.4rem;
    text-align: left;
    word-break: break-word
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-message.message-3 {
        margin-bottom: 0;
        width: 22.2222222222vw;
        word-break: normal
    }
}

.productinfo .productinfo-message br {
    display: none
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-message br {
        display: inline-block
    }
}

.productinfo .productinfo-footnotes.footnotes-1 {
    display: none
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-footnotes.footnotes-1 {
        display: flex;
        flex: 1;
        margin-left: 5.5555555556vw
    }
}

.productinfo .productinfo-footnotes.footnotes-2 {
    display: flex;
    justify-content: space-between;
    width: 100%
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-footnotes.footnotes-2 {
        display: none;
        margin-bottom: 2rem
    }
}

.productinfo .footnote.footnote-1 {
    width: 41.0256410256vw
}

@media screen and (min-width:750px) {
    .productinfo .footnote.footnote-1 {
        margin-right: 2.7777777778vw;
        width: 19.4444444444vw
    }
}

.productinfo .footnote.footnote-2 {
    width: 41.0256410256vw
}

@media screen and (min-width:750px) {
    .productinfo .footnote.footnote-2 {
        width: 16.6666666667vw
    }
}

.productinfo .footnote .-p1 {
    max-width: 24rem
}

.productinfo .productinfo-icon {
    display: block;
    width: 100%
}

.productinfo .productinfo-icon.icon-1 {
    height: .8rem;
    margin-left: .8rem;
    width: 1.2rem
}

.productinfo .productinfo-icon.icon-2 {
    height: .8rem;
    margin-left: .8rem;
    width: .8rem
}

.productinfo .productinfo-icon.icon-3 {
    height: 26.4102564103vw;
    margin-bottom: .8rem
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-icon.icon-3 {
        height: 11.1111111111vw;
        margin-bottom: 2.4rem
    }
}

.productinfo .productinfo-icon.icon-4 {
    height: 7.1794871795vw;
    width: 200%
}

@media screen and (min-width:750px) {
    .productinfo .productinfo-icon.icon-4 {
        height: 1.7361111111vw;
        width: 100%
    }
}

.team {
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .team {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.team .team-content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    white-space: normal
}

.team .team-block {
    display: block;
    overflow-x: scroll;
    white-space: nowrap
}

@media screen and (min-width:750px) {
    .team .team-block {
        display: flex;
        gap: 1.8055555556vw;
        overflow: hidden;
        white-space: wrap
    }
}

.team .team-article {
    display: inline-block;
    margin-right: 1.6rem;
    width: 75.3846153846vw
}

@media screen and (min-width:750px) {
    .team .team-article {
        display: block;
        width: 33.3333333333vw
    }
}

@media screen and (min-width:1025px) {
    .team .team-article {
        display: block;
        margin-right: 0;
        width: 22.2222222222vw
    }
}

.team .team-asset {
    background: red;
    margin-bottom: 2.4rem;
    padding-top: 100%;
    position: relative
}

.team .asset-crop {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.team .team-title {
    white-space: normal;
    width: 100%
}

@media screen and (min-width:750px) {
    .team .team-title {
        margin-bottom: 2.4rem;
        padding-right: 5.5555555556vw
    }
}

.team .team-text {
    margin-bottom: 2.4rem
}

.team .team-link {
    color: inherit;
    text-decoration: none
}

.split {
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .split {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.split .split-block.block-2 {
    border-top: 1px solid #878787;
    padding-top: 1.6rem
}

.split .split-title {
    text-align: justify
}

.split .split-art {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 1.6rem
}

@media screen and (min-width:750px) {
    .split .split-art {
        justify-content: space-between;
        margin-bottom: 4rem
    }
}

.split .art-1 {
    height: 82.0512820513vw;
    width: 82.0512820513vw
}

@media screen and (min-width:750px) {
    .split .art-1 {
        height: 36.1111111111vw;
        margin-left: 11.1111111111vw;
        width: 36.1111111111vw
    }
}

.split .art-2 {
    display: none
}

@media screen and (min-width:750px) {
    .split .art-2 {
        display: block;
        margin-right: 11.1111111111vw
    }
}

.signup {
    height: 250vh;
    pointer-events: none
}

@media screen and (min-width:750px) {
    .signup {
        height: 400vh
    }
}

.signup .signup-content {
    display: block;
    position: relative
}

.signup .signup-bg {
    background: #000;
    border-radius: 50%;
    height: 110vw;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%) scale(.05);
    width: 110vw
}

.signup .signup-rings {
    height: 100%;
    left: 0;
    position: absolute;
    width: 100%
}

.signup .ring {
    height: 44.4444444444vw;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 44.4444444444vw
}

.signup .ring.left {
    left: calc(50% - 22.22222vw);
    transform: translate(-50%, -50%) rotate(180deg);
    transform-origin: center
}

.signup .ring.left .icon-0 {
    width: 10%
}

.signup .ring.left .icon-1 {
    width: 20%
}

.signup .ring.left .icon-2 {
    width: 30%
}

.signup .ring.left .icon-3 {
    width: 40%
}

.signup .ring.left .icon-4 {
    width: 50%
}

.signup .ring.left .icon-5 {
    width: 60%
}

.signup .ring.left .icon-6 {
    width: 70%
}

.signup .ring.left .icon-7 {
    width: 80%
}

.signup .ring.left .icon-8 {
    width: 90%
}

.signup .ring.right {
    left: calc(50% + 22.22222vw)
}

.signup .ring.right .ring-icon {
    width: 0
}

.signup .ring.right .icon-0 {
    width: 100%
}

.signup .ring.right .icon-1 {
    width: 90%
}

.signup .ring.right .icon-2 {
    width: 80%
}

.signup .ring.right .icon-3 {
    width: 70%
}

.signup .ring.right .icon-4 {
    width: 60%
}

.signup .ring.right .icon-5 {
    width: 50%
}

.signup .ring.right .icon-6 {
    width: 40%
}

.signup .ring.right .icon-7 {
    width: 30%
}

.signup .ring.right .icon-8 {
    width: 20%
}

.signup .ring.right .icon-10 {
    width: 10%
}

.signup .ring-icon {
    border: 1px solid #000;
    border-radius: 50%
}

.signup .ring-icon,
.signup .signup-lines {
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

.signup .signup-lines {
    left: 0;
    opacity: 0
}

.signup .sticky {
    height: 100vh;
    height: calc(var(--vh) - 2.05128vw);
    left: 0;
    transform: translateZ(0);
    width: 100%;
    will-change: transform
}

@media screen and (min-width:750px) {
    .signup .sticky {
        height: calc(var(--vh) - 3.2rem)
    }
}

.signup .signup-mask {
    align-items: center;
    background: #000;
    -webkit-clip-path: circle(0 at center);
    clip-path: circle(0 at center);
    -webkit-clip-path: circle(var(--mask) at center);
    clip-path: circle(var(--mask) at center);
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: flex-end;
    padding: 0 1.6rem;
    width: 100%
}

@media screen and (min-width:750px) {
    .signup .signup-mask {
        padding: 0
    }
}

.signup .sticky-content {
    opacity: 0;
    position: relative;
    visibility: hidden
}

.signup .signup-title {
    margin-bottom: 6.4rem;
    text-align: center;
    text-transform: uppercase
}

@media screen and (min-width:750px) {
    .signup .signup-title {
        margin-bottom: 5.5555555556vw
    }
}

.signup .signup-block {
    overflow: hidden
}

.signup .block-content {
    background: #ffc91d;
    border-radius: 1.5rem;
    height: 100%;
    position: relative;
    width: 100%
}

.signup .signup-form {
    display: block;
    margin-bottom: 11.1111111111vw;
    pointer-events: all;
    text-align: center
}

.signup .line {
    bottom: 0;
    height: 1px;
    left: 0;
    position: absolute;
    transform-origin: left;
    width: 100%
}

@media screen and (min-width:750px) {
    .signup .line {
        border-bottom: 1px dotted #ffc91d
    }
}

.signup .signup-group {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    overflow: hidden;
    padding-bottom: .8rem;
    position: relative
}

.signup .signup-group.-mobile {
    display: flex
}

@media screen and (min-width:750px) {
    .signup .signup-group.-mobile {
        display: none
    }
}

.signup .signup-group.-desktop {
    display: none
}

@media screen and (min-width:750px) {
    .signup .signup-group.-desktop {
        display: flex
    }
}

.signup .signup-submit {
    background: #ffc91d;
    border-radius: 3.2rem;
    height: 4.8rem;
    pointer-events: all;
    width: 16rem
}

.signup .signup-input {
    border-bottom: 1px dotted #ffc91d;
    margin-bottom: 1.6rem;
    padding-bottom: .8rem;
    position: relative;
    text-align: center;
    width: 100%
}

@media screen and (min-width:750px) {
    .signup .signup-input {
        border-bottom: 0;
        margin-bottom: 0;
        margin-right: 4rem;
        padding-bottom: 0;
        text-align: left;
        width: 55.5555555556vw
    }
}

.signup .signup-input.error {
    color: #ff6363
}

.signup .signup-input.error::-moz-placeholder {
    color: #ff6363
}

.signup .signup-input.error::placeholder {
    color: #ff6363
}

.signup .signup-input.error+.form-message {
    opacity: 1;
    visibility: visible
}

.signup .form-message {
    color: #ff6363;
    left: 50%;
    opacity: 0;
    position: absolute;
    top: -2.4rem;
    transform: translateX(-50%);
    visibility: hidden
}

@media screen and (min-width:750px) {
    .signup .form-message {
        bottom: -3rem;
        left: 0;
        top: auto;
        transform: none
    }
}

.signup .signup-success {
    display: none
}

.signup .signup-footnotes {
    display: flex;
    padding-bottom: 8.3333333333vw
}

.signup .signup-footnote {
    width: 50%
}

@media screen and (min-width:750px) {
    .signup .signup-footnote {
        width: 13.8888888889vw
    }

    .signup .signup-footnote.footnote-1 {
        margin-right: 22.2222222222vw
    }
}

.signup .signup-footnote .-p {
    max-width: 16rem
}

.tunnel {
    height: 200vh;
    position: relative
}

@media screen and (min-width:750px) {
    .tunnel {
        height: 250vh
    }
}

.tunnel .sticky {
    height: 100vh;
    height: calc(var(--vh) - 2.05128vw);
    left: 0;
    transform: translateZ(0);
    width: 100%;
    will-change: transform
}

@media screen and (min-width:750px) {
    .tunnel .sticky {
        height: calc(var(--vh) - 3.2rem)
    }
}

.tunnel .tunnel-background {
    height: 100%;
    left: 0;
    padding-bottom: 1.6rem;
    padding-top: 8rem;
    position: absolute;
    top: 0;
    width: 100%
}

@media screen and (min-width:750px) {
    .tunnel .tunnel-background {
        padding: 16rem 0 2.4rem
    }
}

.tunnel .background-container {
    height: 100%;
    overflow: hidden;
    position: relative;
    width: 100%
}

.tunnel .tunnel-gl {
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%
}

.tunnel .background-lines {
    opacity: 0;
    transform: scale(1.1)
}

.tunnel .tunnel-block {
    align-items: center;
    display: flex;
    justify-content: center;
    padding-bottom: 1.6rem;
    padding-top: 8rem
}

@media screen and (min-width:750px) {
    .tunnel .tunnel-block {
        padding-bottom: 2.4rem;
        padding-top: 16rem
    }
}

.tunnel .tunnel-block.-fixed .tunnel-background {
    padding-left: 4.1025641026vw;
    padding-right: 4.1025641026vw
}

@media screen and (min-width:750px) {
    .tunnel .tunnel-block.-fixed .tunnel-background {
        padding-left: 2.7777777778vw;
        padding-right: 2.7777777778vw
    }
}

.tunnel .tunnel-bg {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    position: absolute;
    top: 0;
    width: 100%
}

.tunnel .tunnel-bg .bg-inner {
    background: #000;
    border: 1px solid #373737;
    height: 100px;
    margin-left: -1px;
    margin-top: -1px;
    width: 100px
}

.tunnel .sticky-content {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 11.1111111111vw 0 5.5555555556vw;
    text-align: center;
    width: 68.0555555556vw
}

.tunnel .tunnel-title {
    margin-bottom: 5.5555555556vw;
    text-align: justify;
    width: 63.8888888889vw
}

.tunnel .tunnel-description {
    margin: 0 auto;
    max-width: 48rem
}

.newshero {
    padding-bottom: 10.7692307692vw;
    padding-top: 32.3076923077vw
}

@media screen and (min-width:750px) {
    .newshero {
        padding-bottom: 5.5555555556vw;
        padding-top: 11.1111111111vw
    }
}

.newshero .newshero-asset {
    height: 64.6153846154vw;
    margin-bottom: 2.4rem;
    opacity: 0;
    width: 100%
}

@media screen and (min-width:750px) {
    .newshero .newshero-asset {
        height: 44.4444444444vw
    }
}

.newshero .newshero-title {
    margin-left: -2.7777777778vw;
    overflow: hidden;
    white-space: nowrap
}

.newshero .newshero-subtitle {
    margin-bottom: 2.4rem;
    text-align: justify;
    text-transform: uppercase
}

.newshero .newshero-article {
    margin-bottom: 2.4rem;
    margin-left: auto;
    width: 75.3846153846vw
}

@media screen and (min-width:750px) {
    .newshero .newshero-article {
        width: 44.4444444444vw
    }
}

.newshero .newshero-excerpt {
    margin-bottom: 3.2rem;
    text-align: justify
}

.newshero .newshero-link {
    background: #878787
}

.globe {
    height: 100vh;
    height: calc(var(--vh) - 1.6rem)
}

@media screen and (min-width:750px) {
    .globe {
        height: calc(var(--vh) - 3.2rem)
    }
}

.globe .globe-gl {
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0
}

.globe .globe-content {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    width: 100%
}

.globe .globe-asset {
    height: 86.1538461538vw;
    width: 86.1538461538vw
}

@media screen and (min-width:750px) {
    .globe .globe-asset {
        height: 44.4444444444vw;
        width: 44.4444444444vw
    }
}

.form {
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .form {
        padding-bottom: 5.5555555556vw;
        padding-top: 11.1111111111vw
    }
}

.form .form-block {
    position: relative
}

.form .form-group {
    border-bottom: 1px solid #878787;
    margin-bottom: 5.6rem;
    padding-bottom: .8rem;
    position: relative;
    width: 100%
}

@media screen and (min-width:750px) {
    .form .form-group {
        margin-bottom: 4rem
    }
}

.form .form-group:last-child {
    margin-bottom: 0
}

.form .form-input {
    color: #878787;
    width: 100%
}

.form .form-input::-moz-placeholder {
    color: #878787
}

.form .form-input::placeholder {
    color: #878787
}

.form .form-input.error {
    color: #ff6363
}

.form .form-input.error::-moz-placeholder {
    color: #ff6363
}

.form .form-input.error::placeholder {
    color: #ff6363
}

.form .form-input.error+.form-message {
    opacity: 1;
    visibility: visible
}

.form .-button {
    border: 1px solid #878787;
    color: #878787
}

.form .form-success {
    background: #000;
    color: #878787;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    visibility: hidden;
    width: 100%
}

.form .success-title {
    display: flex;
    flex-direction: column;
    margin-bottom: 10rem;
    text-transform: uppercase
}

.form .title-item:last-child {
    align-self: flex-end
}

.form .success-description {
    margin-bottom: 4rem;
    margin-left: auto;
    margin-right: 8.3333333333vw;
    width: 36.1111111111vw
}

.form .form-message {
    color: #ff6363;
    left: 0;
    opacity: 0;
    position: absolute;
    top: -1.6rem;
    visibility: hidden
}

@media screen and (min-width:750px) {
    .form .form-message {
        left: auto;
        right: 0;
        top: 1rem
    }
}

.form .form-reset {
    cursor: pointer
}

.contact {
    padding-bottom: 21.5384615385vw;
    padding-top: 21.5384615385vw
}

@media screen and (min-width:750px) {
    .contact {
        padding-bottom: 5.5555555556vw;
        padding-top: 11.1111111111vw
    }
}

.contact .contact-block,
.contact .contact-content {
    display: flex;
    flex-direction: column
}

.contact .contact-block {
    margin-bottom: 16rem
}

.contact .contact-block:last-child {
    margin-bottom: 0
}

.contact .contact-block.block-1 {
    width: 43.0769230769vw
}

@media screen and (min-width:750px) {
    .contact .contact-block.block-1 {
        width: 30.5555555556vw
    }
}

.contact .contact-block.block-2 {
    align-self: center;
    text-align: center
}

.contact .contact-block.block-3 {
    align-self: flex-end;
    text-align: right;
    width: 43.0769230769vw
}

@media screen and (min-width:750px) {
    .contact .contact-block.block-3 {
        text-align: left;
        width: 36.1111111111vw
    }
}

.contact .contact-email {
    color: #b7b7b7;
    text-decoration: none
}

.contact .contact-phone {
    margin-bottom: 1.6rem
}

@media screen and (min-width:750px) {
    .contact .contact-phone {
        margin-bottom: 0
    }
}

.title {
    padding-bottom: 10.7692307692vw;
    padding-top: 43.0769230769vw;
    text-align: center
}

@media screen and (min-width:750px) {
    .title {
        padding-bottom: 2.7777777778vw;
        padding-top: 16.6666666667vw
    }
}

.paragraph {
    padding-bottom: 10.7692307692vw;
    padding-top: 10.7692307692vw
}

@media screen and (min-width:750px) {
    .paragraph {
        padding-bottom: 5.5555555556vw;
        padding-top: 2.7777777778vw
    }

    .paragraph .paragraph-block {
        padding: 0 8.3333333333vw
    }
}

.paragraph .paragraph-text {
    text-align: justify
}

.paragraph .paragraph-text .-t4 {
    text-transform: none
}

.paragraph .paragraph-text .line-0 {
    text-align: justify !important
}

.text {
    padding-bottom: 10.7692307692vw;
    padding-top: 10.7692307692vw
}

@media screen and (min-width:750px) {
    .text {
        padding-bottom: 5.5555555556vw;
        padding-top: 5.5555555556vw
    }
}

.text .text-block {
    margin: 0 auto;
    max-width: 80rem
}

.text .-p3,
.text .-t3,
.text .-t4 {
    font-weight: 400;
    text-transform: none
}

.text .-t3 {
    margin-bottom: 3.2rem
}

@media screen and (min-width:750px) {
    .text .-t3 {
        margin-bottom: 7.2rem
    }
}

.text .-p3,
.text .-t4 {
    margin-bottom: 2.4rem
}

@media screen and (min-width:750px) {

    .text .-p3,
    .text .-t4 {
        margin-bottom: 3.2rem
    }
}

.text .-p3 {
    line-height: 1.33
}

.single .feed {
    padding-bottom: 0
}

.single .feed .feed-title {
    margin-bottom: 4rem;
    text-align: center
}

.article .article-block.block-1 {
    margin: 0 auto 4rem
}

@media screen and (min-width:750px) {
    .article .article-block.block-1 {
        margin-bottom: 10rem;
        width: 77.7777777778vw
    }
}

.article .article-block.block-2 {
    margin: 0 auto;
    max-width: 80rem
}

@media screen and (min-width:750px) {
    .article .article-block.block-2 {
        width: 55.5555555556vw
    }
}

.article .-t3 {
    padding: 2rem 0;
    text-align: justify;
    text-transform: uppercase
}

@media screen and (min-width:750px) {
    .article .-t3 {
        padding: 4rem
    }
}

.article .-p3 {
    line-height: 1.33;
    text-transform: none
}

.article .-p3,
.article .article-list {
    margin-bottom: 4rem
}

.article .article-list .-p3 {
    line-height: 1.3;
    margin-bottom: 0
}

.article .article-list .article-list {
    margin-bottom: 0
}

.article ul {
    list-style: square;
    padding-left: 2.4rem
}

.article ul ul {
    list-style: square;
    padding-left: 3.2rem
}

.article img {
    height: auto;
    width: 100%
}

.article code {
    padding: 4rem
}

.article .latex,
.article code {
    background: #131313;
    display: block;
    margin-bottom: 4rem
}

.article .latex {
    padding: 12rem 2rem
}

@media screen and (min-width:750px) {
    .article .latex {
        padding: 4rem
    }
}

.article .katex-html {
    display: none
}

.mobile {
    fill: #b7b7b7;
    stroke: #b7b7b7;
    background: #000;
    color: #b7b7b7;
    height: 100vh;
    height: var(--vh);
    opacity: 0;
    padding: .8rem;
    position: fixed;
    top: 0;
    visibility: hidden;
    width: 100%;
    z-index: 5
}

.mobile .mobile-content {
    height: 100vh;
    height: calc(var(--vh) - 1.6rem);
    position: relative
}

.mobile .mobile-header {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding-top: 2rem;
    position: relative;
    z-index: 1
}

.mobile .mobile-logo {
    height: 3.2rem;
    width: 14.2rem
}

@media screen and (min-width:750px) {
    .mobile .mobile-logo {
        height: 4rem;
        width: 18rem
    }
}

.mobile .logo-icon {
    height: 100%;
    width: 100%
}

.mobile .mobile-close {
    align-items: center;
    display: flex;
    flex-direction: column;
    height: 2.4rem;
    justify-content: center;
    position: relative;
    width: 2.4rem
}

.mobile .mobile-close:before {
    content: "";
    height: 4.2rem;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 4.2rem
}

.mobile .mobile-close .line {
    background: #b7b7b7;
    height: 2px;
    pointer-events: none;
    width: 100%
}

.mobile .mobile-close .line:first-child {
    transform: rotate(45deg)
}

.mobile .mobile-close .line:last-child {
    margin-top: -2px;
    transform: rotate(-45deg)
}

.mobile .mobile-container {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: flex-end;
    left: 0;
    padding: 0 6.9230769231vw 10.2564102564vw;
    position: absolute;
    top: 0;
    width: 100%
}

.mobile .menu {
    margin-bottom: 21.5384615385vw
}

.mobile .menu .line {
    background: #b7b7b7;
    bottom: .25rem;
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .5s ease;
    width: 100%
}

@media screen and (min-width:750px) {
    .mobile .menu .line {
        bottom: .5rem
    }
}

.mobile .menu-list {
    margin-bottom: 32.3076923077vw
}

.mobile .menu-item:first-child {
    margin-bottom: 10.7692307692vw
}

.mobile .menu-item.active .line {
    transform: scaleX(1)
}

.mobile .menu-link {
    color: #b7b7b7;
    color: var(--textPositive);
    display: inline-block;
    position: relative;
    text-decoration: none;
    text-transform: uppercase
}

.mobile .menu-link:hover .line {
    transform: scaleX(1);
    transform-origin: left
}

.mobile .menu-cta {
    background: none;
    border: 0;
    color: #b7b7b7;
    color: var(--textPositive);
    text-transform: uppercase
}

.mobile .footnote {
    display: block
}

.mobile .footnote:nth-child(2) {
    margin-bottom: .8rem
}

.footer {
    overflow: hidden;
    padding-bottom: 1.6rem;
    padding-top: 10.7692307692vw
}

@media screen and (min-width:750px) {
    .footer {
        min-height: 62.5vw;
        padding-bottom: 4.8rem;
        padding-top: 11.1111111111vw
    }
}

.footer .footer-container {
    display: flex;
    flex: 1;
    flex-direction: column;
    justify-content: space-between;
    margin-bottom: 1.6rem;
    position: relative
}

@media screen and (min-width:750px) {
    .footer .footer-container {
        margin-bottom: 2.4rem
    }
}

.footer .footer-block {
    width: 100%
}

@media screen and (min-width:750px) {
    .footer .footer-block {
        width: 50%
    }

    .footer .footer-block.block-1 {
        padding-right: 2.7777777778vw
    }

    .footer .footer-block.block-2 {
        padding-left: 2.7777777778vw
    }
}

.footer .footer-container {
    padding: 2rem 2.4rem
}

@media screen and (min-width:750px) {
    .footer .footer-container {
        padding: 2.4rem
    }
}

.footer .footer-bg {
    background: url(images/footer-bg.svg);
    background-size: cover;
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%
}

.footer .footer-content {
    display: flex;
    flex-direction: column;
    height: 100%
}

.footer .footer-inner {
    position: relative
}

.footer .footer-title {
    color: #b7b7b7;
    margin-bottom: 1.6rem;
    width: 43.0769230769vw
}

@media screen and (min-width:750px) {
    .footer .footer-title {
        margin-bottom: 8rem;
        width: 41.6666666667vw
    }
}

.footer .footer-asset {
    height: 64.6153846154vw;
    margin-bottom: 0;
    width: 100%
}

@media screen and (min-width:750px) {
    .footer .footer-asset {
        height: 27.7777777778vw;
        margin-bottom: 0;
        margin-left: auto;
        margin-right: 0;
        width: 41.6666666667vw
    }
}

.footer .-df {
    align-items: flex-start;
    margin-bottom: 2rem
}

@media screen and (min-width:750px) {
    .footer .-df {
        margin-bottom: 4rem
    }
}

.footer .footer-menu {
    margin-bottom: .8rem
}

@media screen and (min-width:750px) {
    .footer .footer-menu {
        margin-bottom: 4rem
    }
}

.footer .menu {
    display: flex;
    justify-content: space-between
}

@media screen and (min-width:750px) {
    .footer .menu {
        justify-content: flex-start
    }

    .footer .menu-nav {
        margin-right: 2.7777777778vw;
        width: 16.6666666667vw
    }
}

.footer .menu-item:first-child {
    margin-bottom: 2.4rem
}

@media screen and (min-width:750px) {
    .footer .menu-item:first-child {
        margin-bottom: 3.2rem
    }
}

.footer .menu-item.active .line {
    transform: scaleX(1)
}

.footer .menu-link {
    color: #b7b7b7;
    display: inline-block;
    position: relative;
    text-decoration: none
}

.footer .menu-link:hover .line {
    transform: scaleX(1);
    transform-origin: left
}

.footer .line {
    background: #b7b7b7;
    bottom: .15rem;
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .5s ease;
    width: 100%
}

@media screen and (min-width:750px) {
    .footer .line {
        bottom: .25rem
    }
}

.footer .menu-cta {
    align-items: center;
    border: 2px solid #878787;
    border-radius: 3.2rem;
    display: flex;
    height: 4.8rem;
    justify-content: center;
    margin-top: -1.4rem;
    width: 14rem
}

@media screen and (min-width:750px) {
    .footer .menu-cta {
        height: 3.8888888889vw;
        margin-top: 0;
        width: 13.8888888889vw
    }
}

.footer .footer-footnote {
    color: #b7b7b7;
    display: flex
}

.footer .footer-footnote a {
    color: #b7b7b7;
    text-decoration: none
}

.footer .footnote-item {
    width: 50%
}

@media screen and (min-width:750px) {
    .footer .footnote-item {
        width: 13.8888888889vw
    }
}

.footer .footnote-item .-p {
    max-width: 12rem
}

@media screen and (min-width:750px) {
    .footer .footnote-item.footnote-1 {
        margin-right: 36.1111111111vw
    }
}

.footer .footnote-item.footnote-2 {
    text-align: right
}

@media screen and (min-width:750px) {
    .footer .footnote-item.footnote-2 {
        text-align: left
    }
}

.footer .footnote-item.footnote-2 .-p {
    margin-left: auto;
    margin-right: 0
}

@media screen and (min-width:750px) {
    .footer .footnote-item.footnote-2 .-p {
        margin-left: 0
    }
}

.footer .footer-logo {
    height: 4.1025641026vw;
    width: 100%
}

@media screen and (min-width:750px) {
    .footer .footer-logo {
        display: block;
        height: 4.0972222222vw
    }
}