/* Tokens copied from gentleweapons.com (0areox0ku.xxq.css) */
[hidden]{display:none!important}
@font-face{font-family:"AC Compacta";src:url(/fonts/compacta.woff2) format("woff2"),url(/fonts/compacta.woff) format("woff");font-weight:400 900;font-style:normal;font-display:swap}
:root{
  --gw-bg:#0A0B0D;--gw-surface:#141619;--gw-grid-line:#1F2327;--gw-input:#1F2327;
  --gw-fg:#ECE7DD;--gw-fg-soft:#BDB8AD;--gw-dim:#8C8D88;--gw-dimmer:#7D8078;
  --gw-hair:#30353B;--gw-hair-strong:#5A6068;--gw-signal:#C08A4E;--gw-sand:#B39A76;--gw-ok:#86A98F;--gw-on-accent:#0A0B0D;
  --font-display:"AC Compacta","Impact","Arial Black",sans-serif;
  --font-mono:ui-monospace,"JetBrains Mono","SF Mono",Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  --ease:cubic-bezier(0.2,0.7,0.2,1);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--gw-bg);color:var(--gw-fg);font-family:var(--font-mono);-webkit-font-smoothing:antialiased}
::selection{background:var(--gw-fg);color:var(--gw-bg)}
:focus-visible{outline:2px solid var(--gw-fg);outline-offset:2px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}

.noise{pointer-events:none;z-index:50;opacity:.06;position:fixed;inset:0;background-size:200px 200px;
  background-image:url("data:image/svg+xml,%3Csvg width='200' height='200' viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.hero{position:relative;overflow:clip;min-height:calc(100vh - 49px);display:flex;align-items:center;border-bottom:1px solid var(--gw-hair)}
.grid-bg{position:absolute;inset:0;pointer-events:none;background-size:20px 20px;
  background-image:linear-gradient(var(--gw-grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--gw-grid-line) 1px,transparent 1px);
  -webkit-mask-image:radial-gradient(900px circle at 50% 40%,#000 0%,#00000073 45%,transparent 80%);mask-image:radial-gradient(900px circle at 50% 40%,#000 0%,#00000073 45%,transparent 80%)}
.scanline{pointer-events:none;mix-blend-mode:overlay;opacity:.06;position:absolute;inset:0;background:repeating-linear-gradient(0deg,var(--gw-fg) 0,var(--gw-fg) 1px,transparent 1px,transparent 3px)}
.scanline-sweep{pointer-events:none;position:absolute;inset:0;overflow:hidden}
.scanline-sweep:after{content:"";position:absolute;top:-2px;left:0;right:0;height:2px;background:var(--gw-fg);opacity:.12;animation:7s steps(60,end) infinite gw-sweep}
@keyframes gw-sweep{to{transform:translateY(80vh)}}
.scrim{position:absolute;inset:0;pointer-events:none;background:linear-gradient(#0A0B0D00 0%,#0A0B0D9E 60%,#0A0B0DF7 100%)}
.section-num{position:absolute;top:-.06em;right:-.04em;z-index:0;font-family:var(--font-display);font-weight:900;font-size:clamp(110px,18vw,260px);line-height:.8;color:transparent;-webkit-text-stroke:1px var(--gw-hair);paint-order:stroke fill;user-select:none;pointer-events:none}

.wrap{position:relative;z-index:1;width:100%;max-width:1280px;margin:0 auto;padding:clamp(72px,14vh,160px) 16px clamp(72px,14vh,140px);text-align:center}
@media(min-width:768px){.wrap{padding-left:32px;padding-right:32px}}
.mark{margin:0 0 28px;font-family:var(--font-display);font-weight:900;text-transform:uppercase;line-height:.86;letter-spacing:-.02em;font-size:clamp(20px,3.5vw,48px)}
.headline{margin:0 auto;max-width:1040px;font-family:var(--font-display);font-weight:900;text-transform:uppercase;font-size:clamp(32px,6vw,84px);line-height:.98;letter-spacing:-.01em;text-wrap:balance}
.price{margin:26px 0 0;display:flex;justify-content:center;align-items:baseline;gap:14px;flex-wrap:wrap}
.price-amt{font-family:var(--font-display);font-weight:900;font-size:clamp(56px,9vw,128px);line-height:.95;color:var(--gw-signal);letter-spacing:-.01em}
.price-unit{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gw-fg-soft)}
.lede{margin:22px auto 0;max-width:620px;font-size:15px;line-height:1.7;color:var(--gw-dim);text-wrap:pretty}

.signup{margin:40px auto 0;max-width:560px;display:grid;gap:28px;text-align:left}
.field{display:grid;gap:8px}
.label{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gw-dim)}
.signup input[type=email]{width:100%;color:var(--gw-fg);background:0 0;outline:none;font-family:inherit;font-size:15px;border:none;border-bottom:1px solid var(--gw-hair);border-radius:0;padding:10px 0}
.signup input[type=email]::placeholder{color:var(--gw-dimmer)}
.signup input[type=email]:focus{border-color:var(--gw-signal);caret-color:var(--gw-signal)}
.signup input[aria-invalid=true]{border-color:var(--gw-sand)}
@media (hover:none) and (pointer:coarse){.signup input[type=email]{font-size:16px}}
.actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px}
.cta{position:relative;cursor:pointer;border:2px solid var(--gw-signal);background:var(--gw-bg);color:var(--gw-signal);border-radius:0;
  box-shadow:8px 8px 0 0 var(--gw-signal);padding:14px 28px;font:inherit;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.22em;
  transition:transform 80ms linear,box-shadow 80ms linear,background-color 80ms linear,color 80ms linear}
@media(min-width:900px){.cta span{display:inline-block;min-width:240px;text-align:center}}
.cta:hover,.cta:focus-visible{background:var(--gw-signal);color:var(--gw-on-accent)}
.cta:active{transform:translate(8px,8px);box-shadow:0 0 0 0 var(--gw-signal)}
.cta[disabled]{opacity:.6;cursor:wait}
.msg{flex-basis:100%;text-align:center;min-height:1.4em;margin:0;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gw-sand)}

.ok{margin:36px auto 0;max-width:560px;text-align:center}
.ok-label{margin:0;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gw-dim)}
.ok-on{color:var(--gw-ok)}
.ok-title{margin:12px 0 0;font-family:var(--font-display);font-weight:900;text-transform:uppercase;font-size:clamp(28px,4vw,44px);line-height:.98;letter-spacing:-.02em;text-wrap:balance}
.ok-copy{margin:12px 0 0;color:var(--gw-dim);font-size:15px;line-height:1.75;word-break:break-word}
.ok-copy strong{color:var(--gw-fg);font-weight:400}

.foot{border-top:2px solid var(--gw-fg);padding:16px;text-align:center;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gw-dim)}
@media (prefers-reduced-motion:reduce){*,:before,:after{animation:none!important;transition:none!important}}

