/* Reference pacing: opening circle, pinned portrait rail, staggered social cards. */
html.lenis,html.lenis body{height:auto}html.lenis{scroll-behavior:auto!important}.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis-stopped{overflow:hidden}
.hero-scroll{height:100svh;min-height:680px;padding:var(--header) 24px 12px}
.hero-sticky{position:relative;top:0;height:100%;min-height:0}
.hero-marquees{inset:17% -20% auto;transform:rotate(-9deg)}
.hero-marquees .marquee{font-size:clamp(60px,7.8vw,145px);line-height:1.26}
.hero-window{width:min(40vw,530px);height:min(40vw,530px);top:48%;border-radius:50%}
.hero-photo{inset:0;transition:none}.hero-photo img{width:100%;height:100%;max-width:1150px;transform:rotate(-5deg)}
.hero-copy{z-index:5;top:5%;opacity:0;pointer-events:none;transform:translateY(12px)}
.hero-copy .eyebrow{font-size:10px;letter-spacing:.14em}
.hero-copy h1{font-size:clamp(44px,5.5vw,94px);line-height:.96;margin-top:14px;letter-spacing:-.06em}
.hero-copy h1 br{display:block}.hero-caption{display:none}
.hero-cta{bottom:8%;padding:17px 28px}.hero-side{bottom:6%;font-size:9px}.hero-side.left{left:14px}.hero-side.right{right:14px}.scroll-cue{bottom:2%}
.hero-scroll.expanded .hero-window{width:100%;height:100%;border-radius:0;top:50%}
.hero-scroll.expanded .hero-photo{top:18%}.hero-scroll.expanded .hero-copy{opacity:1;transform:none}
.hero-scroll.expanded .hero-side,.hero-scroll.expanded .scroll-cue{opacity:0}
.about-sticky{padding-top:80px}.about-top{padding:0 3.5vw;display:block;height:190px;position:relative}
.about-copy{margin-left:auto;width:39%;max-width:560px;font-size:12px;position:relative;z-index:2}
.about-copy .eyebrow{margin-bottom:14px}.about-copy p+p{margin-top:12px}.about-copy .button{margin-top:20px}
.about-top h2{font-size:9vw;line-height:.94;position:absolute;left:3.5vw;bottom:-20px;letter-spacing:-.065em;max-width:62%}
.gallery-scroll{height:auto;position:relative}.gallery-sticky{height:auto;position:relative;top:0;display:block;overflow:visible}
.gallery-track{gap:1.2vw;padding:0 3.5vw 55px;align-items:flex-start;width:max-content}
.gallery-track figure{width:23.6vw}.gallery-track img{height:39vw;max-height:none;min-height:0}
.gallery-track .round img{height:31vw;margin-top:0;border-radius:999px}
.gallery-track figcaption{font-size:10px;margin-top:12px}.fish-pattern{height:90px}
.favorites{padding-top:105px;padding-bottom:90px}.section-heading h2{font-size:6.5vw}
.food-slider{gap:7vw}.food-card{flex-basis:calc((100% - 14vw)/3);text-align:center}
.food-photo{height:26vw;max-height:420px;border-radius:0!important}.food-card p{margin:auto;max-width:330px}
.food-tag{font-size:9px;bottom:20px}.food-card h3{font-size:2.8vw}.food-bottom{margin-top:40px}
.social{padding-top:90px;padding-bottom:130px}
.social-heading{display:block;text-align:center;margin-bottom:64px}.social-heading h2{font-size:6.5vw}
.social-heading>div{margin-top:28px}.social-heading .eyebrow{font-size:10px}.social-heading p{font-size:12px;margin:12px 0 18px}
.reels{gap:1.5rem;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}
.reel{display:block;position:relative;transition:transform .45s}.reel:nth-child(even){margin-top:0}
.reel:nth-child(4n+2){margin-top:5rem}.reel:nth-child(4n+4){margin-top:2.9rem}
.reel-media{position:relative;overflow:hidden;aspect-ratio:9/16;background:var(--navy)}
.reel video{height:100%;width:100%;border:0;pointer-events:none;transition:transform .7s}
.reel:hover video{transform:scale(1.035)}.reel:focus-visible{outline:3px solid var(--navy);outline-offset:6px}
.reel-media:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#101b34b3);pointer-events:none}
.reel-platform{position:absolute;top:15px;right:15px;width:32px;height:32px;border:1px solid #fff7e680;color:var(--cream);background:#19264070;border-radius:50%;display:grid;place-items:center;font-size:23px}
.reel-watch{position:absolute;bottom:20px;left:20px;right:20px;z-index:2;color:var(--cream);display:flex;justify-content:space-between;text-transform:uppercase;font-size:10px}
.reel-watch>span{font-size:22px;line-height:1}.reel-caption{display:block;margin-top:14px;text-transform:uppercase;font-size:9px}
.swipe-hint{display:none}.visit{border:40px solid var(--navy);background:var(--cream);grid-template-columns:1fr 1fr}
.visit-photo{min-height:760px}.visit-copy{padding:65px 5vw}.visit-copy h2{font-size:6.7vw}
.closing-marquee{padding:65px 0;overflow:hidden}.closing-marquee>.marquee{transform:rotate(-6deg);font-size:6vw;line-height:1.25}
.closing-marquee>.marquee:first-child{-webkit-text-stroke:1px var(--gold);color:transparent}
.team figure{transform:none}.team img{border-radius:48% 48% 0 0}
.motion-paused .gallery-scroll{overflow-x:auto}.motion-paused .gallery-track{transform:none!important}
@media(max-width:1279px){
 .about-sticky{padding-top:70px}.about-top{height:auto;padding:0 5vw 0}.about-copy{width:45%;font-size:11px}
 .about-top h2{position:relative;left:0;bottom:0;margin-top:-80px;font-size:9vw;max-width:55%}
 .gallery-scroll{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
 .gallery-track{gap:18px;padding:0 5vw 45px;transform:none!important}.gallery-track figure{width:28vw;scroll-snap-align:center}.gallery-track img{height:46vw}.gallery-track .round img{height:37vw}
 .reels{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:32px;margin:0 -5vw;padding:0 5vw 15px;scrollbar-width:none}
 .reel{flex:0 0 30%;scroll-snap-align:center}.swipe-hint{display:block;text-align:center;margin-top:24px;font-size:9px;letter-spacing:.1em}
}
@media(max-width:760px){
 .hero-scroll{height:100svh;min-height:620px;padding:var(--header) 12px 10px}.hero-window{width:min(310px,87vw);height:min(310px,87vw);top:46%}
 .hero-scroll.expanded .hero-window{max-width:none;max-height:none}.hero-marquees{inset:24% -100% auto;transform:rotate(-12deg)}.hero-marquees .marquee{font-size:60px}
 .hero-copy{top:10%;padding:0 10px}.hero-copy h1{font-size:13vw;white-space:normal;line-height:.98;padding:0;margin-top:18px}.hero-copy .eyebrow{font-size:8px;max-width:250px;line-height:1.7}
 .hero-photo img{max-width:none;width:118%;height:100%}.hero-scroll.expanded .hero-photo{top:24%}.hero-cta{bottom:8%;font-size:10px}.scroll-cue{bottom:3%;font-size:8px}
 .about-sticky{padding-top:55px}.about-top{display:block;padding:0 6vw;height:auto}.about-copy{width:100%;font-size:12px;max-width:none}.about-copy .button{margin-top:24px}.about-top h2{position:relative;margin:45px 0 -5px;font-size:13vw;max-width:none;z-index:0}
 .gallery-track{gap:18px;padding:0 6vw 40px}.gallery-track figure{width:65vw}.gallery-track img{height:106vw;max-height:none;min-height:0}.gallery-track .round img{height:86vw;min-height:0;margin-top:0}.gallery-track figcaption{font-size:9px}.gallery-sticky{min-height:0}
 .fish-pattern{height:60px}.favorites{padding-top:65px;padding-bottom:65px}.section-heading h2{font-size:12vw}.food-slider{gap:40px}.food-card{flex-basis:88%}.food-photo{height:95vw;max-height:420px}.food-card h3{font-size:10vw}.food-card p{font-size:12px}
 .social{padding-top:65px;padding-bottom:65px}.social-heading{margin-bottom:42px}.social-heading h2{font-size:12vw;margin-bottom:0}.social-heading>div{margin-top:24px}.social-heading p{font-size:11px}
 .reels{gap:22px;margin:0 -6vw;padding:0 6vw 10px}.reel{flex-basis:73%}.reel:nth-child(4n+2){margin-top:44px}.reel:nth-child(4n+4){margin-top:26px}.reel-watch{font-size:10px;bottom:18px;left:18px;right:18px}
 .visit{border:15px solid var(--navy)}.visit-photo{min-height:410px}.visit-copy{padding:45px 6vw}.visit-copy h2{font-size:17vw}.closing-marquee{padding:42px 0}.closing-marquee>.marquee{font-size:14vw}.team figure{margin:0}.team img{aspect-ratio:.9}
}
@media(prefers-reduced-motion:reduce){.hero-sticky{top:0;margin:0}.hero-copy{opacity:1;transform:none}.gallery-scroll{overflow-x:auto}.gallery-track{transform:none!important}.reel:hover video{transform:none}}
