*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}@media (prefers-reduced-motion: no-preference){html{interpolate-size:allow-keywords}}body{-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg,iframe{display:block;max-width:100%}input,button,textarea,select{font:inherit}button{background-color:rgba(0,0,0,0);border:none;cursor:pointer}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}p{text-wrap:pretty}h1,h2,h3,h4,h5,h6{text-wrap:balance}@font-face{font-family:"nope8";src:url("/fonts/nope8/Nope8.ttf") format("truetype"),url("/fonts/nope8/Nope8.woff2") format("woff2"),url("/fonts/nope8/Nope8.woff") format("woff");font-weight:normal;font-style:normal;font-display:swap}@font-face{font-family:"Roboto Mono";font-style:normal;font-weight:100 700;font-display:swap;src:url("/fonts/roboto-mono/RobotoMono[wght].woff") format("woff-variations")}@font-face{font-family:"Roboto Mono";font-style:italic;font-weight:100 700;font-display:swap;src:url("/fonts/roboto-mono/RobotoMono-Italic[wght].woff") format("woff-variations")}.stripes{--bg: transparent;--fg: var(--fg-default);background:repeating-linear-gradient(45deg, var(--bg), var(--bg) 10px, var(--fg) 10px, var(--fg) 20px)}.stripes-inverted{--bg: transparent;--fg: var(--fg-default);background:repeating-linear-gradient(-45deg, var(--bg), var(--bg) 10px, var(--fg) 10px, var(--fg) 20px)}.dots{--bg: transparent;--fg: var(--fg-default);background-image:radial-gradient(var(--fg) 4px, var(--bg) 4px);background-size:16px 16px}.dots-shifted{--bg: transparent;--fg: var(--fg-default);background:radial-gradient(circle, var(--fg) 4px, rgba(0,0,0,0) 4px),radial-gradient(circle at bottom left, var(--fg) 4px, rgba(0,0,0,0) 4px),radial-gradient(circle at bottom right, var(--fg) 4px, rgba(0,0,0,0) 4px),radial-gradient(circle at top left, var(--fg) 4px, rgba(0,0,0,0) 4px),radial-gradient(circle at top right, var(--fg) 4px, rgba(0,0,0,0) 4px);background-size:24px 24px;background-color:var(--bg)}.content{display:grid;gap:.75em}.content>*{max-width:40rem}.content>.wide{max-width:100%}.content>p:has(img:only-child),.content>p:has(video:only-child){max-width:48rem;border:var(--border-width) solid var(--border-color);transition:transform 250ms}@media (hover: hover) and (prefers-reduced-motion: no-preference){.content>p:has(img:only-child)::before,.content>p:has(video:only-child)::before{pointer-events:none;content:"";position:absolute;bottom:-.5rem;left:-.5rem;width:100%;height:100%;z-index:-1}.enable-hover-effect .content>p:has(img:only-child):hover,.enable-hover-effect .content>p:has(video:only-child):hover{transform:translate(.5rem, -.5rem)}.enable-hover-effect .content>p:has(img:only-child):hover::before,.enable-hover-effect .content>p:has(video:only-child):hover::before{pointer-events:unset}}.content h2:not(:first-child),.content h3:not(:first-child){margin-top:.5em}.content a{color:var(--color-primary);color:var(--accent)}.content a:hover{color:var(--text)}.padding{padding:1rem}@media (min-width: 37.5rem){.padding{padding:1.5rem}}.hide{display:none}@media (min-width: 37.5rem){.hide--md{display:none}}@media (min-width: 56.25rem){.hide--lg{display:none}}.block{display:block}@media (min-width: 37.5rem){.block--md{display:block}}@media (min-width: 56.25rem){.block--lg{display:block}}.grid{display:grid}@media (min-width: 37.5rem){.grid--md{display:grid}}@media (min-width: 56.25rem){.grid--lg{display:grid}}.flex{display:flex}@media (min-width: 37.5rem){.flex--md{display:flex}}@media (min-width: 56.25rem){.flex--lg{display:flex}}.opacity-50{opacity:.5}html{font-size:100%;overflow-x:hidden;scrollbar-color:#bbb rgba(0,0,0,0)}:root{color-scheme:light dark;--border-width: 2px;--border-width-negative: -2px;--text-dark: #292826;--text-light: white;--accent: #ed4c67;--meetup: #d25a67;--blue: #5d64e2;--teal: #66b2d2;--yellow: #f7dc6f;--border-color: #191816;--text: #292826;--body-bg: #f3f2f1;--fg-default: rgb(255 255 255 / 0.1);--fg-invert: rgb(0 0 0 / 0.1);--noise-image: url(/img/noise.png)}@media (prefers-color-scheme: dark){:root{--border-color: #636261;--text: #f3f2f1;--body-bg: #2e2d2d;--fg-default: rgb(0 0 0 / 0.1);--fg-invert: rgb(255 255 255 / 0.1);--noise-image: url(/img/noise-light.png)}}html[data-theme=light]{--accent: #ed4c67;--border-color: #191816;--text: #292826;--body-bg: #f3f2f1;--fg-default: rgb(255 255 255 / 0.1);--fg-invert: rgb(0 0 0 / 0.1);--noise-image: url(/img/noise.png)}html[data-theme=dark]{--accent: #ff6680;--border-color: #636261;--text: #f3f2f1;--body-bg: #2e2d2d;--fg-default: rgb(0 0 0 / 0.1);--fg-invert: rgb(255 255 255 / 0.1);--noise-image: url(/img/noise-light.png)}body{font-family:"Roboto Mono",ui-monospace,"Cascadia Code","Source Code Pro",Menlo,Consolas,"DejaVu Sans Mono",monospace;font-optical-sizing:auto;font-weight:500;font-style:normal;font-size:1rem;line-height:1.4;background-image:var(--noise-image);background-repeat:repeat;background-size:250px 250px;background-color:var(--body-bg);color:var(--text);padding:1rem}@media (min-width: 56.25rem){body{font-size:1.125rem}}@media (min-width: 37.5rem){body{padding:2rem}}@media (min-width: 56.25rem){body{padding:4rem}}*:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}h1,h2,h3,h4,h5,h6{line-height:1;font-weight:400;font-family:nope8,ui-monospace,"Cascadia Code","Source Code Pro",Menlo,Consolas,"DejaVu Sans Mono",monospace}h1{font-size:2.375rem}@media (min-width: 56.25rem){h1{font-size:2.75rem}}h2{font-size:2rem}@media (min-width: 56.25rem){h2{font-size:2.25rem}}h3,h4{font-size:1.75rem}@media (min-width: 56.25rem){h3,h4{font-size:2rem}}ul{padding-left:1.5rem}button{color:var(--text)}a{text-decoration-thickness:var(--border-width);color:var(--accent)}b,strong{font-weight:700}.app{max-width:80rem;min-height:calc(100vh - 2rem);min-height:calc(100svh - 2rem);position:relative}@media (min-width: 37.5rem){.app{min-height:calc(100vh - 4rem);min-height:calc(100svh - 4rem)}}@media (min-width: 56.25rem){.app{min-height:calc(100vh - 8rem);min-height:calc(100svh - 8rem)}}.app::before{display:block;border-left:var(--border-width) solid var(--border-color);border-right:var(--border-width) solid var(--border-color);content:"";pointer-events:none;position:absolute;left:var(--border-width-negative);top:-4rem;bottom:-1rem;right:0}@media (min-width: 37.5rem){.app::before{bottom:-2rem}}@media (min-width: 56.25rem){.app::before{bottom:-4rem}}.app::after{display:block;border-bottom:var(--border-width) solid var(--border-color);border-top:var(--border-width) solid var(--border-color);content:"";pointer-events:none;position:absolute;width:100vw;bottom:var(--border-width-negative);top:0;left:-1rem}@media (min-width: 37.5rem){.app::after{left:-2rem}}@media (min-width: 56.25rem){.app::after{left:-4rem}}.main{position:relative}.grid{display:flex;flex-wrap:wrap}.grid .grid{flex-basis:100%;max-width:100%}.cell,.border,.hover{transition:transform 250ms ease-in-out,z-index 250ms ease-in-out;position:relative;outline-width:4px;outline-offset:-4px}.cell::after,.border::after,.hover::after{display:block;inset:0 0 var(--border-width-negative) var(--border-width-negative);border:var(--border-width) solid var(--border-color);content:"";position:absolute;pointer-events:none}.cell::before,.hover::before{display:block;width:100%;height:100%;left:-.5rem;bottom:-.5rem;content:"";position:absolute;pointer-events:none;z-index:-1}.cell{flex-shrink:0;flex-grow:0;flex-basis:100%;max-width:100%;z-index:0}@media (hover: hover) and (prefers-reduced-motion: no-preference){.enable-hover-effect .cell:hover,.enable-hover-effect .hover:hover{transform:translate(.5rem, -.5rem);z-index:2}.enable-hover-effect .cell:hover::before,.enable-hover-effect .hover:hover::before{pointer-events:unset}}.cell--1{flex-basis:25%;max-width:25%}.cell--2{flex-basis:50%;max-width:50%}.cell--3{flex-basis:75%;max-width:75%}.cell--4{flex-basis:100%;max-width:100%}.cell--third{flex-basis:33.33%;max-width:33.33%}@media (min-width: 37.5rem){.cell--md-1{flex-basis:25%;max-width:25%}.cell--md-2{flex-basis:50%;max-width:50%}.cell--md-3{flex-basis:75%;max-width:75%}.cell--md-4{flex-basis:100%;max-width:100%}.cell--md-third{flex-basis:33.33%;max-width:33.33%}}@media (min-width: 56.25rem){.cell--lg-1{flex-basis:25%;max-width:25%}.cell--lg-2{flex-basis:50%;max-width:50%}.cell--lg-3{flex-basis:75%;max-width:75%}.cell--lg-4{flex-basis:100%;max-width:100%}.cell--lg-third{flex-basis:33.33%;max-width:33.33%}}.challenge{text-decoration:none;color:inherit;display:flex;flex-direction:column}.challenge h2{margin-bottom:auto;flex-grow:1}.challenge:hover h2{background-color:var(--teal);color:var(--text-light)}.challenge__date{font-size:.75em;display:block;opacity:.5}.challenge__image{--fg: rgb(0 0 0 / 0.1);aspect-ratio:1300/675;background-size:100% 100%;image-rendering:pixelated}.challenge__image img{image-rendering:auto}html:has(dialog[open]){overflow:hidden;touch-action:none}html:has(dialog[open]) dialog{touch-action:auto}html:has(dialog[open]) body{margin-right:var(--scrollbar-width)}dialog::backdrop{background:none;backdrop-filter:blur(8px)}.modal{align-items:flex-end;background-color:rgba(0,0,0,0);height:100%;justify-content:center;max-height:100%;max-width:100%;overflow:hidden;position:fixed;inset:0;width:100%;display:none;border:none;color:var(--text);}@media (min-width: 37.5rem){.modal{align-items:center}}.modal[open]{display:flex}@keyframes modal-backdrop-in{from{opacity:0}to{opacity:1;transform:none}}.modal-backdrop-close{inset:0;position:absolute;background-color:rgba(241,240,239,.3);opacity:0}.modal[open] .modal-backdrop-close{animation:modal-backdrop-in 250ms ease-out forwards}@media (prefers-reduced-motion: reduce){.modal[open] .modal-backdrop-close{animation:none;opacity:1}}.modal-close{padding:.75rem;position:absolute;right:1rem;top:1rem;transition:all 250ms;z-index:1;outline-offset:-.5rem;outline-color:var(--border-color)}@media (min-width: 37.5rem){.modal-close{right:1.5rem;top:1.5rem}}.modal-title{padding:1.5rem 1rem}@media (min-width: 37.5rem){.modal-title{padding:2rem 1.5rem}}.modal-close:hover{background-color:var(--blue);color:var(--text-light)}@keyframes modal-content-in{from{opacity:0;transform:translateY(5rem)}to{opacity:1;transform:none}}@keyframes modal-content-scale-in{from{opacity:0;transform:scale(.95)}to{opacity:1;transform:none}}.modal-content{height:90%;max-height:42rem;max-width:38rem;overflow:hidden;position:relative;width:100%;background-image:var(--noise-image);background-repeat:repeat;background-size:250px 250px;background-color:var(--body-bg);border-top:var(--border-width) solid var(--border-color);opacity:0}@media (min-width: 37.5rem){.modal-content{border:var(--border-width) solid var(--border-color)}}.modal[open] .modal-content{animation:modal-content-in 250ms ease-out forwards}@media (min-width: 600px){.modal[open] .modal-content{animation-name:modal-content-scale-in}}@media (prefers-reduced-motion: reduce){.modal[open] .modal-content{animation:none;opacity:1}}@media (min-width: 600px){.modal{align-items:center}}.contact-iframe{background-attachment:fixed;background-color:var(--bg-color);background-image:linear-gradient(var(--gradient-start), var(--bg-color));border:none;height:calc(100% - 6rem);scrollbar-width:thin;width:100%}.event{display:flex;flex-direction:column}.event h2{margin-bottom:auto;flex-grow:1}.event__date{font-size:.75em;display:block;opacity:.5}.event__next{color:var(--accent)}.event__image{--fg: rgb(0 0 0 / 0.1);aspect-ratio:1200/675;background-size:100% 100%;image-rendering:pixelated}.event__image img{image-rendering:auto}.event__links{display:flex}.event__link{color:inherit}.event__link:hover{color:var(--text-light)}.event__link--luma:hover{background-color:var(--teal)}.event__link--meetup:hover{background-color:var(--accent)}.footer{display:grid;gap:1em}.footer__links{display:flex;flex-direction:column;gap:1em}@media (min-width: 37.5rem){.footer__links{flex-direction:row}}.footer__links a,.footer__links button{text-decoration-line:underline;text-decoration-thickness:var(--border-width);color:var(--text-color)}.footer__links a:hover,.footer__links button:hover{color:var(--accent)}.footer__title{font-weight:bold;font-size:1.25rem}.footer__disable-hover-label{display:none}@media (hover: hover) and (prefers-reduced-motion: no-preference){.footer__disable-hover-label{display:flex;align-items:center;gap:.375rem;cursor:pointer}.footer__disable-hover-label:hover .footer__disable-hover-text{text-decoration-line:underline;text-decoration-thickness:var(--border-width)}}.footer__disable-hover-label:has(input:focus-visible){outline:2px solid var(--accent)}.footer__disable-hover-input{position:absolute;left:-1000vw;opacity:0}.footer__disable-hover-checkbox{width:1.25em;height:1.25em;display:block;border:var(--border-width) solid var(--border-color);text-align:center}.footer__disable-hover-checkbox span{display:none;top:-.25em;position:relative}.footer__disable-hover-input:checked+.footer__disable-hover-checkbox span{display:block}.footer__theme{display:flex;gap:.5em;flex-wrap:wrap}.footer__theme-button{text-decoration-thickness:var(--border-width)}.footer__theme-button:hover{text-decoration-line:underline}html[data-theme=""] .footer__theme-button[data-theme=""],html[data-theme=light] .footer__theme-button[data-theme=light],html[data-theme=dark] .footer__theme-button[data-theme=dark],html[data-theme=funky] .footer__theme-button[data-theme=funky]{text-decoration-line:underline}.header{position:relative;display:flex;justify-content:space-between}@media (min-width: 56.25rem){.header{background-image:var(--noise-image);background-repeat:repeat;background-size:250px 250px;background-color:var(--body-bg)}}@media (min-width: 56.25rem){.scrolled .header{z-index:10;position:sticky;top:1rem}}.header__home-link{flex-shrink:0;padding:1rem}@media (min-width: 37.5rem){.header__home-link{padding:1rem 2rem}}.header__logo{width:4rem}.header__logo path:nth-child(1),.header__logo path:nth-child(2){fill:var(--text)}@media (min-width: 37.5rem){.header__logo{width:5rem}}.header__menu-trigger{padding:1rem;width:4.5rem}.header__menu-trigger span:nth-child(2){display:none}.menu-open .header__menu-trigger span:nth-child(1){display:none}.menu-open .header__menu-trigger span:nth-child(2){display:block}.header__nav-item{--bg: transparent;--fg: transparent;color:inherit;display:grid;place-items:center;padding:0 .75rem;font-weight:bold;font-size:.875em;text-decoration:none;background-color:var(--bg);text-align:center}.header__nav-item:hover{--bg: #5e64da;--fg: rgb(255 255 255 / 0.1);color:var(--text-light)}.header__menu{display:none;align-items:flex-start;grid-template-rows:0fr;transition:grid-template-rows 500ms,display 500ms;transition-behavior:allow-discrete;overflow:hidden}@media (min-width: 37.5rem){.header__menu{grid-template-rows:0fr !important;display:none !important}}.menu-open .header__menu{display:grid;grid-template-rows:1fr}@starting-style{.menu-open .header__menu{grid-template-rows:0fr}}.header__menu-inner{overflow:hidden}.header__menu .header__nav-item{width:100%;padding:1rem}.home__link{color:#fff;text-decoration:none}.home__link--meetup{background-color:var(--meetup)}.home__link--discord{background-color:var(--blue)}.home__link--luma{background-color:var(--teal)}.home__reach-out{text-decoration:underline;text-decoration-thickness:var(--border-width)}.home__reach-out:hover{color:var(--accent)}.page__content{padding-bottom:6rem;gap:1em}.spotlight{--fg: var(--fg-invert);aspect-ratio:16/9}@media (min-width: 115rem){.spotlight{max-width:100%;flex-basis:100%;margin-right:-25%}}.spotlight img,.spotlight video{width:100%;height:100%;object-fit:contain}.spotlight iframe{width:100%;height:100%}.spotlight__pause{position:absolute;bottom:0;left:0;font-size:1rem;padding:.5em;background-color:var(--yellow);color:var(--text-dark)}.submissions__pause{color:var(--text);padding:.375rem .75rem;background-color:var(--blue);font-size:.875rem;font-weight:bold;transition:color 250ms,background 250ms,transform 250ms;color:var(--text-light);margin-top:.5rem;margin-bottom:1rem}.grid.submissions{max-width:200%;margin-inline:-1rem;margin-top:1rem}@media (min-width: 37.5rem){.grid.submissions{margin-inline:-1.5rem}}@media (min-width: 56.25rem){.grid.submissions{margin-inline:-1.5rem}}.submissions__name{font-weight:bold}.submissions__media{--fg: rgb(0 0 0 / 0.1);display:grid;aspect-ratio:1}.submissions__media img,.submissions__media video{border-top:var(--border-width) solid var(--border-color);border-right:var(--border-width) solid var(--border-color);width:100%;height:100%;overflow:hidden;object-fit:contain}