*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--bg:#000;--bg2:#131313;--bg3:#1a1a1a;--text:rgba(255,255,255,.76);--text-dim:rgba(255,255,255,.45);--primary:#8b2020;--link:#8b2020;--link-hover:#a52a2a;--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
html{overflow-y:scroll;overscroll-behavior:none}
body{font-family:var(--font);background:var(--bg);color:var(--text);min-height:100vh;font-size:15px;line-height:1.6}
a{color:var(--link);text-decoration:none;transition:color .15s}
a:hover{color:var(--link-hover)}

/* Layout */
.wrap{max-width:42rem;margin:0 auto;padding:0 1rem}
header{border-bottom:1px solid var(--bg3);padding:0 1rem}
header .inner{max-width:42rem;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:3.5rem}
header .logo{font-weight:700;font-size:1.1rem;color:var(--text);text-decoration:none}
nav a{font-size:.875rem;color:var(--text-dim);margin-left:1.25rem;transition:color .15s}
nav a:hover{color:var(--text)}
main{padding:1.5rem 1rem 3rem}

/* Typography */
h1{font-size:1.875rem;font-weight:700;margin-bottom:2rem}
h2{font-size:1.25rem;font-weight:700;margin-bottom:1rem}
p{margin-bottom:1rem;color:var(--text)}
.dim{color:var(--text-dim)}
.small{font-size:.875rem}
.xs{font-size:.75rem}
section{margin-bottom:2.5rem}
ul.spaced{padding-left:1rem;list-style:none}
ul.spaced li{margin-bottom:.25rem;color:var(--text-dim)}

/* Cards */
.card{display:block;border:1px solid var(--bg3);border-radius:.75rem;padding:1.5rem;margin-bottom:1.5rem;background:var(--bg2);transition:border-color .15s}
.card:hover{border-color:rgba(139,32,32,.3)}
.card h2{margin-bottom:.25rem}
.card .url{font-size:.75rem;color:var(--text-dim);margin-bottom:.75rem}
.card p{font-size:.875rem;color:var(--text-dim);margin-bottom:0}

/* Home */
.home-center{text-align:center;display:flex;flex-direction:column;align-items:center}
.home-center svg{width:100%;max-width:350px;height:auto}
.home-center h2{font-size:1.5rem;margin-top:1rem;margin-bottom:.25rem}

/* Contact */
.contact-info{font-size:.875rem;color:var(--text-dim);margin-bottom:2rem}
