:root{--bg: #fdfdfc;--text: #21201c;--muted: #63635e;--hover-bg: #f5f4f4;--ease-out: cubic-bezier(.23, 1, .32, 1)}@media(prefers-color-scheme:dark){:root{--bg: #111110;--text: #eeeeec;--muted: #b5b3ad;--hover-bg: #191918}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}.dm-mono-light{font-family:DM Mono,monospace;font-weight:300;font-style:normal}.dm-mono-regular{font-family:DM Mono,monospace;font-weight:400;font-style:normal}.dm-mono-medium{font-family:DM Mono,monospace;font-weight:500;font-style:normal}.dm-mono-light-italic{font-family:DM Mono,monospace;font-weight:300;font-style:italic}.dm-mono-regular-italic{font-family:DM Mono,monospace;font-weight:400;font-style:italic}.dm-mono-medium-italic{font-family:DM Mono,monospace;font-weight:500;font-style:italic}html{font-size:16px;scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}.root{max-width:692px;margin:0 auto;padding:3rem 1.5rem;overflow-x:hidden}@media(min-width:640px){.root{padding-top:8rem;padding-bottom:8rem}}@media(min-width:768px){.root{padding-top:4rem;padding-bottom:4rem;overflow-x:visible}}header{margin-bottom:8rem;display:flex;flex-direction:column;align-items:flex-start}header a{font-weight:500;text-decoration:none;color:var(--text)}.subtitle{font-weight:500;line-height:1;color:var(--muted)}.label{display:block;font-weight:500;color:var(--text);margin-bottom:1.25rem}@media(min-width:640px){.label{margin-bottom:1rem}}.bio{color:var(--muted);text-wrap:pretty}.bio+.bio{margin-top:1rem}.bio-emphasis{color:var(--text)}.bio-link{color:inherit;text-decoration:underline;text-decoration-color:#4d39fc;text-underline-offset:2px}@media(hover:hover)and (pointer:fine){.bio-link:hover{opacity:.75}}.now-playing-dot{display:inline-block;width:6px;height:6px;margin-right:.4em;border-radius:50%;background:#4d39fc;vertical-align:middle;animation:now-playing-pulse 1.6s ease-in-out infinite}@keyframes now-playing-pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.now-playing-skeleton{display:inline-block;height:12px;border-radius:48px;vertical-align:middle;background:#d9d9d9}@media(prefers-color-scheme:dark){.now-playing-skeleton{background:#3a3a3c}}@media(prefers-reduced-motion:reduce){.now-playing-dot{animation:none;opacity:.8}}.section{margin-top:4rem;margin-bottom:-.75rem}@media(min-width:640px){.section{margin-top:8rem}}.item-list{display:flex;flex-direction:column;gap:1.75rem}@media(min-width:640px){.item-list{gap:1rem}}.item{display:flex;flex-direction:column;margin-left:-.75rem;margin-right:-.75rem;padding-left:.75rem;padding-right:.75rem;border-radius:6px;text-decoration:none;color:var(--text);transition:background-color .15s var(--ease-out),transform .1s var(--ease-out)}.item:active{transform:scale(.99)}@media(min-width:640px){.item{padding-top:.75rem;padding-bottom:.75rem}}@media(hover:hover)and (pointer:fine){.item:hover{background-color:var(--hover-bg)}}.item-name{color:var(--text)}.item-desc{color:var(--muted);text-wrap:pretty}a:focus-visible,.item:focus-visible,.msg-email:focus-visible,.msg-input:focus-visible{outline:2px solid #4d39fc;outline-offset:2px}.chat-bbl:focus-visible,.msg-send:focus-visible,.consent-btn--accept:focus-visible{outline:2px solid #4d39fc;outline-offset:2px}.consent-btn--reject:focus-visible{outline:2px solid #cf2f42;outline-offset:2px;background:#cf2f4214}.consent-btn.no-auto-ring:focus-visible{outline:none}header{transition-delay:0ms}.bio-block{transition-delay:60ms}.section{transition-delay:.12s}header,.bio-block,.section{opacity:1;transform:translateY(0);transition:opacity .4s var(--ease-out),transform .4s var(--ease-out)}@starting-style{header,.bio-block,.section{opacity:0;transform:translateY(10px)}}.bio-block,.section{filter:blur(8px);transition:filter .3s var(--ease-out)}body.consented .bio-block,body.consented .section,html.pre-consented .bio-block,html.pre-consented .section{filter:blur(0px)}@media(prefers-reduced-motion:reduce){header,.bio-block,.section{transition:opacity .2s ease;transform:none}}:root{--bubble-bg: #E5E5EA;--bubble-text: #000;--bubble-typing-bg: #605E6B;--bubble-fade-dur: .4s}@media(prefers-color-scheme:dark){:root{--bubble-bg: #3a3a3c;--bubble-text: #fff}}.chat{position:fixed;bottom:2.5rem;left:2rem;z-index:100;opacity:0;transform:translateY(10px)}.chat.consented{animation:chat-appear .35s var(--ease-out) 1.4s forwards}.chat.consented.restored{animation:chat-appear .2s var(--ease-out) forwards}@keyframes chat-appear{to{opacity:1;transform:translateY(0)}}.chat-inner{position:relative;height:200px;width:300px}.chat-wrap{position:absolute;bottom:0;left:0}.chat-wrap--sent{left:auto;right:0}#wrap-2,#wrap-3{opacity:0;pointer-events:none}#wrap-1{z-index:3}#wrap-2{z-index:2}#wrap-3{z-index:1}.chat-bbl{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;vertical-align:bottom;overflow:hidden;border-radius:18px;z-index:1;background:var(--bubble-bg);position:relative;font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:15px;color:var(--bubble-text);line-height:1.3;white-space:nowrap}.bbl-tail{position:absolute;pointer-events:none;transition:filter .1s ease}.bbl-tail.xfade{filter:blur(1.5px)}.bbl-tail path{fill:var(--bubble-bg)}.chat-bbl--sent{background:#5340ff;color:#fff}.chat-wrap--sent .bbl-tail{left:auto;transform:scaleX(-1)}.chat-wrap--sent .bbl-tail--msg,.chat-wrap--sent .bbl-tail--typ{right:-8px}.chat-wrap--sent .bbl-tail path{fill:#5340ff}#bbl-1{background:var(--bubble-typing-bg);transition:background-color var(--bubble-fade-dur) ease}#bbl-1.color-fade{background:var(--bubble-bg)}#wrap-1 .bbl-tail path{fill:var(--bubble-typing-bg);transition:fill var(--bubble-fade-dur) ease}#wrap-1.color-fade .bbl-tail path{fill:var(--bubble-bg)}.bbl-tail--msg{width:28px;height:20px;left:-8px;bottom:-1px;opacity:0}.bbl-tail--typ{width:29px;height:24px;left:-8px;bottom:-5px}.bbl-dots{display:flex;align-items:center;gap:4px}.bbl-text{display:none}.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;opacity:.4;animation:blink 1s infinite}.dot:nth-child(1){animation-delay:.3333s;background:#9e9ea1}.dot:nth-child(2){animation-delay:.6667s;background:#7f7f82}.dot:nth-child(3){animation-delay:1s;background:#afafb3}#bbl-1 .dot:nth-child(1){background:#dcd8ff}#bbl-1 .dot:nth-child(2){background:#c4bdff}#bbl-1 .dot:nth-child(3){background:#f0edff}@keyframes blink{50%{opacity:1}}@media(prefers-reduced-motion:reduce){.dot{animation-duration:2s}}.msg-panel{position:fixed;bottom:2.5rem;left:50%;transform:translate(-50%) translateY(calc(100% + 4rem));z-index:200;width:min(692px,calc(100vw - 3rem));opacity:0;pointer-events:none;transition:transform .4s cubic-bezier(.23,1,.32,1),opacity .28s ease}.msg-panel.open{transform:translate(-50%) translateY(0);opacity:1;pointer-events:auto}.msg-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:8px;display:flex;flex-direction:column;box-shadow:0 4px 24px #0000000f}@media(prefers-color-scheme:dark){.msg-card{background:var(--hover-bg);border-color:#ffffff14;box-shadow:0 4px 24px #0000004d}}.msg-email{font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.5;color:var(--text);background:transparent;border:none;border-bottom:1px solid rgba(0,0,0,.08);border-radius:8px;outline:none;width:100%;padding:10px 16px;display:block}.msg-email::placeholder{color:var(--muted)}@media(prefers-color-scheme:dark){.msg-email{border-bottom-color:#ffffff14}}.msg-input{font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.5;color:var(--text);background:transparent;border:none;border-radius:8px;outline:none;resize:none;width:100%;padding:12px 16px 8px;margin-bottom:6px;min-height:52px;max-height:160px;overflow-y:auto;display:block}.msg-input::placeholder{color:var(--muted)}.msg-footer{display:flex;align-items:center;justify-content:flex-end;padding:0 2px 2px}.msg-send{width:36px;height:36px;border-radius:50%;border:none;background:silver;color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:default;transition:background .15s ease,opacity .15s ease,transform .1s ease}.msg-send:not([disabled]){background:var(--text);cursor:pointer}.msg-send:not([disabled]):hover{opacity:.8}.msg-send:not([disabled]):active{transform:scale(.94)}.chat-bbl.message{cursor:pointer}.consent-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;align-items:flex-end;justify-content:flex-end;padding:2rem;background:#00000059;opacity:1;transition:opacity .18s ease-out,background-color .18s ease-out}.consent-modal.dismissed,html.pre-consented .consent-modal{opacity:0;background:transparent;pointer-events:none}.consent-card{background:#fff;border-radius:16px;box-shadow:inset 0 0 0 1px #0000000d,0 4px 24px #0000000f;padding:2.25rem;max-width:766px;width:100%;display:flex;align-items:flex-end;gap:1.5rem;transform-origin:bottom right;opacity:1;transform:scale(1);transition:opacity .3s var(--ease-out),transform .3s var(--ease-out)}@starting-style{.consent-card{opacity:0;transform:scale(.95)}}@media(prefers-color-scheme:dark){.consent-card{background:var(--hover-bg);box-shadow:inset 0 0 0 1px #ffffff14,0 4px 24px #0000004d}}.consent-text{flex:1 0 0;min-width:0;padding-bottom:.75rem}.consent-text p{font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;line-height:1.3;letter-spacing:-.01em;color:var(--text);text-wrap:pretty}.consent-text p+p{margin-top:1rem}.consent-actions{display:flex;align-items:center;gap:1.5rem;flex-shrink:0}.consent-btn{font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;line-height:1.3;letter-spacing:-.01em;border:none;border-radius:48px;padding:.75rem 1rem;cursor:pointer;white-space:nowrap;transition:background-color .15s ease,transform .1s ease-out}.consent-btn--reject{background:transparent;color:#cf2f42}.consent-btn--accept{background:#4d39fc14;color:#4d39fc}@media(hover:hover)and (pointer:fine){.consent-btn--reject:hover{background:#cf2f4214}.consent-btn--accept:hover{background:#4d39fc29}}.consent-btn--reject:active{background:#cf2f4229;transform:translateY(1px)}.consent-btn--accept:active{background:#4d39fc3d;transform:translateY(1px)}@media(max-width:640px){.consent-modal{align-items:flex-end;justify-content:center;padding:1rem}.consent-card{flex-direction:column;align-items:stretch;gap:1.25rem;padding:1.5rem;transform-origin:bottom center}.consent-actions{justify-content:flex-end}}@media(prefers-reduced-motion:reduce){.consent-card{transition:opacity .2s ease;transform:none!important}}
