:root{color-scheme:light;--paper:#f8f7f2;--ink:#111;--muted:#6e6d68;--line:#deddd7}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Helvetica Neue",sans-serif}main{width:min(760px,calc(100% - 40px));margin:0 auto;padding:64px 0 96px}.brand{font-size:12px;letter-spacing:.22em;color:var(--muted);margin-bottom:34px}h1{font-size:clamp(38px,8vw,64px);font-weight:400;letter-spacing:-.04em;line-height:1.02;margin:0 0 48px}h2{font-size:20px;font-weight:600;margin:42px 0 8px}p,li{color:#34332f}a{color:inherit;text-underline-offset:3px}.meta{padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted)}nav{display:flex;gap:18px;flex-wrap:wrap;margin-top:56px;font-size:14px}footer{margin-top:64px;color:var(--muted);font-size:13px}.en{margin-top:72px;padding-top:54px;border-top:1px solid var(--line)}

.landing{color-scheme:dark;background:#000;color:#f5f3ed;min-height:100vh;overflow:hidden}.landing .landing-shell{position:relative;z-index:2;width:100%;min-height:100svh;margin:0;padding:0 42px;display:grid;grid-template-rows:auto 1fr auto}.landing-mark{width:34px;height:34px;margin:38px auto 0;border:1.5px solid rgba(245,243,237,.92);border-radius:50%;display:grid;place-items:center}.landing-mark span{width:14px;height:14px;border:1px solid rgba(245,243,237,.75);border-radius:50%}.landing-title{align-self:center;text-align:center;padding:70px 0}.landing-title h1{margin:0;color:#f5f3ed;font-size:clamp(54px,12vw,142px);font-weight:200;letter-spacing:.08em;line-height:.9;text-shadow:0 2px 30px #000}.landing-title p{margin:30px 0 0;color:rgba(245,243,237,.5);font-size:clamp(13px,2vw,17px);font-weight:300;letter-spacing:.02em}.landing-footer{width:100%;margin:0;padding:25px 0 34px;border-top:1px solid rgba(255,255,255,.14);display:flex;align-items:center;justify-content:space-between;gap:28px;color:rgba(245,243,237,.42)}.landing-footer nav{margin:0;gap:24px;font-size:11px;letter-spacing:.04em}.landing-footer a{color:rgba(245,243,237,.62);text-decoration:none}.landing-footer a:hover{color:#f5f3ed}.landing-footer p{margin:0;color:inherit;font-size:10px;white-space:nowrap}.landing-visuals{position:fixed;z-index:0;inset:0;overflow:hidden;pointer-events:none;background:#000}.landing-photo{position:absolute;margin:0;overflow:hidden;opacity:0;filter:grayscale(1) contrast(1.05);will-change:transform,opacity;-webkit-mask-image:radial-gradient(ellipse at center,#000 38%,transparent 76%);mask-image:radial-gradient(ellipse at center,#000 38%,transparent 76%)}.landing-photo img{width:100%;height:100%;object-fit:cover}.photo-concrete{width:min(29vw,430px);height:62vh;left:-2vw;top:11vh;animation:passage-photo-a 24s ease-in-out infinite}.photo-waiting{width:min(22vw,330px);height:46vh;right:5vw;top:4vh;animation:passage-photo-b 27s ease-in-out 5s infinite}.photo-cyclist{width:min(27vw,400px);height:49vh;right:-1vw;bottom:-3vh;animation:passage-photo-c 25s ease-in-out 11s infinite}.landing-veil{position:absolute;inset:0;background:radial-gradient(circle at 50% 48%,rgba(0,0,0,.28),rgba(0,0,0,.72) 46%,rgba(0,0,0,.94) 100%)}@keyframes passage-photo-a{0%,100%{opacity:.04;transform:translate3d(-14px,12px,0) scale(1.03)}18%,64%{opacity:.26;transform:translate3d(8px,-7px,0) scale(1.08)}82%{opacity:.08}}@keyframes passage-photo-b{0%,100%{opacity:0;transform:translate3d(12px,-10px,0) scale(1.08)}22%,68%{opacity:.20;transform:translate3d(-8px,12px,0) scale(1.03)}84%{opacity:.05}}@keyframes passage-photo-c{0%,100%{opacity:0;transform:translate3d(18px,15px,0) scale(1.04)}20%,66%{opacity:.23;transform:translate3d(-10px,-8px,0) scale(1.09)}86%{opacity:.04}}@media(max-width:700px){.landing .landing-shell{padding:0 24px}.landing-mark{margin-top:28px}.landing-title h1{font-size:clamp(45px,15vw,72px);letter-spacing:.055em}.landing-footer{align-items:flex-start;flex-direction:column;padding-bottom:26px}.landing-footer nav{display:grid;grid-template-columns:1fr 1fr;gap:11px 24px}.landing-footer p{margin-top:8px}.photo-concrete{width:60vw;height:50vh;left:-22vw;top:14vh}.photo-waiting{display:none}.photo-cyclist{width:58vw;height:44vh;right:-22vw;bottom:10vh}.landing-veil{background:radial-gradient(circle at 50% 47%,rgba(0,0,0,.38),rgba(0,0,0,.86) 70%)}}

.landing .landing-mark{display:block;width:38px;height:38px;margin:36px auto 0;border:0;filter:invert(1);opacity:.94}.landing-title .landing-overline{margin:0 0 28px;color:#9280b9;font:500 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.22em}.landing-title>p:not(.landing-overline){margin-top:30px}.landing-enter{display:inline-flex;align-items:center;gap:32px;margin-top:48px;padding:13px 18px 13px 22px;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:#f5f3ed;text-decoration:none;font-size:12px;transition:background .25s,color .25s}.landing-enter:hover{background:#f5f3ed;color:#000000}
.landing-title h1{min-height:2.7em;display:flex;align-items:center;justify-content:center;transition:opacity .36s ease,font-size .38s ease,letter-spacing .38s ease}.landing-title h1 .typing-content{display:inline;white-space:pre-line}.landing-title h1.is-brand{font-size:clamp(36px,5.7vw,68px);letter-spacing:.075em}.landing-title h1.is-thought{font-size:clamp(28px,4.4vw,52px);letter-spacing:-.018em;line-height:1.12}.landing-title h1 i{display:inline-block;width:1px;height:.78em;margin-left:.09em;vertical-align:-.06em;background:currentColor;opacity:.65;animation:passage-cursor 1s steps(1,end) infinite}.landing-title h1.is-brand i{display:none}@keyframes passage-cursor{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.landing-title h1{transition:none}.landing-title h1 i{display:none}.landing-photo{animation:none;transform:none}.photo-concrete{opacity:.15}.photo-waiting{opacity:.1}.photo-cyclist{opacity:.12}}
.landing-language{position:absolute;right:42px;top:38px;margin:0;display:flex;gap:12px}.landing-language button{padding:0;border:0;background:none;color:rgba(245,243,237,.35);font:500 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;cursor:pointer}.landing-language button.active{color:#f5f3ed}.landing-actions{margin:45px auto 0;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.landing-actions a{display:inline-flex;align-items:center;gap:24px;padding:12px 16px;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:rgba(245,243,237,.72);text-decoration:none;font-size:11px;transition:.25s ease}.landing-actions a:first-child{background:#f5f3ed;color:#000000;border-color:#f5f3ed}.landing-actions a:hover{border-color:rgba(255,255,255,.5);color:#f5f3ed}.landing-actions a:first-child:hover{color:#000000}.landing-actions span{font-size:13px}@media(max-width:700px){.landing-language{right:24px;top:30px}.landing-actions{max-width:300px}.landing-actions a{width:100%;justify-content:space-between}.landing-title{padding:35px 0}.landing-footer nav{grid-template-columns:1fr 1fr}}

.landing-header{height:84px;padding-bottom:4px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.14);font:500 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.16em}.landing-header a{color:inherit;text-decoration:none}.landing-brand{min-height:30px;display:flex;align-items:center;gap:12px}.landing-brand img{display:block;width:26px;height:26px}.landing-brand b{font:inherit}.landing-header>nav{min-height:30px;display:flex;align-items:center;gap:24px}.landing-header>nav>a{min-height:30px;display:flex;align-items:center;color:rgba(245,243,237,.55);transition:color .2s ease}.landing-header>nav>a:hover{color:#f5f3ed}.landing-header .landing-language{position:static;min-height:30px;display:flex;align-items:center;gap:8px;padding-left:20px;border-left:1px solid rgba(255,255,255,.14)}.landing-header .landing-language i{color:rgba(255,255,255,.18);font-style:normal}.landing-header .landing-language button{line-height:30px;letter-spacing:.12em}.landing-header .landing-language button.active{color:#f5f3ed}@media(max-width:700px){.landing-header{height:72px;padding-bottom:3px}.landing-brand b{display:none}.landing-header>nav{gap:16px}.landing-header .landing-language{padding-left:14px}.landing-title h1.is-brand{font-size:clamp(34px,11vw,52px)}.landing-title h1.is-thought{font-size:clamp(27px,8.5vw,42px)}}
.landing .landing-header>nav{margin:0;flex-wrap:nowrap;font:inherit}
