:root{color-scheme:dark;font-family:Inter,"Helvetica Neue",Helvetica,Arial,sans-serif;background:#080808;color:#f5f5f5}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{min-height:100svh;background:#080808}.fluid{position:fixed;inset:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at center,#101010 0,#080808 60%,#050505 100%)}.fluid-art{width:100%;height:100%;display:block}.wave{transform-origin:center;animation:drift 17s ease-in-out infinite alternate}.wave-bottom{animation-duration:21s;animation-direction:alternate-reverse}@keyframes drift{from{transform:translate3d(-1%,0,0) scale(1.015)}to{transform:translate3d(1.2%,1%,0) scale(1.04)}}.page{position:relative;min-height:100svh;display:flex;flex-direction:column;padding:38px 4.2% 30px}header,footer{display:flex;align-items:center;justify-content:space-between}.brand{font-size:25px;letter-spacing:-1.4px;font-weight:700;text-decoration:none;color:#f7f7f7}.brand span{color:#a1a1a1}main{flex:1;display:grid;place-items:center;text-align:center;padding:80px 0}.hero{max-width:1100px}h1{font-size:clamp(3.2rem,6.3vw,6.7rem);line-height:1.04;letter-spacing:-.065em;font-weight:600;margin:0 0 27px}h1 span{letter-spacing:-.08em}p{color:#b5b5b5;font-size:clamp(.93rem,1.2vw,1.05rem);line-height:1.8;margin:0}a{color:inherit}p a{color:#f1f1f1;text-decoration-color:#777;text-underline-offset:5px;white-space:nowrap}a:hover{color:#fff;text-decoration-color:#fff}a:focus-visible{outline:2px solid #fff;outline-offset:5px}footer{font-size:12px;color:#aaa;letter-spacing:.02em}footer a{text-decoration:none;color:#ccc}footer a span,p a span{display:inline-block;transition:transform .2s}footer a:hover span,p a:hover span{transform:translate(3px,-3px)}.mobile-break{display:none}.legal-page{max-width:760px;margin:auto;padding:80px 0 100px}.legal-page h1{font-size:clamp(3rem,7vw,5rem);margin-bottom:55px}.legal-page h2{font-size:1.15rem;letter-spacing:-.02em;margin:40px 0 12px}.legal-page p{margin:0 0 20px}.legal-page a{overflow-wrap:anywhere}.legal-main{display:block}.back{font-size:13px;color:#ccc;text-decoration:none}.legal-background .fluid-art{opacity:.32}@media(max-width:600px){.page{padding:26px 24px 24px}.brand{font-size:22px}main{padding:80px 0}.mobile-break{display:block}.desktop-break{display:none}h1{font-size:clamp(3.1rem,11vw,4.7rem);line-height:1.07;margin-bottom:24px}p{font-size:.94rem;line-height:1.7}.fluid-art{width:150%;margin-left:-25%}footer{font-size:11px}.legal-page{padding:65px 0 80px}.legal-page h1{margin-bottom:40px}}@media(prefers-reduced-motion:reduce){.wave{animation:none}*{scroll-behavior:auto!important;transition:none!important}}

/* The highlights and contours move at different speeds to give the metal a fluid feel. */
.wave-top{transform-origin:50% 0;animation:flow-top 13s ease-in-out infinite alternate}
.wave-bottom{transform-origin:50% 100%;animation:flow-bottom 16s ease-in-out infinite alternate}
.wave path:nth-child(2){animation:highlight 5s ease-in-out infinite alternate}
.wave-bottom path:nth-child(2){animation-delay:-2.5s}
@keyframes flow-top{
  0%{transform:translate(-2%, -1%) scale(1.04,1)}
  50%{transform:translate(1%, 2%) scale(1.09,1.13) skewX(-3deg)}
  100%{transform:translate(2%, -1%) scale(1.04,.96) skewX(2deg)}
}
@keyframes flow-bottom{
  0%{transform:translate(2%, 1%) scale(1.05,1)}
  50%{transform:translate(-1%, -2%) scale(1.1,1.12) skewX(3deg)}
  100%{transform:translate(-2%, 1%) scale(1.05,.97) skewX(-2deg)}
}
@keyframes highlight{from{opacity:.35}to{opacity:1}}

/* A narrow band of light passes through the outlined headline. */
.hero h1{
  color:#f5f5f5;
  background:linear-gradient(105deg,#f1f1f1 0%,#f1f1f1 36%,#9b9b9b 43%,#fff 49%,#aaa 55%,#f1f1f1 62%,#f1f1f1 100%);
  background-size:250% 100%;
  background-position:100% 0;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  -webkit-text-stroke:.3px rgba(255,255,255,.35);
  animation:text-shimmer 8s ease-in-out infinite;
}
@keyframes text-shimmer{
  0%,12%{background-position:100% 0;filter:drop-shadow(0 0 0 transparent)}
  48%{filter:drop-shadow(0 0 8px rgba(255,255,255,.16))}
  75%,100%{background-position:0 0;filter:drop-shadow(0 0 0 transparent)}
}
@media(prefers-reduced-motion:reduce){
  .wave,.wave path:nth-child(2),.hero h1{animation:none}
  .hero h1{background:none;-webkit-text-fill-color:currentColor;filter:none}
}
