* { box-sizing: border-box; }
body { margin: 0; color: #182230; background: #edf0f3; font: 16px/1.5 system-ui, -apple-system, sans-serif; }
nav { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 20px; padding: 20px; }
a { color: #a92a2a; text-underline-offset: 3px; }
button { min-height: 44px; padding: 10px 16px; border: 0; border-radius: 8px; color: white; background: #a92a2a; font: inherit; cursor: pointer; }
:focus-visible { outline: 3px solid #a92a2a; outline-offset: 3px; }
.poster { margin: 0 auto 24px; padding: 32px; max-width: 760px; background: white; text-align: center; }
.brand { margin: 0; color: #a92a2a; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
h1 { margin: 14px 0 8px; font-size: 30px; line-height: 1.2; }
.address { margin: 0; }
h2 { margin: 28px 0 4px; font-size: 34px; line-height: 1.2; }
img { display: block; width: min(100%, 320px); height: auto; margin: 0 auto; }
ol { width: fit-content; margin: 0 auto; text-align: left; padding-left: 24px; }
li { padding: 4px 0; }
.visit { font-weight: 600; }
.url { display: block; overflow-wrap: anywhere; font-size: 14px; }
.help { margin-bottom: 0; font-size: 13px; color: #526070; }
[hidden] { display: none !important; }
@media (max-width: 480px) { .poster { padding: 24px 18px; } h1 { font-size: 25px; } h2 { font-size: 29px; } }
@page { size: letter portrait; margin: .45in; }
@media print {
 body { background: white; }
 nav { display: none; }
 .poster { max-width: none; margin: 0; padding: 14px; break-after: page; break-inside: avoid; }
 .poster:last-child { break-after: auto; }
 a { color: inherit; text-decoration: none; }
}
