/* Retro dialogue panel with cream paper and an arcade nameplate. */
.gavin-bubble{position:absolute;top:18px;right:-28px;z-index:6;width:216px;padding:13px 14px 9px;background:var(--cream);color:var(--deep);border:3px solid var(--deep);box-shadow:0 0 0 3px var(--yellow),6px 6px 0 #b51422;border-radius:2px}
.gavin-bubble:before{content:'';position:absolute;left:-16px;top:58px;width:22px;height:22px;background:var(--cream);border-left:3px solid var(--deep);border-bottom:3px solid var(--deep);transform:rotate(45deg)}
.gavin-name{display:block;position:relative;font:18px/1.2 var(--display);color:#b8101c}.gavin-name span{display:block;margin-top:3px;font:700 12px/1.2 var(--body);text-transform:uppercase;letter-spacing:.5px;color:var(--deep)}
.gavin-bubble p{position:relative;margin:10px 0;font:600 17px/1.25 var(--body);min-height:85px}
#gavin-cta{display:block;font:700 16px/1.2 var(--condensed);text-transform:uppercase;text-decoration:underline;text-underline-offset:3px;min-height:40px;color:#a70b17}
.gavin-bubble a:focus-visible,.gavin-bubble button:focus-visible{outline:3px solid #0058a3;outline-offset:3px}.gavin-bubble a:hover,.gavin-bubble button:hover{color:#0058a3}
.site-footer .local{display:flex;max-width:285px;min-width:0;line-height:1.4}.site-footer .local span{overflow-wrap:anywhere}
@media(min-width:1001px) and (max-width:1250px){.gavin-bubble{right:-30px;width:180px;padding:10px}.gavin-bubble p{font-size:16px;min-height:100px}.gavin-name span{font-size:11px}.bottom-note{display:none}}
@media(max-width:1000px){.hero-inner{height:auto;display:flex;flex-direction:column}.hero-copy{width:100%;max-width:710px}.host-art{position:relative;right:auto;bottom:auto;width:min(600px,100%);height:340px;align-self:center;opacity:1;margin-top:15px}.gavin-bubble{position:relative;top:auto;right:auto;width:min(360px,100%);align-self:center;margin:0 0 30px}.gavin-bubble:before{top:-15px;left:45%;transform:rotate(135deg)}.gavin-bubble p{min-height:44px}.gavin-bubble #gavin-cta{min-height:32px}.site-footer .local{max-width:300px}}
@media(max-width:640px){.host-art{width:calc(100% + 40px);height:280px;margin:5px -20px 15px}.gavin-bubble{margin:0 3px 28px;width:calc(100% - 6px);padding:14px 17px 8px}.gavin-bubble p{min-height:64px}.site-footer .local{text-align:left;font-size:14px;max-width:290px}}

#event-dialog{max-width:620px;max-height:85vh;overflow:auto;overflow-wrap:anywhere}#event-dialog h2{font-size:27px}#event-dialog h3{color:var(--yellow);font:700 20px var(--condensed);text-transform:uppercase;margin:24px 0 8px}#event-dialog dt{color:var(--yellow);font-weight:700;margin-top:16px}#event-dialog dd{margin:5px 0;font-size:18px;line-height:1.5}#event-dialog-description{white-space:pre-wrap;font-size:17px;margin:10px 0 0}.event-card{width:100%}

/* Chattanooga introduction, matching the original arcade palette. */
.hero-copy>p{max-width:665px}.hero-copy>p strong{font-weight:700}
.about{display:grid;grid-template-columns:120px minmax(0,1fr) 215px;gap:26px;align-items:center;margin-bottom:16px;padding:28px 32px;background:linear-gradient(115deg,#102d50,#00152e 65%);border-color:#35577a;box-shadow:inset 5px 0 var(--yellow)}
.about-art{width:120px;height:124px;object-fit:contain;filter:drop-shadow(0 6px 12px #0005)}.about-label{color:var(--yellow);font:700 15px var(--condensed);text-transform:uppercase;letter-spacing:2px}.about h2{font:clamp(22px,2.2vw,31px)/1.25 var(--display);color:var(--cream);text-shadow:2px 2px #b51a25;margin:7px 0 13px}.about-copy p{font-size:17px;line-height:1.5;max-width:780px}.about-copy p+p{margin-top:10px;color:#c6ddf2}.about-local{display:flex;gap:12px;align-items:flex-start;border-left:1px solid #35577a;padding-left:22px;color:#bcd8f0;font:600 19px/1.4 var(--condensed)}.about-local svg{color:var(--yellow)}.about-local strong{display:block;color:var(--yellow);margin-top:7px}
@media(max-width:1100px){.about{grid-template-columns:100px minmax(0,1fr);gap:22px}.about-art{width:100px;height:105px}.about-local{grid-column:2;border-left:0;border-top:1px solid #35577a;padding:14px 0 0}.about-local br{display:none}.about-local strong{display:inline;margin-left:5px}.about-local span{word-spacing:2px}}
@media(max-width:640px){.about{grid-template-columns:minmax(0,1fr);padding:24px;gap:16px}.about-art{width:78px;height:81px}.about-local{grid-column:1}.about h2{font-size:23px}.about-copy p{font-size:16px}.about-local{font-size:17px}.about-local strong{display:block;margin:4px 0 0}}

/* Extra breathing room between the hero and game cards. */
.games{margin-top:14px}
.about{grid-template-columns:120px minmax(0,1fr)}
@media(max-width:1100px){.about{grid-template-columns:100px minmax(0,1fr)}}
@media(max-width:640px){.about{grid-template-columns:minmax(0,1fr)}}

.about-copy p{max-width:none}
