:root{--sun:#f4a623;--sun2:#e8791d;--cream:#fdf6e9;--brown:#3b2a1e;--teal:#1f6f6b;--muted:#7a6656}
*{box-sizing:border-box}body{margin:0;font-family:Georgia,"Times New Roman",serif;background:var(--cream);color:var(--brown);line-height:1.6}
a{color:var(--teal)}img{max-width:100%}
header{background:var(--brown);color:var(--cream);position:sticky;top:0;z-index:10}
.nav{max-width:1100px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:.6rem 1rem;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:.6rem;color:var(--cream);text-decoration:none;font-weight:bold;font-size:1.15rem}
.logo .ph{width:42px;height:42px;border-radius:50%;border:2px dashed var(--sun);display:grid;place-items:center;font:600 .55rem/1 sans-serif;color:var(--sun);text-align:center}
nav ul{list-style:none;display:flex;gap:1rem;margin:0;padding:0;flex-wrap:wrap}nav a{color:var(--cream);text-decoration:none;font-family:sans-serif;font-size:.92rem}nav a:hover,nav a.on{color:var(--sun)}
#menuBtn{display:none;background:none;border:1px solid var(--sun);color:var(--sun);padding:.3rem .6rem;border-radius:6px;font-size:1rem}
@media(max-width:820px){#menuBtn{display:block}nav{width:100%;display:none}nav.open{display:block}nav ul{flex-direction:column;gap:.5rem;padding:.6rem 0}}
.hero{background:radial-gradient(circle at 80% 10%,#ffd36b 0,var(--sun) 25%,var(--sun2) 60%,#b44f1a 100%);color:#fff;text-align:center;padding:4rem 1rem 3.5rem}
.hero h1{font-size:clamp(2rem,6vw,3.4rem);margin:.2rem 0;text-shadow:0 2px 8px #0004}.hero p{font-size:1.15rem;max-width:640px;margin:.5rem auto}
.btn{display:inline-block;background:var(--brown);color:var(--cream);padding:.7rem 1.3rem;border-radius:999px;text-decoration:none;font-family:sans-serif;margin:.3rem;border:0;font-size:1rem;cursor:pointer}.btn.alt{background:#fff;color:var(--brown)}
main{max-width:1100px;margin:auto;padding:2rem 1rem}h2{color:var(--sun2);border-bottom:3px solid var(--sun);display:inline-block;padding-bottom:.1rem}
.grid{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.card{background:#fff;border-radius:14px;padding:1.2rem;box-shadow:0 3px 12px #3b2a1e18}
.hours td{padding:.15rem .8rem .15rem 0}.tbc{background:#fff3cd;border:1px dashed #c99a00;color:#7a5b00;font:600 .75rem sans-serif;padding:.1rem .45rem;border-radius:6px}
.ph-img{background:repeating-linear-gradient(45deg,#efe2c9,#efe2c9 12px,#f7edda 12px,#f7edda 24px);border:2px dashed var(--muted);border-radius:12px;aspect-ratio:4/3;display:grid;place-items:center;text-align:center;color:var(--muted);font:600 .9rem sans-serif;padding:1rem}
.map{width:100%;height:340px;border:0;border-radius:12px}
.beer{display:flex;gap:1rem;align-items:flex-start}.beer img{width:64px;height:64px;border-radius:10px;object-fit:cover;background:#eee}.beer h3{margin:0;font-size:1.1rem}.beer .style{color:var(--muted);font-style:italic;font-size:.92rem}
.pill{display:inline-block;background:var(--cream);border:1px solid var(--sun);border-radius:999px;padding:0 .55rem;font:.8rem sans-serif;margin:.15rem .2rem 0 0}
.small{font-size:.85rem;color:var(--muted);font-family:sans-serif}
.week{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem}@media(max-width:820px){.week{grid-template-columns:1fr}}
.day{background:#fff;border-radius:10px;padding:.6rem;min-height:110px;box-shadow:0 2px 8px #0001}.day h4{margin:0 0 .3rem;font-family:sans-serif;font-size:.85rem;color:var(--teal)}
.truck{background:var(--sun);color:var(--brown);border-radius:8px;padding:.3rem .45rem;font:600 .82rem sans-serif;margin-bottom:.3rem}.truck.own{background:var(--brown);color:var(--cream)}
form label{display:block;margin:.6rem 0 .2rem;font-family:sans-serif;font-size:.9rem}form input,form select,form textarea{width:100%;padding:.55rem;border:1px solid #cbb89c;border-radius:8px;font:inherit}
.flag{background:#fff3cd;border-left:5px solid #c99a00;padding:.7rem 1rem;border-radius:6px;font-family:sans-serif;font-size:.9rem}
footer{background:var(--brown);color:var(--cream);padding:2rem 1rem;font-family:sans-serif;font-size:.9rem}footer .grid{max-width:1100px;margin:auto}footer a{color:var(--sun)}

.logo-full{height:76px;width:auto;display:block}.logo-mark{display:none;height:44px;width:44px}
@media(max-width:820px){.logo-full{display:none}.logo-mark{display:block}}

.pe-card{max-width:720px;margin-top:1rem}.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}@media(max-width:620px){.fgrid{grid-template-columns:1fr}}
fieldset{border:1px solid #cbb89c;border-radius:8px;margin:.6rem 0 0;padding:.3rem .8rem .5rem}legend{font-family:sans-serif;font-size:.9rem;padding:0 .3rem}
label.radio{display:inline-flex;align-items:center;gap:.3rem;margin:.3rem 1rem .1rem 0}label.radio input{width:auto}
.req{color:#b44f1a}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
form input:focus,form select:focus,form textarea:focus,.btn:focus-visible{outline:3px solid var(--sun);outline-offset:1px}
.err{background:#fde8e4;border-left:5px solid #b44f1a;padding:.7rem 1rem;border-radius:6px;font-family:sans-serif}.thanks h3{color:var(--teal);margin-top:0}
.thanks:focus{outline:none}
/* responsive fixes */
@media(min-width:560px) and (max-width:1000px){main>.grid>.card:last-child:nth-child(odd){grid-column:1/-1}}
@media(max-width:820px){.day.empty{display:none}.week .none-note{display:block}}
.none-note{display:none;font:.9rem sans-serif;color:var(--muted);padding:.4rem 0}
iframe,img,video{max-width:100%}#menu-container{max-width:100%;overflow-x:auto}
.ecard{display:flex;gap:1rem;align-items:flex-start}.ecard h3{margin:.3rem 0 .1rem}.ecard-img{width:96px;height:96px;flex:0 0 96px;aspect-ratio:1;border-radius:12px;object-fit:cover;font-size:2rem;padding:0}@media(max-width:480px){.ecard{flex-direction:column}}
/* Untappd embed: hide its Menu/Events tab bar and make beer/brewery names plain text (no links out) */
#menu-container .menu-list{display:none!important}
#menu-container a.untappd-beer-url,#menu-container a[href*="untappd.com"]{pointer-events:none;cursor:default;text-decoration:none}
/* home hero photo */
.hero.photo{position:relative;background:#3b2a1e;padding:0;overflow:hidden}
.hero.photo picture,.hero.photo img.hero-img{position:absolute;inset:0;width:100%;height:100%}
.hero.photo img.hero-img{object-fit:cover;object-position:center 45%}
.hero.photo .hero-inner{position:relative;padding:7rem 1rem 4.5rem;background:linear-gradient(180deg,#0000 0,#0004 35%,#3b2a1ecc 100%)}
@media(max-width:600px){.hero.photo .hero-inner{padding:5rem 1rem 3rem}}
.hero.photo .hero-inner{background:linear-gradient(180deg,#0003 0,#00000080 45%,#3b2a1ee6 100%)}.hero.photo p{text-shadow:0 1px 6px #000c;font-weight:600}
/* ---- no-distortion rules (site-wide) ---- */
img{max-width:100%;height:auto}
.logo img,.logo-full,.logo-mark,footer img{height:auto;object-fit:contain}
.logo-full{height:76px;width:auto}.logo-mark{height:44px;width:auto}
.hero.photo{position:relative;display:flex;align-items:flex-end;min-height:420px;height:60vh;height:60svh;max-height:640px;background:#3b2a1e;padding:0;overflow:hidden}
.hero.photo picture{position:absolute;inset:0;display:block}
.hero.photo img.hero-img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 45%}
.hero.photo .hero-inner{position:relative;width:100%}
@media(max-width:600px){.hero.photo{min-height:0;height:68vh;height:68svh;max-height:none}}
.logo .logo-full{height:76px;width:auto}.logo .logo-mark{width:44px;height:44px}
footer img{width:200px;height:auto}

/* gallery */
.gal-sec{margin:1.6rem 0}.gal-sec h3{margin:.2rem 0}.gal-sec p{margin:.2rem 0 .7rem}
.gal{display:grid;gap:.6rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}@media(max-width:480px){.gal{grid-template-columns:1fr 1fr;gap:.4rem}}
.gal-item{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:10px;background:#efe2c9}.gal-item picture,.gal-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s}.gal-item:hover img{transform:scale(1.04)}
.lb{position:fixed;inset:0;z-index:50;background:#000e;display:flex;align-items:center;justify-content:center}.lb[hidden]{display:none}
.lb figure{margin:0;max-width:92vw;max-height:88vh;text-align:center}.lb img{max-width:92vw;max-height:80vh;max-height:80svh;width:auto;height:auto;object-fit:contain;border-radius:6px}
.lb figcaption{color:#eee;font:.9rem sans-serif;margin-top:.5rem}.lb button{position:absolute;background:#0008;color:#fff;border:0;font-size:2rem;width:48px;height:48px;border-radius:50%;cursor:pointer}
.lb-x{top:12px;right:12px}.lb-p{left:10px;top:50%;transform:translateY(-50%)}.lb-n{right:10px;top:50%;transform:translateY(-50%)}
.story-img img{width:100%;height:100%;object-fit:cover;border-radius:12px;aspect-ratio:4/3}
.band{margin:2rem 0;border-radius:14px;overflow:hidden;aspect-ratio:21/9}.band img{display:block;width:100%;height:100%;object-fit:cover}
.hero .tagline{font-size:1.35rem;margin:.4rem auto .9rem}.hero .tagline strong{color:#ffd36b}
.playlist{list-style:none;padding:0;margin:0;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.playlist li{background:var(--cream);border-radius:10px;padding:.6rem .8rem;border-left:4px solid var(--sun)}.pl-beer strong{display:block;font-size:1.05rem}.pl-song{margin-top:.2rem}
