/* Scoped gallery enhancement; the restaurant layout and original photo files are preserved. */
#galeria .gallery-section,#photo-viewer{--panel:#211e1e;--text:#f5f0e9;--muted:#c0b5ae;--accent:#b92534;--rose:#d8979f;--line:#604147}
#galeria .gallery-section{margin:26px auto 48px;max-width:1200px}
#galeria .gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 4px;padding:0 8px}
#galeria .gallery-heading h2{font:normal 30px/1.2 Georgia,serif;margin:0}
#galeria .gallery-heading h2:before{content:'';display:inline-block;width:24px;height:2px;background:var(--accent);vertical-align:middle;margin-right:12px}
#galeria .gallery-caption{font-size:0.75rem;color:var(--muted);white-space:nowrap}
.gallery-fan-host{display:block;min-width:0}
/* Three original images, each with its own aspect ratio. No filler backgrounds, crop or frames. */
.fan-stage{position:relative;width:100%;height:500px;overflow:hidden;overflow:clip;touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none;cursor:grab;isolation:isolate}.fan-stage.is-dragging{cursor:grabbing}.fan-card{position:absolute;left:50%;top:50%;margin:0;will-change:transform,filter,opacity;transform-origin:center;backface-visibility:hidden}.fan-photo{display:block;width:100%;height:100%;margin:0;padding:0;border:0;background:transparent;cursor:inherit;line-height:0}.fan-photo img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none;-webkit-user-select:none}
.gallery-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin:10px auto 0;max-width:460px;padding:0 22px}.gallery-controls>button{flex:0 0 44px;width:44px;height:44px;background:transparent;border:1px solid var(--line);border-radius:50%;font-size:1.5625rem;line-height:1;transition:background-color 110ms}.gallery-controls>button:hover:not(:disabled){background:#44282d}.fan-slider{--progress:0%;flex:1;min-width:0;height:44px;margin:0;appearance:none;-webkit-appearance:none;background:transparent;cursor:ew-resize;touch-action:pan-y}.fan-slider::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:linear-gradient(to right,var(--rose) var(--progress),#ffffff25 var(--progress))}.fan-slider::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;margin-top:-11px;width:26px;height:26px;border:1px solid #e7acb4;border-radius:50%;background:radial-gradient(circle,#f8e3e6 1px,transparent 1.6px) center/5px 5px no-repeat,#86343f;box-shadow:0 2px 6px #0004;cursor:ew-resize}.fan-slider::-moz-range-track{height:4px;border-radius:4px;background:#ffffff25}.fan-slider::-moz-range-progress{height:4px;background:var(--rose)}.fan-slider::-moz-range-thumb{width:24px;height:24px;border:1px solid #e7acb4;border-radius:50%;background:#86343f;cursor:ew-resize}.fan-slider:active::-webkit-slider-thumb{background-color:#a54854}.gallery-help{text-align:center;color:var(--muted);font-size:0.75rem;margin:10px 20px 0}#photo-viewer{position:fixed;inset:0;margin:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;border:0;padding:0;background:#080808;color:var(--text);overflow:hidden;overscroll-behavior:contain}#photo-viewer::backdrop{background:#080808}#photo-viewer[open]{animation:viewer-in 150ms cubic-bezier(0,0,.38,.9)}.viewer-top{position:absolute;top:0;left:0;right:0;padding:calc(10px + env(safe-area-inset-top,0px)) 16px 8px 24px;display:flex;justify-content:space-between;align-items:center;gap:15px;z-index:3;background:linear-gradient(#080808,transparent)}.viewer-top p{font-size:0.8125rem;color:var(--muted)}.viewer-close{font-size:2.125rem;border:0;background:transparent;min-width:44px;min-height:44px;padding:0;line-height:1}.zoom-surface{position:absolute;inset:76px 24px 114px;display:flex;justify-content:center;align-items:center;touch-action:none;overflow:hidden;user-select:none;-webkit-user-select:none;cursor:grab}.zoom-surface:active{cursor:grabbing}#viewer-image{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;transform-origin:center;will-change:transform;user-select:none;pointer-events:none}.viewer-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:52px;border:1px solid #ffffff15;border-radius:5px;background:#171515b8;font:36px/1 Georgia,serif;z-index:2}.viewer-prev{left:12px}.viewer-next{right:12px}.viewer-bottom{position:absolute;bottom:calc(14px + env(safe-area-inset-bottom,0px));left:20px;right:20px;text-align:center;z-index:3}.viewer-bottom p{font-size:0.75rem;color:var(--muted)}.zoom-controls{display:flex;justify-content:center;margin-top:10px;gap:8px}.zoom-controls button{height:44px;min-width:44px;border:1px solid #ffffff25;border-radius:5px;background:#1c1718;padding:0 14px}.zoom-controls [data-zoom=reset]{font-size:0.75rem;min-width:75px}.no-scroll{overflow:hidden}@keyframes viewer-in{from{opacity:0}to{opacity:1}}

.gallery-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.gallery-controls button,.fan-photo,#photo-viewer button{color:inherit;font:inherit;cursor:pointer}
.gallery-controls>button{font-size:1.5625rem}.gallery-controls button:disabled,#photo-viewer button:disabled{opacity:.3;cursor:default}
.gallery-controls button:focus-visible,.fan-photo:focus-visible,.fan-slider:focus-visible,#photo-viewer button:focus-visible{outline:2px solid #d8979f;outline-offset:4px}
#photo-viewer .viewer-close{font-size:2.125rem}#photo-viewer .viewer-arrow{font:36px/1 Georgia,serif}
.gallery-help{min-height:20px}.fan-swipe-hint{display:none;opacity:0;visibility:hidden;letter-spacing:.4px;font-size:0.75rem}
.fan-swipe-hint.is-visible{visibility:visible;animation:gallery-hint-breathe 2.6s ease-in-out infinite}
.fan-swipe-hint.is-static.is-visible{animation:none;opacity:.65}
@keyframes gallery-hint-breathe{0%,100%{opacity:.25}50%{opacity:.7}}
@media(max-width:640px){#galeria .gallery-heading h2{font-size:1.625rem}.fan-stage{height:340px}.gallery-controls{max-width:360px;margin-top:2px}.gallery-help{font-size:0.6875rem}#photo-viewer .viewer-top{padding-left:18px}#photo-viewer .zoom-surface{inset:70px 12px 128px}#photo-viewer .viewer-prev{left:7px}#photo-viewer .viewer-next{right:7px}#photo-viewer .viewer-arrow{width:40px;height:48px}#photo-viewer .viewer-bottom{left:12px;right:12px}#photo-viewer .viewer-bottom p{font-size:0.6875rem}}
@media(max-width:767px),(pointer:coarse){.fan-slider{display:none}.gallery-controls{gap:28px}.gallery-help .desktop-help{display:none}.fan-swipe-hint{display:inline-block}}
@media(prefers-reduced-motion:reduce){#galeria .gallery-section *,#photo-viewer,#photo-viewer *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.fan-swipe-hint.is-visible{opacity:.65}}
