/* Food tours, individually composed with the approved guide identity. */
.page-food-tours .food-intro{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:55px;padding:34px 0 24px}.food-intro h1{font-size:clamp(44px,4.5vw,64px);font-weight:500;line-height:1.06;letter-spacing:-.025em;max-width:15ch}.food-intro .dek{font-size:17px;line-height:1.8;margin-top:24px;max-width:53ch}.food-intro .abyline{display:flex;align-items:center;gap:12px;margin-top:24px;font-size:12px;line-height:1.8}.food-intro .av img{width:40px;height:40px;object-fit:cover;border-radius:50%}.food-intro .abyline span{display:block}.food-intro .abyline a{color:var(--accent)}.food-intro .plain-links{margin-top:22px;gap:22px;font-size:14px}.page-food-tours .food-intro figure img{height:350px;width:100%;object-fit:cover}.food-intro figcaption,.tolv-tphoto figcaption{font-size:11px;line-height:1.6;color:var(--muted);margin-top:7px}.food-disclosure{font-size:12px;line-height:1.8;color:var(--muted);margin:0 0 24px;max-width:95ch}
.food-tools{display:grid;grid-template-columns:1fr 1fr;gap:0 34px;padding:0 0 22px}.page-food-tours .food-tools>details{padding:0;background:none;margin:0;border-top:1px solid var(--line);min-width:0}.food-tools summary{padding:16px 28px 16px 0;position:relative;font-size:15px;font-weight:600;color:var(--accent);list-style:none;cursor:pointer;line-height:1.5}.food-tools summary::-webkit-details-marker{display:none}.food-tools summary::after{content:'+';position:absolute;right:4px;top:16px;font-size:19px;font-weight:400}.food-tools details[open]>summary::after{content:'−'}.food-tools summary>span{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:5px}.food-tools details>p{font-size:15px;line-height:1.85;margin:0 0 20px}.food-tools details a{color:var(--accent)}.food-tools .food-comparison[open]{grid-column:1/-1;grid-row:1}.food-tools .food-comparison table{min-width:690px;font-size:13px;width:100%}.food-tools .food-comparison td{background:var(--paper)}.food-tools .food-comparison th{background:var(--surface)}.food-tools .table-scroll{overflow:auto;margin:0 0 20px;scrollbar-color:var(--muted) var(--surface)}.food-tools .table-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.food-jump>div{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;padding-bottom:20px}.food-jump a{font-size:13px;text-decoration:none;display:flex;gap:10px;line-height:1.7}.food-jump .n{color:var(--accent)}
.food-entry{padding:32px 0;border-top:1px solid var(--line);scroll-margin-top:25px}.food-entry-heading{display:flex;align-items:flex-start;gap:20px;margin-bottom:24px}.food-rank{font:500 32px/1.15 var(--display);color:var(--accent);min-width:39px}.food-entry-heading h2{flex:1;font:600 35px/1.15 var(--display);letter-spacing:-.018em;margin:0;max-width:30ch;scroll-margin-top:25px}.food-rating{text-align:right;margin-left:auto;flex-shrink:0}.food-rating strong{font:500 37px/1 var(--display);color:var(--accent);white-space:nowrap}.food-rating small{font:400 13px var(--body);color:var(--muted);margin-left:3px}.food-rating>span{display:block;font-size:11px;color:var(--muted);margin-top:8px}.food-entry-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:36px;align-items:start}.food-entry .tolv-tphoto{margin:0}.food-entry .tolv-tphoto img{width:100%;height:300px;object-fit:cover;border-radius:4px}.food-entry-copy p{font-size:16px;line-height:1.85;margin:0 0 18px}.food-entry-copy .tolv-tt-meta{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:17px}.food-entry .food-book{font-size:14px;min-height:48px;margin-top:2px}.food-entry .food-book .icon{width:22px;height:22px}.food-return{display:inline-flex;gap:10px;align-items:center;color:var(--accent);font-size:12px;min-height:28px}.food-return .icon{width:18px;height:18px}
.food-closing{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:65px;border-top:1px solid var(--line);padding-top:32px;margin-top:15px;align-items:start}.food-closing h2{font-size:33px;line-height:1.2;font-weight:500;margin:30px 0 18px}.food-closing-copy>h2:first-child{margin-top:0}.food-closing-copy>p{font-size:16px;line-height:1.85;margin-bottom:24px}.food-faq details{border-top:1px solid var(--line);margin:0}.food-faq summary{font-size:16px;line-height:1.6;padding:16px 0;color:var(--ink);font-weight:600;cursor:pointer}.food-faq details p{font-size:15px;line-height:1.8;margin:0 0 20px}.food-advertising .wi-managed-slot{margin:0 0 30px}.food-related{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:30px}.food-related .tolv-xlink{font-size:15px;line-height:1.8;background:var(--surface);padding:24px;margin:0;border-radius:4px}.food-related .tolv-xlink span{font-size:12px;color:var(--muted);margin-bottom:8px}.food-related a{color:var(--accent)}
@media(max-width:1100px){.page-food-tours .food-intro{gap:32px}.food-intro h1{font-size:54px}.food-entry-heading h2{font-size:31px}.food-entry-body{gap:28px;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}.food-entry .tolv-tphoto img{height:280px}.food-closing{gap:35px}.food-entry-copy p{font-size:15px}}
@media(max-width:850px){.page-food-tours .food-intro{grid-template-columns:1fr 1fr;gap:28px}.food-intro h1{font-size:46px}.food-intro .dek{font-size:16px}.page-food-tours .food-intro figure img{height:350px}.food-entry-heading{gap:15px}.food-entry-heading h2{font-size:30px}.food-rating strong{font-size:32px}.food-entry-body{grid-template-columns:1fr;gap:23px}.food-entry .tolv-tphoto img{height:330px}.food-entry-copy p{font-size:16px}.food-closing{display:block}.food-advertising{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:28px}.food-advertising .wi-managed-slot{margin:0 auto}.food-related{gap:20px}.food-jump>div{grid-template-columns:1fr}}
@media(max-width:600px){.page-food-tours .food-intro{display:block;padding:28px 0 20px}.food-intro h1{font-size:44px;max-width:14ch}.food-intro .dek{margin-top:20px}.food-intro .abyline{font-size:11px;margin-top:20px}.food-intro .plain-links{font-size:13px;gap:20px}.page-food-tours .food-intro figure{margin-top:25px}.page-food-tours .food-intro figure img{height:230px}.food-disclosure{font-size:12px}.food-tools{grid-template-columns:1fr;gap:0;padding-bottom:14px}.food-tools summary{font-size:14px}.food-tools details>p{font-size:15px}.food-jump>div{grid-template-columns:1fr}.food-entry{padding:26px 0}.food-entry-heading{gap:12px;flex-wrap:wrap;margin-bottom:20px}.food-rank{font-size:27px;min-width:30px}.food-entry-heading h2{font-size:29px;max-width:calc(100% - 45px)}.food-rating{display:flex;align-items:baseline;gap:10px;flex-basis:calc(100% - 42px);text-align:left;margin-left:42px}.food-rating strong{font-size:29px}.food-rating>span{margin:0}.food-entry .tolv-tphoto img{height:auto;aspect-ratio:1.5;object-fit:cover}.food-entry .food-book{width:100%;justify-content:space-between;font-size:13px}.food-entry-copy p{font-size:16px;line-height:1.85}.food-entry-copy .tolv-tt-meta{font-size:12px}.food-closing h2{font-size:29px}.food-closing-copy>p{font-size:15px}.food-faq summary{font-size:15px}.food-advertising{grid-template-columns:1fr;gap:24px}.food-related{grid-template-columns:1fr;gap:16px}.food-related .tolv-xlink{padding:22px}.food-closing{padding-top:26px}}
@media(max-width:360px){.food-intro h1{font-size:40px}.food-entry-heading h2{font-size:26px}.food-entry-copy p{font-size:15px}.food-rank{font-size:25px}.food-rating strong{font-size:27px}}

