/* RoadWorn — shared styles (Concept C: gig poster / PA road signs) */
:root{--paper:#efe6d2;--paper2:#e4d8bf;--ink:#1d1a17;--ink2:#3d3630;--gold:#c9962e;--gold2:#dfae45;--red:#b8352c;
--pa-green:#1d5f3a;--pa-blue:#1e3f7a;--pa-yellow:#f2c230;--pa-brown:#5c3b1e;--max:1140px}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:"Source Serif 4",Georgia,serif;line-height:1.6;-webkit-font-smoothing:antialiased;background-image:radial-gradient(rgba(29,26,23,.06) 1px,transparent 1px);background-size:6px 6px}
img{display:block;max-width:100%}a{color:inherit;text-decoration:none}
.wrap{width:min(var(--max),92vw);margin-inline:auto}
h1,h2,h3,.disp{font-family:"Bebas Neue",Impact,sans-serif;font-weight:400;line-height:.95;letter-spacing:.02em}
.mark{font-family:"Rubik Dirt";letter-spacing:0}
.mono{font-family:"Special Elite",monospace}
.eyebrow{font-family:"Special Elite",monospace;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink2)}
.btn{display:inline-flex;align-items:center;gap:.5rem;font-family:"Bebas Neue";font-size:1.25rem;letter-spacing:.1em;padding:.85rem 1.5rem .7rem;background:var(--ink);color:var(--paper);border:2px solid var(--ink);box-shadow:4px 4px 0 var(--gold);transition:.15s;cursor:pointer}
.btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--gold)}
.btn.alt{background:var(--paper);color:var(--ink)}
.btn.gold{background:var(--gold);color:var(--ink);border-color:var(--ink);box-shadow:4px 4px 0 var(--ink)}
.btn.gold:hover{box-shadow:6px 6px 0 var(--ink)}
section{padding:clamp(3.5rem,8vw,6.5rem) 0}
h2{font-size:clamp(2.6rem,6vw,4.6rem);margin:.4rem 0 1rem}
.lead{font-size:1.25rem}
.rule{height:3px;background:var(--ink);position:relative;margin:2rem 0}.rule:after{content:"";position:absolute;left:0;right:0;top:6px;height:1px;background:var(--ink)}

/* nav */
.nav{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:3px double var(--ink)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;padding:.8rem 0}
.nav .brand{font-family:"Bebas Neue",Impact,sans-serif;font-size:1.75rem;letter-spacing:.08em;color:var(--ink);line-height:1;padding-top:.15rem}
.nav ul{display:flex;gap:1.8rem;list-style:none;font-family:"Bebas Neue";font-size:1.1rem;letter-spacing:.12em;align-items:center}
.nav a:hover{color:var(--red)}.nav a.on{color:var(--red);border-bottom:2px solid var(--red)}
.nav .cta{background:var(--ink);color:var(--paper);padding:.45rem .9rem .3rem;box-shadow:3px 3px 0 var(--gold)}.nav .cta:hover{color:var(--paper)}
.burger{display:none;background:0;border:0;font-size:1.5rem;cursor:pointer;color:var(--ink)}
@media(max-width:800px){.nav ul{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:var(--paper);border-bottom:3px double var(--ink);padding:.5rem 4vw 1rem;align-items:stretch}.nav ul li{padding:.7rem 0;border-bottom:1px solid rgba(29,26,23,.15)}.nav ul li:last-child{border:0;padding-top:1rem}.nav.open ul{display:flex}.burger{display:block}}

/* ===== PA GREEN GUIDE SIGN — one long skinny bar per section header ===== */
:root{--sign-green:#0b7a45;--hwy:"Overpass","Highway Gothic","Arial Narrow",Arial,sans-serif}
.sign{display:block;width:100%;background:var(--sign-green);color:#fff;border-radius:10px;padding:7px;font-family:var(--hwy);font-weight:700;line-height:1;text-align:center;box-shadow:0 8px 20px -12px rgba(0,0,0,.5)}
.sign>span{display:block;border:3px solid #fff;border-radius:6px;padding:.9rem 1.2rem .75rem;font-size:clamp(1.35rem,2.6vw,2rem);letter-spacing:.03em}
.sign.sm>span{padding:.55rem .9rem .45rem;font-size:1rem;letter-spacing:.06em}
.sign.xs{padding:5px;border-radius:7px}.sign.xs>span{border-width:2px;padding:.4rem .7rem .3rem;font-size:.85rem;letter-spacing:.06em}
.sign+h2{margin-top:1.6rem}
/* footer */
footer{padding:2.5rem 0;font-family:"Special Elite";font-size:.85rem;color:var(--ink2);border-top:3px double var(--ink)}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;align-items:center}
footer .mark{font-family:"Bebas Neue",Impact,sans-serif;font-size:1.5rem;letter-spacing:.08em;color:var(--ink)}
footer nav{display:flex;gap:1.2rem;font-family:"Bebas Neue";font-size:1rem;letter-spacing:.12em}

/* forms */
form{display:grid;gap:.75rem;margin-top:1.4rem}.frow{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:520px){.frow{grid-template-columns:1fr}}
input,textarea,select{width:100%;font:inherit;font-size:1rem;color:var(--ink);background:#fff;border:2px solid var(--ink);padding:.85rem 1rem;border-radius:0}
input:focus,textarea:focus{outline:3px solid var(--gold);outline-offset:0}textarea{min-height:130px;resize:vertical}
label.lbl{font-family:"Special Elite";font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;display:block;margin-bottom:.3rem}

/* gallery basics */
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-auto-rows:240px;gap:.8rem;grid-auto-flow:dense}
.tiles a{position:relative;overflow:hidden;background:#000;border:4px solid #fff;box-shadow:0 10px 24px -14px rgba(29,26,23,.6)}
.tiles img{width:100%;height:100%;object-fit:cover;transition:.5s}
.tiles a:hover img{transform:scale(1.04)}
.tiles .tall{grid-row:span 2}.tiles .wide{grid-column:span 2}
@media(max-width:600px){.tiles{grid-auto-rows:170px}.tiles .wide{grid-column:span 1}}
.tiles a[data-video]:after{content:"▶";position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:2.4rem;background:rgba(0,0,0,.25);text-shadow:0 2px 12px rgba(0,0,0,.6)}
.tiles a[data-video] span{position:absolute;left:0;right:0;bottom:0;padding:.5rem .7rem;background:linear-gradient(0deg,rgba(0,0,0,.75),transparent);color:#fff;font-family:"Special Elite";font-size:.75rem}

/* lightbox (no-JS friendly: links open the file; JS upgrades to overlay) */
.lb{position:fixed;inset:0;background:rgba(18,15,12,.94);display:none;place-items:center;z-index:100;padding:2vh 2vw}
.lb.on{display:grid}
.lb img,.lb video{max-width:96vw;max-height:88vh;border:6px solid #fff;background:#000}
.lb .x{position:absolute;top:1rem;right:1.2rem;color:#fff;font:400 2rem/1 "Bebas Neue";background:0;border:0;cursor:pointer}
.lb .n,.lb .p{position:absolute;top:50%;transform:translateY(-50%);color:#fff;font:400 3rem/1 "Bebas Neue";background:0;border:0;cursor:pointer;padding:1rem}
.lb .p{left:.5rem}.lb .n{right:.5rem}
