@font-face{font-family:TWK Lausanne;src:url(/fonts/TWKLausanne-550.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}:root{--color-bg: #0b0b0a;--color-text: #f3f3f3;--color-text-dim: rgba(243, 241, 235, .6);--color-accent: #d8572a;--font-display: "TWK Lausanne", serif;--font-mono: "TWK Lausanne", sans-serif}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-mono);overflow-x:hidden}a{color:inherit;text-decoration:none}#app{position:relative;width:100%;height:100vh;height:100dvh;overflow:hidden}.bg-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}.bg-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(180deg,#0b0b0a8c,#0b0b0a26 30%,#0b0b0a40 70%,#0b0b0abf);pointer-events:none}.site-header{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;align-items:center;justify-content:flex-end;padding:2rem clamp(1.5rem,4vw,3rem)}.hero-logo{position:absolute;top:50%;left:clamp(1.5rem,5vw,4rem);transform:translateY(-50%);z-index:10}.hero-logo img{display:block;width:clamp(260px,32vw,560px);height:auto}.menu-toggle{position:relative;width:44px;height:44px;background:transparent;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:7px}.menu-toggle-line{display:block;height:1px;background:var(--color-text);width:28px;transition:transform .4s cubic-bezier(.65,0,.35,1),width .3s ease,opacity .3s ease}.menu-toggle:hover .menu-toggle-line{width:34px}.menu-toggle[aria-expanded=true] .menu-toggle-line:nth-child(1){transform:translateY(4px) rotate(45deg);width:28px}.menu-toggle[aria-expanded=true] .menu-toggle-line:nth-child(2){transform:translateY(-4px) rotate(-45deg);width:28px}.scroll-cue{position:absolute;bottom:2.25rem;right:clamp(1.5rem,4vw,3rem);z-index:10;display:flex;align-items:center;gap:.9rem;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-dim)}.scroll-line{width:1px;height:34px;background:linear-gradient(180deg,var(--color-text-dim),transparent);animation:scroll-pulse 2.2s ease-in-out infinite}@keyframes scroll-pulse{0%,to{opacity:.3}50%{opacity:1}}.fullscreen-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#0b0b0af7;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:0 clamp(1.5rem,4vw,4rem);visibility:hidden;opacity:0;transition:opacity .5s ease,visibility .5s}.fullscreen-menu.is-open{visibility:visible;opacity:1}.menu-list{list-style:none}.menu-list li{overflow:hidden}.menu-list a{display:inline-block;font-family:var(--font-display);font-size:clamp(2.2rem,6vw,4.5rem);font-weight:400;line-height:1.35;color:var(--color-text);transform:translateY(110%);transition:transform .6s cubic-bezier(.16,1,.3,1),color .3s ease;transition-delay:calc(var(--i) * 70ms)}.fullscreen-menu.is-open .menu-list a{transform:translateY(0)}.menu-list a:hover{color:var(--color-accent)}.menu-footer{position:absolute;bottom:2.5rem;left:clamp(1.5rem,4vw,4rem);right:clamp(1.5rem,4vw,4rem);display:flex;justify-content:space-between;font-size:.8rem;color:var(--color-text-dim);letter-spacing:.04em;opacity:0;transition:opacity .5s ease .3s}.fullscreen-menu.is-open .menu-footer{opacity:1}@media (prefers-reduced-motion: reduce){.scroll-line{animation:none}.menu-list a,.menu-toggle-line,.fullscreen-menu,.menu-footer{transition:none}}@media (max-width: 640px){.scroll-cue{display:none}}
