/* User-supplied illustration system: transparent, responsive and clear of content. */
.supplied-art{display:block;object-fit:contain;pointer-events:none;height:auto}.ref-hero{isolation:isolate}.ref-title-frame{width:min(820px,84vw)}.ref-title-dots{opacity:.12}.ref-hero h1{padding:36px 36px 40px}.portfolio-generated{max-width:720px}.hero-portfolio-art{width:100%;animation:portfolio-breathe 7s ease-in-out infinite}.hero-orbit{position:absolute;width:230px;left:max(8px,calc(50% - 570px));top:18%;z-index:-1;opacity:.8;rotate:-12deg}.hero-halftone{position:absolute;width:240px;right:max(-100px,calc(50% - 680px));bottom:12%;z-index:-1;opacity:.3}.hero-sparkles{position:absolute;width:95px;right:calc(50% - 440px);top:24%;z-index:3;animation:art-rock 8s ease-in-out infinite}.about-globe{position:absolute;width:145px;right:calc(50% - 550px);bottom:50px;rotate:8deg}.ref-contents{position:relative}.contents-arrow{position:absolute;width:130px;right:calc(50% - 450px);top:4px;rotate:35deg}.project-windows{width:115px;margin:0 auto 20px;animation:art-float 7s ease-in-out infinite}.single-projects>h2{margin-bottom:40px}.work-pointer{width:65px;position:absolute;right:18px;top:60px;rotate:-14deg}.single-archive{position:relative}.archive-spiral{position:absolute;width:140px;right:-65px;top:10px;z-index:0;opacity:.7}.single-archive .section-heading,.single-archive .archive-grid{position:relative;z-index:1}.message-window{width:130px;margin:28px 0 0;rotate:-5deg}.contact-guidance{min-width:0}.faq-bubble{width:90px;position:absolute;right:28px;top:48px;rotate:8deg}.single-contact .illustrated-panel:last-child h2{padding-right:100px}.single-contact .contact-faq{position:relative}.single-contact .contact-panel{isolation:isolate}
.theme-control{position:relative!important;display:inline-grid!important;grid-template-columns:40px 40px;align-items:center;gap:0!important;width:88px!important;height:44px!important;min-height:44px!important;padding:3px!important;border:1.5px solid var(--ink)!important;border-radius:24px!important;background:var(--muted)!important;box-shadow:2px 2px 0 var(--ink)!important;cursor:pointer;overflow:hidden;isolation:isolate;transition:box-shadow .18s,translate .18s}.theme-control span{padding:0!important;display:grid;place-items:center;line-height:1}.theme-control .theme-thumb{position:absolute;inset:3px auto 3px 3px;width:39px;border-radius:50%;background:var(--ink);z-index:-1;transition:transform .25s cubic-bezier(.16,1,.3,1)}.theme-control .theme-sun,.theme-control .theme-moon{width:40px;height:36px;color:var(--ink);transition:color .2s,transform .25s}.theme-control[aria-pressed=false] .theme-sun,.theme-control[aria-pressed=true] .theme-moon{color:var(--bg)}.theme-control[aria-pressed=true] .theme-thumb{transform:translateX(40px)}.theme-control:hover{translate:0 -1px!important;box-shadow:3px 3px 0 var(--ink)!important}.theme-control:active{translate:1px 1px!important;box-shadow:0 0 0 var(--ink)!important}.theme-control:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.theme-control:hover .theme-sun{transform:rotate(20deg)}.theme-control:hover .theme-moon{transform:rotate(-10deg)}
[data-theme=dark] .supplied-art:not(.hero-portfolio-art){filter:drop-shadow(0 0 1px #fff)}[data-theme=dark] .portfolio-generated img{filter:none}
@keyframes art-rock{50%{transform:rotate(9deg) translateY(-3px)}}@keyframes art-float{50%{transform:translateY(-4px) rotate(2deg)}}
@media(max-width:1100px){.about-globe{right:12px;width:100px;bottom:0}.hero-sparkles{right:5%;width:75px;top:22%}.contents-arrow{right:20px;width:90px;top:8px}.archive-spiral{right:-10px;width:95px;top:10px}}
@media(max-width:700px){.ref-title-frame{width:100%}.ref-hero h1{padding:30px 20px 34px}.hero-orbit{width:140px;left:-65px;top:12%}.hero-halftone{width:145px;right:-65px;bottom:12%;opacity:.2}.hero-sparkles{width:56px;right:6px;top:24%}.about-globe{width:74px;bottom:4px;right:8px}.contents-arrow{width:70px;right:10px;top:0}.work-pointer{width:42px;right:0;top:42px}.archive-spiral{width:64px;right:-20px;opacity:.4}.project-windows{width:90px}.message-window{width:100px;margin-top:20px}.faq-bubble{width:66px;right:16px;top:48px}.single-contact .illustrated-panel:last-child h2{padding-right:70px}.theme-control{align-self:start}}
@media(prefers-reduced-motion:reduce){.supplied-art,.hero-portfolio-art{animation:none!important}.theme-control,.theme-control span{transition:none!important}.theme-control:hover .theme-sun,.theme-control:hover .theme-moon{transform:none}}
