.float-menu{position:relative;overflow:hidden;border-radius:24px;background:radial-gradient(ellipse at 50% 20%,#235783,#102d4b 48%,#070e1f 100%);color:#fbf5e9;box-shadow:0 22px 60px #061a3220;margin:12px 0 24px;isolation:isolate}.float-kicker{text-align:center;padding:38px 20px 0;font:10px Arial,sans-serif;letter-spacing:3px;color:#fff9}.float-stage{position:relative;height:440px;isolation:isolate;touch-action:pan-y}.float-title{position:absolute;inset:42% 0 auto;text-align:center;transform:translateY(-50%);font:900 clamp(58px,10vw,138px)/1 Arial,sans-serif;letter-spacing:12px;white-space:nowrap;z-index:0;color:#fff9e9;pointer-events:none}.float-title.float-long{font-size:clamp(32px,6.5vw,90px);letter-spacing:3px}.float-product{border:0;background:none;position:absolute;inset:1% 21%;width:58%;height:96%;z-index:3;cursor:pointer;padding:0}.float-product img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 25px 18px #0005);animation:vit-float 6s ease-in-out infinite;user-select:none;-webkit-user-drag:none}.float-ground{position:absolute;inset:auto 35% 5%;height:25px;background:#0007;border-radius:50%;filter:blur(16px)}.float-side{position:absolute;top:28%;width:28%;height:56%;z-index:2;background:none;border:0;cursor:pointer;padding:0;opacity:.82}.float-side img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 15px 12px #0005);animation:vit-float 7s -2s ease-in-out infinite;user-select:none;-webkit-user-drag:none}.float-side-left{left:1%;transform:rotate(-14deg)}.float-side-right{right:1%;transform:rotate(12deg)}.float-side-right img{animation-delay:-4s}.float-side span{font-size:100px;color:#edc781}.float-arrow{position:absolute;top:43%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:1px solid #ffffff45;background:#081c2ebb;z-index:5;color:#fff;font:24px Arial;cursor:pointer}.float-prev{left:18px}.float-next{right:18px}.float-arrow:hover{background:#ffffff28}.float-bottom{text-align:center;position:relative;z-index:5;padding:0 20px 25px}.float-bottom p{margin:0 0 14px}#float-subtitle{font:italic 19px Georgia,serif;color:#fffde9}.float-bottom .float-hint{font:9px Arial;letter-spacing:2px;color:#ffffff80;margin:0 0 18px}.float-discover{display:inline-flex;align-items:center;gap:25px;border:0;border-bottom:1px solid #ffffff70;padding:13px 4px;background:transparent;color:#edc781;font:bold 12px Arial;letter-spacing:1.5px;cursor:pointer}.float-discover:disabled{cursor:default;color:#b4b9c3}.float-dots{display:flex;justify-content:center;gap:5px;margin-top:14px}.float-dots button{width:27px;height:28px;border:0;background:none;position:relative;cursor:pointer}.float-dots button:after{content:'';position:absolute;inset:13px 3px auto;height:2px;background:#ffffff50}.float-dots button[aria-pressed=true]:after{background:#edc781}.float-bottom .float-status{font:10px Arial;color:#ffffff80;margin:6px 0 0}.float-category-links{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin:20px 0 35px}.float-category-links button,.float-category-links a{border:1px solid #173b5233;border-radius:30px;padding:10px 15px;background:transparent;color:#173b52;font:12px Arial;cursor:pointer}.float-category-links button[aria-pressed=true]{background:#173b52;color:#fff}.float-enabled .menu-tabs{display:none!important}.float-browsing .food-experience,.float-browsing #menu-panel,.float-browsing .menu-end,.float-browsing #tartes-soon{display:none!important}.float-photo img,.side-photo img{border-radius:50%;mask-image:radial-gradient(ellipse,black 45%,transparent 72%);-webkit-mask-image:radial-gradient(ellipse,black 45%,transparent 72%)}.float-soon:after{content:attr(data-soon);display:grid;place-items:center;width:190px;height:190px;margin:auto;border:1px solid #edc78199;border-radius:50%;background:#122b45dd;color:#edc781;font:italic 28px Georgia;box-shadow:0 25px 50px #0004;animation:vit-float 6s infinite}.float-enter img{animation:vit-enter .55s ease-out,vit-float 6s .55s ease-in-out infinite}.float-menu button:focus-visible{outline:3px solid #edc781;outline-offset:3px}.float-enabled .food-experience{scroll-margin-top:20px}.float-enabled #tartes-soon[hidden]{display:none!important}html[dir=rtl] .float-title{font-family:Arial,sans-serif;letter-spacing:0;font-size:clamp(52px,10vw,115px)}html[dir=rtl] .float-kicker,html[dir=rtl] .float-hint,html[dir=rtl] .float-discover{letter-spacing:0}.float-stage{direction:ltr}@keyframes vit-float{0%,100%{transform:translateY(-6px) rotate(-4deg)}50%{transform:translateY(9px) rotate(1deg)}}@keyframes vit-enter{from{opacity:0;transform:translateX(60px) rotate(8deg)}to{opacity:1;transform:translateX(0) rotate(-4deg)}}@media(max-width:650px){.float-menu{border-radius:16px;margin-inline:-3vw}.float-kicker{padding:28px 12px 0;font-size:8px;letter-spacing:1.5px}.float-stage{height:340px}.float-title{font-size:clamp(54px,16vw,88px);letter-spacing:4px;top:43%}.float-title.float-long{font-size:clamp(30px,8vw,48px);letter-spacing:0}.float-product{inset:5% 12%;width:76%;height:90%}.float-side{width:32%;height:45%;top:40%;opacity:.7}.float-side-left{left:-7%}.float-side-right{right:-7%}.float-arrow{width:42px;height:42px;font-size:20px;top:44%}.float-prev{left:10px}.float-next{right:10px}#float-subtitle{font-size:16px;line-height:1.5;min-height:24px}.float-bottom{padding:0 18px 22px}.float-discover{font-size:11px}.float-category-links{gap:7px}.float-category-links button{font-size:11px;padding:10px 12px}.float-dots{gap:0}.float-soon:after{width:145px;height:145px;font-size:24px}.float-enabled .section-top{margin-bottom:18px}.float-enabled .section-top p{display:none}}
@media(prefers-reduced-motion:reduce){.float-menu *{animation:none!important;transition:none!important}}
/* Clear gold headings: reserve a separate band above the food. */
.float-stage{height:490px;padding-top:100px}.float-title{inset:25px 15px auto;transform:none;margin:0;z-index:6;font-size:clamp(38px,7vw,82px);line-height:1.18;letter-spacing:6px;color:#edc781;text-shadow:0 2px 3px #061425,0 0 20px #ddb96b33;animation:vit-gold 4s ease-in-out infinite;white-space:normal;overflow-wrap:anywhere}.float-title.float-long{font-size:clamp(29px,5.8vw,65px);letter-spacing:2px}.float-product{inset:23% 23% 0;width:54%;height:75%}.float-side{top:40%;height:49%;width:25%}.float-side-left{left:3%}.float-side-right{right:3%}.float-arrow{top:59%}.float-ground{bottom:3%}.float-kicker{padding-top:29px;color:#e4bd70bb}.float-enabled #menu-page-title,.float-enabled #chosen-name,.float-enabled .dish h3{color:#8b651f;text-shadow:0 0 10px #d7af6020;animation:vit-product-gold 4s ease-in-out infinite}.float-enabled #chosen-name{line-height:1.3}.float-menu.offscreen img,.float-menu.offscreen .float-title,.float-menu.offscreen .float-soon:after,body.animations-paused .float-menu *,body.animations-paused .dish h3,body.animations-paused #chosen-name{animation-play-state:paused!important}.float-stage img{content-visibility:auto}.float-product img,.float-side img{backface-visibility:hidden}.float-drinks .float-product{inset-inline:31%;width:38%}.float-drinks .float-side{width:29%;top:38%;height:53%;opacity:.95}.float-drinks .float-side-left{left:8%;transform:rotate(-8deg)}.float-drinks .float-side-right{right:8%;transform:rotate(8deg)}.float-enabled .dish-art{background:#102d4b}.float-enabled .dish-art img{object-fit:contain}.float-enabled .viewer-shell{background:#102d4b}html[dir=rtl] .float-title{font-size:clamp(38px,7vw,76px);line-height:1.3;letter-spacing:0}html[dir=rtl] .float-title.float-long{font-size:clamp(30px,5.8vw,60px)}
@keyframes vit-gold{0%,100%{opacity:1;text-shadow:0 2px 3px #061425,0 0 10px #ddb96b22}50%{opacity:.94;text-shadow:0 2px 3px #061425,0 0 23px #edc78177}}@keyframes vit-product-gold{0%,100%{opacity:1}50%{opacity:.9}}
@media(max-width:650px){.float-stage{height:370px;padding-top:76px}.float-title{top:24px;font-size:clamp(34px,10vw,54px);line-height:1.2;letter-spacing:2px}.float-title.float-long{font-size:clamp(24px,6.8vw,37px);letter-spacing:0}.float-product{inset:24% 17% 0;width:66%;height:73%}.float-side{top:45%;height:44%;width:29%}.float-side-left{left:-2%}.float-side-right{right:-2%}.float-arrow{top:60%}.float-drinks .float-product{inset-inline:26%;width:48%}.float-drinks .float-side{width:30%;height:49%;top:42%}.float-drinks .float-side-left{left:5%}.float-drinks .float-side-right{right:5%}html[dir=rtl] .float-title{font-size:clamp(32px,9vw,48px);line-height:1.3}html[dir=rtl] .float-title.float-long{font-size:clamp(25px,7vw,38px)}}
@media(prefers-reduced-motion:reduce){.float-menu *,.float-enabled #menu-page-title,.float-enabled #chosen-name,.float-enabled .dish h3{animation:none!important;transition:none!important}}

/* Full-screen category carousel, matching the validated demo-3d composition. */
.float-outline-title{display:none}
body:not([data-page=home]) .menu-section{padding:0;background:#070e1f;min-height:calc(100svh - 88px)}
body:not([data-page=home]) .menu-section>.wrap{width:100%;max-width:none;margin:0}
body:not([data-page=home]) .back-categories,
body:not([data-page=home]) .section-top,
body:not([data-page=home]) .float-category-links{display:none!important}
body:not([data-page=home]) .float-menu{height:calc(100svh - 88px);min-height:650px;max-height:1100px;margin:0;border-radius:0;box-shadow:none;display:flex;flex-direction:column;background:radial-gradient(ellipse at 48% 18%,#235783,#102d4b 55%,#070e1f 100%)}
body:not([data-page=home]) .float-kicker{padding:30px 20px 10px;flex:0 0 auto;color:#ffffff90}
body:not([data-page=home]) .float-stage{flex:1 1 auto;width:min(1300px,100%);height:auto;min-height:300px;margin:auto;padding:0}
/* Category name sits above the floating product, always in the foreground. */
body:not([data-page=home]) .float-title{position:absolute;inset:1% 10% auto;text-align:center;margin:0;transform:none;z-index:7;color:#edc781;font:900 clamp(42px,6vw,78px)/1.08 Arial,sans-serif;letter-spacing:clamp(3px,1vw,12px);white-space:normal;pointer-events:none;text-shadow:0 2px 3px #061425,0 0 18px #edc78166,0 0 42px #dba94f28;animation:vit-gold 4s ease-in-out infinite}
body:not([data-page=home]) .float-title::after{content:"";display:block;width:clamp(54px,8vw,110px);height:2px;margin:10px auto 0;border-radius:99px;background:linear-gradient(90deg,transparent,#edc781,transparent);box-shadow:0 0 12px #edc781aa}
body:not([data-page=home]) .float-outline-title{display:none!important}
body:not([data-page=home]) .float-title.float-long{font-size:clamp(34px,4.8vw,62px);letter-spacing:clamp(1px,.6vw,7px)}
body:not([data-page=home]) .float-product{inset:15% 16% 0;width:68%;height:84%;z-index:3}
body:not([data-page=home]) .float-product img{max-height:580px;filter:drop-shadow(0 35px 22px #0005)}
body:not([data-page=home]) .float-side{display:none}
body:not([data-page=home]) .float-arrow{top:56%;width:66px;height:66px;background:#ffffff03;color:#ffffffa6}
body:not([data-page=home]) .float-prev{left:5%}
body:not([data-page=home]) .float-next{right:5%}
body:not([data-page=home]) .float-ground{inset:auto 33% 7%;height:24px}
body:not([data-page=home]) .float-bottom{flex:0 0 auto;padding:0 20px 24px}
body:not([data-page=home]) #float-subtitle{margin:4px 0 18px}
body:not([data-page=home]) .float-hint{margin-bottom:20px}
body:not([data-page=home]) .float-drinks .float-product{inset:15% 29% 0;width:42%;height:84%}
body:is([data-page=sale],[data-page=sucre]) .float-product{inset:13% 8% 0;width:84%;height:87%}
body:is([data-page=sale],[data-page=sucre]) .float-product img{max-height:720px}
body:not([data-page=home]) .float-browsing .food-experience,
body:not([data-page=home]) .float-browsing #menu-panel,
body:not([data-page=home]) .float-browsing .menu-end{display:none!important}
html[dir=rtl] body:not([data-page=home]) .float-title{font-family:Arial,sans-serif;font-size:clamp(40px,6vw,72px);letter-spacing:0}
html[dir=rtl] body:not([data-page=home]) .float-title.float-long{font-size:clamp(34px,4.8vw,60px)}

@media(max-width:650px){
 body:not([data-page=home]) .float-menu{height:calc(100svh - 72px);min-height:620px}
 body:not([data-page=home]) .float-kicker{padding-top:24px;font-size:8px;letter-spacing:1.6px}
 body:not([data-page=home]) .float-stage{min-height:300px}
 body:not([data-page=home]) .float-title{inset:1% 12% auto;font-size:clamp(31px,9vw,48px);line-height:1.12;letter-spacing:2px}
 body:not([data-page=home]) .float-title::after{margin-top:7px}
 body:not([data-page=home]) .float-title.float-long{font-size:clamp(25px,7vw,38px);letter-spacing:0}
 body:not([data-page=home]) .float-product{inset:17% 4% 0;width:92%;height:82%}
 body:not([data-page=home]) .float-drinks .float-product{inset:17% 20% 0;width:60%;height:82%}
 body:is([data-page=sale],[data-page=sucre]) .float-product{inset:15% -2% 0;width:104%;height:85%}
 body:is([data-page=sale],[data-page=sucre]) .float-drinks .float-product{inset:15% 13% 0;width:74%;height:85%}
 body:not([data-page=home]) .float-arrow{top:57%;width:48px;height:48px;font-size:20px}
 body:not([data-page=home]) .float-prev{left:12px}
 body:not([data-page=home]) .float-next{right:12px}
 body:not([data-page=home]) .float-bottom{padding-bottom:18px}
 body:not([data-page=home]) #float-subtitle{font-size:16px;margin-bottom:13px}
 html[dir=rtl] body:not([data-page=home]) .float-title{font-size:clamp(30px,8.5vw,46px)}
 html[dir=rtl] body:not([data-page=home]) .float-title.float-long{font-size:clamp(25px,7vw,38px)}
}

/* Exact product name stays visible above the selected product. */
.float-enabled #food-stage{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 35%,#235783,#102d4b 58%,#070e1f 100%)}
.float-enabled #selected-photo{object-fit:contain;background:transparent;padding:64px 18px 18px;filter:drop-shadow(0 24px 18px #0004)}
.product-float-name{position:absolute;z-index:3;top:18px;left:50%;right:auto;transform:translateX(-50%);width:max-content;max-width:calc(100% - 34px);margin:0;padding:10px 32px 11px;overflow:hidden;text-align:center;color:#f0cc83;border-top:1px solid #edc781b5;border-bottom:1px solid #edc78180;border-radius:4px;background:linear-gradient(90deg,#071a2de0,#163d5fd9 50%,#071a2de0);box-shadow:0 12px 30px #020b1575,0 0 25px #edc78122;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font:700 clamp(22px,3vw,38px)/1.18 Georgia,serif;letter-spacing:1.2px;text-transform:uppercase;text-shadow:0 2px 3px #061425,0 0 16px #edc7817a;animation:vit-product-gold 4s ease-in-out infinite;pointer-events:none}
.product-float-name:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 0 40%,#fff3c73b 49%,transparent 58%);transform:translateX(-125%);animation:vit-name-shine 3.6s 1s ease-in-out infinite}
.product-float-name:after{content:'◆';display:inline-block;margin-inline-start:13px;color:#edc781;font-size:.38em;vertical-align:middle;text-shadow:0 0 8px #edc781}
.product-float-name.name-enter{animation:vit-name-enter .55s cubic-bezier(.2,.8,.2,1),vit-product-gold 4s .55s ease-in-out infinite}
html[dir=rtl] .product-float-name{font-family:Arial,sans-serif;letter-spacing:0}
@keyframes vit-name-enter{from{opacity:0;transform:translate(-50%,-14px) scale(.94);filter:blur(3px)}to{opacity:1;transform:translate(-50%,0) scale(1);filter:blur(0)}}
@keyframes vit-name-shine{0%,58%{transform:translateX(-125%)}82%,100%{transform:translateX(125%)}}
@media(max-width:650px){.float-enabled #selected-photo{padding:68px 12px 12px}.product-float-name{top:14px;max-width:calc(100% - 24px);padding:9px 18px 10px;font-size:clamp(20px,6.4vw,31px);letter-spacing:.5px}}
@media(prefers-reduced-motion:reduce){.product-float-name,.product-float-name:before{animation:none!important}}
