/* Crawlable pages: directory, categories, businesses, events */
.pnav{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.pnav a{color:var(--ink);text-decoration:none;font-weight:500;font-size:.95rem}
.pnav a:hover{color:var(--accent)}
.pnav a.btn{color:#fff}
.pwrap{max-width:1040px;margin:0 auto;padding:22px 18px 60px}
.pwrap h1{font-size:clamp(1.9rem,4vw,2.6rem);margin:6px 0 10px}
.pwrap h2{font-size:1.45rem;margin:30px 0 12px}
.lead{font-size:1.06rem;color:var(--ink);max-width:70ch}
.crumbs{font-size:.85rem;color:var(--muted);margin-bottom:6px}
.crumbs a{color:var(--muted)}
.pgrid2{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px}
.pcard2{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;display:grid;gap:6px;align-content:start}
.pcard2.feat{border-color:var(--gold)}
.pcard2.gov{border-left:4px solid var(--accent)}
.pcard2 h3{font-size:1.08rem;margin:0}
.pcard2 h3 a{color:var(--ink);text-decoration:none}
.pcard2 h3 a:hover{color:var(--accent);text-decoration:underline}
.pcard2 p{margin:0;color:var(--muted);font-size:.93rem}
.pmeta{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.92rem;align-items:center}
.catlist{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}
.catlist li{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:10px 14px;display:flex;justify-content:space-between}
.catlist a{font-weight:600;text-decoration:none;color:var(--ink)}
.sos{background:var(--accent-soft);border-radius:var(--r);padding:12px 16px;margin:14px 0}
.sos a{font-weight:700}
.pager{display:flex;gap:6px;flex-wrap:wrap;margin:22px 0}
.pager a,.pager span{padding:6px 12px;border:1px solid var(--line);border-radius:8px;text-decoration:none}
.pager span{background:var(--ink);color:var(--paper)}
.biz-page{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px clamp(16px,3vw,28px);display:grid;gap:12px}
.biz-page h1{margin:0}
.biz-page .sub{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.facts{display:grid;grid-template-columns:max-content 1fr;gap:8px 18px;margin:4px 0}
.facts dt{color:var(--muted);font-size:.9rem;padding-top:2px}
.facts dd{margin:0}
.facts dd.big{font-size:1.25rem;font-weight:600}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.gallery img,.gallery video{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;background:#000}
.gallery video{grid-column:span 2;aspect-ratio:16/9;object-fit:contain}
.cta{display:flex;gap:10px;flex-wrap:wrap}
.pfoot{border-top:1px solid var(--line);margin-top:30px;padding:24px 0 40px;color:var(--muted);font-size:.9rem}
.pfoot nav{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:10px}
.pfoot a{color:var(--ink)}
.sbox{display:flex;gap:8px;margin:14px 0}
.sbox input{flex:1}
.hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media (max-width:640px){.pnav a:not(.btn){display:none}.facts{grid-template-columns:1fr}.facts dt{padding-top:6px}.gallery video{grid-column:auto}}
.crumbs{display:flex;flex-wrap:wrap;gap:2px 6px;align-items:baseline}
.crumbs a{padding:0;border:0;background:none}
.pcard2.gov .pmeta a[href^="tel:"]{font-size:1.15rem;font-weight:700}
.pcard2 .tags{display:flex;flex-wrap:wrap;gap:4px}
.biz-show .show-media{min-height:0;aspect-ratio:16/9;border-radius:12px}
.biz-show .show-thumbs button{width:72px;height:54px}
@media (max-width:640px){.biz-show .show-media{aspect-ratio:4/3}}
.pwrap>.pcard2,.pwrap>.ev-feature{margin-bottom:12px}

/* Header and footer: Hire Gary (green pill with a shine) and Tip (gold pill) */
.pnav a.pn-hire{position:relative;overflow:hidden;color:var(--accent-strong);border:1.5px solid var(--accent);border-radius:999px;padding:5px 13px;font-weight:600;background:var(--accent-soft)}
.pnav a.pn-hire span{display:inline-block;animation:sp-twinkle 2.6s ease-in-out infinite}
.pnav a.pn-hire::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.65),transparent);transform:skewX(-18deg);animation:sp-shine 5s ease-in-out infinite}
.pnav a.pn-hire:hover{background:var(--accent);color:#fff}
.pnav a.pn-tip{border-radius:999px;padding:5px 12px;font-weight:600;background:var(--gold-soft);color:var(--gold);border:1.5px solid color-mix(in srgb,var(--gold) 40%,transparent)}
.pnav a.pn-tip:hover{background:var(--gold);color:#fff}
.pfoot a.pf-hire{color:var(--accent-strong);font-weight:700}
.pfoot a.pf-tip{color:var(--gold);font-weight:700}
@keyframes sp-shine{0%,55%{left:-60%}100%{left:130%}}
@keyframes sp-twinkle{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.35) rotate(45deg)}}
@media (max-width:640px){.pnav a.pn-hire{display:inline-block;padding:4px 10px;font-size:.85rem}.pnav a.pn-tip{display:none}}
@media (max-width:420px){.pnav a.pn-hire{display:none}}
@media (prefers-reduced-motion:reduce){.pnav a.pn-hire::after,.pnav a.pn-hire span{animation:none}}

/* Specials on a business page */
.specials{margin:14px 0 6px;display:grid;gap:8px}
.specials h2{font-size:1.15rem;margin:0}
.special{display:grid;gap:2px;padding:11px 14px;border-radius:12px;background:var(--gold-soft);border:1px solid color-mix(in srgb,var(--gold) 30%,transparent)}
.special b{font-size:1rem}
.special span{color:var(--ink)}
.special small{color:var(--gold);font-weight:600}
.pspecial{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:6px 0 2px;font-weight:600;color:var(--ink)}
.pspecial span{font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;background:var(--gold-soft);color:var(--gold);padding:2px 8px;border-radius:999px}
.pspecial small{color:var(--gold);font-weight:600}

/* Gary's daily roundup on /news and /sports */
.brief{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:14px;padding:16px 18px;margin:14px 0 6px}
.brief-head{display:flex;gap:12px;align-items:flex-start}
.brief-head img{width:44px;height:44px;border-radius:50%;flex:none;background:#fff}
.brief-head h2{font-size:1.25rem;margin:0}
.brief-head p{margin:4px 0 0;color:var(--muted)}
.brief ol{margin:12px 0 8px;padding-left:1.3em;display:grid;gap:10px}
.brief li a{color:var(--ink);text-decoration:none}.brief li a:hover b{text-decoration:underline}
.brief li span{color:var(--ink)}
.brief li small{color:var(--muted);white-space:nowrap}
/* 5.4: news and sports pictures, editor byline */
.byline{display:flex;align-items:center;gap:8px;margin:-4px 0 14px;color:var(--muted);font-size:.92rem}
.byline img{width:28px;height:28px;border-radius:50%;background:#fff;border:1px solid var(--line)}
.byline b{color:var(--ink)}
.pcard2.news-item{grid-template-columns:116px minmax(0,1fr);gap:14px;align-items:start}
.nthumb{position:relative;display:block;width:116px;aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:var(--accent-soft,#e6edf4);text-decoration:none}
.nthumb img{width:100%;height:100%;object-fit:cover;display:block}
.nthumb span{display:none}
.nthumb.none{display:grid;place-items:center;background:linear-gradient(135deg,var(--accent,#033057),color-mix(in srgb,var(--accent,#033057) 70%,#000))}
.nthumb.none span{display:block;color:#fff;font-weight:800;font-size:1.35rem;letter-spacing:.04em}
.nbody{display:grid;gap:6px;min-width:0}
@media (max-width:520px){.pcard2.news-item{grid-template-columns:84px minmax(0,1fr);gap:10px}.nthumb{width:84px}}
.brief ol li.has-img{display:grid;grid-template-columns:88px minmax(0,1fr);gap:12px;align-items:start}
.bthumb{display:block;width:88px;aspect-ratio:4/3;border-radius:8px;overflow:hidden;background:var(--accent-soft,#e6edf4)}
.bthumb img{width:100%;height:100%;object-fit:cover;display:block}
