h1,h2,h3{font-family:'Jersey 25',monospace;font-weight:400;text-wrap:balance}
p,li{text-wrap:pretty}
.pbox>p,#engine p{max-width:68ch}
code{font-family:'IBM Plex Mono',monospace;font-size:.88em}
::selection{background:#ffd84a;color:#1c2140}
body{margin:0;background:#1c2140}
html{scroll-behavior:smooth}
a{color:#1c2140;text-underline-offset:3px;text-decoration-thickness:2px}a:hover{color:#b5301f}
.pbox{background:#f8f8f0;color:#1c2140;box-shadow:-4px 0 0 #0e1128,4px 0 0 #0e1128,0 -4px 0 #0e1128,0 4px 0 #0e1128,inset 0 0 0 3px #c9cfe8}
.pbtn{font-family:'IBM Plex Mono',monospace;font-weight:600;letter-spacing:.5px;text-transform:uppercase;font-size:14px;min-height:44px;padding:0 12px;border:0;cursor:pointer;color:#1c2140;background:#dfe3f5;box-shadow:inset -3px -3px 0 #aab1d2,inset 3px 3px 0 #ffffff}
a.pbtn{display:inline-flex;align-items:center;text-decoration:none;box-sizing:border-box}
.pbtn:hover{background:#ffe98a;color:#1c2140}
.pbtn:active{box-shadow:inset 3px 3px 0 #aab1d2,inset -3px -3px 0 #ffffff}
.pbtn-go{background:#ffd84a;box-shadow:inset -3px -3px 0 #c79a1e,inset 3px 3px 0 #fff3b8}
.pbtn-go:hover{background:#ffe98a}
.pbtn-go:active{box-shadow:inset 3px 3px 0 #c79a1e,inset -3px -3px 0 #fff3b8}
.pbtn-big{font-family:'Jersey 25',monospace;font-weight:400;text-transform:none;font-size:clamp(32px,3vw,44px);min-height:76px;padding:0 36px;box-shadow:inset -5px -5px 0 #c79a1e,inset 5px 5px 0 #fff3b8}
.pbtn-big:active{box-shadow:inset 5px 5px 0 #c79a1e,inset -5px -5px 0 #fff3b8}
.pbtn-dark,.pbtn-dark:hover{color:#ffd84a}
.pbtn-dark{background:#1c2140;box-shadow:inset -5px -5px 0 #0e1128,inset 5px 5px 0 #4a5070}
.pbtn-dark:hover{background:#2d3357}
.pbtn-dark:active{box-shadow:inset 5px 5px 0 #0e1128,inset -5px -5px 0 #4a5070}
.pbtn:focus-visible,#map:focus-visible,input:focus-visible,a:focus-visible,.bufscroll:focus-visible,summary:focus-visible{outline:3px solid #c0392b;outline-offset:2px}
nav a:focus-visible,#aim a:focus-visible,.mapwrap>.pbtn:focus-visible{outline-color:#ffd84a}
#contact a:focus-visible{outline-color:#1c2140}
.label{font-family:'IBM Plex Mono',monospace;font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-size:13px}
.textlink{color:#ffffff;font-family:'IBM Plex Mono',monospace;font-weight:600;letter-spacing:.5px;text-transform:uppercase;font-size:16px;display:inline-flex;align-items:center;min-height:44px}
.textlink:hover{color:#ffd84a}
.step{display:flex;flex-direction:column;gap:6px;padding-top:12px;border-top:4px solid #1c2140}
.step h3{margin:0;font-size:clamp(30px,2.6vw,36px);line-height:1.1}
.step p{margin:0;font-size:18px;line-height:1.5}
.more summary{cursor:pointer;padding:12px 0;font-family:'IBM Plex Mono',monospace;font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-size:14px}
.more summary:hover{color:#b5301f}
.more summary::marker{color:#b5301f}
.navlink{color:#ffffff;text-decoration:none;font-family:'IBM Plex Mono',monospace;font-weight:600;letter-spacing:.5px;text-transform:uppercase;font-size:14px;display:flex;align-items:center;min-height:44px;padding:0 10px}
.navlink:hover{color:#ffd84a}
.mapwrap{width:min(100%,max(460px,calc((100vh - 290px)*320/208)));margin:0 auto}
#map{display:block;width:100%;aspect-ratio:320/208;image-rendering:pixelated;cursor:pointer;background:#6cc063}
input[type=range]{accent-color:#c0392b;width:100%;height:28px;margin:0}
.grass{background-color:#62b35a;background-image:repeating-linear-gradient(0deg,#62b35a 0 44px,transparent 44px 48px),repeating-linear-gradient(90deg,#57a650 0 4px,transparent 4px 48px)}
.sea{background-color:#2a68ab;background-image:repeating-linear-gradient(0deg,#2a68ab 0 44px,transparent 44px 48px),repeating-linear-gradient(90deg,#3a7cc2 0 24px,transparent 24px 72px)}
.bufscroll{scrollbar-width:thin;scrollbar-color:#aab1d2 #e9ecf8}
@media (min-width:800px){nav{position:sticky;top:0;z-index:10}section{scroll-margin-top:68px}}
@media (min-width:1100px){.bufscroll{height:400px!important}}
@media (max-width:559px){nav .pbtn-go{display:none}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}#list-bars>*{transition:none!important}}