/* Production (William 2026-11-02, keep every feature): the source side rail is restored beside the
   entries with its jump list, ads and Tip Sheet form; the closing no longer carries its own ad column. */
.xp-columns{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:60px;align-items:start}.xp-main{min-width:0}.xp-columns .food-closing,.xp-columns .flight-closing,.xp-columns .entertain-closing{display:block}.xp-columns>.jumprail{min-width:0;padding-top:30px}.jumprail .template-jump{background:var(--surface);padding:10px 20px;margin-bottom:25px}.jumprail .template-jump summary{font-size:15px;font-weight:600;color:var(--accent);cursor:pointer;padding:8px 0}.jumprail .template-jump a{display:flex;gap:10px;padding-block:6px;font-size:13px;line-height:1.5;text-decoration:none}.jumprail .template-jump .n{color:var(--accent)}.jumprail .railtipbox{background:var(--rose);color:var(--rose-ink);padding:22px;margin:25px 0}.jumprail .railtipbox h4{font:500 24px/1.2 var(--display);color:var(--ink);margin:0 0 8px}.jumprail .railtipbox p{font-size:14px;line-height:1.6}.jumprail .railtipbox .cbd-nl-form{display:flex;flex-direction:column;gap:10px;margin-top:14px}
@media(max-width:1000px){.xp-columns{display:block}.xp-columns>.jumprail{padding-top:10px;margin-bottom:35px}}

/* Booking widget beside the entry, not inside the text column (Will 2026-11-02: no gaps). The photo,
   description, facts and button run down the main column; the Viator card has its own column, so
   neither column leaves a tall empty space. Phones stay one column. */
@media(min-width:700px){
.food-entry-body,.flight-entry-body,.show-review-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 262px;column-gap:32px;row-gap:0;align-items:start}
.food-entry-copy,.flight-entry-copy,.show-review-body{display:contents}
.food-entry-body>figure,.flight-entry-body>figure,.show-review-layout>figure{grid-column:1;grid-row:1;margin:0 0 18px;width:100%;max-width:none}
.food-entry-body>figure img,.flight-entry-body>figure img,.show-review-layout>figure img{width:100%;height:auto;max-height:340px;object-fit:cover}
.food-entry-copy>*,.flight-entry-copy>*,.show-review-body>*{grid-column:1}
.food-entry-copy>.tolv-vwidget,.flight-entry-copy>.tolv-vwidget,.show-review-body>.tolv-vwidget{grid-column:2;grid-row:1 / span 8;margin:0;width:100%}
.food-entry-copy>p:has(>.button),.flight-entry-copy>p:has(>.button),.show-review-body>p:has(>.button){text-align:left;margin-top:8px}
}
