*,*::before,*::after{box-sizing:border-box}body{margin:0}h1{margin:0}h2{margin:0}h3{margin:0}h4{margin:0}h5{margin:0}h6{margin:0}p{margin:0}ul{margin:0}@font-face{font-family:"InterVariable";src:url("/fonts/InterVariable.woff2") format("woff2-variations")}@font-face{font-family:"CascadiaCode";src:url("/fonts/CascadiaCode.woff2") format("woff2")}html{scroll-behavior:smooth}body{font-family:"InterVariable",sans-serif;background:var(--background);color:var(--primary)}a{color:var(--hyperlink);text-decoration:none}a:hover{text-decoration:underline}a:visited{color:var(--hyperlink-visited)}h1 a{color:var(--primary);text-decoration:none}h1 a:hover{text-decoration:underline}h1 a:visited{color:var(--primary)}h2 a{color:var(--primary);text-decoration:none}h2 a:hover{text-decoration:underline}h2 a:visited{color:var(--primary)}h3 a{color:var(--primary);text-decoration:none}h3 a:hover{text-decoration:underline}h3 a:visited{color:var(--primary)}h4 a{color:var(--primary);text-decoration:none}h4 a:hover{text-decoration:underline}h4 a:visited{color:var(--primary)}h5 a{color:var(--primary);text-decoration:none}h5 a:hover{text-decoration:underline}h5 a:visited{color:var(--primary)}h6 a{color:var(--primary);text-decoration:none}h6 a:hover{text-decoration:underline}h6 a:visited{color:var(--primary)}.mbxs{margin-bottom:4px !important}.mbs{margin-bottom:8px !important}.mbm{margin-bottom:16px !important}.mbl{margin-bottom:24px !important}.mbxl{margin-bottom:32px !important}.mbxxl{margin-bottom:48px !important}.mtxs{margin-top:4px !important}.mts{margin-top:8px !important}.mtm{margin-top:16px !important}.mtl{margin-top:24px !important}.mtxl{margin-top:32px !important}.mtxxl{margin-top:48px !important}.button-rounded-clean{display:inline-flex;align-items:center;padding:.65rem 1.25rem;border:none;border-radius:999px;background:rgba(0,0,0,0);color:var(--primary);font-family:"InterVariable",sans-serif;font-size:.85rem;font-weight:600;text-decoration:none;cursor:pointer;transition:background .15s ease,scale .1s ease}.button-rounded-clean:visited{color:var(--primary)}.button-rounded-clean:hover{background:color-mix(in srgb, var(--primary) 6%, rgba(0,0,0,0));text-decoration:none}.button-rounded-clean:active{scale:.95;background:color-mix(in srgb, var(--primary) 12%, rgba(0,0,0,0))}.button-rounded{display:inline-flex;align-items:center;padding:.65rem 1.25rem;border:none;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--primary);font-family:"InterVariable",sans-serif;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s ease,scale .1s ease;text-decoration:none}.button-rounded:hover,.button-rounded:active,.button-rounded:focus,.button-rounded:visited{text-decoration:none}.button-rounded:visited{color:var(--primary)}.button-rounded:hover{background:color-mix(in srgb, var(--primary) 6%, var(--surface))}.button-rounded:active{transform:scale(.95);background:color-mix(in srgb, var(--primary) 12%, var(--surface))}.donation-card{display:flex;align-items:flex-start;gap:1.5rem;padding:1rem;background:var(--surface);border:1px solid var(--border);border-radius:6px}.donation-card small{font-size:.75rem;color:var(--secondary)}.donation-card code{font-family:"CascadiaCode",monospace;font-size:.85rem;word-break:break-all}.donation-qr{display:grid;flex-shrink:0;width:128px;height:128px}.donation-qr img{grid-area:1/1;width:100%;height:100%;image-rendering:pixelated}.donation-qr .crypto-logo{width:32px;height:32px;margin:auto;image-rendering:auto}.donation-info{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem}.donation-info .button-rounded-clean{margin-left:-1.25rem}header{width:100%;box-shadow:0 0 0 1px var(--border)}header .header-inner{max-width:1000px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between}header .wordmark{font-size:3rem;font-weight:700;text-decoration:none;color:var(--primary)}main{max-width:1000px;min-height:80dvh;margin:0 auto;padding:5rem 1.5rem}.hero{display:flex;align-items:center;justify-content:space-between;gap:4rem;min-height:60dvh}.hero .hero-content{flex:1}.hero .hero-content p{max-width:520px}.hero .hero-media{flex:1;display:flex;justify-content:center;align-items:center}.hero .hero-media img{height:512px;width:auto;max-width:100%;object-fit:contain}@media (max-width: 900px){.hero{flex-direction:column;text-align:center}.hero .hero-content p{margin:0 auto}.hero .hero-media{justify-content:center;margin-top:2rem}}footer{width:100%;box-shadow:0 0 0 1px var(--border)}footer .footer-inner{max-width:1000px;margin:0 auto;padding:0 1.5rem;font-size:.875rem;display:flex;flex-direction:column;justify-content:space-between;min-height:40dvh}footer .footer-inner a{color:var(--primary);text-decoration:none}footer .footer-inner a:hover{text-decoration:underline}footer .footer-inner a:visited{color:var(--primary)}footer .footer-inner .footer-top{display:flex;gap:2rem;justify-content:space-between}footer .footer-inner .footer-top .footer-column p{font-weight:600}footer .footer-inner .footer-top .footer-column ul{list-style:none;padding:0}footer .footer-inner .footer-top .footer-column ul li+li{margin-top:.5rem}footer .footer-inner .footer-bottom{display:flex;justify-content:space-between;align-items:center}:root{--background: #FCFCFC;--surface: #FFFFFF;--primary: #282828;--secondary: #4A4A4A;--border: #BFBFBF;--hyperlink: #1565c0;--hyperlink-visited: #6a1b9a}@media (prefers-color-scheme: dark){:root{--background: #181818;--surface: #212121;--primary: #DEDEDA;--secondary: #8A8882;--border: #2F2F2F;--hyperlink: #569CD6;--hyperlink-visited: #C586C0}}pre.giallo{margin:0}pre code{display:block;padding:1em;border-radius:6px;border:1px solid var(--border);font-family:"CascadiaCode",monospace;font-size:.85em;line-height:1.4;overflow-x:auto;background-color:var(--surface);color:var(--primary)}code:not(pre code){background:none;color:inherit;padding:0;border-radius:0}.z-comment{color:green}.z-keyword{color:blue}.z-function{color:#795e26}.z-string{color:#a31515}.z-number{color:#098658}.z-operator{color:#000}.z-variable{color:#001080}.z-constant{color:blue}.z-type{color:#267f99}.z-attribute{color:#e50000}.z-property{color:#e50000}.z-tag{color:maroon}.z-punctuation{color:maroon}@media (prefers-color-scheme: dark){pre code{background-color:var(--surface);color:var(--primary);border:1px solid var(--border)}.z-comment{color:#505050}.z-keyword{color:#569cd6}.z-function{color:#dcdcaa}.z-string{color:#ce9178}.z-number{color:#b5cea8}.z-operator{color:#c586c0}.z-variable{color:#9cdcfe}.z-constant{color:#569cd6}.z-type{color:#4ec9b0}.z-attribute{color:#9cdcfe}.z-property{color:#9cdcfe}.z-tag{color:#569cd6}.z-punctuation{color:gray}}