/* game */
.game{margin:22px auto 0;max-width:480px}
.game-frame{position:relative;border:2px solid var(--gw-signal);box-shadow:8px 8px 0 0 var(--gw-signal);background:var(--gw-bg);line-height:0}
.game-canvas{display:block;width:100%;height:auto;aspect-ratio:160/216;image-rendering:pixelated;image-rendering:crisp-edges;touch-action:none;outline:none}
.game-hud{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;padding:8px 10px;line-height:1.3;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gw-fg);background:linear-gradient(#0A0B0DE6,#0A0B0D00);pointer-events:none}
.game-hud b{font-weight:700;color:var(--gw-signal)}
.game-msg{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#0A0B0DB3;line-height:1.3;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gw-fg);pointer-events:none}
.game-msg-t{font-family:var(--font-display);font-weight:900;font-size:clamp(32px,5vw,60px);line-height:.95;letter-spacing:-.01em;color:var(--gw-signal)}
.game-ctrls{margin-top:22px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.game-hint{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gw-dim)}
.game-btn{width:64px;height:56px;border:1px solid var(--gw-fg);background:transparent;color:var(--gw-fg);font:inherit;font-size:22px;font-weight:700;border-radius:0;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none}
.game-btn:active,.game-btn:hover{background:var(--gw-fg);color:var(--gw-bg)}
@media (hover:hover) and (pointer:fine){.game-btn{width:44px;height:36px;font-size:16px}}
