:root{--red:#d92828;--red-dark:#a82020;--ink:#171717;--muted:#6b6b6b;--line:#e6e6e6;--bg:#ffffff;--bg-soft:#f7f7f5;--radius:14px;--maxw:760px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.55;font-size:16px}a{color:inherit}img{max-width:100%;display:block}.container{max-width:var(--maxw);margin:0 auto;padding:0 20px}.site-header{border-bottom:1px solid var(--line);background:var(--bg)}.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px;padding-bottom:16px}.brand{display:inline-flex;flex-direction:column;gap:2px;text-decoration:none}.brand-word{font-weight:800;letter-spacing:-.02em;font-size:18px;line-height:1.1}.brand .accent{color:var(--red)}.brand-tagline{font-size:11px;font-weight:600;letter-spacing:.03em;color:var(--muted)}.site-footer{border-top:1px solid var(--line);margin-top:56px;padding:32px 0 48px;color:var(--muted);font-size:14px}.site-footer .container{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}.cta,.site-footer a{text-decoration:none}.cta{display:inline-flex;align-items:center;gap:8px;background:var(--red);color:#fff;font-weight:700;padding:10px 18px;border-radius:999px;font-size:15px;line-height:1}.cta:hover{background:var(--red-dark)}.cta--block{display:flex;justify-content:center;padding:14px 20px;border-radius:var(--radius)}.app-panel{margin-top:40px;background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius);padding:24px;text-align:center}.app-panel h2{margin:0 0 6px;font-size:19px}.app-panel p{margin:0 0 16px;color:var(--muted);font-size:15px}main{padding:28px 0 0}h1{font-size:30px;line-height:1.15;letter-spacing:-.02em;margin:0 0 6px}.eyebrow{letter-spacing:.09em;font-size:12px;font-weight:700;color:var(--muted);margin:0 0 10px}.badge,.eyebrow{text-transform:uppercase}.badge{display:inline-block;background:var(--red);color:#fff;font-size:11px;font-weight:800;letter-spacing:.06em;padding:4px 9px;border-radius:6px;margin-bottom:12px}.meta-line{color:var(--muted);font-size:15px;margin:0 0 18px}.meta-line a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}.lede{font-size:17px;margin:0 0 24px}.menu-highlights{font-size:15px;color:var(--muted);margin:-8px 0 24px}.menu-highlights strong{color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:10px;gap:10px;margin:20px 0 28px}.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;background:var(--bg-soft)}.gallery--single img{aspect-ratio:16/9}section.block{border-top:1px solid var(--line);padding-top:22px;margin-top:26px}section.block h2{font-size:17px;margin:0 0 12px}.hours{width:100%;border-collapse:collapse;font-size:15px}.hours td{padding:7px 0;border-bottom:1px solid var(--line)}.hours td:last-child{text-align:right;font-weight:600}.hours tr:last-child td{border-bottom:0}ul.plain{margin:0;padding-left:18px}ul.plain li{margin:4px 0}.offer{border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin-bottom:10px}.offer strong{display:block;margin-bottom:2px}.offer span{color:var(--muted);font-size:14px}.contact-list{list-style:none;margin:0;padding:0;font-size:15px}.contact-list li{padding:8px 0;border-bottom:1px solid var(--line)}.contact-list li:last-child{border-bottom:0}.contact-list a{color:var(--ink)}.hero{padding:8px 0 4px}.hero p{font-size:17px;color:var(--muted);max-width:44ch}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:14px;gap:14px;margin-top:20px}.card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:inherit;display:block}.card:hover{border-color:#cfcfcf}.card img{width:100%;aspect-ratio:16/10;object-fit:cover;background:var(--bg-soft)}.card .card-body{padding:12px 14px}.card .card-body strong{display:block;font-size:16px}.card .card-body span{color:var(--muted);font-size:13px}.notfound{text-align:center;padding:60px 0}.notfound a{color:var(--red);font-weight:700}@media (max-width:520px){h1{font-size:25px}.site-header .container{flex-direction:column;align-items:flex-start}}