.recommendations-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:30px}
.recommendations-heading .section-label{margin-bottom:18px}
.recommendations-heading h2{font-family:var(--serif);font-size:54px;line-height:1.08;letter-spacing:-1px;font-weight:400}
.recommendations-intro{color:var(--muted);font-size:13px;line-height:1.8;margin-top:15px}
.recommendation-controls{display:flex;align-items:center;gap:10px;flex:none;padding-bottom:3px}
.recommendation-count{display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:1px;color:var(--muted);margin-right:15px;font-variant-numeric:tabular-nums}
#recommendation-position{color:var(--ink)}
.recommendation-count-divider{color:#667a6e}
.recommendation-controls button{display:grid;place-items:center;width:48px;height:48px;background:transparent;color:var(--ink);border:1px solid #607066;border-radius:50%;transition:background .2s,border-color .2s,color .2s}
.recommendation-controls button:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.recommendation-controls svg{display:block;width:22px;height:22px}
.recommendation-toggle[hidden],.recommendation-toggle .recommendation-play-icon,.recommendation-toggle[data-paused=true] .recommendation-pause-icon{display:none}
.recommendation-toggle[data-paused=true] .recommendation-play-icon{display:block}
.recommendation-carousel{min-width:0}
.recommendation-stage{position:relative;aspect-ratio:2.05;overflow:hidden;background:#101814;touch-action:pan-y pinch-zoom}
.recommendation-slide{position:absolute;inset:0;overflow:hidden;isolation:isolate}
.recommendation-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none}
.recommendation-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,15,10,.94) 0%,rgba(6,15,10,.62) 25%,rgba(6,15,10,.12) 65%,rgba(6,15,10,.2) 100%);pointer-events:none}
.recommendation-category{position:absolute;top:28px;left:34px;padding:6px 10px;font-size:8px;line-height:1.5;letter-spacing:1.2px;text-transform:uppercase;color:#f0f2e8;background:rgba(12,26,17,.6);border:1px solid rgba(225,238,221,.25);backdrop-filter:blur(8px)}
.recommendation-copy{position:absolute;left:38px;bottom:33px;right:38px;color:#f4f4e8}
.recommendation-location{font-size:9px;line-height:1.4;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:10px;color:#e0e8d9}
.recommendation-copy h3{font-family:var(--serif);font-size:clamp(40px,5vw,70px);font-weight:400;line-height:1.06;letter-spacing:-1.1px;max-width:1000px;text-wrap:balance}
.recommendation-description{font-size:13px;line-height:1.7;color:#e2e8dc;margin-top:12px;max-width:670px}
.recommendation-link{display:inline-flex;align-items:center;gap:13px;margin-top:19px;padding-bottom:4px;border-bottom:1px solid rgba(241,244,230,.5);font-size:11px;line-height:1.5;color:#f4f4e8;transition:border-color .2s,color .2s}
.recommendation-link:hover{color:#f5c4a4;border-color:#f5c4a4}
.recommendation-link .external-icon{width:15px;height:15px}
.recommendation-meta{display:flex;justify-content:space-between;align-items:start;gap:22px;margin:12px 0 23px;min-height:16px}
.recommendation-credit{font-size:8px;line-height:1.7;color:var(--muted)}
.recommendation-credit a{text-decoration:underline;text-underline-offset:3px}
.recommendation-hint{font-size:9px;line-height:1.7;color:var(--muted);text-align:right;flex:none}
.recommendation-thumbnails{position:relative;display:flex;gap:13px;overflow-x:auto;overflow-y:hidden;padding:3px 3px 15px;margin:-3px;scrollbar-width:thin;scrollbar-color:#7e947e transparent;scroll-snap-type:x proximity;overscroll-behavior-x:contain}
.recommendation-thumbnails::-webkit-scrollbar{height:3px}
.recommendation-thumbnails::-webkit-scrollbar-thumb{background:#7e947e}
.recommendation-thumb{flex:0 0 153px;min-width:0;display:flex;flex-direction:column;padding:0 0 12px;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);text-align:left;scroll-snap-align:start;transition:color .2s,border-color .2s}
.recommendation-thumb-image{position:relative;display:block;width:100%;height:87px;overflow:hidden;background:#152219;margin-bottom:11px}
.recommendation-thumb-image img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(.5) brightness(.63);transition:filter .2s}
.recommendation-thumb-number{position:absolute;left:8px;bottom:6px;font-size:8px;line-height:1.4;color:#f1eee0;text-shadow:0 1px 4px #000;font-variant-numeric:tabular-nums}
.recommendation-thumb-name{font-size:10px;line-height:1.5;padding:0 2px}
.recommendation-thumb[aria-selected=true]{border-bottom-color:var(--accent);color:var(--ink)}
.recommendation-thumb[aria-selected=true] img,.recommendation-thumb:hover img,.recommendation-thumb:focus-visible img{filter:none}
.recommendation-thumb:hover{color:var(--ink)}
.recommendation-thumb:focus-visible{outline-offset:0}
.recommendations-section .off-hours-notes{margin-top:38px}
@media(max-width:900px){.recommendation-stage{aspect-ratio:1.55}.recommendation-copy{left:29px;right:29px;bottom:27px}.recommendation-category{left:27px;top:24px}.recommendation-copy h3{font-size:52px}.recommendation-thumb{flex-basis:139px}.recommendation-thumb-image{height:83px}}
@media(max-width:600px){.recommendations-heading{flex-direction:column;align-items:start;gap:22px;margin-bottom:22px}.recommendations-heading h2{font-size:43px}.recommendations-heading .section-label{margin-bottom:17px}.recommendations-intro{font-size:12px;max-width:300px;margin-top:13px}.recommendation-controls{width:100%;justify-content:flex-end;padding:0}.recommendation-count{margin-right:auto}.recommendation-controls button{width:44px;height:44px}.recommendation-stage{aspect-ratio:.88}.recommendation-category{top:21px;left:21px;font-size:7px}.recommendation-copy{left:22px;right:22px;bottom:24px}.recommendation-copy h3{font-size:42px;letter-spacing:-.8px;line-height:1.05;text-wrap:initial}.recommendation-location{font-size:8px;letter-spacing:1.2px}.recommendation-description{font-size:12px;line-height:1.65;margin-top:13px}.recommendation-link{min-height:37px;margin-top:15px;padding-bottom:5px;font-size:11px}.recommendation-meta{flex-direction:column;gap:7px;margin:12px 0 18px}.recommendation-hint{font-size:8px;text-align:left}.recommendation-credit{font-size:8px}.recommendation-thumbnails{gap:11px}.recommendation-thumb{flex-basis:123px}.recommendation-thumb-image{height:77px}.recommendation-thumb-name{font-size:10px}.recommendations-section .off-hours-notes{margin-top:29px}}
@media(prefers-reduced-motion:reduce){.recommendation-controls button,.recommendation-link,.recommendation-thumb,.recommendation-thumb-image img{transition:none}}
