@font-face{font-family:Sora;src:url(fuentes/sora-300.woff2) format("woff2");font-weight:300;font-display:swap}
@font-face{font-family:"Zilla Slab";src:url(fuentes/zilla-slab-600.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(fuentes/plex-mono-400.woff2) format("woff2");font-weight:400;font-display:swap}
:root{--burdeo:#8B2635;--claro:#fbf8f5}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{background:var(--burdeo);color:var(--claro);font-family:"IBM Plex Mono",ui-monospace,monospace;overflow:hidden;-webkit-font-smoothing:antialiased;
  background-image:radial-gradient(ellipse at 50% 42%,#9b2e3f 0,transparent 65%)}
.cielo{position:fixed;inset:0;pointer-events:none;overflow:hidden}
.ave,.llegada{position:absolute;left:0;top:0;color:var(--claro);will-change:transform;transform:translate(-200px,-200px)}
.logo .iso{overflow:visible}
.red{position:absolute;inset:0;width:100%;height:100%}
.red .nodo{fill:var(--claro);opacity:.3}
.red .nodo.suelto{opacity:.2}
.red .pulso{fill:none;stroke:var(--claro);stroke-width:1}
.red .con{stroke:var(--claro);stroke-width:.7;opacity:.05}
.red .con.al-arbol{opacity:.08}
.red .con.en-arbol{stroke-width:.8;opacity:.13}
.red .pulso{fill:none;stroke:var(--claro);stroke-width:1}
.red .enlace{stroke:var(--claro);stroke-width:1;opacity:0}
.llegada{position:fixed;z-index:2}
.ave svg,.llegada svg{display:block}
main{position:relative;z-index:1;min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px 96px}
.logo{display:inline-flex;align-items:center;gap:.45em;font-size:clamp(40px,7vw,72px);animation:llega 1.2s cubic-bezier(.2,.7,.2,1) both}
.logo .iso{height:1.15em;width:auto}
.logo .wm{font-family:Sora,sans-serif;font-weight:300;letter-spacing:.14em;line-height:1}
@keyframes llega{from{opacity:0;transform:translateY(12px)}}
.estado{margin-top:40px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;display:inline-flex;align-items:center;gap:10px;border:1px solid #ffffff55;padding:8px 14px}
.punto{width:7px;height:7px;background:var(--claro);animation:late 1.6s ease-in-out infinite}
@keyframes late{50%{opacity:.25}}
h1{font-family:"Zilla Slab",Georgia,serif;font-weight:600;font-size:clamp(22px,2.6vw,34px);line-height:1.2;margin-top:28px;max-width:40ch;text-wrap:balance}
.contacto{margin-top:32px;color:var(--claro);font-size:15px;letter-spacing:.04em;text-decoration:none;border-bottom:1px solid #ffffff88;padding-bottom:3px}
.contacto:hover,.contacto:focus-visible{border-bottom-color:var(--claro)}
.contacto:focus-visible{outline:2px solid var(--claro);outline-offset:6px}
.beta{margin-top:40px;font-size:12.5px;letter-spacing:.03em}
.beta summary{cursor:pointer;list-style:none;opacity:.8;border-bottom:1px solid #ffffff40;padding-bottom:2px;display:inline-block}
.beta summary::-webkit-details-marker{display:none}
.beta summary:hover,.beta[open] summary{opacity:1}
.beta summary:focus-visible{outline:2px solid var(--claro);outline-offset:4px}
.beta form{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;flex-wrap:wrap}
.beta label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.beta input{font:inherit;font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--claro);background:#ffffff14;border:1px solid #ffffff66;padding:11px 14px;min-height:44px;width:200px}
.beta input::placeholder{color:#ffffff88}
.beta input:focus{outline:2px solid var(--claro);outline-offset:1px}
.beta button{font:inherit;font-size:14px;background:var(--claro);color:var(--burdeo);border:0;padding:12px 18px;min-height:44px;cursor:pointer}
.beta button:hover{background:#fff}
.aviso{margin-top:14px;font-size:13px;background:#ffffff1f;padding:10px 14px;display:inline-block}
.aviso[hidden]{display:none}
footer{position:fixed;bottom:20px;left:0;right:0;text-align:center;font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.7}
@media (min-width:1180px){h1{max-width:none;white-space:nowrap}}
@media (prefers-reduced-motion:reduce){
  .punto,.logo{animation:none}
}
