@charset "UTF-8";
:root{color-scheme:dark;--bg:#100d17;--surface:#191320;--text:#f1edf7;--muted:#aba1b8;--purple:#b588ef;--line:#35293f;font-family:Arial,Helvetica,sans-serif;font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:2rem}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);line-height:1.6}body::before{content:"";position:absolute;inset:0 0 auto;height:1100px;background:radial-gradient(ellipse at 70% 30%,#6e349027,transparent 55%);pointer-events:none;z-index:-1}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:2px solid #d7b8ff;outline-offset:7px}::selection{background:#b588ef;color:#100d17}.site-shell{max-width:1440px;padding:0 7%;margin:auto}.header{min-height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.wordmark{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:700;letter-spacing:-1px}.brand-mark{display:grid;place-items:center;width:32px;height:34px;border:1px solid #9770b8;border-radius:9px 2px 9px 2px;color:#c59afa;font-size:22px}.wordmark-dot{color:var(--purple);margin-left:2px}nav{display:flex;gap:36px;font-size:14px;color:#cdc4d7}nav a:hover,.text-link:hover,footer a:hover{color:var(--purple)}nav a span{margin-left:7px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding:66px 0 74px}.eyebrow,.portrait-top,.portrait figcaption,.section-index{font-family:"Courier New",monospace;letter-spacing:1.5px;font-size:12px;font-weight:400}.eyebrow{color:var(--muted);display:flex;align-items:center;gap:12px;margin:0 0 30px}.small-line{width:25px;height:1px;background:var(--purple)}h1{font-size:clamp(64px,7.9vw,112px);font-weight:500;letter-spacing:-7px;line-height:1.01;margin:0 0 30px}h1>span{color:#c3a0ed}.title-dot{color:#824bba}.hero-subtitle{font-size:clamp(22px,2.2vw,30px);line-height:1.38;letter-spacing:-.6px;margin:0 0 24px}.hero-subtitle>span{color:var(--muted)}.intro{font-size:16px;color:var(--muted);line-height:1.8;margin:0 0 30px}.primary-link{display:inline-flex;align-items:center;gap:12px;padding:15px 22px;background:#bc92ed;color:#180d25;border:1px solid #cba5f4;border-radius:5px;font-size:14px;font-weight:700;transition:background .2s,transform .2s}.primary-link:hover{background:#d2aff8;transform:translateY(-2px)}.primary-link svg{width:19px;height:19px;fill:currentColor}.primary-link>span{font-size:20px;line-height:1;margin-left:16px}.text-link{display:flex;width:fit-content;align-items:center;gap:20px;color:var(--muted);font-size:14px;margin-top:23px}.portrait{margin:0;min-width:0;position:relative}.portrait::before{content:"";position:absolute;inset:28px -13px 46px 13px;border:1px solid #76529566;transform:rotate(2deg);z-index:-1}.portrait-top{display:flex;justify-content:space-between;gap:12px;color:#b39acb;letter-spacing:1px;margin-bottom:12px;font-size:12px}.portrait-top span:last-child{font-size:12px;color:#95899f}.portrait-image{position:relative;overflow:hidden;border:1px solid #75568b;border-radius:120px 5px 5px 5px;isolation:isolate;background:#211629;aspect-ratio:4/5}.portrait-image>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 25%;opacity:0;transition:opacity .45s ease,transform .8s ease}.portrait-image>img.is-active{opacity:1}.portrait-image:hover>img{transform:scale(1.025)}.portrait-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,#0e0a14e8 100%);pointer-events:none}.portrait-caption{position:absolute;z-index:1;bottom:25px;left:27px;right:25px;display:flex;justify-content:space-between;align-items:end;font-size:25px;line-height:1.25;letter-spacing:-.8px;text-shadow:0 2px 12px #000}.portrait-caption em{font-style:normal;color:#c6a0ee}.art-link{display:grid;place-items:center;width:44px;height:44px;border:1px solid #a18ab980;background:#21182f9c;border-radius:50%;font-size:24px;transition:background .2s}.art-link:hover{background:#79529b}.portrait figcaption{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px;letter-spacing:.1px;margin-top:18px}.mini-cross{color:var(--purple);font-size:19px;margin-right:6px}.about{padding:48px 0 60px;border-top:1px solid var(--line)}.section-index{display:flex;align-items:center;gap:28px;color:#ad8ccb}.index-line{height:1px;background:var(--line);flex:1}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:30px}h2{font-size:clamp(32px,4vw,49px);font-weight:400;letter-spacing:-2px;line-height:1.18;margin:0}.about h2 span{color:#93819f}.about-copy p{font-size:16px;line-height:1.8;color:var(--muted);margin:0 0 16px;max-width:460px}.interests{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.interests span{border:1px solid #44334f;border-radius:99px;padding:5px 15px;color:#c6b3d6;font-size:12px;letter-spacing:.4px}.outro{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:37px 32px;margin:0 0 50px;background:linear-gradient(110deg,#22182e,#19131f);border:1px solid #3e2b4f;border-radius:6px}.outro .eyebrow{margin-bottom:12px;font-size:12px;letter-spacing:1px}.outro h2{font-size:30px;letter-spacing:-1px}.profile-link{display:flex;align-items:center;justify-content:space-between;gap:35px;font-size:14px;white-space:nowrap;color:#d9b8fc}.profile-link>span:last-child{font-size:24px}.profile-link:hover>span:first-child{text-decoration:underline;text-underline-offset:5px}footer{padding:25px 0 32px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:24px;color:var(--muted);font-size:12px}footer p{margin:0}.footer-name{font-size:21px;letter-spacing:-1px;color:var(--text);font-weight:700}.footer-name span{color:var(--purple)}footer a:last-child span{margin-left:9px}.skip-link{position:fixed;top:12px;left:12px;padding:10px 18px;background:var(--purple);color:#100d17;transform:translateY(-200%);z-index:10}.skip-link:focus{transform:translateY(0)}
@media(min-width:1450px){.hero{padding-top:80px;padding-bottom:85px}.portrait-image{max-height:650px}.hero-copy{padding-bottom:20px}}
@media(max-width:1000px){.site-shell{padding:0 5%}.hero{gap:5%;padding-top:48px}h1{letter-spacing:-5px}.portrait-top{display:block}.portrait-top span:last-child{display:none}.portrait-caption{font-size:22px;left:20px;right:20px}.portrait-image{aspect-ratio:3/4}.portrait figcaption>span:last-child{display:none}.about-content{gap:5%}}
@media(max-width:700px){.header{min-height:85px}.site-shell{padding:0 6%}nav{gap:22px}.hero{grid-template-columns:1fr;gap:45px;padding:42px 0 45px}.eyebrow{margin-bottom:25px}h1{font-size:clamp(70px,16vw,108px);letter-spacing:-5px;margin-bottom:25px}.hero-subtitle{font-size:26px}.hero-subtitle br{display:none}.hero-subtitle br::after{content:" "}.hero-subtitle{max-width:320px}.hero-subtitle>span{display:block}.intro{margin-bottom:25px}.portrait{width:100%;max-width:470px;margin:auto}.portrait-top{display:flex}.portrait-top span:last-child{display:block;font-size:12px;letter-spacing:0}.portrait-image{aspect-ratio:4/5;border-top-left-radius:95px}.portrait-caption{font-size:27px}.portrait figcaption>span:last-child{display:block}.about{padding-top:32px;padding-bottom:40px}.section-index{font-size:12px;letter-spacing:1px;gap:15px}.about-content{grid-template-columns:1fr;gap:26px;padding-top:25px}.about h2{font-size:42px}.outro{align-items:start;flex-direction:column;padding:28px 22px;gap:25px;margin-bottom:32px}.outro h2{font-size:29px}.profile-link{width:100%}footer{flex-wrap:wrap;gap:16px}footer a:last-child{margin-left:auto}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* My Stuff collections */
.collections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0 0 60px}
.collection-card{min-width:0;padding:32px;background:linear-gradient(140deg,#251a32,var(--surface));border:1px solid #493257;border-radius:6px}
.collection-number{color:var(--purple);font:12px "Courier New",monospace;letter-spacing:1.5px}
.collection-card h3{font-size:clamp(26px,3vw,34px);font-weight:400;letter-spacing:-1px;line-height:1.2;margin:27px 0 12px}
.collection-card p{color:var(--muted);font-size:16px;line-height:1.7;margin:0 0 28px}
.collection-empty{padding-top:20px;border-top:1px solid var(--line);color:#baabc8;font-size:14px}
.collection-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.download-item{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px;padding:16px 0;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none;transition:color .2s}
.download-item:hover,.download-item:focus-visible{color:var(--purple)}
.download-name{font-size:17px}
.collection-wide{grid-column:1/-1}
.download-desc{display:block;margin-top:6px;color:var(--muted);font-size:14px;line-height:1.5}
.download-meta{color:var(--muted);font:12px "Courier New",monospace;letter-spacing:1px;white-space:nowrap}
@media(max-width:700px){.collections{grid-template-columns:1fr;gap:18px;margin-bottom:40px}.collection-card{padding:26px}}

/* Deiomo / Paige swap */
.hero-greeting{color:inherit}
.persona-swap{position:absolute;inset:0;z-index:1;display:block;width:100%;padding:0;border:0;border-radius:inherit;background:none;color:inherit;font:inherit;cursor:pointer}
.persona-swap[hidden]{display:none}
.persona-swap:focus-visible{outline:2px solid #d7b8ff;outline-offset:-6px}
.swap-chip{position:absolute;top:18px;right:18px;display:inline-flex;align-items:center;gap:8px;padding:7px 13px;border:1px solid #b588efb3;border-radius:99px;background:#1a1224cc;color:#e4d0ff;font:12px "Courier New",monospace;letter-spacing:1px;box-shadow:0 0 18px #b588ef40;backdrop-filter:blur(4px);transition:background .2s,box-shadow .2s}
.swap-chip>span{font:15px/1 Arial,Helvetica,sans-serif}
.persona-swap:hover .swap-chip,.persona-swap:focus-visible .swap-chip{background:#79529b;box-shadow:0 0 26px #b588ef80}
.portrait-caption{pointer-events:none}
.art-link{pointer-events:auto}
.swap-fade{animation:swap-fade .45s ease}
@keyframes swap-fade{from{opacity:0;transform:translateY(4px)}}
/* Smaller corner on narrower screens so it doesn't clip the lettering on Deiomo's art */
@media(max-width:1000px){.portrait-image{border-top-left-radius:64px}}
@media(max-width:700px){.portrait-image{border-top-left-radius:56px}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
