/* Compact, readable restaurant notes; native details preserve keyboard and touch access. */
.food-guide{--food-accent:#8b4e31;--food-wash:#ede5d8;color:var(--ink);font-family:var(--sans);max-width:100%;}
.food-guide .food-kicker{display:block;color:var(--food-accent);font-size:11px;letter-spacing:.13em;font-weight:600;}
.food-guide .food-heading h3{font-family:var(--sans);font-size:clamp(25px,2.5vw,38px);font-weight:600;line-height:1.4;letter-spacing:-.035em;margin:18px 0;}
.food-guide p{font-size:15px;line-height:1.85;color:#596151;margin:0;}
.food-base{display:flex;gap:18px;align-items:center;margin:28px 0;padding:20px 22px;background:var(--food-wash);border-radius:12px;}
.food-base>span{font-size:29px;color:var(--food-accent);}
.food-base small{display:block;font-size:11px;color:#746353;margin-bottom:6px;}
.food-base strong{font-size:16px;font-weight:600;line-height:1.6;}
.food-gallery{margin:30px 0;min-width:0;}
.food-gallery-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;}
.food-gallery-heading h4{font-size:18px;margin:0;}
.food-gallery-heading>span{font-size:11px;color:#66705e;}
.food-guide .food-gallery-note{font-size:12px;margin:9px 0 17px;color:#66705e;}
.food-photo-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 18px)/2);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:1px;padding:1px 1px 12px;scrollbar-width:thin;scrollbar-color:#a6b18f transparent;}
.food-photo-track:focus-visible{outline:2px solid var(--blue);outline-offset:5px;}
.food-photo-card{min-width:0;margin:0;scroll-snap-align:start;}
.food-photo-link{display:block;position:relative;border-radius:12px;overflow:hidden;background:var(--food-wash);aspect-ratio:3/2;}
.food-photo-link img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
.food-photo-link>span{position:absolute;bottom:10px;left:10px;background:#263124e8;color:#fff;padding:6px 9px;border-radius:5px;font-size:10px;}
.food-photo-link:focus-visible{outline:2px solid var(--blue);outline-offset:3px;}
.food-photo-card figcaption{padding:14px 2px 0;}
.food-photo-card h4{font-size:18px;margin:0 0 7px;}
.food-guide .food-photo-card p{font-size:13px;line-height:1.8;}
.food-photo-credit{font-size:10px;line-height:1.8;color:#69735e;margin-top:12px;overflow-wrap:anywhere;}
.food-photo-credit a{display:inline-block;text-decoration:underline;text-underline-offset:3px;padding:5px 0;}
.food-photo-credit small{display:block;font-size:10px;}
@media(hover:hover){.food-photo-link:hover img{transform:scale(1.035);}}
@media(max-width:600px){.food-gallery-heading{display:block;}.food-gallery-heading>span{display:block;margin-top:7px;}.food-photo-track{grid-auto-columns:86%;gap:14px;}.food-photo-link{aspect-ratio:16/10;}.food-photo-card h4{font-size:17px;}}
@media(prefers-reduced-motion:reduce){.food-photo-link img{transition:none;}}
.food-flavors{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0 38px;}
.food-flavors>div{border-top:1px solid #cdd1c4;padding-top:14px;}
.food-flavors>div>span{color:#8a735e;font-size:11px;font-variant-numeric:tabular-nums;}
.food-guide h4{font-family:var(--sans);font-weight:600;line-height:1.5;}
.food-flavors h4{font-size:17px;margin:8px 0;}
.food-flavors p{font-size:14px;}
.food-list-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:16px;}
.food-list-heading h4{font-size:18px;margin:0;}
.food-list-heading>span{font-size:11px;color:#66705e;white-space:nowrap;}
.food-restaurants{display:grid;gap:14px;}
.food-card{border:1px solid #cdd1c4;border-radius:15px;background:#fbfaf5;overflow:hidden;}
.food-card summary{display:block;list-style:none;cursor:pointer;padding:23px 25px;}
.food-card summary::-webkit-details-marker,.food-method summary::-webkit-details-marker{display:none;}
.food-card summary:focus-visible,.food-method summary:focus-visible{outline:2px solid var(--blue);outline-offset:-4px;border-radius:12px;}
.food-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.food-badge{font-size:11px;line-height:1.5;color:#65705d;}
.food-card.is-listed .food-badge{color:var(--food-accent);}
.food-expand{font-size:23px;line-height:1;width:28px;text-align:center;color:#68775e;transition:transform .25s ease;}
.food-card[open] .food-expand{transform:rotate(45deg);}
.food-card summary h4{font-size:20px;letter-spacing:-.02em;margin:10px 0 13px;max-width:95%;}
.food-card-facts{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:12px;color:#5e6856;}
.food-card-facts>span:last-child{white-space:nowrap;color:var(--ink);}
.food-card-facts strong{font-size:24px;font-weight:500;letter-spacing:-.04em;font-variant-numeric:tabular-nums;}
.food-card-facts small{font-size:11px;color:#66705e;}
.food-guide .food-dish-line{font-size:13px;color:#4a5542;margin:12px 0 10px;line-height:1.7;}
.food-relation{display:block;font-size:11px;color:#727965;border-top:1px solid #e1e3d9;padding-top:12px;line-height:1.6;}
.food-card-body{padding:0 25px 25px;animation:food-reveal .28s ease-out;}
.food-card-body>p{border-top:1px solid #e1e3d9;padding-top:20px;font-size:14px;}
.food-order{margin:20px 0;padding:17px 18px;border-left:2px solid #a6b18f;background:#eff1e8;}
.food-order>span{font-size:12px;font-weight:600;color:#425037;}
.food-order p{font-size:14px;margin:7px 0;}
.food-order small{font-size:10px;color:#6c755f;}
.food-card dl{margin:20px 0;}
.food-card dl>div{display:grid;grid-template-columns:48px 1fr;gap:10px;margin-top:12px;font-size:12px;line-height:1.85;}
.food-card dt{color:#78806d;}
.food-card dd{margin:0;color:#4d5745;overflow-wrap:anywhere;}
.food-source-links{display:flex;gap:16px;flex-wrap:wrap;}
.food-source-links a{display:inline-flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #a9b09b;padding:10px 0;font-size:12px;min-height:44px;}
.food-source-links a:hover{color:var(--blue);}
.food-guide .food-stop-note{font-size:13px;border-left:2px solid #b0baa0;padding-left:15px;margin-top:20px;}
.food-method{margin-top:26px;border-top:1px solid #cdd1c4;padding-top:14px;}
.food-method summary{display:flex;justify-content:space-between;gap:20px;cursor:pointer;font-size:12px;color:#637059;list-style:none;padding:12px 0;min-height:44px;}
.food-method>p{font-size:12px;line-height:1.85;margin:12px 0;}
.food-local-notes{border-top:1px solid #d8ddcf;margin-top:20px;padding-top:12px;}
.food-local-notes h4{font-size:14px;margin:12px 0;}
.food-local-notes p,.food-local-notes li{font-size:12px;line-height:1.85;}
@keyframes food-reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.food-guide .food-heading h3{font-size:26px;}.food-guide p{font-size:14px;}.food-base{padding:17px;margin:22px 0;}.food-base strong{font-size:15px;}.food-flavors{gap:18px;margin:24px 0 30px;}.food-flavors h4{font-size:15px;}.food-flavors p{font-size:13px;}.food-list-heading{display:block;}.food-list-heading h4{font-size:17px;}.food-list-heading>span{display:block;margin-top:7px;}.food-card summary{padding:19px 18px;}.food-card summary h4{font-size:18px;}.food-card-body{padding:0 18px 20px;}.food-card-facts{align-items:flex-start;}.food-card-facts>span:first-child{max-width:57%;line-height:1.7;}.food-card-facts strong{font-size:22px;}.food-card-body>p,.food-order p{font-size:14px;}.food-guide .food-dish-line{font-size:12px;}.food-badge{font-size:10px;}.food-card dl>div{grid-template-columns:40px 1fr;gap:8px;}}
@media(prefers-reduced-motion:reduce){.food-card-body{animation:none;}.food-expand{transition:none;}}
