/* Native horizontal rails retain ordinary swiping and keyboard browsing. */
.carousel-rail{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:calc((100% - 44px)/3);gap:22px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;padding:10px 0 12px;position:relative;overscroll-behavior-x:contain}
.carousel-rail::-webkit-scrollbar{display:none}
.carousel-rail:focus-visible{outline-offset:-3px}
.carousel-rail>*{scroll-snap-align:start;min-width:0}
.carousel-controls{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:13px;border-top:1px solid var(--line);padding-top:12px}
.carousel-hint{font-size:10px;color:var(--muted)}
.carousel-actions{display:flex;align-items:center;gap:6px}
.carousel-nav{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;padding:0;background:transparent}
.carousel-nav:hover{background:var(--paper-light);border-color:var(--red);color:var(--red)}
.carousel-nav svg{width:18px;height:18px}
.carousel-count{min-width:62px;text-align:center;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.favourites .favourites-grid.carousel-rail{margin-top:7px;padding-top:6px;gap:22px}
.favourites .carousel-rail .favourite{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0 9px 12px;border:0}
.favourites .carousel-rail .favourite>.favourite-photo{position:relative;width:100%;height:235px;flex:none;min-width:0;max-width:none;margin:0;mix-blend-mode:multiply}
.favourite-photo>img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transform:scale(1.08);user-select:none;-webkit-user-drag:none}
.favourite-photo.is-cutout>img{transform:scale(1.15)}
.favourite-photo.is-pair>img:first-child{position:absolute;width:66%;height:77%;left:-1%;top:0;transform:none}
.favourite-photo.is-pair>.favourite-side{position:absolute;width:76%;height:82%;right:-2%;bottom:-2%;transform:none}
.favourites .carousel-rail .favourite>.favourite-copy{width:100%;max-width:none;margin:0;padding:12px 4px 0;flex:1;display:flex;flex-direction:column;min-width:0}
.favourites .carousel-rail .favourite h3{font-size:29px;white-space:normal;line-height:1.2;margin-top:10px}
.favourites .carousel-rail .favourite p{font-size:11px;white-space:normal;margin-top:6px}
.favourites .carousel-rail .favourite .favourite-bottom{margin-top:auto;padding-top:17px}
.favourites .carousel-rail .favourite strong{font-size:23px}
.favourites .carousel-rail .round-button{width:40px;height:40px}
.favourites .carousel-rail .dish-number{font-size:9px;letter-spacing:.08em}
.recommendations-carousel .carousel-hint>span{display:block;font-size:9px;margin-top:3px}
.review-carousel{min-width:0}
.reviews-grid.carousel-rail{grid-auto-columns:calc((100% - 36px)/3);gap:18px;padding-top:3px}
.reviews-grid.carousel-rail .review-note{min-height:230px;transition:none}
.review-carousel .carousel-hint{font-size:9px}
.review-carousel .carousel-controls{margin-top:8px}
.review-carousel .carousel-count{min-width:47px}
@media(max-width:1200px){.favourites .carousel-rail .favourite>.favourite-photo{height:205px}.favourites .carousel-rail .favourite h3{font-size:27px}}
@media(max-width:900px){.favourites .carousel-rail .favourite>.favourite-photo{height:178px}.favourites .carousel-rail .favourite h3{font-size:25px}.favourites .carousel-rail .favourite p{font-size:10px}.favourites .carousel-rail .favourite strong{font-size:21px}.favourites .carousel-rail .favourite{padding-inline:3px}.reviews-grid.carousel-rail .review-note{padding-inline:15px}.reviews-grid.carousel-rail .review-note>p{font-size:22px}}
@media(max-width:700px){.carousel-rail,.reviews-grid.carousel-rail{grid-auto-columns:88%;gap:16px}.favourites .favourites-grid.carousel-rail{gap:16px;margin-top:11px}.favourites .carousel-rail .favourite>.favourite-photo{height:208px}.favourites .carousel-rail .favourite>.favourite-copy{padding-top:12px}.favourites .carousel-rail .favourite h3{font-size:28px}.favourites .carousel-rail .favourite p{font-size:11px}.favourites .carousel-rail .favourite strong{font-size:23px}.favourites .carousel-rail .dish-number{font-size:8px}.favourites .carousel-rail .round-button{width:42px;height:42px}.carousel-controls{margin-top:12px;justify-content:flex-end;padding-top:11px}.carousel-hint{display:none}.carousel-actions{width:100%;justify-content:flex-end;gap:7px}.carousel-count{min-width:55px}.reviews-grid.carousel-rail .review-note{min-height:220px;padding:22px 20px 20px}.reviews-grid.carousel-rail .review-note>p{font-size:25px;line-height:1.35;margin:20px 0 25px}.reviews-grid.carousel-rail .review-note footer{display:flex;flex-direction:column;align-items:flex-start;gap:3px;margin-top:auto}.reviews-grid.carousel-rail .review-note cite{font-size:12px}.reviews-grid.carousel-rail .review-note footer span{font-size:10px}.reviews-grid.carousel-rail{padding-top:2px}}
@media(max-width:360px){.favourites .carousel-rail .favourite>.favourite-photo{height:180px}.favourites .carousel-rail .favourite h3{font-size:26px}.carousel-actions{gap:4px}.carousel-count{min-width:51px}.reviews-grid.carousel-rail .review-note>p{font-size:23px}}
@media(prefers-reduced-motion:reduce){.carousel-rail{scroll-behavior:auto}}
