.menu-section{overflow:clip;background:radial-gradient(ellipse at 80% 18%,#51301718,transparent 35%),var(--black)}
.menu-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:76px}
.menu-overview a{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--black);padding:16px 20px;font-size:14px;transition:background .25s}
.menu-overview a:hover,.menu-overview a:focus-visible{background:#29281d}.menu-overview b{white-space:nowrap;color:var(--gold);font-family:var(--display);font-size:23px}.menu-overview small{font:10px var(--body)}
.menu-grid{display:block}.menu-card{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(230px,.85fr);align-items:center;gap:7%;margin:0 0 115px;isolation:isolate;scroll-margin-top:110px}
.menu-card:last-child{margin-bottom:60px}.menu-card:nth-child(even){grid-template-columns:minmax(230px,.85fr) minmax(0,1.45fr)}.menu-card:nth-child(even) .menu-picture{order:2}.menu-card:nth-child(even) .menu-details{order:1}
.menu-picture{aspect-ratio:1.5;overflow:hidden;transform:perspective(1100px) translateY(var(--scene-y,0px)) rotateX(calc(var(--scroll-tilt,0deg) + var(--tilt-y,0deg))) rotateY(var(--tilt-x,0deg));transition:transform .25s ease-out,box-shadow .45s;border:1px solid #eab63c18;box-shadow:0 35px 55px -30px #000;border-radius:4px;backface-visibility:hidden}
.in-view .menu-picture{will-change:transform;box-shadow:0 38px 60px -28px #000,0 0 70px -35px #e9a63050}.menu-picture img{transition:opacity .45s;transform:none!important}
.cooking-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .55s;pointer-events:none}
.has-motion>.cooking-video,.mascot-peek.has-motion video{opacity:1}.has-motion>img{opacity:0}
.menu-tag{z-index:2;left:18px;top:18px}.scene-light{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at var(--light-x,50%) var(--light-y,35%),#f0b52a10,transparent 65%);mix-blend-mode:screen;opacity:.6}
.menu-details{border:0;padding:25px 0;position:relative}.menu-details:after{content:'';display:block;height:1px;background:linear-gradient(90deg,var(--gold),#37372f);margin-top:34px;transform:scaleX(var(--scene-progress,1));transform-origin:left;transition:transform .2s}
.scene-number{display:block;font:600 12px var(--body);letter-spacing:.2em;color:var(--muted);margin-bottom:26px}.menu-name-row{display:block}.menu-name-row h4{font:800 clamp(40px,4.3vw,70px)/.98 var(--display);max-width:370px;margin:0 0 18px}.price{font-size:42px}.price small{font-size:12px;margin-left:9px}.menu-details p{font-size:15px;line-height:1.7;max-width:270px;margin-top:17px}.quantity{font-size:14px;margin:15px 0 0}
.section-top h2{transform:translateY(calc(var(--scene-y,0px) * -.35))}.section-top .eyebrow{position:relative;padding-left:26px}.section-top .eyebrow:before{content:'✳';position:absolute;left:0;font-size:17px;top:-5px;transform:rotate(calc(var(--scroll-tilt,0deg) * 8))}
.ribbon{padding:0;display:block}.ribbon-track{display:flex;align-items:center;gap:46px;width:max-content;padding:21px 0;will-change:transform}
.extras{margin-top:50px;background:linear-gradient(135deg,#26251b90,#10100d);position:relative;border-color:#a188433a;box-shadow:0 35px 70px -35px #000;transform:perspective(1400px) rotateX(var(--scroll-tilt,0deg));transition:transform .3s}
.extra-side ul{display:grid;grid-template-columns:1fr 1fr;gap:16px}.extra-side .side-dish{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;border-bottom:0;font-size:14px;line-height:1.3;position:relative;padding-top:4px}.side-art{display:block;flex:0 0 78px;width:78px;height:78px;overflow:hidden;border-radius:50%;position:relative;border:1px solid #d3a62d25;box-shadow:0 12px 24px -12px #000;transition:transform .4s}.extra-side .side-art{margin:0 0 5px}.side-art img{position:absolute;width:240px;max-width:none;height:auto;left:-3px;top:-29px}.side-dish>span:not(.side-art){display:none}.side-dish:hover .side-art{transform:perspective(500px) rotateY(-9deg) translateY(-5px)}.extra-side .side-dish{flex-direction:column;align-items:flex-start}.extra-drinks li{transition:transform .25s,background .25s,border-color .25s}.extra-drinks li:hover{transform:translateY(-4px) rotate(-2deg);background:#efb92114;border-color:#efb92180}
.about{overflow:clip;padding-top:140px;padding-bottom:160px;background:radial-gradient(ellipse at 15% 40%,#48331655,transparent 55%),#1b1b15}.restaurant-scene{transform:perspective(1400px) translateY(var(--scene-y,0px)) rotateY(var(--scroll-tilt,0deg));transition:transform .3s}.restaurant-scene>img{border:1px solid #fff2;box-shadow:0 40px 70px -30px #000;border-radius:3px}.mascot-peek{position:absolute;width:46%;aspect-ratio:1.18;right:-24px;bottom:-75px;border:6px solid #1b1b15;background:#10100d;border-radius:6px;box-shadow:0 18px 35px #0008;transform:rotate(4deg);overflow:hidden}.mascot-peek img,.mascot-peek video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .5s}.mascot-peek video{opacity:0}.mascot-peek>span{position:absolute;bottom:0;left:0;right:0;padding:8px 4px;background:linear-gradient(transparent,#000c);font:700 16px var(--display);letter-spacing:.04em;text-align:center;color:var(--gold)}.restaurant-caption{position:absolute;left:12px;bottom:-34px;font-size:10px;letter-spacing:.12em;color:var(--muted)}
.contact{overflow:clip;background:radial-gradient(circle at 95% 5%,#ffdb6470,transparent 48%),var(--gold)}.contact-heading{position:relative;padding-right:190px}.contact-brand{position:absolute;right:12px;top:50%;width:140px;height:auto;filter:drop-shadow(0 20px 16px #0002);transform:translateY(calc(-50% + var(--scene-y,0px))) rotate(calc(var(--scroll-tilt,0deg) * 2));transition:transform .2s}.hours dl>div{transition:background .2s,padding .2s}.hours dl>div:hover{background:#fff2;padding-left:8px;padding-right:8px}footer>a:first-child{transition:letter-spacing .3s}footer>a:first-child:hover{letter-spacing:.06em}
.motion-toggle{position:fixed;z-index:30;right:18px;bottom:16px;padding:10px 14px;min-height:42px;background:#181812e8;backdrop-filter:blur(12px);border:1px solid #ffffff35;border-radius:40px;color:var(--cream);font:500 12px var(--body);box-shadow:0 4px 20px #0004;cursor:pointer}.motion-toggle:hover{border-color:var(--gold)}.motion-toggle:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.motion-toggle:disabled{cursor:default;color:#bbb}
.motion-paused .menu-picture,.motion-paused .restaurant-scene,.motion-paused .extras,.motion-paused .section-top h2,.motion-paused .side-art{transform:none!important;transition:none!important}.motion-paused .ribbon-track{transform:none!important}.motion-paused .contact-brand{transform:translateY(-50%)!important}.motion-paused .scene-light{display:none}.motion-paused .menu-details:after{transform:none}
@media(max-width:1000px){.menu-card,.menu-card:nth-child(even){gap:5%;grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr)}.menu-card:nth-child(even){grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr)}.menu-name-row h4{font-size:45px}.menu-overview a{padding:14px 12px;font-size:12px}.contact-heading{padding-right:145px}.contact-brand{width:105px}.extras>div{padding:26px}.extras h3{font-size:31px}}
@media(max-width:600px){.menu-overview{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:52px}.menu-overview a{display:block;padding:12px;font-size:12px}.menu-overview b{display:block;font-size:23px;margin-top:4px}.menu-card,.menu-card:nth-child(even){display:flex;flex-direction:column;align-items:stretch;gap:0;margin-bottom:60px;scroll-margin-top:38px}.menu-card:nth-child(even) .menu-picture,.menu-card:nth-child(even) .menu-details{order:initial}.menu-picture{transform:perspective(1100px) translateY(var(--scene-y,0px)) rotateX(var(--scroll-tilt,0deg));aspect-ratio:1.5}.menu-details{padding:27px 0 0}.scene-number{margin-bottom:12px;font-size:10px}.menu-name-row{display:flex;align-items:baseline;gap:14px}.menu-name-row h4{font-size:31px;margin-bottom:0;max-width:220px}.price{font-size:31px}.price small{font-size:10px;margin-left:4px}.menu-details p{font-size:14px;max-width:none;margin-top:12px}.menu-details:after{margin-top:23px}.quantity{margin-top:10px;font-size:12px}.extras{margin-top:0}.extra-side ul{gap:24px 12px}.extra-side .side-dish{font-size:15px}.ribbon-track{gap:30px;padding:16px 0}.about{padding-top:90px;padding-bottom:85px;gap:95px}.mascot-peek{width:45%;right:-10px;bottom:-65px}.mascot-peek>span{font-size:13px}.restaurant-caption{font-size:9px;left:0;max-width:50%;line-height:1.8}.contact-heading{padding-right:0;padding-top:0}.contact-brand{position:relative;top:auto;right:auto;display:block;width:90px;margin:34px 0 0;transform:rotate(var(--scroll-tilt,0deg))}.motion-paused .contact-brand{transform:none!important}.motion-toggle{right:12px;bottom:12px;font-size:11px;padding:9px 12px}footer{padding-bottom:80px}}
@media(prefers-reduced-motion:reduce){.menu-picture,.extras,.restaurant-scene,.section-top h2,.side-art,.ribbon-track{transform:none!important;transition:none!important}.contact-brand{transform:translateY(-50%)}.cooking-video,.mascot-peek video{display:none}.has-motion>img{opacity:1}.menu-details:after{transform:none}.extra-drinks li,.hours dl>div{transition:none}}
.category-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 44px}.category-nav a{border:1px solid var(--line);padding:12px 18px;font-size:14px;border-radius:3px}.category-nav a:hover,.category-nav a:focus-visible{background:var(--gold);color:var(--black)}
#menus-classiques,#plats-seuls,#etudiants,#sides{scroll-margin-top:40px}.standalone-section{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:60px 0 80px;margin:20px 0 75px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.offer-heading h3{font:800 clamp(40px,5vw,66px)/1 var(--display);margin:15px 0 20px}.offer-heading h3 em{font-style:normal;color:var(--gold)}.offer-heading>p:last-child{color:var(--muted);font-size:15px;max-width:380px}.standalone-list{margin:0}.standalone-list>div{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.standalone-list>div:first-child{padding-top:0}.standalone-list dt{font-size:18px}.standalone-list dt small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.standalone-list dd{margin:0;color:var(--gold);font:700 32px var(--display);white-space:nowrap}.standalone-list dd small{font:11px var(--body)}.student-section{margin-bottom:80px}.student-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px 36px;margin-top:40px}.student-details{padding-top:24px}.student-name-row{display:flex;justify-content:space-between;align-items:baseline;gap:15px}.student-name-row h4{font:700 32px/1.1 var(--display);text-transform:uppercase;margin:0}.student-name-row .price{font-size:32px}.student-details p{font-size:14px;color:var(--muted);margin:10px 0 0}
@media(max-width:600px){.category-nav{gap:8px;margin-bottom:35px}.category-nav a{font-size:12px;padding:10px 12px}.standalone-section{grid-template-columns:1fr;gap:28px;padding:40px 0;margin-bottom:55px}.standalone-list dt{font-size:16px}.student-grid{grid-template-columns:1fr;gap:40px}.student-name-row h4{font-size:29px}.student-name-row .price{font-size:29px}.student-section{margin-bottom:55px}}
/* Dedicated side-dish photographs supplied by the restaurant. */
.extra-side .side-dish{align-items:center;text-align:center;gap:8px}
.extra-side .side-art{flex:0 0 auto;width:min(100%,170px);height:145px;margin:0;border:0;border-radius:0;overflow:visible;box-shadow:none}
.side-art img{position:static;display:block;width:100%;height:100%;max-width:100%;object-fit:contain;filter:drop-shadow(0 14px 12px #0005)}
@media(max-width:600px){.extra-side .side-art{height:125px;width:min(100%,150px)}}
.extra-side .side-price{display:block;font:700 24px var(--display);color:var(--gold);margin-top:2px}.side-price small,.sauce-list small,.dessert-offer small{font:11px var(--body)}
.finishing-touches{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:75px;padding-top:65px;border-top:1px solid var(--line);scroll-margin-top:40px}.sauce-list{padding:0;list-style:none;margin:30px 0 0}.sauce-list li{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:13px 0;border-bottom:1px solid var(--line);font-size:15px}.sauce-list b{font:700 25px var(--display);color:var(--gold);white-space:nowrap}.dessert-panel{padding:35px;background:radial-gradient(ellipse at 100% 0,#71522230,transparent 80%),#1b1b15;border:1px solid var(--line)}.dessert-offer{margin-top:40px}.dessert-offer>div{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line)}.dessert-offer b{font:700 38px var(--display);color:var(--gold);white-space:nowrap}
@media(max-width:600px){.finishing-touches{grid-template-columns:1fr;gap:40px;margin-top:50px;padding-top:40px}.dessert-panel{padding:26px}.sauce-list li{font-size:14px}}
.sauce-photo{width:260px;max-width:100%;height:210px;object-fit:cover;display:block;margin:0 auto 12px;filter:drop-shadow(0 14px 12px #0004);transform:perspective(800px) rotateX(var(--scroll-tilt,0deg));transition:transform .3s}.sauce-photo+.sauce-list{margin-top:0}.motion-paused .sauce-photo{transform:none;transition:none}@media(prefers-reduced-motion:reduce){.sauce-photo{transform:none;transition:none}}

/* Two identical groups form a seamless, time-driven marquee. */
.ribbon-track{gap:0;padding:0;animation:ribbon-marquee 28s linear infinite;animation-play-state:paused}
.ribbon-group{display:flex;align-items:center;justify-content:space-around;flex-shrink:0;min-width:100vw;gap:46px;padding:21px 46px 21px 0}
.ribbon .ribbon-group span:first-child{margin-left:0}
@keyframes ribbon-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.motion-paused .ribbon-track{animation:none}
@media(max-width:600px){.ribbon-group{gap:30px;padding:16px 30px 16px 0}}
@media(prefers-reduced-motion:reduce){.ribbon-track{animation:none}}
