/* PBS Bar holding page (2 Oct 2026, MASTER Step 0 #7 / ESTATE X31): the open demonstration is off until Bar has a sign-in.
   Built to the estate's phone rules: the main action on the first screen in landscape (740x360), nothing scrolls sideways,
   every link and button at least 32px tall. */
* { box-sizing: border-box; }
html { font-size: 100%; }
body { margin: 0; min-height: 100vh; display: flex; flex-direction: column; font: 1rem/1.5 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; color: #17241f; background: #f6f3ec; }
main { flex: 1; width: 100%; max-width: 36rem; margin: 0 auto; padding: 1.25rem 1.25rem 0.5rem; }
.brand { margin: 0 0 0.5rem; font-weight: 600; display: flex; align-items: center; gap: 0.5rem; }
.mark { display: inline-grid; place-items: center; width: 2rem; height: 2rem; border-radius: 0.4rem; background: #1b3a2f; color: #fff; font-size: 0.85rem; }
h1 { margin: 0 0 0.5rem; font-size: 1.5rem; line-height: 1.25; }
p { margin: 0 0 0.75rem; }
.btn { display: inline-flex; align-items: center; min-height: 44px; padding: 0 1.25rem; border-radius: 0.5rem; background: #1b3a2f; color: #fff; font-weight: 600; text-decoration: none; }
.btn:focus-visible, a:focus-visible { outline: 3px solid #c47f00; outline-offset: 2px; }
.small { font-size: 0.9rem; color: #3b4a44; }
footer { width: 100%; max-width: 36rem; margin: 0 auto; padding: 0.5rem 1.25rem 1rem; font-size: 0.9rem; display: flex; flex-wrap: wrap; gap: 0 1rem; align-items: center; }
footer a { display: inline-flex; align-items: center; min-height: 32px; color: #1b3a2f; }
footer p { margin: 0; width: 100%; color: #3b4a44; }
@media (orientation: landscape) and (max-height: 480px) {
  main { padding-top: 0.75rem; }
  h1 { font-size: 1.25rem; }
  p { margin-bottom: 0.5rem; }
}
