:root{--bg: #0b0b0c;--ink: #f3f1ea;--ink-soft: #9a958c}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}.stage-wrap{position:fixed;inset:0;overflow:hidden}#stage{position:absolute;inset:0;width:100%;height:100%;display:block}.word,.contact{position:absolute;z-index:2;font-family:"Instrument Serif",Georgia,serif}.word{top:28px;left:32px;font-size:20px;letter-spacing:-.005em;pointer-events:none}.contact{top:30px;right:32px;padding:0;border:0;background:none;cursor:pointer;font-size:17px;color:var(--ink-soft);transition:color .2s ease}.contact:hover{color:var(--ink)}@media(max-width:600px){.word{top:20px;left:16px}.contact{top:22px;right:16px}}.contact-dialog{width:min(420px,calc(100% - 32px));padding:0;border:1px solid rgba(243,241,234,.2);border-radius:14px;background:#0e0f11f5;color:var(--ink)}.contact-dialog::backdrop{background:#0b0b0c8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.contact-form{position:relative;display:grid;gap:14px;padding:28px;font-family:system-ui,sans-serif}.contact-form h2{margin:0 0 4px;font-family:"Instrument Serif",Georgia,serif;font-weight:400;font-size:28px}.contact-form label{display:grid;gap:6px;font-size:13px;color:var(--ink-soft)}.contact-form input,.contact-form textarea{width:100%;padding:10px 12px;border:1px solid rgba(243,241,234,.18);border-radius:8px;background:#f3f1ea0a;color:var(--ink);font:inherit;font-size:15px;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:#f3f1ea80}.contact-form .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.contact-form .send{justify-self:start;padding:10px 20px;border:1px solid rgba(243,241,234,.4);border-radius:999px;background:none;color:var(--ink);font:inherit;font-size:14px;cursor:pointer}.contact-form .send:hover{border-color:var(--ink)}.contact-form .send:disabled{opacity:.5;cursor:default}.contact-form .close{position:absolute;top:14px;right:16px;border:0;background:none;color:var(--ink-soft);font-size:24px;line-height:1;cursor:pointer}.form-status{min-height:18px;margin:0;font-size:13px;color:var(--ink-soft)}.form-status[data-state=error]{color:#ffb4a2}.form-status[data-state=success]{color:#3fe0c0}
