/* Shared styles for the smaller pages (booking, signup, request, live).
   Same palette and fonts as index.html. */
:root{
  --bg:#0b0a10; --bg-2:#14121c; --panel:#1b1826; --line:#2c2838;
  --ink:#f1ede4; --muted:#a7a1b4;
  --pink:#ff2e88; --cyan:#2de2e6; --yellow:#ffd319; --orange:#ff8a1f; --red:#ff3b3b;
  --display:"Anton", Impact, "Arial Narrow Bold", sans-serif;
  --osd:"VT323", ui-monospace, monospace;
  --body:"Barlow", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:100;
  background:repeating-linear-gradient(to bottom,rgba(0,0,0,0) 0 2px,rgba(0,0,0,.18) 3px 3px);mix-blend-mode:multiply;opacity:.55}
a{color:var(--cyan)} a:hover{color:var(--pink)}
img{max-width:100%;display:block}
.wrap{max-width:1000px;margin:0 auto;padding:0 20px}
.narrow{max-width:560px}
.stripes{height:12px;background:linear-gradient(180deg,var(--red) 0 25%,var(--orange) 25% 50%,var(--yellow) 50% 75%,var(--cyan) 75% 100%)}

.top{display:flex;justify-content:space-between;align-items:center;padding:16px 0}
.brand{font-family:var(--display);font-size:22px;letter-spacing:.04em;color:var(--ink);text-decoration:none;text-transform:uppercase}
.brand span{color:var(--pink)}
.osd{font-family:var(--osd);font-size:24px;letter-spacing:.06em;color:var(--muted)}
.blink{animation:blink 1.1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}

h1,h2{font-family:var(--display);font-weight:400;text-transform:uppercase;line-height:.95;letter-spacing:.01em;margin:0}
h1{font-size:clamp(48px,10vw,96px);text-shadow:-3px 0 0 rgba(45,226,230,.85),3px 0 0 rgba(255,46,136,.85)}
h2{font-size:clamp(30px,5vw,44px);margin-bottom:14px}
.eyebrow{font-family:var(--osd);font-size:26px;color:var(--yellow);text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px}
.lede{font-size:20px;color:#e6e1ea;margin:14px 0 26px}
.muted{color:var(--muted)}
.osd-label{font-family:var(--osd);font-size:22px;color:var(--pink);text-transform:uppercase;letter-spacing:.08em}

.panel{background:var(--panel);border:1px solid var(--line);padding:24px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--osd);font-size:26px;text-transform:uppercase;letter-spacing:.06em;
  text-decoration:none;padding:8px 22px;border:2px solid var(--ink);color:var(--ink);background:transparent;cursor:pointer;border-radius:2px;transition:transform .15s}
.btn:hover,.btn:focus-visible{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--pink);color:var(--ink)}
.btn.primary{background:var(--pink);border-color:var(--pink);color:#fff}
.btn.primary:hover{box-shadow:4px 4px 0 var(--cyan)}
.btn[disabled]{opacity:.5;cursor:wait}
.btn.block{width:100%}

label{font-family:var(--osd);font-size:21px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;display:grid;gap:4px}
input,textarea,select{font:inherit;color:var(--ink);background:var(--bg-2);border:1px solid var(--line);padding:12px 13px;border-radius:2px;width:100%}
input:focus,textarea:focus,select:focus{outline:2px solid var(--cyan);border-color:transparent}
form{display:grid;gap:14px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden} /* honeypot */

.msg{font-family:var(--osd);font-size:24px;padding:10px 14px;border:2px solid;display:none}
.msg.ok{display:block;color:var(--cyan);border-color:var(--cyan)}
.msg.err{display:block;color:var(--yellow);border-color:var(--yellow)}

footer.mini{padding:30px 0 40px;font-family:var(--osd);font-size:21px;color:var(--muted)}
footer.mini a{margin-right:14px}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
