
.dine-guide{font-family:Arial,sans-serif;color:#283124;line-height:1.65;padding:clamp(18px,3vw,38px)}
.dine-guide h1{font-family:Georgia,serif;font-size:clamp(28px,3vw,42px);line-height:1.2;color:#455334;margin:8px 0 18px}
.dine-guide h2{font-family:Georgia,serif;color:#455334;font-size:27px;line-height:1.3;margin:0 0 15px}.dine-guide h3{font-size:21px;line-height:1.35;color:#455334;margin:0 0 12px}.dine-guide p{margin:0 0 16px}
.dine-kicker{font-size:13px;font-weight:bold;letter-spacing:.08em;text-transform:uppercase;color:#716024}.dine-intro{font-size:19px;max-width:75ch}.dine-breadcrumb{font-size:14px;margin-bottom:22px}
.dine-guide section{margin-top:34px;scroll-margin-top:20px}.dine-shortcuts,.dine-actions{display:flex;flex-wrap:wrap;gap:10px}.dine-shortcuts a,.dine-actions a{display:inline-block;border:1px solid #aeb599;border-radius:5px;padding:8px 12px;color:#354723;background:#fffdf3;font-weight:bold;text-decoration:none}.dine-shortcuts a:hover,.dine-actions a:hover{background:#f0e8c9}.dine-guide a:focus-visible{outline:3px solid #ad821b;outline-offset:3px}
.dine-cards{list-style:none;padding:0;margin:18px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.dine-cards>li{min-width:0;padding:24px;background:#fffdf6;border:1px solid #d1d4bf;border-top:4px solid #b99942;border-radius:8px;overflow-wrap:anywhere;display:flow-root}.dine-tag{font-size:13px;text-transform:uppercase;font-weight:bold;color:#716024}.dine-contact{font-size:15px}.dine-photo{float:right;width:160px;margin:0 0 15px 16px}.dine-photo img{display:block;width:160px;height:110px;object-fit:contain;border-radius:6px;background:#f4f0e2}.dine-photo figcaption{font-size:11px;margin-top:4px}.dine-callout{margin-top:28px;padding:22px;background:#eeeedf;border-left:5px solid #b99942}.dine-small{font-size:13px;color:#606457;margin-top:24px!important}.dine-categories h3 a{color:#455334}.dine-actions{clear:both}
@media(max-width:760px){.dine-cards{grid-template-columns:1fr}.dine-cards>li{padding:19px}.dine-guide h2{font-size:24px}.dine-intro{font-size:17px}.dine-photo{width:120px}.dine-photo img{width:120px;height:90px}}
@media(max-width:380px){.dine-photo{float:none;margin:0 0 16px}}

/* Neat two-column restaurant cards: photos never push text into narrow strips. */
.dine-guide .dine-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:stretch}
.dine-guide .dine-cards>li{display:flex;flex-direction:column;padding:24px;box-shadow:0 2px 6px #2831240a;border-radius:10px}
.dine-card-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start;margin-bottom:18px;min-height:112px}
.dine-card-heading.has-photo{grid-template-columns:minmax(0,1fr) 132px}
.dine-card-title{min-width:0}.dine-guide .dine-card-title h3{margin:0;font-size:21px;line-height:1.3}
.dine-guide .dine-card-title .dine-tag{margin:0 0 10px;font-size:12px;line-height:1.4;letter-spacing:.045em}
.dine-guide .dine-photo{float:none;width:132px;margin:0}
.dine-guide .dine-photo img{width:132px;height:90px!important;max-height:90px;object-fit:contain;background:#f0eddf}
.dine-guide .dine-photo figcaption{font-size:10px;line-height:1.4;margin-top:5px}
.dine-guide .dine-contact{margin-top:auto;padding-top:12px;margin-bottom:16px;line-height:1.5}
.dine-guide .dine-actions{display:grid;grid-template-columns: minmax(0,1.4fr) minmax(0,1fr);gap:8px;clear:none}
.dine-guide .dine-actions a{display:flex;align-items:center;justify-content:center;text-align:center;font-size:14px;line-height:1.35;min-height:44px;padding:9px 10px}
.dine-guide .dine-categories>li{min-height:155px}.dine-guide .dine-categories h3{margin-bottom:12px}
.dine-guide .dine-cards>li>p:not(.dine-contact){font-size:16px;line-height:1.6}
@media(max-width:760px){.dine-guide .dine-cards{grid-template-columns:1fr;gap:16px}.dine-guide .dine-cards>li{padding:20px}.dine-card-heading{min-height:0}.dine-guide .dine-categories>li{min-height:0}}
@media(max-width:420px){.dine-card-heading.has-photo{grid-template-columns:minmax(0,1fr) 104px;gap:12px}.dine-guide .dine-photo{width:104px}.dine-guide .dine-photo img{width:104px;height:78px!important;max-height:78px}.dine-guide .dine-card-title h3{font-size:19px}.dine-guide .dine-actions{grid-template-columns:1fr}}
