@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&family=Archivo:wght@100;200;400;600&display=swap');
:root{--bg:#181818;--white:#eeeae2;--red:#D7382A;--blue:#0BB2DD;--line:#393e42;--muted:#a4aab0;--arrow:#929da5;--hover:#ffffff03}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--white);font-family:Archivo,Arial,sans-serif}.page{width:min(100%,520px);margin:auto;padding:48px 28px 52px}h1{margin:0 0 40px;text-transform:uppercase;line-height:.84;letter-spacing:-.055em}.mario{display:block;font-weight:100;color:var(--red);font-size:clamp(62px,17vw,94px);letter-spacing:.075em}.romay{display:block;font-family:'Archivo Black',Arial,sans-serif;color:var(--blue);font-size:clamp(62px,17vw,94px);margin-top:2px}section+section{margin-top:30px}h2{display:flex;align-items:center;justify-content:space-between;margin:0 0 11px;color:var(--blue);font-size:10px;letter-spacing:.22em;font-weight:600;text-transform:uppercase}h2 span{color:var(--blue);font-size:9px;letter-spacing:.1em}.group-links{border-top:1px solid var(--line)}a{display:flex;align-items:center;gap:15px;color:var(--white);text-decoration:none;border-bottom:1px solid var(--line);padding:14px 0;min-height:54px;transition:color .2s,padding .2s,background .2s}.star svg{width:19px;height:19px;display:block;fill:var(--red);transition:transform .25s}.label{font-family:'Archivo Black',Arial,sans-serif;font-size:clamp(17px,4.9vw,23px);letter-spacing:.015em;text-transform:uppercase}.arrow{margin-left:auto;color:var(--arrow);font-size:20px;transition:color .2s,transform .2s}a:hover{padding-left:8px;color:var(--red);background:var(--hover)}section:nth-child(2) a:hover{color:var(--blue)}a:hover .star svg{transform:rotate(60deg)}a:hover .arrow{color:var(--white);transform:translate(2px,-2px)}a:focus-visible{outline:2px solid var(--blue);outline-offset:4px;border-radius:2px}@media(max-width:360px){.page{padding-left:22px;padding-right:22px}.mario,.romay{font-size:17vw}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}}
.mario,.romay{width:max-content;transform-origin:left center}

.mario,.romay{font-kerning:none;font-variant-ligatures:none}

h1{display:flex;justify-content:center;line-height:1;letter-spacing:normal}.name-mark{display:block;width:320px;max-width:100%;min-width:0;height:auto;flex:none}



.site-rule{display:block;width:100%;height:3px;padding:0;border:0;background:#D7382A}.site-rule-top{margin:0 0 34px}.site-rule-bottom{margin:34px 0 0}.site-rule::before,.site-rule::after{content:none;display:none}

/* Keep the content in its natural flow; only the bottom rule absorbs spare height. */
.page{display:flex;flex-direction:column;min-height:100vh;min-height:100svh}
.page>h1,.page>nav,.site-rule{flex-shrink:0}
.page>nav{margin-bottom:34px}
.site-rule-bottom{margin-top:auto}
/* Project descriptions share the existing ruled link rows. */
.project-copy{display:block;min-width:0;flex:1}
.project-copy .label{display:block}
.project-description{display:block;margin-top:5px;color:var(--muted);font-size:13px;font-weight:400;letter-spacing:normal;line-height:1.45;text-transform:none}
.project-link .star,.project-link .arrow{align-self:flex-start;margin-top:4px}

/* Separate the name mark from the link groups with the same red rule. */
.site-rule-name{margin:0 0 34px}

:root{color-scheme:dark}
:root[data-theme="light"]{color-scheme:light;--bg:#F5F5F2;--white:#181818;--blue:#007A9B;--line:#d4d8d8;--muted:#586168;--arrow:#586168;--hover:#00000003}
.theme-switch{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin:-18px 0 20px;color:var(--muted);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.theme-switch button{appearance:none;background:none;border:0;padding:8px 2px;color:var(--muted);font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;min-height:32px}
.theme-switch button[aria-pressed="true"]{color:var(--blue);font-weight:600}
.theme-switch button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
