:root{--ink:#17362f;--pink:#f6b8c8;--hot:#ef557d;--mint:#bdebdc;--cream:#fff4de;--paper:#fffdf7;--yellow:#ffd66b;--aqua:#aee7ef;--line:1.5px solid var(--ink)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;overflow-x:hidden}body.is-loading,body.modal-open{overflow:hidden}button,a{font:inherit}.topbar{height:32px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;gap:22px;font-size:10px;font-weight:900;letter-spacing:1.2px;white-space:nowrap;overflow:hidden}.topbar i{color:var(--pink)}.nav{height:82px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:34px;padding:0 4vw;border-bottom:var(--line);background:rgba(255,253,247,.92);backdrop-filter:blur(14px);position:sticky;top:0;z-index:80}.brand{color:var(--ink);text-decoration:none;display:flex;flex-direction:column;line-height:.82}.brand small{font-size:8px;font-weight:900;letter-spacing:1.8px}.brand strong{font-family:'Fugaz One';font-size:27px}.nav-links{display:flex;justify-content:center;gap:28px}.nav-links a{color:var(--ink);text-decoration:none;font-size:12px;font-weight:800}.nav-order,.btn,.final-order{border:var(--line);border-radius:14px;padding:13px 19px;font-weight:900;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:10px}.nav-order,.btn.dark{background:var(--ink);color:#fff}.btn.light{background:var(--paper);color:var(--ink)}.menu-toggle{display:none}.hero{min-height:700px;display:grid;grid-template-columns:1.02fr .98fr;border-bottom:var(--line)}.hero-copy{padding:8vw 6vw 7vw 7vw;align-self:center}.eyebrow{font-size:10px;font-weight:900;letter-spacing:2px;color:var(--hot)}h1,h2,h3,p{margin-top:0}h1{font-family:'Fugaz One';font-size:clamp(58px,7.4vw,118px);line-height:.83;letter-spacing:-4px;margin:18px 0 28px}h1 em{font-style:normal;color:var(--hot)}.hero-copy>p{font-size:18px;line-height:1.55;max-width:540px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.rating-strip{margin-top:28px;display:inline-flex;align-items:center;gap:9px;border-top:1px solid rgba(23,54,47,.18);padding-top:17px;color:var(--ink);text-decoration:none;font-size:12px}.rating-strip .stars,.stars{color:var(--hot);letter-spacing:2px}.rating-strip strong{margin-left:4px}.hero-media{background:var(--mint);border-left:var(--line);display:grid;place-items:center;position:relative;padding:6vw}.media-shell{width:min(500px,85%);aspect-ratio:4/5;border:var(--line);border-radius:48% 48% 28px 28px;overflow:hidden;background:var(--pink);position:relative;box-shadow:16px 16px 0 var(--ink)}.media-shell img{width:100%;height:100%;object-fit:cover}.photo-placeholder{position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:8px}.photo-placeholder span{font-size:80px}.photo-placeholder b{font-family:'Fugaz One';font-size:42px}.photo-placeholder small{font-weight:800}.media-shell:not(.photo-missing) .photo-placeholder{display:none}.media-caption{position:absolute;left:18px;bottom:18px;background:var(--cream);border:var(--line);border-radius:999px;padding:9px 13px;display:flex;gap:8px;font-size:11px}.badge{position:absolute;width:94px;height:94px;border-radius:50%;display:grid;place-items:center;text-align:center;font-family:'Fugaz One';font-size:13px;border:var(--line);box-shadow:5px 5px 0 var(--ink);transform:rotate(-9deg)}.badge-a{background:var(--yellow);top:14%;left:6%}.badge-b{background:var(--paper);bottom:13%;right:5%;transform:rotate(9deg)}.marquee{background:var(--pink);border-bottom:var(--line);padding:13px 0;overflow:hidden;font-family:'Fugaz One';white-space:nowrap}.marquee div{width:max-content;animation:marquee 24s linear infinite}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:100px 7vw}.section-title{max-width:760px;margin-bottom:42px}.section-title h2,.story h2,.visit h2,.final-cta h2,.event-card h2{font-family:'Fugaz One';font-size:clamp(42px,5vw,76px);line-height:.95;letter-spacing:-2px;margin:11px 0 15px}.section-title p{max-width:540px;line-height:1.55}.section-title.split{max-width:none;display:flex;justify-content:space-between;gap:50px;align-items:end}.section-title.split>p{max-width:390px}.favorite-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:16px}.product-feature,.menu-card{border:var(--line);border-radius:24px;text-align:left;color:var(--ink);cursor:pointer;position:relative;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}.product-feature{background:var(--cream);padding:0;display:grid}.product-feature.big{grid-template-columns:1fr 1fr}.product-feature>div:last-child{padding:25px}.product-art{min-height:220px;background:var(--pink);display:grid;place-items:center;font-size:80px}.product-feature.big .product-art{min-height:350px}.product-feature h3{font-family:'Fugaz One';font-size:30px;margin:8px 0}.product-feature p{line-height:1.5}.product-feature b{font-size:12px}.hot-tag{position:absolute;top:15px;right:15px;background:var(--ink);color:#fff;border-radius:999px;padding:7px 10px;font-size:9px;font-weight:900}.product-feature:hover,.menu-card:hover{transform:translateY(-5px);box-shadow:7px 7px 0 var(--ink)}.menu{background:var(--cream);border-block:var(--line)}.menu-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.menu-tab{border:var(--line);background:var(--paper);border-radius:999px;padding:9px 14px;font-size:11px;font-weight:900;cursor:pointer}.menu-tab.active{background:var(--ink);color:#fff}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.menu-card{min-height:230px;padding:24px;background:var(--paper);display:flex;flex-direction:column}.menu-card[hidden]{display:none}.menu-card.hero-menu{grid-column:span 2;grid-row:span 2;background:var(--pink);min-height:474px}.menu-card h3{font-family:'Fugaz One';font-size:30px;margin:18px 0 8px}.menu-card.hero-menu h3{font-size:48px}.menu-no{font-size:10px;font-weight:900;opacity:.55}.menu-card>strong{margin-top:auto;font-size:15px}.pink{background:#fac8d5}.mint{background:var(--mint)}.cream{background:#fffdf7}.aqua{background:var(--aqua)}.yellow{background:var(--yellow)}.sizes{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;gap:8px}.sizes span{background:rgba(255,255,255,.55);border:1px solid rgba(23,54,47,.3);padding:13px;border-radius:12px;display:flex;justify-content:space-between;font-size:12px}.wide-order{width:100%;margin-top:16px;background:var(--ink);color:#fff;border:0;border-radius:20px;padding:20px 22px;font-weight:900;display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;cursor:pointer}.wide-order span{opacity:.65;font-weight:600;text-align:left}.story{display:grid;grid-template-columns:1fr 1fr;border-bottom:var(--line)}.story-art{min-height:580px;background:var(--pink);border-right:var(--line);display:grid;place-content:center;padding:7vw;position:relative;overflow:hidden}.outline{font-family:'Fugaz One';font-size:clamp(80px,12vw,190px);color:transparent;-webkit-text-stroke:2px var(--ink);position:absolute;transform:rotate(-90deg);left:-110px;top:170px}.story-art b{font-family:'Fugaz One';font-size:clamp(50px,7vw,100px);line-height:.9;z-index:1}.story-copy{padding:9vw 7vw;align-self:center}.story-copy p{font-size:18px;line-height:1.6;max-width:560px}.text-link{font-weight:900;color:var(--ink)}.ig-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.ig-card{aspect-ratio:1/1.15;border:var(--line);border-radius:22px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;color:var(--ink);font-family:'Fugaz One';font-size:30px;transition:transform .2s}.ig-card:hover{transform:rotate(-2deg) translateY(-5px)}.ig-card small{font-family:'DM Sans';font-size:10px;font-weight:900}.c1{background:var(--pink)}.c2{background:var(--mint)}.c3{background:var(--yellow)}.c4{background:var(--aqua)}.reviews{background:var(--ink);color:#fff}.reviews .eyebrow{color:var(--pink)}.google-score{color:#fff;text-decoration:none;display:grid;text-align:right}.google-score span{color:var(--yellow);letter-spacing:4px}.google-score b{font-family:'Fugaz One';font-size:48px}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.review-card{background:var(--paper);color:var(--ink);border-radius:24px;padding:30px;min-height:260px;text-decoration:none;display:flex;flex-direction:column;border:2px solid var(--paper)}.review-card .g{width:38px;height:38px;border:var(--line);border-radius:50%;display:grid;place-items:center;background:#fff;font-weight:900}.review-card p{font-size:17px;line-height:1.5;max-width:500px}.review-card>b{margin-top:auto}.mint-card{background:var(--mint)}.events{background:var(--pink)}.event-card{max-width:980px;margin:auto;border:var(--line);border-radius:30px;background:var(--paper);padding:55px;box-shadow:10px 10px 0 var(--ink)}.event-card p{font-size:18px;line-height:1.5;max-width:620px}.visit{display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:stretch}.visit-copy{padding:45px 0}.visit-copy p{font-size:17px;line-height:1.6}.map-art{border:var(--line);border-radius:28px;background:var(--yellow);min-height:360px;display:grid;place-content:center;text-align:center;box-shadow:10px 10px 0 var(--ink)}.map-art span{font-size:70px}.map-art b{font-family:'Fugaz One';font-size:45px;line-height:.9}.final-cta{background:var(--hot);color:#fff;text-align:center;padding:95px 20px;border-top:var(--line)}.final-cta>span{font-weight:900;letter-spacing:2px}.final-order{background:var(--cream);color:var(--ink);margin-top:15px}footer{background:var(--ink);color:#fff;padding:55px 7vw 95px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end}footer .brand{color:#fff}footer div{display:flex;gap:20px}footer a{color:#fff;text-decoration:none;font-size:12px;font-weight:800}footer>small{grid-column:1/-1;opacity:.55}.page-loader{position:fixed;inset:0;z-index:20000;background:var(--pink);display:grid;place-content:center;text-align:center;transition:opacity .6s,visibility .6s}.page-loader.hide{opacity:0;visibility:hidden}.loader-cup{font-size:80px;animation:cupIn .8s cubic-bezier(.2,.8,.2,1) both}@keyframes cupIn{from{transform:translateY(80px) rotate(-18deg);opacity:0}to{transform:none;opacity:1}}.loader-brand{display:flex;flex-direction:column;line-height:.85;margin:5px 0 18px}.loader-brand small{font-size:9px;font-weight:900;letter-spacing:2px}.loader-brand strong{font-family:'Fugaz One';font-size:56px}.loader-line{width:220px;height:5px;border:1px solid var(--ink);border-radius:9px;overflow:hidden;margin:auto}.loader-line span{display:block;height:100%;background:var(--ink);animation:loading 1.25s ease forwards}@keyframes loading{from{width:0}to{width:100%}}.page-loader p{font-size:11px;font-weight:900;margin-top:13px}.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.floating-actions{position:fixed;right:18px;bottom:20px;z-index:90;display:flex;align-items:center;gap:9px}.float-main,.float-instagram{border:2px solid #fff;box-shadow:0 10px 28px rgba(0,0,0,.22);height:54px}.float-main{border-radius:999px;background:var(--hot);color:#fff;padding:0 18px;display:flex;align-items:center;gap:7px;font-weight:900;cursor:pointer}.float-instagram{width:54px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#833AB4,#FD1D1D,#FCAF45)}.float-instagram img{width:25px}.mobile-nav{display:none}.order-modal,.product-modal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px;opacity:0;visibility:hidden;pointer-events:none;transition:.25s}.order-modal.open,.product-modal.open{opacity:1;visibility:visible;pointer-events:auto}.order-backdrop,.product-backdrop{position:absolute;inset:0;border:0;background:rgba(23,54,47,.68);backdrop-filter:blur(7px)}.order-card,.product-sheet{position:relative;width:min(540px,100%);background:var(--cream);border:var(--line);border-radius:30px;padding:34px;box-shadow:12px 12px 0 var(--ink);transform:translateY(30px) scale(.97);transition:transform .3s}.open .order-card,.open .product-sheet{transform:none}.order-close,.product-close{position:absolute;right:16px;top:14px;width:40px;height:40px;border:var(--line);border-radius:50%;background:var(--paper);font-size:25px;cursor:pointer;z-index:2}.order-card h2,.product-sheet h2{font-family:'Fugaz One';font-size:43px;line-height:.95;margin:10px 45px 12px 0}.order-card>p{font-size:13px;line-height:1.5}.order-options{display:grid;gap:10px;margin-top:20px}.order-option{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:12px;padding:12px;border:var(--line);border-radius:17px;color:var(--ink);text-decoration:none}.order-logo{width:45px;height:45px;border:var(--line);border-radius:13px;background:#fff;display:grid;place-items:center}.order-logo img{width:27px}.order-whatsapp{background:#dff7e8}.order-whatsapp .order-logo{background:#25D366}.order-glovo{background:#ffc244}.order-uber{background:#fff}.order-option>span:nth-child(2){display:flex;flex-direction:column}.order-option small{font-size:10px;opacity:.7}.last-method{display:block;text-align:center;margin-top:15px;font-weight:800;opacity:.65}.product-sheet{width:min(760px,100%);display:grid;grid-template-columns:.9fr 1.1fr;gap:28px}.product-sheet-art{min-height:380px;border:var(--line);border-radius:22px;background:var(--pink);display:grid;place-items:center;font-size:120px}.product-sheet-copy{align-self:center}.product-sheet-copy>p{line-height:1.55}.product-sheet-copy>strong{display:block;font-size:20px;margin:20px 0}.word-reveal .word{display:inline-block;opacity:0;transform:translateY(35px) rotate(2deg);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.8,.2,1)}.word-reveal.title-visible .word{opacity:1;transform:none}
@media(max-width:900px){.nav{grid-template-columns:auto 1fr auto}.nav-links{position:absolute;top:82px;left:0;right:0;background:var(--paper);border-bottom:var(--line);padding:20px;display:none;flex-direction:column}.nav-links.open{display:flex}.menu-toggle{display:block;justify-self:end;background:none;border:0;font-size:23px}.nav-order{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:80px 7vw 65px}.hero-media{min-height:600px;border-left:0;border-top:var(--line)}.favorite-grid{grid-template-columns:1fr 1fr}.product-feature.big{grid-column:1/-1}.menu-grid{grid-template-columns:1fr 1fr}.story{grid-template-columns:1fr}.story-art{border-right:0;border-bottom:var(--line)}.ig-grid{grid-template-columns:1fr 1fr}.visit{grid-template-columns:1fr}.floating-actions{bottom:82px}.mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;z-index:95;background:rgba(255,253,247,.96);backdrop-filter:blur(15px);border-top:var(--line);padding-bottom:max(4px,env(safe-area-inset-bottom))}.mobile-nav a,.mobile-nav button{height:62px;border:0;background:transparent;color:var(--ink);text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:9px;font-weight:900}.mobile-nav button{background:var(--ink);color:#fff;border-radius:16px 16px 0 0;transform:translateY(-7px)}footer{padding-bottom:120px}}
@media(max-width:650px){.topbar{justify-content:flex-start;padding-left:15px}.nav{height:70px;padding:0 17px}.nav-links{top:70px}.brand strong{font-size:23px}.hero{min-height:auto}.hero-copy{padding:65px 20px 50px}.hero-copy>p{font-size:16px}h1{font-size:58px;letter-spacing:-2.5px}.hero-media{min-height:470px;padding:45px 20px}.media-shell{width:78%;box-shadow:9px 9px 0 var(--ink)}.badge{width:74px;height:74px;font-size:10px}.section{padding:72px 20px}.section-title.split{display:block}.section-title h2,.story h2,.visit h2,.final-cta h2,.event-card h2{font-size:43px}.favorite-grid{grid-template-columns:1fr}.product-feature.big{grid-template-columns:1fr}.product-feature.big .product-art{min-height:230px}.menu-grid{grid-template-columns:1fr}.menu-card.hero-menu{grid-column:auto;grid-row:auto;min-height:390px}.menu-card.hero-menu h3{font-size:39px}.menu-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px}.menu-tab{white-space:nowrap}.wide-order{grid-template-columns:1fr auto}.wide-order span{display:none}.story-art{min-height:430px}.story-copy{padding:70px 20px}.outline{left:-80px;top:130px}.ig-grid{grid-template-columns:1fr 1fr}.ig-card{font-size:22px}.review-grid{grid-template-columns:1fr}.event-card{padding:34px 23px}.google-score{text-align:left;margin-top:20px}.visit{padding-bottom:95px}.floating-actions{right:12px}.float-main b{display:none}.float-main{width:50px;padding:0;justify-content:center}.float-instagram{width:50px;height:50px}.product-sheet{grid-template-columns:1fr;padding:20px;align-self:end}.product-sheet-art{min-height:220px;font-size:90px}.product-sheet-copy h2{font-size:36px}.order-modal,.product-modal{align-items:end;padding:12px 12px 78px}.order-card,.product-sheet{border-radius:26px;box-shadow:7px 7px 0 var(--ink)}.order-card{padding:28px 18px 20px}.order-card h2{font-size:37px}.final-cta{padding:75px 20px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.page-loader{display:none}.reveal,.word-reveal .word{opacity:1;transform:none}}

/* V9 polish */
html{scroll-padding-top:90px}.modal-open{overflow:hidden}.is-loading{overflow:hidden}
.hero-media{overflow:hidden}.media-shell img{width:100%;height:100%;object-fit:cover;display:block}.media-shell{position:relative;isolation:isolate}.media-shell:after{content:"";position:absolute;inset:auto 0 0;height:35%;background:linear-gradient(transparent,rgba(23,54,47,.18));pointer-events:none;z-index:1}.media-caption{z-index:2}
.product-feature,.menu-card{position:relative;overflow:hidden}.product-feature:after,.menu-card:after{content:"";position:absolute;inset:auto -30% -55% 35%;height:120px;background:rgba(255,255,255,.28);transform:rotate(-10deg);transition:.35s;pointer-events:none}.product-feature:hover:after,.menu-card:hover:after{transform:translateY(-40px) rotate(-10deg)}
.review-primary{background:linear-gradient(145deg,var(--paper),#fff8ee)}.review-head{display:flex;align-items:center;gap:12px}.review-head small{display:block;margin-top:4px;font-weight:800;opacity:.58}.review-card h3{font-family:'Fugaz One';font-size:30px;line-height:1.05;margin:28px 0 8px}.visit-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.install-app[hidden]{display:none!important}
.product-hint{display:block;opacity:.62;font-weight:700;line-height:1.35;margin-top:10px}.order-option{transition:transform .18s ease,box-shadow .18s ease}.order-option:hover{transform:translateY(-2px);box-shadow:4px 4px 0 var(--ink)}
.mobile-nav{grid-template-columns:repeat(4,1fr)}.mobile-nav a.active{background:rgba(246,184,200,.35)}.mobile-nav .mobile-order{min-width:88px}
.install-toast{position:fixed;left:50%;bottom:24px;z-index:12000;transform:translateX(-50%);width:min(520px,calc(100% - 28px));background:var(--ink);color:#fff;border:2px solid #fff;border-radius:20px;padding:13px 14px;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:11px;box-shadow:0 18px 50px rgba(0,0,0,.28)}.install-toast[hidden]{display:none}.install-toast>span{font-size:25px}.install-toast div{display:flex;flex-direction:column}.install-toast small{opacity:.72}.install-toast .install-app{border:0;border-radius:999px;background:var(--pink);color:var(--ink);padding:10px 14px;font-weight:900;cursor:pointer}.toast-close{border:0;background:transparent;color:#fff;font-size:22px;cursor:pointer}
@media(min-width:1100px){.hero{min-height:760px}.hero-copy{padding-left:max(7vw,90px)}.hero-media{padding:75px}.media-shell{max-width:580px;transform:rotate(1.5deg)}.section{padding-left:max(7vw,90px);padding-right:max(7vw,90px)}.favorite-grid,.menu-grid,.ig-grid,.review-grid{gap:18px}.product-feature,.menu-card,.review-card{transition:transform .25s ease,box-shadow .25s ease}.product-feature:hover,.menu-card:hover,.review-card:hover{transform:translateY(-5px);box-shadow:8px 8px 0 var(--ink)}.reviews .review-card:hover{box-shadow:8px 8px 0 var(--pink)}}
@media(max-width:900px){.floating-actions{display:none}.mobile-nav{padding-left:4px;padding-right:4px}.mobile-nav button{transform:translateY(-8px);box-shadow:0 8px 20px rgba(0,0,0,.15)}.install-toast{bottom:82px}}
@media(max-width:650px){.rating-strip{display:grid;grid-template-columns:auto auto 1fr auto;gap:6px;font-size:11px}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.hero-actions .btn{text-align:center;justify-content:center}.visit-actions{display:grid;grid-template-columns:1fr 1fr}.visit-actions .btn,.visit-actions button{width:100%;justify-content:center}.review-card h3{font-size:26px}.install-toast{grid-template-columns:auto 1fr auto;padding:12px}.install-toast .install-app{grid-column:2/3;justify-self:start}.toast-close{grid-column:3;grid-row:1}.install-toast>span{grid-row:1/3}.mobile-nav a,.mobile-nav button{height:64px}}

/* V10 bilingual controls */
.nav-tools{display:flex;align-items:center;gap:12px}.lang-switch{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid rgba(20,20,20,.12);border-radius:999px;padding:5px 8px}.lang-btn{border:0;background:transparent;font:800 11px/1 'DM Sans',sans-serif;cursor:pointer;opacity:.48;padding:5px 4px;color:inherit}.lang-btn.active{opacity:1}.lang-switch span{opacity:.22;font-size:10px}.float-lang{display:none}.lang-btn:focus-visible{outline:2px solid currentColor;outline-offset:2px}@media(max-width:900px){.nav-tools .lang-switch{display:none}.float-lang{display:flex;position:fixed;right:16px;top:86px;z-index:75;background:#171717;color:#fff;border-radius:999px;padding:5px 7px;box-shadow:0 8px 24px rgba(0,0,0,.15)}.float-lang .lang-btn{color:#fff}.nav-tools{gap:6px}}@media(max-width:560px){.float-lang{top:76px;right:12px}}

/* V11 commerce + polish */
.nav{transition:height .25s ease,background .25s ease,box-shadow .25s ease,border-color .25s ease}.nav:not(.nav-scrolled){background:rgba(255,253,247,.78)}.nav.nav-scrolled{background:rgba(255,253,247,.97);box-shadow:0 12px 34px rgba(23,54,47,.08)}
body.lang-changing main,body.lang-changing .topbar,body.lang-changing footer{opacity:.78;transition:opacity .18s ease}main,.topbar,footer{transition:opacity .18s ease}
.open-status,.visit-status{margin-top:16px;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(23,54,47,.18);border-radius:999px;background:rgba(255,255,255,.55);font-size:11px}.status-dot{width:8px;height:8px;border-radius:50%;background:#d35b5b;box-shadow:0 0 0 4px rgba(211,91,91,.12)}.is-open .status-dot{background:#22a05a;box-shadow:0 0 0 4px rgba(34,160,90,.12)}.is-open b{color:#14743f}.is-closed b{color:#9b3a3a}
.promo-strip{display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--yellow);border-bottom:var(--line)}.promo-strip h2{font-family:'Fugaz One';font-size:clamp(34px,4vw,60px);line-height:.95;margin:10px 0 12px}.promo-strip p{margin:0;max-width:620px}
.fulfilment-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0 4px}.fulfilment-btn{border:var(--line);border-radius:14px;background:var(--paper);padding:12px 10px;font-size:11px;font-weight:900;cursor:pointer}.fulfilment-btn.active{background:var(--ink);color:#fff}.pickup-view{margin-top:16px}.pickup-card{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;background:var(--mint);border:var(--line);border-radius:17px;padding:15px;margin-bottom:12px}.pickup-card>span{font-size:26px}.pickup-card div{display:flex;flex-direction:column;gap:3px}.pickup-card small{font-size:10px;opacity:.72}.pickup-view .btn{width:100%;justify-content:center}
.product-controls{display:flex;gap:10px;align-items:center;margin:18px 0 10px}.qty-control{display:grid;grid-template-columns:42px 38px 42px;border:var(--line);border-radius:14px;overflow:hidden;background:#fff}.qty-control button{border:0;background:transparent;font-size:20px;cursor:pointer}.qty-control b{display:grid;place-items:center;border-inline:1px solid rgba(23,54,47,.18)}.share-product{margin-left:auto;padding:11px 15px}.add-cart{width:100%;justify-content:center}.text-order{width:100%;border:0;background:transparent;text-decoration:underline;font-weight:900;color:var(--ink);padding:13px;cursor:pointer}.size-selector{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.size-btn{border:var(--line);border-radius:13px;background:var(--paper);padding:10px 12px;display:flex;justify-content:space-between;gap:8px;cursor:pointer;font-size:11px}.size-btn.active{background:var(--ink);color:#fff}
.float-cart{width:54px;height:54px;border:var(--line);border-radius:50%;background:var(--cream);display:grid;place-items:center;position:relative;font-size:18px;cursor:pointer;box-shadow:5px 5px 0 var(--ink)}.cart-count{position:absolute;right:-4px;top:-5px;background:var(--hot);color:#fff;width:22px;height:22px;border-radius:50%;font-style:normal;font-size:10px;font-weight:900;display:grid;place-items:center;border:2px solid var(--paper)}.cart-count[hidden]{display:none}.cart-pulse{animation:cartPulse .45s ease}@keyframes cartPulse{50%{transform:scale(1.18) rotate(-7deg)}}
.cart-modal{position:fixed;inset:0;z-index:10020;display:none;align-items:stretch;justify-content:flex-end}.cart-modal.open{display:flex}.cart-backdrop{position:absolute;inset:0;border:0;background:rgba(23,54,47,.7);backdrop-filter:blur(5px)}.cart-sheet{position:relative;width:min(500px,100%);height:100%;background:var(--cream);border-left:var(--line);padding:34px 28px;overflow:auto;box-shadow:-20px 0 60px rgba(0,0,0,.18);transform:translateX(30px);transition:transform .25s ease}.cart-modal.open .cart-sheet{transform:none}.cart-close{position:absolute;right:18px;top:16px;width:40px;height:40px;border:var(--line);border-radius:50%;background:var(--paper);font-size:24px;cursor:pointer}.cart-title{font-family:'Fugaz One';font-size:48px;margin:10px 0 24px}.cart-items{display:grid;gap:10px}.cart-row{display:grid;grid-template-columns:46px 1fr auto auto auto;gap:10px;align-items:center;border:var(--line);border-radius:16px;background:#fff;padding:10px}.cart-row-art{width:46px;height:46px;border-radius:12px;background:var(--pink);display:grid;place-items:center;font-size:24px}.cart-row-copy{display:flex;flex-direction:column}.cart-row-copy b{font-size:12px}.cart-row-copy small{font-size:9px;opacity:.65}.cart-row-qty{display:grid;grid-template-columns:28px 24px 28px;align-items:center;text-align:center;border:1px solid rgba(23,54,47,.18);border-radius:9px;overflow:hidden}.cart-row-qty button{border:0;background:#fff;cursor:pointer}.cart-row>strong{font-size:11px}.cart-remove{border:0;background:transparent;font-size:20px;cursor:pointer;color:var(--hot)}.cart-empty{min-height:220px;display:grid;place-content:center;text-align:center;gap:7px;border:1.5px dashed rgba(23,54,47,.28);border-radius:20px}.cart-empty[hidden]{display:none}.cart-empty span{font-size:54px}.cart-empty small{opacity:.62}.cart-summary{display:flex;align-items:end;justify-content:space-between;border-top:var(--line);margin-top:20px;padding-top:18px}.cart-summary span{font-size:12px;font-weight:800}.cart-summary strong{font-family:'Fugaz One';font-size:30px}.cart-checkout{width:100%;justify-content:center;margin-top:14px}.cart-checkout.disabled{opacity:.45;cursor:not-allowed}.clear-cart{width:100%;border:0;background:transparent;padding:14px;font-weight:900;text-decoration:underline;cursor:pointer}
.menu-card.filter-in{animation:filterIn .38s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--filter-delay,0ms)}@keyframes filterIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.footer-install{border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:800;cursor:pointer}.footer-install[hidden]{display:none}.mini-notice{position:fixed;left:50%;bottom:100px;z-index:13000;transform:translate(-50%,15px);opacity:0;background:var(--ink);color:#fff;padding:10px 15px;border-radius:999px;font-size:11px;font-weight:900;transition:.2s}.mini-notice.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.promo-strip{align-items:flex-start;flex-direction:column}.floating-actions{display:flex}.float-cart{display:grid}.cart-sheet{padding-bottom:100px}.nav:not(.nav-scrolled){background:rgba(255,253,247,.94)}}
@media(max-width:650px){.promo-strip{padding-top:55px;padding-bottom:55px}.promo-strip .btn{width:100%;justify-content:center}.product-controls{align-items:stretch}.share-product{margin-left:0}.size-selector{grid-template-columns:1fr 1fr}.cart-modal{align-items:flex-end}.cart-sheet{width:100%;height:min(82vh,720px);border-left:0;border-top:var(--line);border-radius:26px 26px 0 0;padding:26px 16px 92px}.cart-title{font-size:38px}.cart-row{grid-template-columns:42px 1fr auto auto}.cart-row>strong{grid-column:2/4}.cart-remove{grid-row:1;grid-column:4}.cart-row-qty{grid-column:3}.float-cart{width:50px;height:50px}.floating-actions{bottom:82px;gap:9px}.ios-toast{bottom:82px}}


/* V12 · logo original integrado */
.brand-logo{display:flex;align-items:center;justify-content:flex-start;line-height:1;min-width:128px}
.brand-logo img{display:block;width:142px;height:62px;object-fit:contain;object-position:left center}
.loader-logo-original{width:min(330px,72vw);height:auto;display:block;filter:drop-shadow(0 10px 24px rgba(23,54,47,.16));animation:v12LogoFloat 1.8s ease-in-out infinite alternate}
@keyframes v12LogoFloat{from{transform:translateY(4px) scale(.985)}to{transform:translateY(-4px) scale(1)}}
.page-loader .loader-line{width:min(230px,58vw);margin-top:22px}
.footer-brand.brand-logo{min-width:180px}
.footer-brand.brand-logo img{width:185px;height:100px;object-position:left center}
@media(max-width:900px){
 .brand-logo img{width:126px;height:56px}
}
@media(max-width:650px){
 .brand-logo{min-width:110px}
 .brand-logo img{width:112px;height:50px}
 .loader-logo-original{width:min(285px,76vw)}
 .footer-brand.brand-logo{justify-content:center;min-width:0}
 .footer-brand.brand-logo img{width:168px;height:90px;object-position:center}
}
@media(prefers-reduced-motion:reduce){.loader-logo-original{animation:none}}

/* V13 — carta actualizada integrada sin cambiar la identidad V12 */
#menu .menu-grid{align-items:stretch}
#menu .menu-card{min-height:220px}
#menu .menu-card p{max-width:34ch}
#menu .menu-card strong{display:block;margin-top:auto;padding-top:18px;font-size:1.2rem}
@media(max-width:700px){#menu .menu-card{min-height:190px}}

/* V14 DEMO — fotografías provisionales en tarjetas de producto */
#menu .menu-card{position:relative;overflow:hidden;padding-top:0!important;display:flex;flex-direction:column}
#menu .product-photo{width:calc(100% + 0px);height:170px;object-fit:cover;display:block;margin:0 0 18px 0;border-radius:18px;box-shadow:0 8px 20px rgba(0,0,0,.08);background:#f1ece8}
#menu .menu-card>*:not(.product-photo):not(.demo-photo-badge){margin-left:4px;margin-right:4px}
#menu .demo-photo-badge{position:absolute;top:14px;right:14px;z-index:2;background:rgba(15,15,15,.82);color:white;font-size:10px;font-weight:900;letter-spacing:.12em;padding:7px 9px;border-radius:999px;backdrop-filter:blur(8px)}
#menu .menu-card:hover .product-photo{transform:scale(1.025)}
#menu .product-photo{transition:transform .35s ease}
@media(max-width:700px){#menu .product-photo{height:155px}}


/* =========================
 V15 — MICROANIMACIONES
 Mantiene intacta la identidad visual V14
 ========================= */

/* 1) Entrada suave de tarjetas */
.menu-card{
 opacity:0;
 transform:translateY(22px) scale(.985);
 transition:
 opacity .6s cubic-bezier(.2,.8,.2,1),
 transform .6s cubic-bezier(.2,.8,.2,1),
 box-shadow .25s ease;
 will-change:transform,opacity;
}
.menu-card.v15-in{
 opacity:1;
 transform:translateY(0) scale(1);
}
.menu-card:nth-child(2){transition-delay:.04s}
.menu-card:nth-child(3){transition-delay:.08s}
.menu-card:nth-child(4){transition-delay:.12s}
.menu-card:nth-child(5){transition-delay:.16s}
.menu-card:nth-child(6){transition-delay:.20s}
.menu-card:nth-child(7){transition-delay:.24s}
.menu-card:nth-child(8){transition-delay:.28s}
.menu-card:nth-child(9){transition-delay:.32s}
.menu-card:nth-child(10){transition-delay:.36s}
.menu-card:nth-child(11){transition-delay:.40s}

/* 2) Zoom suave de foto */
.menu-card img,
.menu-card .product-photo,
.menu-card .menu-photo{
 transition:transform .45s cubic-bezier(.2,.8,.2,1), filter .3s ease;
 transform:scale(1);
}
.menu-card:hover img,
.menu-card:hover .product-photo,
.menu-card:hover .menu-photo{
 transform:scale(1.045);
}
.menu-card:hover{
 box-shadow:0 18px 45px rgba(0,0,0,.10);
}

/* 3) Animación al filtrar */
.menu-card.v15-filter-out{
 opacity:0 !important;
 transform:scale(.96) translateY(10px) !important;
 pointer-events:none;
}
.menu-card.v15-filter-in{
 animation:v15FilterIn .42s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes v15FilterIn{
 from{opacity:0;transform:scale(.97) translateY(12px)}
 to{opacity:1;transform:scale(1) translateY(0)}
}

/* 4) Modal de producto */
.product-modal,
.modal,
.product-sheet{
 transition:opacity .25s ease;
}
.product-modal .modal-card,
.modal .modal-card,
.product-sheet .sheet-card{
 transform:translateY(18px) scale(.985);
 opacity:0;
 transition:
 transform .34s cubic-bezier(.2,.8,.2,1),
 opacity .34s ease;
}
.product-modal.open .modal-card,
.modal.open .modal-card,
.product-sheet.open .sheet-card{
 transform:none;
 opacity:1;
}

/* 5) Feedback añadir */
.v15-added{
 animation:v15Added .48s cubic-bezier(.2,.8,.2,1);
}
@keyframes v15Added{
 0%{transform:scale(1)}
 45%{transform:scale(1.08)}
 100%{transform:scale(1)}
}

/* 6) Burbuja hacia carrito */
.v15-bubble{
 position:fixed;
 z-index:9999;
 width:16px;height:16px;border-radius:50%;
 background:linear-gradient(135deg,#ff7bbd,#65d8d0);
 box-shadow:0 3px 12px rgba(0,0,0,.18);
 pointer-events:none;
 animation:v15BubbleFly .72s cubic-bezier(.15,.7,.2,1) forwards;
}
@keyframes v15BubbleFly{
 0%{opacity:0;transform:translate(0,0) scale(.6)}
 15%{opacity:1}
 100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.25)}
}

/* 7) Cart badge pulse */
.v15-cart-pulse{
 animation:v15CartPulse .45s ease;
}
@keyframes v15CartPulse{
 0%{transform:scale(1)}
 45%{transform:scale(1.18)}
 100%{transform:scale(1)}
}

/* 8) Botón central pedir: pulso MUY sutil */
@keyframes v15OrderPulse{
 0%,88%,100%{box-shadow:0 8px 22px rgba(0,0,0,.12)}
 92%{box-shadow:0 0 0 7px rgba(255,105,180,.08),0 10px 28px rgba(0,0,0,.14)}
 96%{box-shadow:0 0 0 11px rgba(72,209,204,.04),0 10px 28px rgba(0,0,0,.14)}
}
.mobile-nav .order,
.mobile-nav .order-btn,
.floating-order,
.nav-order{
 animation:v15OrderPulse 7s ease-in-out infinite;
}

/* 9) Títulos con reveal corto */
.v15-title-reveal{
 opacity:0;
 transform:translateY(14px);
 transition:opacity .6s ease,transform .6s cubic-bezier(.2,.8,.2,1);
}
.v15-title-reveal.v15-in{
 opacity:1;
 transform:none;
}

@media (prefers-reduced-motion:reduce){
 .menu-card,
 .menu-card img,
 .menu-card .product-photo,
 .menu-card .menu-photo,
 .v15-title-reveal,
 .mobile-nav .order,
 .mobile-nav .order-btn,
 .floating-order,
 .nav-order{
 animation:none !important;
 transition:none !important;
 transform:none !important;
 opacity:1 !important;
 }
}


/* V16 — feedback seguro del botón Añadir */
.add-cart{position:relative;overflow:hidden}
.add-cart.v15-added::after{
 content:"";
 position:absolute;
 right:14px;
 top:50%;
 transform:translateY(-50%) scale(.7);
 opacity:0;
 width:25px;height:25px;border-radius:50%;
 display:grid;place-items:center;
 background:rgba(255,255,255,.18);
 animation:v16Check .7s ease;
}
@keyframes v16Check{
 0%{opacity:0;transform:translateY(-50%) scale(.6)}
 30%{opacity:1;transform:translateY(-50%) scale(1)}
 75%{opacity:1}
 100%{opacity:0;transform:translateY(-50%) scale(.9)}
}


/* V17 — robustez visual: si una imagen demo externa falla, nunca queda rota */
.product-photo-wrap-fallback,
.menu-card.photo-fallback::before,
.product-feature.photo-fallback::before{
 content:attr(data-fallback);
 position:absolute;
 inset:0;
 display:grid;
 place-items:center;
 font-size:clamp(44px,8vw,78px);
 background:linear-gradient(135deg,rgba(255,126,187,.14),rgba(87,211,203,.18));
 z-index:0;
}
.menu-card.photo-fallback .product-photo,
.product-feature.photo-fallback .product-photo{display:none}
.menu-card.photo-fallback,
.product-feature.photo-fallback{position:relative;overflow:hidden}
.menu-card.photo-fallback > *:not(.product-photo),
.product-feature.photo-fallback > *:not(.product-photo){position:relative;z-index:1}

/* Logos de plataformas: evita icono roto si un CDN externo no responde */
.order-logo.logo-fallback{
 font-size:11px;
 font-weight:900;
 letter-spacing:-.02em;
 color:currentColor;
}
.order-logo.logo-fallback img,
.float-instagram.logo-fallback img{display:none}
.float-instagram.logo-fallback::after{
 content:"IG";
 color:#fff;
 font-weight:900;
 font-size:12px;
}


/* V33 — PRODUCCIÓN: controles, modales y botones consolidados */
[hidden]{display:none!important}
.floating-actions{z-index:9000!important}
.float-cart,.float-main,.float-instagram{display:flex!important;align-items:center!important;justify-content:center!important;visibility:visible!important;opacity:1!important}
.float-cart span,.float-main span{display:grid!important;place-items:center!important;width:22px!important;height:22px!important}
.float-cart span img,.float-main span img,.float-instagram img,.mobile-nav span img,.order-logo img,.pickup-card>span img{width:100%!important;height:100%!important;display:block!important}
.float-cart span img,.float-main span img,.float-instagram img,.mobile-nav span img{filter:none!important}
.float-instagram img{width:20px!important;height:20px!important}
.mobile-nav span{display:grid!important;place-items:center!important;width:21px!important;height:21px!important;margin:auto!important}
.mobile-nav span img{width:20px!important;height:20px!important}

.local-order-mark{display:grid!important;place-items:center!important;width:44px!important;height:44px!important;border-radius:13px!important;font-size:12px!important;font-weight:950!important;letter-spacing:-.04em!important}
.mark-wa{background:#25D366!important;color:#fff!important}.mark-glovo{background:#FFC244!important;color:#006450!important}.mark-uber{background:#06C167!important;color:#07130c!important}

.cart-row-art{overflow:hidden!important;border-radius:14px!important;background:#0a0a0a!important}
.cart-row-art img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.cart-empty>span{display:grid!important;place-items:center!important;width:52px!important;height:52px!important;margin:0 auto 12px!important}
.cart-empty>span img{width:38px!important;height:38px!important;opacity:.45!important}
.install-toast>span{overflow:hidden!important;border-radius:13px!important}.install-toast>span img{width:100%!important;height:100%!important;object-fit:cover!important}

#cartDeliveryAddressWrap{margin-top:10px!important}#cartDeliveryAddressWrap input{width:100%!important;box-sizing:border-box!important}

.footer-tools{display:flex!important;gap:8px!important;flex-wrap:wrap!important;align-items:center!important}
.footer-tool{display:inline-flex!important;align-items:center!important;gap:7px!important;border:1px solid rgba(255,255,255,.14)!important;background:rgba(255,255,255,.05)!important;color:inherit!important;border-radius:999px!important;padding:9px 12px!important;font:inherit!important;font-size:11px!important;font-weight:900!important;cursor:pointer!important}
.footer-tool img{width:15px!important;height:15px!important;filter:invert(1)!important}
.clean-qr-modal{position:fixed!important;inset:0!important;z-index:12000!important}.clean-qr-backdrop{position:absolute!important;inset:0!important;border:0!important;background:rgba(0,0,0,.56)!important;backdrop-filter:blur(5px)!important}.clean-qr-card{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;width:min(360px,calc(100vw - 28px))!important;background:#fff!important;border-radius:24px!important;padding:24px!important;text-align:center!important;color:#111!important;box-shadow:0 30px 80px rgba(0,0,0,.3)!important}.clean-qr-card img{width:240px!important;max-width:100%!important;height:auto!important;margin:14px auto!important;display:block!important}.clean-qr-close{position:absolute!important;right:10px!important;top:10px!important;width:38px!important;height:38px!important;border:0!important;border-radius:50%!important;background:#f1f1f1!important;font-size:23px!important;cursor:pointer!important}

/* One scrolling model for every canonical modal */
.product-modal,.cart-modal,.order-modal{overscroll-behavior:none!important}
.product-sheet,.cart-sheet,.order-card{-webkit-overflow-scrolling:touch!important;overscroll-behavior-y:contain!important;touch-action:pan-y!important}
@media(max-width:700px){
  .product-sheet,.cart-sheet{height:94svh!important;max-height:94svh!important;overflow-y:auto!important;overflow-x:hidden!important}
  .order-card{max-height:90svh!important;overflow-y:auto!important}
  .product-sheet-art{min-height:245px!important;height:245px!important}
  .float-lang{display:none!important}
  .floating-actions{right:12px!important;bottom:calc(86px + env(safe-area-inset-bottom))!important}
  .float-cart,.float-main,.float-instagram{box-shadow:0 10px 30px rgba(0,0,0,.18)!important}
  .footer-tools{justify-content:center!important}
}
.v33-visible{opacity:1!important;transform:none!important}

/* V35 — V33 intacta + iconos discretos */
.v35-icon{
  width:16px!important;
  height:16px!important;
  flex:0 0 16px!important;
  display:inline-block!important;
  object-fit:contain!important;
  margin-right:7px!important;
  vertical-align:-2px!important;
}
.v35-brand-icon{
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
  display:inline-block!important;
  object-fit:contain!important;
  margin-right:7px!important;
  vertical-align:-3px!important;
}
/* No cambia alturas, paddings, radios ni tipografía de V33 */
a:has(.v35-icon),button:has(.v35-icon),
a:has(.v35-brand-icon),button:has(.v35-brand-icon){
  display:inline-flex!important;
  align-items:center!important;
}
@media(max-width:700px){
  .v35-icon{width:15px!important;height:15px!important;flex-basis:15px!important;margin-right:6px!important}
  .v35-brand-icon{width:17px!important;height:17px!important;flex-basis:17px!important;margin-right:6px!important}
}


/* =========================================================
   V36 — MOBILE PULIDA / PROPORCIONES CORREGIDAS
   ========================================================= */

/* Logos e iconos discretos, sin alterar altura de botón */
.v36-icon{
  width:14px!important;
  height:14px!important;
  flex:0 0 14px!important;
  object-fit:contain!important;
  margin-right:6px!important;
  vertical-align:-2px!important;
}
.v36-brand-wordmark{
  width:auto!important;
  height:22px!important;
  max-width:86px!important;
  object-fit:contain!important;
  flex:0 0 auto!important;
  margin-right:6px!important;
}

/* Desktop: un poco más contenidos también */
.menu-card .product-photo{
  max-height:220px!important;
}
.product-feature .product-photo{
  max-height:330px!important;
}

/* Móvil */
@media(max-width:700px){

  body{
    overflow-x:hidden!important;
  }

  .container{
    width:calc(100% - 28px)!important;
    max-width:100%!important;
  }

  section{
    padding-top:56px!important;
    padding-bottom:56px!important;
  }

  /* HERO: menos alto y más proporcionado */
  .hero{
    min-height:56svh!important;
    max-height:none!important;
  }
  .hero .v25-hero-real{
    background-position:center 44%!important;
  }

  /* FAVORITOS: foto visual sin ocupar media pantalla */
  .product-feature{
    border-radius:20px!important;
    padding:14px!important;
    min-height:0!important;
  }
  .product-feature .product-photo{
    width:calc(100% + 28px)!important;
    margin:-14px -14px 14px!important;
    height:220px!important;
    min-height:0!important;
    max-height:220px!important;
    object-fit:cover!important;
    border-radius:0!important;
  }

  /* GRID DE PRODUCTOS: más tipo app */
  .menu-grid{
    grid-template-columns:1fr 1fr!important;
    gap:12px!important;
  }

  .menu-card{
    min-height:0!important;
    height:auto!important;
    border-radius:18px!important;
    padding:0 12px 12px!important;
    box-shadow:0 6px 18px rgba(0,0,0,.055)!important;
  }

  .menu-card .product-photo{
    width:calc(100% + 24px)!important;
    margin:0 -12px 11px!important;
    height:145px!important;
    min-height:145px!important;
    max-height:145px!important;
    object-fit:cover!important;
    border-radius:0!important;
  }

  .menu-card h3{
    font-size:17px!important;
    line-height:1.05!important;
    margin:0 0 5px!important;
    min-height:auto!important;
  }

  .menu-card p{
    font-size:11px!important;
    line-height:1.35!important;
    min-height:0!important;
    margin:0!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }

  .menu-card strong{
    font-size:15px!important;
    margin-top:10px!important;
    padding-top:0!important;
  }

  .menu-card .v32-cta,
  .menu-card .v31-cta,
  .menu-card .v33-cta{
    min-height:38px!important;
    margin-top:10px!important;
    padding:9px 10px!important;
    font-size:11px!important;
    border-radius:11px!important;
  }

  /* Badges/status más pequeños */
  .v32-status,
  .sold-out::after{
    top:9px!important;
    left:9px!important;
    right:auto!important;
    padding:5px 7px!important;
    font-size:8px!important;
  }

  /* BANNER: no gigante en móvil */
  .v28-showcase-photo img,
  .v29-showcase-photo img{
    aspect-ratio:16/10!important;
    max-height:260px!important;
    object-fit:cover!important;
  }

  /* Instagram / galería: menos altos */
  .ig-grid{
    gap:10px!important;
  }
  .ig-card,
  .ig-card img{
    min-height:190px!important;
    max-height:220px!important;
  }

  /* Historia */
  .story-art,
  .story-art img{
    min-height:300px!important;
    max-height:340px!important;
  }

  /* Tiras fotográficas */
  .v29-strip-card,
  .v29-strip-card img{
    min-height:210px!important;
    max-height:240px!important;
  }

  /* Botones flotantes: compactos y sin solaparse */
  .floating-actions,
  .float-actions,
  .floating-buttons{
    right:12px!important;
    bottom:86px!important;
    gap:8px!important;
  }

  .floating-actions a,
  .floating-actions button,
  .float-actions a,
  .float-actions button,
  .floating-buttons a,
  .floating-buttons button{
    min-width:42px!important;
    width:auto!important;
    min-height:42px!important;
    height:42px!important;
    padding:0 10px!important;
    border-radius:999px!important;
    font-size:11px!important;
  }

  .v36-brand-wordmark{
    height:20px!important;
    max-width:76px!important;
    margin-right:0!important;
  }

  .v36-icon{
    width:14px!important;
    height:14px!important;
    flex-basis:14px!important;
    margin-right:5px!important;
  }

  /* Bottom nav */
  .mobile-bottom-nav,
  .bottom-nav{
    min-height:64px!important;
    padding:6px 8px calc(6px + env(safe-area-inset-bottom))!important;
  }
  .mobile-bottom-nav a,
  .mobile-bottom-nav button,
  .bottom-nav a,
  .bottom-nav button{
    font-size:10px!important;
    gap:4px!important;
  }

  /* Modales: contenido visible y scroll fluido */
  .product-sheet,
  .order-sheet,
  .cart-sheet,
  .modal-panel{
    max-height:88svh!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }

  .product-sheet-art{
    min-height:190px!important;
    height:190px!important;
    max-height:190px!important;
  }

  /* CTAs finales */
  .final-cta,
  .v29-final-photo{
    min-height:0!important;
    padding-top:58px!important;
    padding-bottom:58px!important;
  }
}

/* Pantallas muy pequeñas */
@media(max-width:390px){
  .menu-grid{
    grid-template-columns:1fr 1fr!important;
    gap:9px!important;
  }
  .menu-card{
    padding:0 10px 10px!important;
  }
  .menu-card .product-photo{
    width:calc(100% + 20px)!important;
    margin:0 -10px 9px!important;
    height:128px!important;
    min-height:128px!important;
    max-height:128px!important;
  }
  .menu-card h3{
    font-size:15px!important;
  }
  .menu-card p{
    font-size:10px!important;
  }
  .menu-card strong{
    font-size:14px!important;
  }
}

/* En tablet, evita tarjetas gigantes */
@media(min-width:701px) and (max-width:1024px){
  .menu-card .product-photo{
    height:210px!important;
  }
  .product-feature .product-photo{
    height:300px!important;
  }
}


/* =========================================================
   V37 — FIX REAL DE VIEWPORT / IPHONE
   La captura mostraba el sitio de escritorio escalado dentro del móvil.
   ========================================================= */
html{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  -webkit-text-size-adjust:100%!important;
}
body{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow-x:hidden!important;
}
*,*::before,*::after{box-sizing:border-box!important}
img,video,svg,canvas{max-width:100%;height:auto}

/* Neutraliza anchos mínimos/fijos heredados que fuerzan canvas desktop */
.page,
.site,
.app,
main,
header,
footer,
section,
.container,
.wrap,
.wrapper,
.nav-inner,
.hero-inner,
.menu,
.menu-grid,
.favorites,
.favorites-grid,
.story-grid,
.ig-grid{
  min-width:0!important;
  max-width:100%!important;
}

@media(max-width:700px){
  html,body{
    width:100%!important;
    max-width:100vw!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }

  .container,
  .wrap,
  .wrapper,
  .nav-inner,
  .hero-inner{
    width:100%!important;
    max-width:100%!important;
    padding-left:16px!important;
    padding-right:16px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Cabecera a ancho real de teléfono */
  header,.site-header,.topbar,.ticker,.nav{
    width:100%!important;
    max-width:100vw!important;
    min-width:0!important;
  }

  /* Favoritos: una tarjeta por fila, compacta y legible */
  .favorites-grid,
  .featured-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    gap:14px!important;
  }
  .product-feature{
    width:100%!important;
    max-width:100%!important;
  }
  .product-feature .product-photo{
    width:calc(100% + 28px)!important;
    height:240px!important;
    min-height:240px!important;
    max-height:240px!important;
    object-fit:cover!important;
  }

  /* Carta: dos columnas reales, nunca una columna desktop estrecha */
  .menu-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:100%!important;
    max-width:100%!important;
    gap:12px!important;
  }
  .menu-card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .menu-card .product-photo{
    width:calc(100% + 24px)!important;
    height:150px!important;
    min-height:150px!important;
    max-height:150px!important;
    object-fit:cover!important;
  }

  /* El resto de grids pasa a ancho móvil real */
  .story-grid,
  .promo-grid,
  .event-grid{
    grid-template-columns:1fr!important;
    width:100%!important;
  }

  .ig-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:100%!important;
  }

  /* Navegación inferior ocupa exactamente el viewport */
  .mobile-bottom-nav,
  .bottom-nav{
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100%!important;
    max-width:100vw!important;
    min-width:0!important;
    z-index:1000!important;
  }

  /* flotantes contenidos dentro de pantalla */
  .floating-actions,
  .float-actions,
  .floating-buttons{
    position:fixed!important;
    right:12px!important;
    left:auto!important;
    max-width:calc(100vw - 24px)!important;
    z-index:1001!important;
  }

  /* Modales a ancho de teléfono */
  .modal,
  .sheet,
  .product-sheet,
  .cart-sheet,
  .order-sheet{
    max-width:100vw!important;
  }
  .product-sheet,
  .cart-sheet,
  .order-sheet,
  .modal-panel{
    width:min(100%,560px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* iPhone estrecho */
@media(max-width:390px){
  .container,.wrap,.wrapper,.nav-inner,.hero-inner{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .menu-grid{gap:9px!important}
  .menu-card .product-photo{
    height:132px!important;
    min-height:132px!important;
    max-height:132px!important;
  }
}


/* =========================================================
   V38 — HERO RESTAURADO + IDIOMAS CON BANDERAS
   ========================================================= */
.hero{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
.v38-hero-photo{
  position:absolute!important;
  inset:0!important;
  z-index:-2!important;
  background-image:url("assets/chicha-real.webp")!important;
  background-size:cover!important;
  background-position:center 46%!important;
  background-repeat:no-repeat!important;
}
.v38-hero-photo::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(90deg,rgba(0,0,0,.40),rgba(0,0,0,.10) 58%,rgba(0,0,0,.18))!important;
}
.hero>*:not(.v38-hero-photo){
  position:relative!important;
  z-index:1!important;
}

/* Selector idiomas */
.v38-lang-switcher{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  margin-left:10px!important;
  padding:3px!important;
  border:1px solid rgba(0,0,0,.10)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.88)!important;
  backdrop-filter:blur(10px)!important;
  flex:0 0 auto!important;
}
.v38-lang-btn{
  border:0!important;
  background:transparent!important;
  color:#1a1a1a!important;
  font:inherit!important;
  font-size:11px!important;
  font-weight:900!important;
  min-width:48px!important;
  height:30px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  cursor:pointer!important;
  line-height:1!important;
}
.v38-lang-btn.active{
  background:#103d36!important;
  color:#fff!important;
}

@media(max-width:700px){
  .v38-hero-photo{
    background-position:center 44%!important;
  }
  .hero{
    min-height:56svh!important;
  }
  .v38-lang-switcher{
    margin-left:6px!important;
    gap:3px!important;
    padding:2px!important;
  }
  .v38-lang-btn{
    min-width:43px!important;
    height:28px!important;
    font-size:10px!important;
    padding:0 6px!important;
  }
}


/* =========================================================
   V39 — CORRECCIÓN: HERO ORIGINAL + IDIOMA REAL
   ========================================================= */

/* Hero aprobado: foto real con fondo negro + mano */
.hero{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-height:0!important;
  height:auto!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  background:#050505!important;
  border:0!important;
}
.hero .v38-hero-photo,
.hero .v25-hero-real{
  display:none!important;
}
.v39-hero-image{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center!important;
  margin:0!important;
}

/* Idioma conectado al sistema real de script.js */
.v39-lang-switcher{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  padding:3px!important;
  margin-left:8px!important;
  border:1px solid rgba(0,0,0,.12)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.90)!important;
  flex:0 0 auto!important;
}
.v39-lang-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:48px!important;
  height:30px!important;
  padding:0 7px!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:var(--ink)!important;
  font:inherit!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1!important;
  cursor:pointer!important;
}
.v39-lang-btn.active{
  background:var(--ink)!important;
  color:#fff!important;
}

/* Floating language: flags but same proportions */
.float-lang .lang-btn{
  min-width:42px!important;
  padding:0 5px!important;
  font-size:9px!important;
}

/* MOBILE */
@media(max-width:700px){
  .hero{
    width:100vw!important;
    max-width:100vw!important;
  }
  .v39-hero-image{
    width:100%!important;
    height:62svh!important;
    min-height:420px!important;
    max-height:620px!important;
    object-fit:cover!important;
    object-position:center 46%!important;
  }

  .v39-lang-switcher{
    margin-left:5px!important;
    gap:2px!important;
    padding:2px!important;
  }
  .v39-lang-btn{
    min-width:42px!important;
    height:27px!important;
    padding:0 5px!important;
    font-size:9px!important;
  }
}

/* Pantallas muy estrechas */
@media(max-width:390px){
  .v39-hero-image{
    height:58svh!important;
    min-height:390px!important;
    object-position:center 45%!important;
  }
  .v39-lang-btn{
    min-width:39px!important;
    font-size:8px!important;
  }
}


/* =========================================================
   V40 — UI POLISH
   Sin funciones nuevas: solo acabado visual profesional
   ========================================================= */

:root{
  --v40-space-1: 4px;
  --v40-space-2: 8px;
  --v40-space-3: 12px;
  --v40-space-4: 16px;
  --v40-space-5: 24px;
  --v40-space-6: 32px;
  --v40-radius-sm: 12px;
  --v40-radius-md: 18px;
  --v40-radius-lg: 24px;
  --v40-shadow-soft: 0 10px 30px rgba(0,0,0,.07);
  --v40-shadow-float: 0 18px 45px rgba(0,0,0,.12);
  --v40-border: rgba(0,0,0,.08);
  --v40-accent: #17bdb8;
  --v40-accent-dark: #103d36;
}

/* Global rhythm */
body{
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
section{
  scroll-margin-top:88px;
}
button,a{
  -webkit-tap-highlight-color:transparent;
}

/* HERO: keep approved photo, improve finish only */
.v40-hero-image{
  display:block!important;
  width:100%!important;
  object-fit:cover!important;
  background:#050505!important;
}

/* Product cards */
.v40-product-card{
  border:1px solid var(--v40-border)!important;
  border-radius:var(--v40-radius-lg)!important;
  background:#fff!important;
  box-shadow:var(--v40-shadow-soft)!important;
  overflow:hidden!important;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease!important;
}
@media(hover:hover){
  .v40-product-card:hover{
    transform:translateY(-3px)!important;
    box-shadow:var(--v40-shadow-float)!important;
    border-color:rgba(23,189,184,.22)!important;
  }
}

/* Image hierarchy */
.v40-product-card .product-photo{
  display:block!important;
  object-fit:cover!important;
  object-position:center!important;
  background:#080808!important;
}

/* Typography hierarchy inside cards */
.v40-product-card h3{
  font-weight:850!important;
  letter-spacing:-.025em!important;
}
.v40-product-card p{
  color:#667178!important;
}
.v40-product-card strong{
  color:#111!important;
  font-weight:900!important;
}

/* Status badge more elegant */
.v32-status,
.v40-product-card .status,
.v40-product-card .availability{
  border:1px solid rgba(0,0,0,.06)!important;
  background:rgba(255,255,255,.90)!important;
  backdrop-filter:blur(10px)!important;
  box-shadow:0 5px 14px rgba(0,0,0,.07)!important;
}

/* Product CTA */
.v40-product-card .v32-cta,
.v40-product-card .v31-cta,
.v40-product-card .v33-cta,
.v40-product-card .product-cta{
  border-radius:14px!important;
  background:#111!important;
  color:#fff!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  transition:transform .16s ease, background .16s ease!important;
}
.v40-product-card:active .v32-cta,
.v40-product-card:active .v31-cta,
.v40-product-card:active .v33-cta,
.v40-product-card:active .product-cta{
  transform:scale(.985)!important;
}

/* Favorites / featured */
.v40-feature-card{
  border-radius:var(--v40-radius-lg)!important;
  border:1px solid var(--v40-border)!important;
  box-shadow:var(--v40-shadow-soft)!important;
  overflow:hidden!important;
  background:#fff!important;
}
.v40-feature-card .product-photo{
  object-fit:cover!important;
  background:#080808!important;
}

/* Delivery buttons: same system, brand personality */
.v40-delivery-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:46px!important;
  border-radius:14px!important;
  padding:10px 14px!important;
  font-weight:900!important;
  border:1px solid rgba(0,0,0,.08)!important;
  box-shadow:0 6px 16px rgba(0,0,0,.06)!important;
  transition:transform .16s ease, box-shadow .16s ease!important;
}
.v40-delivery-btn:active{
  transform:scale(.985)!important;
}
.v40-glovo{
  background:#FFC244!important;
  color:#006f5f!important;
}
.v40-uber{
  background:#fff!important;
  color:#111!important;
}

/* Brand marks stay contained */
.v40-delivery-btn img,
.v35-brand-icon,
.v36-brand-wordmark{
  max-height:18px!important;
  max-width:72px!important;
  width:auto!important;
  object-fit:contain!important;
  flex:0 0 auto!important;
}

/* General icon sizing */
.v35-icon,
.v36-icon,
.v40-delivery-btn svg,
.v40-delivery-btn .icon{
  width:15px!important;
  height:15px!important;
  flex:0 0 15px!important;
}

/* Language selector */
.v39-lang-switcher{
  padding:2px!important;
  gap:2px!important;
  border-radius:999px!important;
  box-shadow:0 5px 16px rgba(0,0,0,.06)!important;
}
.v39-lang-btn{
  min-width:42px!important;
  height:28px!important;
  padding:0 6px!important;
  font-size:9px!important;
  border-radius:999px!important;
}
.v39-lang-btn.active{
  background:var(--v40-accent-dark)!important;
  box-shadow:0 4px 10px rgba(16,61,54,.18)!important;
}

/* Bottom nav */
.v40-bottom-nav{
  background:rgba(255,255,255,.94)!important;
  backdrop-filter:blur(16px)!important;
  border-top:1px solid rgba(0,0,0,.07)!important;
  box-shadow:0 -8px 28px rgba(0,0,0,.07)!important;
}
.v40-bottom-nav a,
.v40-bottom-nav button{
  border-radius:12px!important;
  transition:background .16s ease, transform .16s ease!important;
}
.v40-bottom-nav a:active,
.v40-bottom-nav button:active{
  transform:scale(.96)!important;
}

/* Floating actions */
.floating-actions a,
.floating-actions button,
.float-actions a,
.float-actions button,
.floating-buttons a,
.floating-buttons button{
  box-shadow:0 8px 24px rgba(0,0,0,.12)!important;
  border:1px solid rgba(0,0,0,.06)!important;
  backdrop-filter:blur(12px)!important;
  transition:transform .16s ease, box-shadow .16s ease!important;
}
.floating-actions a:active,
.floating-actions button:active,
.float-actions a:active,
.float-actions button:active,
.floating-buttons a:active,
.floating-buttons button:active{
  transform:scale(.96)!important;
}

/* Product / cart / checkout sheets */
.v40-sheet{
  border-radius:26px 26px 0 0!important;
  box-shadow:0 -24px 70px rgba(0,0,0,.20)!important;
}
.v40-sheet input,
.v40-sheet textarea,
.v40-sheet select{
  border-radius:13px!important;
  border:1px solid rgba(0,0,0,.12)!important;
  background:#fff!important;
  min-height:44px!important;
}
.v40-sheet button{
  border-radius:13px!important;
}

/* Cart rows */
.cart-item,
.order-item,
.checkout-item{
  border-radius:16px!important;
  border:1px solid rgba(0,0,0,.07)!important;
  background:#fff!important;
  box-shadow:0 5px 16px rgba(0,0,0,.04)!important;
}

/* Photography support sections */
.ig-card,
.story-art,
.v29-strip-card,
.v28-showcase-photo,
.v29-showcase-photo{
  border-radius:22px!important;
  overflow:hidden!important;
  box-shadow:var(--v40-shadow-soft)!important;
}

/* Microanimations kept subtle */
.product-photo,
.ig-card img,
.story-art img,
.v29-strip-card img{
  transition:transform .35s cubic-bezier(.2,.8,.2,1)!important;
}
@media(hover:hover){
  .v40-product-card:hover .product-photo,
  .ig-card:hover img,
  .v29-strip-card:hover img{
    transform:scale(1.02)!important;
  }
}

/* MOBILE POLISH */
@media(max-width:700px){
  section{
    padding-top:48px!important;
    padding-bottom:48px!important;
  }

  .container,.wrap,.wrapper{
    padding-left:14px!important;
    padding-right:14px!important;
  }

  .v40-hero-image{
    height:56svh!important;
    min-height:390px!important;
    max-height:560px!important;
    object-position:center 45%!important;
  }

  /* Two-column app grid, compact but not cramped */
  .menu-grid{
    gap:10px!important;
  }

  .v40-product-card{
    border-radius:18px!important;
    box-shadow:0 6px 18px rgba(0,0,0,.055)!important;
  }

  .v40-product-card .product-photo{
    height:136px!important;
    min-height:136px!important;
    max-height:136px!important;
  }

  .v40-product-card h3{
    font-size:15px!important;
    line-height:1.08!important;
  }

  .v40-product-card p{
    font-size:10px!important;
    line-height:1.35!important;
  }

  .v40-product-card strong{
    font-size:14px!important;
  }

  .v40-product-card .v32-cta,
  .v40-product-card .v31-cta,
  .v40-product-card .v33-cta,
  .v40-product-card .product-cta{
    min-height:38px!important;
    font-size:10px!important;
    border-radius:11px!important;
  }

  /* Featured cards compact */
  .v40-feature-card .product-photo{
    height:210px!important;
    min-height:210px!important;
    max-height:210px!important;
  }

  /* Language selector unobtrusive */
  .v39-lang-switcher{
    margin-left:4px!important;
  }
  .v39-lang-btn{
    min-width:39px!important;
    height:26px!important;
    font-size:8px!important;
  }

  /* Delivery buttons consistent */
  .v40-delivery-btn{
    min-height:42px!important;
    padding:8px 11px!important;
    border-radius:12px!important;
    font-size:11px!important;
  }
  .v40-delivery-btn img{
    max-height:16px!important;
    max-width:64px!important;
  }

  /* Bottom nav refined */
  .v40-bottom-nav{
    min-height:62px!important;
    padding:6px 6px calc(6px + env(safe-area-inset-bottom))!important;
  }
  .v40-bottom-nav a,
  .v40-bottom-nav button{
    font-size:9px!important;
    gap:3px!important;
  }

  /* Floating buttons */
  .floating-actions,
  .float-actions,
  .floating-buttons{
    right:10px!important;
    bottom:78px!important;
    gap:7px!important;
  }
  .floating-actions a,
  .floating-actions button,
  .float-actions a,
  .float-actions button,
  .floating-buttons a,
  .floating-buttons button{
    min-height:40px!important;
    height:40px!important;
    padding:0 9px!important;
  }

  /* Sheets */
  .v40-sheet{
    max-height:90svh!important;
    padding-bottom:calc(18px + env(safe-area-inset-bottom))!important;
  }

  .product-sheet-art{
    height:180px!important;
    min-height:180px!important;
    max-height:180px!important;
    border-radius:18px!important;
  }

  .ig-card,
  .ig-card img{
    min-height:180px!important;
    max-height:205px!important;
  }

  .story-art,
  .story-art img{
    min-height:280px!important;
    max-height:320px!important;
  }
}

@media(max-width:390px){
  .v40-product-card .product-photo{
    height:122px!important;
    min-height:122px!important;
    max-height:122px!important;
  }
  .v40-product-card h3{font-size:14px!important}
  .v40-product-card p{font-size:9px!important}
  .v40-product-card strong{font-size:13px!important}
}

/* =========================================================
   V41 — PULIDO FINAL VISUAL
   ========================================================= */

:root{
  --v41-gap-xs:8px;
  --v41-gap-sm:12px;
  --v41-gap-md:16px;
  --v41-gap-lg:24px;
  --v41-radius:18px;
  --v41-radius-lg:24px;
  --v41-border:rgba(0,0,0,.075);
  --v41-shadow:0 10px 28px rgba(0,0,0,.065);
  --v41-shadow-hover:0 18px 42px rgba(0,0,0,.10);
}

/* Section rhythm */
.v41-section{
  position:relative;
}
.v41-section > .container,
.v41-section > .wrap,
.v41-section > .wrapper{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* All primary action buttons aligned to one system */
.v41-action{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  border-radius:13px!important;
  gap:7px!important;
  line-height:1!important;
  vertical-align:middle!important;
}
.v41-action img{
  flex:0 0 auto!important;
  object-fit:contain!important;
}

/* Delivery brands remain legible and not oversized */
.v40-delivery-btn{
  min-height:44px!important;
  padding:9px 13px!important;
  border-radius:13px!important;
}
.v40-delivery-btn img,
.v36-brand-wordmark{
  max-height:17px!important;
  max-width:68px!important;
}

/* Floating buttons: compact and consistent */
.floating-actions,
.float-actions,
.floating-buttons{
  gap:8px!important;
}
.floating-actions a,
.floating-actions button,
.float-actions a,
.float-actions button,
.floating-buttons a,
.floating-buttons button{
  min-height:40px!important;
  border-radius:999px!important;
  box-shadow:0 7px 20px rgba(0,0,0,.10)!important;
}

/* Product cards perfectly aligned */
.menu-grid{
  align-items:stretch!important;
}
.v40-product-card{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
}
.v40-product-card .product-photo{
  flex:0 0 auto!important;
}
.v40-product-card h3,
.v40-product-card p,
.v40-product-card strong{
  flex:0 0 auto!important;
}
.v40-product-card .v32-cta,
.v40-product-card .product-cta{
  margin-top:auto!important;
}

/* Favorites consistent */
.v40-feature-card{
  height:100%!important;
}
.v40-feature-card .product-photo{
  width:100%!important;
  object-fit:cover!important;
}

/* Final gallery — ordered editorial grid */
.v41-gallery-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
}
.v41-gallery-card{
  position:relative!important;
  min-height:0!important;
  aspect-ratio:1/1!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#090909!important;
  box-shadow:var(--v41-shadow)!important;
}
.v41-gallery-card img{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}
.v41-gallery-card:nth-child(1){
  grid-column:span 2!important;
  grid-row:span 2!important;
}
.v41-gallery-card:nth-child(4){
  grid-column:span 2!important;
}
.v41-gallery-card .v29-ig-label{
  left:10px!important;
  bottom:10px!important;
  padding:6px 9px!important;
  font-size:9px!important;
}

/* Story/supporting photography */
.story-art,
.v29-strip-card,
.v28-showcase-photo,
.v29-showcase-photo{
  border-radius:20px!important;
  box-shadow:var(--v41-shadow)!important;
}

/* Modals / sheets */
.v40-sheet{
  border-radius:24px 24px 0 0!important;
}
.v40-sheet h2{
  letter-spacing:-.03em!important;
}
.v40-sheet .product-photo,
.product-sheet-art{
  border-radius:18px!important;
}

/* Header/lang balance */
.v39-lang-switcher{
  transform:scale(.96)!important;
  transform-origin:center right!important;
}

/* Subtle transitions */
.v41-gallery-card,
.v40-product-card,
.v40-feature-card{
  transition:transform .2s ease,box-shadow .2s ease!important;
}
@media(hover:hover){
  .v41-gallery-card:hover,
  .v40-feature-card:hover{
    transform:translateY(-2px)!important;
    box-shadow:var(--v41-shadow-hover)!important;
  }
}

/* MOBILE */
@media(max-width:700px){
  .v41-section{
    padding-top:44px!important;
    padding-bottom:44px!important;
  }

  /* product cards balanced */
  .v40-product-card .product-photo{
    height:130px!important;
    min-height:130px!important;
    max-height:130px!important;
  }
  .v40-product-card h3{
    font-size:14px!important;
  }
  .v40-product-card p{
    font-size:9.5px!important;
  }

  /* final gallery clean 2-col */
  .v41-gallery-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }
  .v41-gallery-card{
    aspect-ratio:1/1!important;
    border-radius:14px!important;
  }
  .v41-gallery-card:nth-child(1){
    grid-column:span 2!important;
    aspect-ratio:16/10!important;
  }
  .v41-gallery-card:nth-child(4){
    grid-column:span 1!important;
  }

  /* prevent oversized support photos */
  .story-art,.story-art img{
    min-height:260px!important;
    max-height:300px!important;
  }
  .v29-strip-card,.v29-strip-card img{
    min-height:190px!important;
    max-height:220px!important;
  }

  /* delivery and floating buttons */
  .v40-delivery-btn{
    min-height:40px!important;
    padding:8px 10px!important;
    font-size:10px!important;
  }
  .v40-delivery-btn img{
    max-height:15px!important;
    max-width:60px!important;
  }

  .floating-actions a,
  .floating-actions button,
  .float-actions a,
  .float-actions button,
  .floating-buttons a,
  .floating-buttons button{
    min-height:38px!important;
    height:38px!important;
    padding:0 8px!important;
  }

  .v39-lang-switcher{
    transform:scale(.92)!important;
  }
}

/* small iPhone */
@media(max-width:390px){
  .v40-product-card .product-photo{
    height:118px!important;
    min-height:118px!important;
    max-height:118px!important;
  }
  .v41-gallery-grid{gap:7px!important}
  .v41-gallery-card{border-radius:12px!important}
}

/* =========================================================
   V42 — BOTONES PREMIUM + MICROTEXTURAS
   ========================================================= */

:root{
  --v42-black:#0b0b0c;
  --v42-black-2:#171719;
  --v42-cyan:#20c9c3;
  --v42-pink:#ff78b4;
  --v42-border:rgba(255,255,255,.08);
  --v42-shadow:0 10px 24px rgba(0,0,0,.14);
}

/* Microtextura muy sutil, sin ensuciar */
.v42-texture-surface{
  position:relative!important;
  isolation:isolate!important;
}
.v42-texture-surface::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  opacity:.045;
  background-image:
    radial-gradient(circle at 20% 25%, rgba(0,0,0,.55) 0 0.7px, transparent .8px),
    radial-gradient(circle at 75% 70%, rgba(0,0,0,.35) 0 0.6px, transparent .7px);
  background-size:8px 8px,11px 11px;
  mix-blend-mode:multiply;
}
.v42-texture-surface > *{
  position:relative;
  z-index:1;
}

/* Primary commerce buttons */
.v42-commerce-btn{
  position:relative!important;
  overflow:hidden!important;
  min-height:44px!important;
  border-radius:14px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,0)),
    linear-gradient(135deg,var(--v42-black),var(--v42-black-2))!important;
  color:#fff!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 8px 20px rgba(0,0,0,.16)!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  transition:
    transform .15s ease,
    box-shadow .15s ease,
    filter .15s ease!important;
}
.v42-commerce-btn::before{
  content:"";
  position:absolute;
  top:-80%;
  left:-45%;
  width:35%;
  height:260%;
  transform:rotate(18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.20),transparent);
  opacity:0;
  transition:left .4s ease,opacity .22s ease;
}
@media(hover:hover){
  .v42-commerce-btn:hover{
    filter:brightness(1.06);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.10),
      0 12px 28px rgba(0,0,0,.20)!important;
  }
  .v42-commerce-btn:hover::before{
    left:115%;
    opacity:.8;
  }
}
.v42-commerce-btn:active{
  transform:scale(.978)!important;
  box-shadow:
    inset 0 2px 5px rgba(0,0,0,.22),
    0 4px 10px rgba(0,0,0,.10)!important;
}

/* Accent underline/glow */
.v42-primary-btn{
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 8px 20px rgba(0,0,0,.16),
    0 0 0 1px rgba(32,201,195,.03)!important;
}
.v42-primary-btn::after{
  content:"";
  position:absolute;
  left:14px;
  right:14px;
  bottom:0;
  height:2px;
  border-radius:99px;
  background:linear-gradient(90deg,var(--v42-cyan),var(--v42-pink));
  opacity:.72;
}

/* Secondary buttons */
.v42-secondary-btn{
  border:1px solid rgba(0,0,0,.10)!important;
  background:linear-gradient(180deg,#fff,#f7f7f8)!important;
  color:#111!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.75),
    0 5px 14px rgba(0,0,0,.055)!important;
  border-radius:13px!important;
  transition:transform .15s ease,background .15s ease!important;
}
.v42-secondary-btn:active{
  transform:scale(.98)!important;
  background:#f2f2f3!important;
}

/* Quantity / stepper */
.v42-stepper-btn,
.qty-control button,
.v18-stepper button,
.v19-stepper button{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  border-radius:12px!important;
  border:1px solid rgba(0,0,0,.08)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.95),rgba(245,246,247,.95))!important;
  box-shadow:
    inset 0 1px 0 #fff,
    0 5px 14px rgba(0,0,0,.06)!important;
  font-weight:900!important;
  transition:transform .14s ease,box-shadow .14s ease!important;
}
.v42-stepper-btn:active,
.qty-control button:active,
.v18-stepper button:active,
.v19-stepper button:active{
  transform:scale(.93)!important;
  box-shadow:inset 0 2px 4px rgba(0,0,0,.10)!important;
}

/* Toppings / choices */
.v42-choice,
.v18-top,
.v19-option,
.size-btn{
  position:relative!important;
  border:1px solid rgba(0,0,0,.10)!important;
  background:
    linear-gradient(180deg,#fff,#fafafa)!important;
  border-radius:14px!important;
  box-shadow:0 4px 12px rgba(0,0,0,.04)!important;
  transition:
    transform .15s ease,
    border-color .15s ease,
    background .15s ease,
    box-shadow .15s ease!important;
}
.v42-choice.active,
.v18-top.active,
.v19-option.active,
.size-btn.active,
.v42-choice[aria-pressed="true"]{
  border-color:rgba(32,201,195,.70)!important;
  background:
    linear-gradient(180deg,rgba(32,201,195,.10),rgba(255,120,180,.035)),
    #fff!important;
  box-shadow:
    0 0 0 2px rgba(32,201,195,.08),
    0 7px 18px rgba(0,0,0,.06)!important;
}
.v42-choice.active::after,
.v18-top.active::after,
.v19-option.active::after,
.size-btn.active::after{
  content:"✓";
  position:absolute;
  top:8px;
  right:9px;
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--v42-cyan);
  color:#061514;
  font-size:11px;
  font-weight:950;
}

/* Sticky-ish add area separation in product modal */
.add-cart,
.v18-primary,
.v19-primary{
  box-shadow:
    0 -8px 18px rgba(255,255,255,.72),
    0 9px 22px rgba(0,0,0,.12)!important;
}

/* Card surface premium */
.menu-card.v40-product-card{
  background:
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(252,252,252,.98))!important;
}
.menu-card.v40-product-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(135deg,rgba(32,201,195,.025),transparent 30%),
    linear-gradient(315deg,rgba(255,120,180,.02),transparent 32%);
  z-index:0;
}
.menu-card.v40-product-card > *{
  position:relative;
  z-index:1;
}

/* Brand/delivery buttons polish */
.v40-delivery-btn{
  position:relative!important;
  overflow:hidden!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.45),
    0 7px 18px rgba(0,0,0,.08)!important;
}
.v40-delivery-btn:active{
  transform:scale(.98)!important;
}

/* Bottom nav active depth */
.v40-bottom-nav a,
.v40-bottom-nav button{
  position:relative!important;
}
.v40-bottom-nav .active{
  background:rgba(32,201,195,.08)!important;
  color:#0f423d!important;
  box-shadow:inset 0 0 0 1px rgba(32,201,195,.10)!important;
}

/* Mobile */
@media(max-width:700px){
  .v42-commerce-btn{
    min-height:40px!important;
    border-radius:12px!important;
    font-size:10px!important;
  }

  .v42-stepper-btn,
  .qty-control button,
  .v18-stepper button,
  .v19-stepper button{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    border-radius:11px!important;
  }

  .v42-choice,
  .v18-top,
  .v19-option,
  .size-btn{
    min-height:46px!important;
    border-radius:12px!important;
  }

  .v42-choice.active::after,
  .v18-top.active::after,
  .v19-option.active::after,
  .size-btn.active::after{
    width:18px;
    height:18px;
    font-size:10px;
  }
}

/* Small iPhone */
@media(max-width:390px){
  .v42-commerce-btn{
    min-height:38px!important;
    font-size:9px!important;
  }
}

/* =========================================================
   V43 — LIMPIEZA FINAL + MARCAS DE PEDIDO
   ========================================================= */

/* Featured ribbons: prevent hidden duplicate text underneath */
.product-feature{
  overflow:hidden!important;
}
.product-feature .badge,
.product-feature .tag,
.product-feature .ribbon,
.product-feature .pill,
.product-feature .feature-badge{
  position:absolute!important;
  top:12px!important;
  right:12px!important;
  z-index:5!important;
  margin:0!important;
}
.product-feature .badge + .badge,
.product-feature .tag + .tag,
.product-feature .ribbon + .ribbon{
  display:none!important;
}

/* Brand order methods */
.v43-brand-option{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  overflow:hidden!important;
}
.v43-brand-logo{
  display:block!important;
  width:auto!important;
  height:28px!important;
  max-width:112px!important;
  object-fit:contain!important;
  flex:0 0 auto!important;
}

/* Order method cards: same size and alignment */
.order-methods .v43-brand-option,
.delivery-methods .v43-brand-option,
.v20-methods .v43-brand-option{
  min-height:58px!important;
  padding:9px 12px!important;
  border-radius:14px!important;
  background:#fff!important;
  border:1px solid rgba(0,0,0,.08)!important;
  box-shadow:0 5px 16px rgba(0,0,0,.05)!important;
}

/* Prevent older brand assets from competing visually */
.v43-brand-option .v35-brand-icon,
.v43-brand-option .v36-brand-wordmark,
.v43-brand-option .brand-logo{
  display:none!important;
}

/* Keep cards clean */
.product-feature > small:empty,
.product-feature > span:empty,
.product-feature > div:empty{
  display:none!important;
}

/* Button consistency pass */
button,a{
  max-width:100%;
}
.v42-commerce-btn,
.v42-secondary-btn,
.v40-delivery-btn,
.v41-action{
  white-space:normal!important;
  text-align:center!important;
}

/* Mobile */
@media(max-width:700px){
  .v43-brand-logo{
    height:24px!important;
    max-width:96px!important;
  }
  .order-methods .v43-brand-option,
  .delivery-methods .v43-brand-option,
  .v20-methods .v43-brand-option{
    min-height:52px!important;
    padding:8px 10px!important;
  }
  .product-feature .badge,
  .product-feature .tag,
  .product-feature .ribbon,
  .product-feature .pill,
  .product-feature .feature-badge{
    top:9px!important;
    right:9px!important;
    font-size:8px!important;
  }
}


/* =========================================================
   V44 — LIMPIEZA DEFINITIVA
   ========================================================= */

/* Featured cards: ONE ribbon, ONE CTA, no hidden text */
.product-feature{
  position:relative!important;
  overflow:hidden!important;
}
.product-feature > .hot-tag{
  position:absolute!important;
  top:12px!important;
  right:12px!important;
  z-index:10!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  margin:0!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:#113f36!important;
  color:#fff!important;
  font-size:9px!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  box-shadow:0 6px 18px rgba(0,0,0,.16)!important;
}
.product-feature > small,
.product-feature > .v32-feature-cta,
.product-feature > .v31-feature-cta,
.product-feature > .v33-feature-cta{
  display:none!important;
}
.product-feature > div{
  position:relative!important;
  z-index:2!important;
}
.product-feature > div > b{
  display:inline-flex!important;
  margin-top:12px!important;
  font-size:11px!important;
  font-weight:900!important;
}

/* Clean order selector */
.order-options[data-view="delivery"]{
  display:grid!important;
  gap:10px!important;
}
.order-options[data-view="delivery"] > img{
  display:none!important;
}
.v44-order-option{
  display:grid!important;
  grid-template-columns:112px 1fr auto!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  min-height:64px!important;
  padding:10px 12px!important;
  border:1px solid rgba(0,0,0,.08)!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#111!important;
  box-shadow:0 6px 18px rgba(0,0,0,.055)!important;
  text-decoration:none!important;
}
.v44-order-brand{
  display:block!important;
  width:100%!important;
  max-width:112px!important;
  height:32px!important;
  object-fit:contain!important;
  object-position:left center!important;
}
.v44-order-option > span{
  display:block!important;
  min-width:0!important;
}
.v44-order-option > span small{
  display:block!important;
  color:#6f787d!important;
  font-size:11px!important;
  line-height:1.3!important;
}
.v44-order-option > strong{
  font-size:16px!important;
  opacity:.55!important;
}

/* Old marks can never show */
.order-option .order-logo,
.order-option .local-order-mark,
.order-option .mark-wa,
.order-option .mark-glovo,
.order-option .mark-uber,
.order-options > .v43-brand-logo{
  display:none!important;
}

/* Mobile */
@media(max-width:700px){
  .product-feature > .hot-tag{
    top:9px!important;
    right:9px!important;
    min-height:24px!important;
    padding:6px 8px!important;
    font-size:8px!important;
  }

  .v44-order-option{
    grid-template-columns:88px 1fr auto!important;
    min-height:58px!important;
    gap:9px!important;
    padding:9px 10px!important;
    border-radius:14px!important;
  }
  .v44-order-brand{
    max-width:88px!important;
    height:27px!important;
  }
  .v44-order-option > span small{
    font-size:10px!important;
  }
}

/* V45 — MENÚ LEGIBLE */
#menu,.menu,.menu-section,.menu-grid{color:#111!important}
#menu .menu-card,.menu .menu-card,.menu-section .menu-card{color:#111!important}

.v45-product-title,
#menu .menu-card h2,#menu .menu-card h3,#menu .menu-card h4,
.menu .menu-card h2,.menu .menu-card h3,.menu .menu-card h4{
  color:#111!important;opacity:1!important;text-shadow:none!important;mix-blend-mode:normal!important
}

.v45-product-desc,
#menu .menu-card p,.menu .menu-card p{
  color:#5f6a70!important;opacity:1!important;text-shadow:none!important
}

.v45-product-price,
#menu .menu-card strong,#menu .menu-card b,
.menu .menu-card strong,.menu .menu-card b{
  color:#111!important;opacity:1!important;text-shadow:none!important
}

.v45-menu-heading,
#menu > h2,#menu > h3,.menu-section > h2,.menu-section > h3{
  color:#111!important;opacity:1!important;text-shadow:none!important
}

#menu .menu-card .v42-commerce-btn,
#menu .menu-card .v32-cta,
#menu .menu-card .product-cta,
.menu .menu-card .v42-commerce-btn,
.menu .menu-card .v32-cta,
.menu .menu-card .product-cta{
  color:#fff!important
}

#menu .v32-status,.menu .v32-status{
  color:#111!important;background:rgba(255,255,255,.92)!important
}

@media(max-width:700px){
  .v45-product-title{color:#111!important}
  .v45-product-desc{color:#626d73!important}
  .v45-product-price{color:#111!important}
}

/* =========================================================
   V46 — TARJETAS DE MENÚ CORREGIDAS
   ========================================================= */

/* Remove any legacy empty block/pseudo layer between photo and title */
.menu-card::before,
.menu-card::after{
  pointer-events:none;
}
.menu-card .demo-photo-badge:empty,
.menu-card .product-label:empty,
.menu-card .product-meta:empty,
.menu-card .product-status:empty,
.menu-card .placeholder:empty,
.menu-card .badge:empty,
.menu-card .tag:empty{
  display:none!important;
}

/* No decorative blank bars in the card body */
.menu-card > div:empty,
.menu-card > span:empty,
.menu-card > small:empty{
  display:none!important;
  min-height:0!important;
  height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
}

/* Titles are definitively dark */
.v46-product-title,
.menu-card .v45-product-title,
#menu .menu-card h2,
#menu .menu-card h3,
#menu .menu-card h4,
.menu .menu-card h2,
.menu .menu-card h3,
.menu .menu-card h4{
  color:#123d36!important;
  -webkit-text-fill-color:#123d36!important;
  opacity:1!important;
  visibility:visible!important;
  text-shadow:none!important;
  background:transparent!important;
  mix-blend-mode:normal!important;
  filter:none!important;
}

/* Description */
.v46-product-desc,
.menu-card .v45-product-desc,
#menu .menu-card p,
.menu .menu-card p{
  color:#5f6a70!important;
  -webkit-text-fill-color:#5f6a70!important;
  opacity:1!important;
  text-shadow:none!important;
  background:transparent!important;
}

/* Price */
.v46-product-price,
.menu-card .v45-product-price,
#menu .menu-card strong,
#menu .menu-card b,
.menu .menu-card strong,
.menu .menu-card b{
  color:#111!important;
  -webkit-text-fill-color:#111!important;
  opacity:1!important;
  text-shadow:none!important;
}

/* CTA */
.v46-card-cta{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:#101011!important;
  border-radius:13px!important;
  box-shadow:none!important;
}

/* Kill specific legacy white overlays that can sit above title */
.menu-card .v32-status:not(:empty){
  position:absolute!important;
  top:9px!important;
  left:9px!important;
  z-index:3!important;
}
.menu-card .v32-status:empty{
  display:none!important;
}

/* Mobile spacing: title starts directly below image */
@media(max-width:700px){
  .menu-card .product-photo{
    margin-bottom:10px!important;
  }
  .v46-product-title{
    margin-top:0!important;
    margin-bottom:5px!important;
    font-size:15px!important;
    line-height:1.08!important;
  }
  .v46-product-desc{
    margin-top:0!important;
  }
}

/* =========================================================
   V47 — MENÚ LIMPIO / SIN DISPONIBLE NI NUMERACIÓN
   ========================================================= */
.menu-card .v32-status,
.menu-card .status,
.menu-card .availability,
.menu-card .product-status,
.menu-card .stock-status,
.menu-card .menu-no,
.menu-card .product-no,
.menu-card .card-number,
.menu-card .item-number,
.menu-card .number{
  display:none!important;
}

/* No blank rectangle may remain where status/number used to be */
.menu-card > span:empty,
.menu-card > small:empty,
.menu-card > div:empty{
  display:none!important;
  height:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
}

/* Title begins directly under photo */
.menu-card .product-photo{
  margin-bottom:10px!important;
}
.menu-card h2,
.menu-card h3,
.menu-card h4{
  margin-top:0!important;
}

/* Language buttons keep clean active state */
.lang-btn.active{
  opacity:1!important;
}

/* =========================================================
   V48 — FOOTER LIMPIO + OPCIONES MÚLTIPLES GENÉRICAS
   ========================================================= */

/* Footer tools: horizontal, compact, one icon only */
.footer-tools{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:10px!important;
  margin-top:22px!important;
}
.v48-footer-tool{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:auto!important;
  min-width:0!important;
  min-height:42px!important;
  padding:9px 14px!important;
  border:1px solid rgba(255,255,255,.20)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  box-shadow:none!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1!important;
  text-align:center!important;
}
.v48-footer-icon{
  display:block!important;
  width:16px!important;
  height:16px!important;
  flex:0 0 16px!important;
  object-fit:contain!important;
  filter:brightness(0) invert(1)!important;
}

/* Choice heading */
.v48-choice-heading{
  margin:16px 0 9px!important;
  color:#183d37!important;
  font-size:12px!important;
  font-weight:900!important;
}

/* Generic multi-select options */
.v48-choice-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
}
.v48-multi-choice{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  min-height:62px!important;
  padding:11px 34px 11px 12px!important;
  border:1px solid rgba(0,0,0,.10)!important;
  border-radius:13px!important;
  background:#fff!important;
  color:#183d37!important;
  text-align:left!important;
  box-shadow:0 4px 12px rgba(0,0,0,.04)!important;
  transition:border-color .15s ease,background .15s ease,transform .15s ease!important;
}
.v48-multi-choice span{
  font-size:12px!important;
  font-weight:850!important;
  line-height:1.15!important;
}
.v48-multi-choice b{
  margin-top:5px!important;
  color:#111!important;
  font-size:11px!important;
}
.v48-multi-choice.active{
  border-color:#20c9c3!important;
  background:linear-gradient(180deg,rgba(32,201,195,.11),rgba(255,120,180,.035)),#fff!important;
  box-shadow:0 0 0 2px rgba(32,201,195,.08)!important;
}
.v48-multi-choice.active::after{
  content:"✓"!important;
  position:absolute!important;
  top:9px!important;
  right:9px!important;
  width:20px!important;
  height:20px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:#20c9c3!important;
  color:#071615!important;
  font-size:11px!important;
  font-weight:950!important;
}
.v48-multi-choice:active{
  transform:scale(.98)!important;
}

/* Add button clearly disabled until required choice exists */
.add-cart.disabled,
.add-cart:disabled{
  opacity:.42!important;
  pointer-events:none!important;
  filter:grayscale(.15)!important;
}

@media(max-width:700px){
  .footer-tools{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    width:100%!important;
  }
  .v48-footer-tool{
    width:100%!important;
    min-height:40px!important;
    padding:8px 10px!important;
    font-size:10px!important;
    border-radius:11px!important;
  }
  .v48-footer-icon{
    width:14px!important;
    height:14px!important;
    flex-basis:14px!important;
  }

  .v48-choice-grid{
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }
  .v48-multi-choice{
    min-height:58px!important;
    padding:10px 31px 10px 10px!important;
    border-radius:12px!important;
  }
  .v48-multi-choice span{
    font-size:11px!important;
  }
  .v48-multi-choice b{
    font-size:10px!important;
  }
}

@media(max-width:390px){
  .v48-choice-grid{
    grid-template-columns:1fr!important;
  }
}

/* =========================================================
   V49 — CINTA VERDE SUPERIOR ANIMADA
   ========================================================= */
.topbar.v49-green-ticker{
  display:block!important;
  position:relative!important;
  width:100%!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  padding-left:0!important;
  padding-right:0!important;
}

.v49-green-track{
  display:flex!important;
  align-items:center!important;
  width:max-content!important;
  min-width:max-content!important;
  will-change:transform!important;
  animation:v49TopbarMarquee 20s linear infinite!important;
}

.v49-green-group{
  display:flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  min-width:max-content!important;
}

.v49-green-item{
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  padding:0 28px!important;
  white-space:nowrap!important;
}

.v49-green-sep{
  display:inline-block!important;
  width:5px!important;
  height:5px!important;
  flex:0 0 5px!important;
  border-radius:50%!important;
  background:currentColor!important;
  opacity:.55!important;
}

@keyframes v49TopbarMarquee{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}

@media(hover:hover){
  .topbar.v49-green-ticker:hover .v49-green-track{
    animation-play-state:paused!important;
  }
}

@media(max-width:700px){
  .v49-green-track{
    animation-duration:16s!important;
  }
  .v49-green-item{
    padding:0 22px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .v49-green-track{
    animation:none!important;
    transform:none!important;
  }
}

/* =========================================================
   V50 — BUSCADOR REAL + TARJETAS MÁS LIMPIAS
   ========================================================= */

.v50-search-wrap{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  width:min(100%,680px)!important;
  margin:0 auto 14px!important;
}

.v50-search-input{
  width:100%!important;
  min-height:48px!important;
  padding:0 44px 0 16px!important;
  border:1px solid rgba(0,0,0,.10)!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#173d37!important;
  font-size:14px!important;
  font-weight:700!important;
  outline:none!important;
  box-shadow:0 6px 18px rgba(0,0,0,.05)!important;
  transition:border-color .16s ease,box-shadow .16s ease!important;
}
.v50-search-input::placeholder{
  color:#8a9296!important;
  font-weight:600!important;
}
.v50-search-input:focus{
  border-color:rgba(32,201,195,.55)!important;
  box-shadow:0 0 0 3px rgba(32,201,195,.08),0 8px 20px rgba(0,0,0,.06)!important;
}

.v50-search-clear{
  position:absolute!important;
  right:10px!important;
  top:50%!important;
  transform:translateY(-50%) scale(.9)!important;
  width:30px!important;
  height:30px!important;
  border:0!important;
  border-radius:50%!important;
  background:#f0f2f2!important;
  color:#163d37!important;
  font-size:19px!important;
  line-height:1!important;
  opacity:0!important;
  pointer-events:none!important;
  transition:opacity .15s ease,transform .15s ease!important;
}
.v50-search-clear.visible{
  opacity:1!important;
  pointer-events:auto!important;
  transform:translateY(-50%) scale(1)!important;
}

.v50-search-feedback{
  width:min(100%,680px)!important;
  margin:0 auto 16px!important;
  padding:8px 12px!important;
  color:#5c686e!important;
  font-size:12px!important;
  font-weight:750!important;
  text-align:center!important;
}
.v50-search-feedback[hidden]{
  display:none!important;
}

/* Real filtering */
.menu-card[hidden]{
  display:none!important;
}
.v50-search-card{
  transition:
    opacity .18s ease,
    transform .18s ease,
    box-shadow .18s ease!important;
}
.v50-filtered-in{
  animation:v50CardIn .22s ease both!important;
}
@keyframes v50CardIn{
  from{opacity:.15;transform:translateY(5px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

/* Visual polish */
.v50-card-title{
  color:#143f38!important;
  letter-spacing:-.02em!important;
  font-weight:900!important;
}
.v50-card-price{
  color:#111!important;
  font-weight:950!important;
}
.v40-product-card{
  border-color:rgba(20,63,56,.08)!important;
}
.v40-product-card .product-photo{
  border-bottom:1px solid rgba(0,0,0,.035)!important;
}
.v40-product-card p{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
}

/* Mobile */
@media(max-width:700px){
  .v50-search-wrap{
    width:100%!important;
    margin-bottom:10px!important;
  }
  .v50-search-input{
    min-height:44px!important;
    border-radius:14px!important;
    font-size:13px!important;
  }
  .v50-search-feedback{
    margin-bottom:12px!important;
    font-size:11px!important;
  }

  /* If only one result remains, don't let it look tiny */
  .menu-grid:has(.menu-card:not([hidden]):only-child){
    grid-template-columns:1fr!important;
  }
  .menu-grid:has(.menu-card:not([hidden]):only-child) .menu-card{
    max-width:420px!important;
    margin-inline:auto!important;
  }
  .menu-grid:has(.menu-card:not([hidden]):only-child) .product-photo{
    height:210px!important;
    min-height:210px!important;
    max-height:210px!important;
  }
}

/* V51 — CONSOLIDACIÓN FINAL */
:root{
  --v51-ink:#153f38;
  --v51-muted:#637076;
  --v51-accent:#20c9c3;
  --v51-border:rgba(0,0,0,.08);
}
.menu-card.v40-product-card{
  background:#fff!important;
  border:1px solid var(--v51-border)!important;
  border-radius:18px!important;
  overflow:hidden!important;
  box-shadow:0 7px 20px rgba(0,0,0,.055)!important;
}
.v51-title{
  color:var(--v51-ink)!important;
  -webkit-text-fill-color:var(--v51-ink)!important;
  font-weight:900!important;
  line-height:1.08!important;
  margin:0 0 5px!important;
}
.v51-desc{
  color:var(--v51-muted)!important;
  -webkit-text-fill-color:var(--v51-muted)!important;
  line-height:1.4!important;
  margin:0!important;
}
.v51-cta{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:40px!important;
  margin-top:12px!important;
  border-radius:12px!important;
  background:#111!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-weight:900!important;
}
.v50-search-wrap{
  max-width:680px!important;
  margin-inline:auto!important;
}
#searchFeedback[hidden]{display:none!important}
.product-feature{overflow:hidden!important}
.product-feature>.hot-tag{z-index:5!important}
.order-option{overflow:hidden!important}
.order-option img{object-fit:contain!important}
@media(max-width:700px){
  .menu-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .menu-card .product-photo{
    height:132px!important;
    min-height:132px!important;
    max-height:132px!important;
  }
  .v51-title{font-size:14px!important}
  .v51-desc{font-size:9.5px!important}
  .v51-cta{min-height:38px!important;font-size:10px!important}
  .menu-grid:has(.menu-card:not([hidden]):only-child){grid-template-columns:1fr!important}
  .menu-grid:has(.menu-card:not([hidden]):only-child) .menu-card{
    max-width:420px!important;
    margin-inline:auto!important;
  }
}

/* =========================================================
   V52 — MEJORAS VISUALES COMPLETAS
   ========================================================= */

:root{
  --v52-ink:#143f38;
  --v52-muted:#657177;
  --v52-cyan:#20c9c3;
  --v52-pink:#f38ab7;
  --v52-surface:#fff;
  --v52-border:rgba(0,0,0,.075);
  --v52-shadow:0 8px 24px rgba(0,0,0,.065);
}

/* PRODUCT CARDS */
.menu-card{
  position:relative!important;
}
.v52-badge{
  position:absolute!important;
  top:10px!important;
  left:10px!important;
  z-index:4!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:24px!important;
  padding:5px 8px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.92)!important;
  color:#153f38!important;
  font-size:8px!important;
  font-weight:950!important;
  letter-spacing:.03em!important;
  box-shadow:0 5px 14px rgba(0,0,0,.08)!important;
  backdrop-filter:blur(8px)!important;
}
.menu-card .product-photo{
  border-bottom:1px solid rgba(0,0,0,.035)!important;
}
.menu-card h3{
  color:var(--v52-ink)!important;
}
.menu-card p{
  color:var(--v52-muted)!important;
}
.menu-card strong{
  color:#111!important;
}

/* PRODUCT OPTION SECTIONS */
.v52-section-label{
  margin:16px 0 8px!important;
  color:var(--v52-ink)!important;
  font-size:12px!important;
  font-weight:950!important;
}
.size-selector,
.v48-choice-grid,
.v18-topping-grid{
  gap:8px!important;
}
.size-btn,
.v48-multi-choice,
.v18-top{
  border:1px solid rgba(20,63,56,.11)!important;
  border-radius:13px!important;
  background:linear-gradient(180deg,#fff,#fafbfb)!important;
  box-shadow:0 4px 12px rgba(0,0,0,.035)!important;
  transition:transform .14s ease,border-color .14s ease,background .14s ease,box-shadow .14s ease!important;
}
.size-btn.active,
.v48-multi-choice.active,
.v18-top.active{
  border-color:var(--v52-cyan)!important;
  background:linear-gradient(180deg,rgba(32,201,195,.10),rgba(243,138,183,.035)),#fff!important;
  box-shadow:0 0 0 2px rgba(32,201,195,.08),0 6px 16px rgba(0,0,0,.05)!important;
}
.size-btn:active,
.v48-multi-choice:active,
.v18-top:active{
  transform:scale(.985)!important;
}

/* CART */
.v52-cart-items{
  display:grid!important;
  gap:10px!important;
}
.cart-row{
  display:grid!important;
  grid-template-columns:66px minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  padding:10px!important;
  border:1px solid var(--v52-border)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 5px 16px rgba(0,0,0,.045)!important;
}
.cart-row-art{
  width:66px!important;
  height:66px!important;
  border-radius:12px!important;
  overflow:hidden!important;
  background:#090909!important;
}
.cart-row-art img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.cart-row-copy{
  min-width:0!important;
}
.v52-cart-name{
  display:block!important;
  color:var(--v52-ink)!important;
  font-size:13px!important;
  font-weight:950!important;
  margin-bottom:5px!important;
}
.v52-cart-chips{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:4px!important;
  margin-bottom:5px!important;
}
.v52-cart-chips span{
  display:inline-flex!important;
  padding:4px 7px!important;
  border-radius:999px!important;
  background:#f1f7f6!important;
  color:#254c46!important;
  font-size:8px!important;
  font-weight:800!important;
}
.v52-unit-price{
  color:#758087!important;
  font-size:9px!important;
}
.v52-cart-qty{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
}
.v52-cart-qty button{
  width:30px!important;
  height:30px!important;
  border-radius:9px!important;
  border:1px solid rgba(0,0,0,.08)!important;
  background:#f6f7f7!important;
  color:#111!important;
  font-weight:900!important;
}
.v52-line-total{
  grid-column:2/3!important;
  color:#111!important;
  font-size:13px!important;
  font-weight:950!important;
}
.cart-remove{
  grid-column:3/4!important;
  width:30px!important;
  height:30px!important;
  border-radius:9px!important;
}
.v52-cart-total{
  font-size:20px!important;
  font-weight:950!important;
  color:#111!important;
}
.v52-checkout-btn{
  min-height:48px!important;
  border-radius:14px!important;
  font-weight:950!important;
}

/* BUTTON CONSISTENCY */
button,
a{
  transition:transform .14s ease,box-shadow .14s ease,background .14s ease!important;
}
button:active,
a:active{
  transform:scale(.985);
}

/* SEARCH */
.v50-search-input{
  border-color:rgba(20,63,56,.10)!important;
}
.v50-search-input:focus{
  border-color:rgba(32,201,195,.65)!important;
  box-shadow:0 0 0 3px rgba(32,201,195,.08)!important;
}

/* LANGUAGE */
.v39-lang-switcher{
  border-color:rgba(20,63,56,.10)!important;
}
.lang-btn.active{
  background:#143f38!important;
  color:#fff!important;
}

/* MOBILE */
@media(max-width:700px){
  .v52-badge{
    top:8px!important;
    left:8px!important;
    min-height:21px!important;
    padding:4px 7px!important;
    font-size:7px!important;
  }

  .cart-row{
    grid-template-columns:58px minmax(0,1fr) auto!important;
    gap:8px!important;
    padding:9px!important;
  }
  .cart-row-art{
    width:58px!important;
    height:58px!important;
  }
  .v52-cart-name{
    font-size:12px!important;
  }
  .v52-cart-chips span{
    font-size:7.5px!important;
  }
  .v52-cart-qty button{
    width:28px!important;
    height:28px!important;
  }

  .v52-section-label{
    font-size:11px!important;
  }

  .size-btn,
  .v48-multi-choice,
  .v18-top{
    min-height:52px!important;
  }
}

/* =========================================================
   V53 FINAL — PRODUCTION POLISH
   ========================================================= */

:root{
  --v53-ink:#143f38;
  --v53-muted:#657177;
  --v53-cyan:#20c9c3;
  --v53-border:rgba(0,0,0,.075);
}

/* Cards */
.menu-card{
  position:relative!important;
  overflow:hidden!important;
}
.v53-title{
  color:var(--v53-ink)!important;
  -webkit-text-fill-color:var(--v53-ink)!important;
  opacity:1!important;
  font-weight:900!important;
  line-height:1.08!important;
}
.v53-desc{
  color:var(--v53-muted)!important;
  -webkit-text-fill-color:var(--v53-muted)!important;
  opacity:1!important;
}
.menu-card .v32-status,
.menu-card .status,
.menu-card .availability,
.menu-card .product-status,
.menu-card .stock-status,
.menu-card .menu-no,
.menu-card .product-no,
.menu-card .card-number,
.menu-card .item-number,
.menu-card .number{
  display:none!important;
}

/* Footer tools */
.footer-tools{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
}
.v53-footer-tool{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:42px!important;
  padding:9px 14px!important;
  border-radius:12px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:850!important;
  box-shadow:none!important;
}
.v53-footer-icon{
  width:15px!important;
  height:15px!important;
  object-fit:contain!important;
  filter:brightness(0) invert(1)!important;
}

/* Order methods */
.order-options[data-view="delivery"]{
  display:grid!important;
  gap:10px!important;
}
.v53-order-option{
  display:grid!important;
  grid-template-columns:105px 1fr auto!important;
  align-items:center!important;
  gap:12px!important;
  min-height:62px!important;
  padding:10px 12px!important;
  border:1px solid var(--v53-border)!important;
  border-radius:15px!important;
  background:#fff!important;
  color:#111!important;
  box-shadow:0 5px 16px rgba(0,0,0,.05)!important;
}
.v53-order-brand{
  width:100%!important;
  max-width:105px!important;
  height:30px!important;
  object-fit:contain!important;
  object-position:left center!important;
}
.v53-order-option small{
  color:#6f797e!important;
  font-size:10px!important;
}

/* Product options */
.v53-option-label{
  margin:16px 0 8px!important;
  color:var(--v53-ink)!important;
  font-size:12px!important;
  font-weight:950!important;
}
.size-btn,
.v48-multi-choice,
.v18-top{
  border:1px solid rgba(20,63,56,.10)!important;
  border-radius:13px!important;
  background:#fff!important;
}
.size-btn.active,
.v48-multi-choice.active,
.v18-top.active{
  border-color:var(--v53-cyan)!important;
  box-shadow:0 0 0 2px rgba(32,201,195,.08)!important;
}

/* Cart */
.v53-cart-items{
  display:grid!important;
  gap:10px!important;
}
.cart-row{
  border:1px solid var(--v53-border)!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 5px 16px rgba(0,0,0,.045)!important;
}
.v53-checkout{
  min-height:48px!important;
  border-radius:14px!important;
  font-weight:950!important;
}

/* Search */
.v50-search-input:focus{
  border-color:rgba(32,201,195,.60)!important;
  box-shadow:0 0 0 3px rgba(32,201,195,.08)!important;
}

/* Mobile */
@media(max-width:700px){
  .menu-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  .menu-card .product-photo{
    height:132px!important;
    min-height:132px!important;
    max-height:132px!important;
  }

  .v53-title{font-size:14px!important}
  .v53-desc{font-size:9.5px!important}

  .footer-tools{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:100%!important;
    gap:8px!important;
  }
  .v53-footer-tool{
    width:100%!important;
    min-height:40px!important;
    padding:8px 10px!important;
    font-size:10px!important;
  }

  .v53-order-option{
    grid-template-columns:84px 1fr auto!important;
    gap:9px!important;
    min-height:56px!important;
    padding:9px 10px!important;
  }
  .v53-order-brand{
    max-width:84px!important;
    height:26px!important;
  }
}

/* V54 CARTA REAL */
@media(min-width:901px){.menu-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
.menu-card .product-photo{object-fit:cover!important}

/* V55 — opciones con cantidad independiente */
.v55-choice-help{margin:6px 0 12px!important;color:#6a7478!important;font-size:10px!important;line-height:1.35!important}
#sizeSelector{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
.v55-option-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;padding:8px!important;border:1px solid rgba(20,63,56,.10)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 4px 12px rgba(0,0,0,.035)!important}
.v55-option-row.active{border-color:#20c9c3!important;background:linear-gradient(180deg,rgba(32,201,195,.09),#fff)!important;box-shadow:0 0 0 2px rgba(32,201,195,.07)!important}
.v55-option-main{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;min-width:0!important;min-height:48px!important;padding:7px 9px!important;border:0!important;background:transparent!important;color:#143f38!important;text-align:left!important}
.v55-option-main span{font-size:12px!important;font-weight:900!important;line-height:1.15!important}
.v55-option-main b{margin-top:4px!important;color:#111!important;font-size:10px!important}
.v55-option-stepper{display:grid!important;grid-template-columns:30px 24px 30px!important;align-items:center!important;gap:4px!important}
.v55-option-stepper button{width:30px!important;height:30px!important;min-width:30px!important;border:1px solid rgba(0,0,0,.08)!important;border-radius:9px!important;background:#f5f7f6!important;color:#111!important;font-size:16px!important;font-weight:900!important}
.v55-option-stepper strong{color:#143f38!important;font-size:12px!important;text-align:center!important}
@media(max-width:700px){
 .v55-option-row{gap:7px!important;padding:7px!important}
 .v55-option-main{min-height:44px!important;padding:6px 7px!important}
 .v55-option-main span{font-size:11px!important}
 .v55-option-stepper{grid-template-columns:28px 22px 28px!important}
 .v55-option-stepper button{width:28px!important;height:28px!important;min-width:28px!important}
}

/* V56 — UX práctica */
.v56-options-title{margin:14px 0 6px!important;color:#143f38!important;font-size:18px!important;font-weight:950!important;line-height:1.1!important}
.v55-choice-help{margin:0 0 12px!important;color:#6b7478!important;font-size:10px!important;line-height:1.35!important}
.v56-generic-qty[hidden]{display:none!important}
.v56-generic-qty{display:grid!important;grid-template-columns:auto 1fr!important;align-items:center!important;gap:10px!important;padding:10px 0!important}
.v56-qty-label{color:#143f38!important;font-size:12px!important;font-weight:900!important}

.v55-option-row{grid-template-columns:minmax(0,1fr) 94px!important;min-height:62px!important;padding:7px 8px!important;border-radius:15px!important}
.v55-option-main{min-height:46px!important;padding:7px 8px!important}
.v55-option-stepper{grid-template-columns:28px 26px 28px!important;justify-content:end!important}
.v55-option-stepper button{width:28px!important;height:28px!important;min-width:28px!important;border-radius:9px!important;background:#f3f5f4!important}
.v55-option-stepper strong{font-size:13px!important;font-weight:950!important}
.v55-option-row.active{border-color:#20c9c3!important;background:linear-gradient(180deg,rgba(32,201,195,.10),#fff)!important;box-shadow:0 0 0 2px rgba(32,201,195,.07)!important}

#v18ToppingGrid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
#v18ToppingGrid .v18-top{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;min-height:54px!important;padding:9px 10px!important;text-align:left!important;overflow:hidden!important}
#v18ToppingGrid .v18-top span{width:100%!important;color:#143f38!important;font-size:11px!important;font-weight:850!important;line-height:1.15!important;white-space:normal!important}
#v18ToppingGrid .v18-top b{margin-top:4px!important;color:#111!important;font-size:10px!important;white-space:nowrap!important}

.add-cart{min-height:50px!important;border-radius:15px!important;font-size:12px!important;font-weight:950!important}
.share-product{min-height:42px!important;border-radius:13px!important;font-size:11px!important}
#choiceHeading,#v52OptionsLabel,#v53OptionsLabel{display:none!important}

@media(max-width:700px){
  .product-sheet,.v40-sheet{max-height:92svh!important;padding-bottom:calc(18px + env(safe-area-inset-bottom))!important}
  .v56-options-title{font-size:17px!important;margin-top:12px!important}
  .v55-option-row{grid-template-columns:minmax(0,1fr) 88px!important;min-height:58px!important;padding:7px!important}
  .v55-option-main span{font-size:11px!important}
  .add-cart{position:sticky!important;bottom:0!important;z-index:20!important;width:100%!important;box-shadow:0 -8px 20px rgba(255,255,255,.88),0 10px 22px rgba(0,0,0,.10)!important}
}

/* =========================================================
   V57 — FINAL REVIEW / STABLE UI
   ========================================================= */

/* Prevent accidental horizontal overflow */
html,body{
  max-width:100%!important;
  overflow-x:hidden!important;
}
*,*::before,*::after{
  box-sizing:border-box!important;
}

/* Product modal hierarchy */
.v56-options-title{
  color:#143f38!important;
  font-size:17px!important;
  font-weight:950!important;
  line-height:1.1!important;
  margin:12px 0 5px!important;
}
.v55-choice-help{
  color:#6c7579!important;
  font-size:10px!important;
  margin:0 0 12px!important;
}

/* Choice rows */
.v55-option-row{
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
.v55-option-main{
  min-width:0!important;
}
.v55-option-main span{
  overflow-wrap:anywhere!important;
}
.v55-option-stepper{
  flex:0 0 auto!important;
}

/* Toppings always readable */
#v18ToppingGrid .v18-top{
  min-width:0!important;
  overflow:hidden!important;
}
#v18ToppingGrid .v18-top span{
  overflow-wrap:anywhere!important;
}

/* Cart */
.v57-cart-items{
  display:grid!important;
  gap:10px!important;
}
.cart-row{
  min-width:0!important;
  overflow:hidden!important;
}
.cart-row-copy{
  min-width:0!important;
}
.v52-cart-chips{
  max-width:100%!important;
}

/* Order methods */
.v57-order-option{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
}
.v57-order-option img{
  object-fit:contain!important;
}

/* Footer tools */
.v57-footer-tool{
  min-width:0!important;
  overflow:hidden!important;
}

/* Hide all legacy duplicate/empty menu artifacts */
.menu-card .v32-status,
.menu-card .status,
.menu-card .availability,
.menu-card .product-status,
.menu-card .stock-status,
.menu-card .menu-no,
.menu-card .product-no,
.menu-card .card-number,
.menu-card .item-number,
.menu-card .number{
  display:none!important;
}
.menu-card > div:empty,
.menu-card > span:empty,
.menu-card > small:empty{
  display:none!important;
}

/* Mobile final spacing */
@media(max-width:700px){
  .product-sheet,.v40-sheet{
    width:100%!important;
    max-width:100%!important;
    max-height:92svh!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }

  .v55-option-row{
    grid-template-columns:minmax(0,1fr) 88px!important;
    gap:7px!important;
  }

  #v18ToppingGrid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  .add-cart{
    position:sticky!important;
    bottom:0!important;
    z-index:25!important;
  }

  .footer-tools{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* =========================================================
   V58 — SUPER APP PRODUCT SELECTOR
   ========================================================= */

:root{
  --v58-green:#143f38;
  --v58-green-2:#0d322d;
  --v58-cyan:#24c9c3;
  --v58-pink:#f05a87;
  --v58-cream:#fff8e8;
  --v58-surface:#ffffff;
  --v58-muted:#6d777b;
  --v58-border:rgba(20,63,56,.10);
  --v58-shadow:0 14px 34px rgba(8,43,39,.10);
}

/* Sheet */
.v58-product-sheet{
  background:
    radial-gradient(circle at 14% 12%,rgba(240,90,135,.055),transparent 28%),
    radial-gradient(circle at 84% 20%,rgba(36,201,195,.055),transparent 28%),
    var(--v58-cream)!important;
}

/* Product image becomes more compact */
.v58-product-art{
  min-height:210px!important;
  height:210px!important;
  max-height:210px!important;
  border-radius:0 0 22px 22px!important;
  overflow:hidden!important;
  box-shadow:0 10px 28px rgba(0,0,0,.10)!important;
}

/* Header hierarchy */
.v58-product-name{
  color:var(--v58-green)!important;
  font-size:34px!important;
  line-height:.98!important;
  letter-spacing:-.035em!important;
  margin-top:18px!important;
}
.v58-product-desc{
  color:#40514d!important;
  font-size:14px!important;
  line-height:1.45!important;
  margin-top:9px!important;
}
.v58-product-price{
  display:inline-flex!important;
  align-items:center!important;
  min-height:34px!important;
  margin-top:10px!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  background:rgba(20,63,56,.07)!important;
  color:var(--v58-green)!important;
  font-size:12px!important;
  font-weight:900!important;
}

/* One section title only */
.v58-section-title{
  margin:22px 0 6px!important;
  color:var(--v58-green)!important;
  font-size:20px!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
}
.v58-helper{
  margin:0 0 12px!important;
  color:var(--v58-muted)!important;
  font-size:11px!important;
  line-height:1.35!important;
}

/* Option cards */
.v55-option-row{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 104px!important;
  align-items:center!important;
  gap:10px!important;
  min-height:74px!important;
  padding:10px 11px!important;
  border:1px solid var(--v58-border)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.93)!important;
  box-shadow:0 7px 18px rgba(8,43,39,.055)!important;
  transition:
    transform .18s ease,
    border-color .18s ease,
    background .18s ease,
    box-shadow .18s ease!important;
}
.v55-option-row.active{
  border-color:rgba(36,201,195,.78)!important;
  background:
    linear-gradient(180deg,rgba(36,201,195,.11),rgba(255,255,255,.97))!important;
  box-shadow:
    0 0 0 3px rgba(36,201,195,.07),
    0 10px 24px rgba(8,43,39,.08)!important;
  transform:translateY(-1px)!important;
}
.v55-option-main{
  min-height:50px!important;
  padding:6px 8px!important;
}
.v55-option-main span{
  color:var(--v58-green)!important;
  font-size:13px!important;
  font-weight:950!important;
}
.v55-option-main b{
  margin-top:5px!important;
  color:#111!important;
  font-size:11px!important;
}

/* Stepper controls */
.v55-option-stepper{
  grid-template-columns:32px 28px 32px!important;
  gap:5px!important;
}
.v55-option-stepper button{
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  border:1px solid rgba(20,63,56,.09)!important;
  border-radius:11px!important;
  background:
    linear-gradient(180deg,#fff,#f1f5f3)!important;
  color:var(--v58-green)!important;
  font-size:17px!important;
  font-weight:950!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    0 4px 10px rgba(8,43,39,.055)!important;
  transition:transform .14s ease,background .14s ease,box-shadow .14s ease!important;
}
.v55-option-stepper button:active,
.v58-tap{
  transform:scale(.90)!important;
}
.v55-option-stepper strong{
  color:var(--v58-green)!important;
  font-size:14px!important;
  font-weight:950!important;
}

/* Toppings */
.v58-topping-block{
  margin-top:20px!important;
}
.v58-topping-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
}
.v58-topping-grid .v18-top{
  position:relative!important;
  min-height:64px!important;
  padding:11px 12px!important;
  border:1px solid var(--v58-border)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 6px 16px rgba(8,43,39,.045)!important;
  transition:
    transform .16s ease,
    border-color .16s ease,
    background .16s ease,
    box-shadow .16s ease!important;
}
.v58-topping-grid .v18-top.active{
  border-color:var(--v58-pink)!important;
  background:
    linear-gradient(180deg,rgba(240,90,135,.10),#fff)!important;
  box-shadow:
    0 0 0 3px rgba(240,90,135,.06),
    0 8px 18px rgba(8,43,39,.06)!important;
}
.v58-topping-grid .v18-top.active::after{
  content:"✓"!important;
  position:absolute!important;
  top:8px!important;
  right:8px!important;
  width:20px!important;
  height:20px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:var(--v58-pink)!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:950!important;
}
.v58-topping-grid .v18-top span{
  color:var(--v58-green)!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1.15!important;
}
.v58-topping-grid .v18-top b{
  color:#111!important;
  font-size:10px!important;
  margin-top:5px!important;
}

/* Sharing becomes clearly secondary */
.v58-share{
  width:100%!important;
  min-height:42px!important;
  margin-top:10px!important;
  border:1px solid rgba(20,63,56,.10)!important;
  border-radius:13px!important;
  background:rgba(255,255,255,.72)!important;
  color:var(--v58-green)!important;
  font-size:10px!important;
  font-weight:850!important;
  box-shadow:none!important;
}

/* Sticky purchase dock */
.v58-buy-dock{
  position:sticky!important;
  bottom:0!important;
  z-index:30!important;
  width:100%!important;
  margin-top:16px!important;
  padding:10px 0 calc(10px + env(safe-area-inset-bottom))!important;
  background:
    linear-gradient(180deg,rgba(255,248,232,0),rgba(255,248,232,.95) 25%,rgba(255,248,232,1))!important;
  backdrop-filter:blur(14px)!important;
}
.v58-add-cart{
  width:100%!important;
  min-height:54px!important;
  border:0!important;
  border-radius:16px!important;
  background:
    linear-gradient(135deg,var(--v58-green),var(--v58-green-2))!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:950!important;
  letter-spacing:.01em!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 12px 28px rgba(8,43,39,.18)!important;
  transition:
    transform .16s ease,
    box-shadow .16s ease,
    filter .16s ease!important;
}
.v58-add-cart::after{
  content:""!important;
  position:absolute!important;
  left:18px!important;
  right:18px!important;
  bottom:0!important;
  height:2px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,var(--v58-cyan),var(--v58-pink))!important;
  opacity:.85!important;
}
.v58-add-cart:active{
  transform:scale(.985)!important;
  box-shadow:
    inset 0 2px 6px rgba(0,0,0,.20),
    0 6px 14px rgba(8,43,39,.12)!important;
}
.v58-add-cart.v58-confirm{
  animation:v58Confirm .5s ease!important;
}
@keyframes v58Confirm{
  0%{transform:scale(1)}
  35%{transform:scale(.975)}
  70%{transform:scale(1.015)}
  100%{transform:scale(1)}
}

/* Remove all legacy headings visually */
#choiceHeading,
#v52OptionsLabel,
#v53OptionsLabel,
#v56OptionsTitle{
  display:none!important;
}

/* Mobile */
@media(max-width:700px){
  .v58-product-art{
    height:190px!important;
    min-height:190px!important;
    max-height:190px!important;
  }

  .v58-product-name{
    font-size:30px!important;
  }

  .v58-product-desc{
    font-size:13px!important;
  }

  .v58-section-title{
    font-size:18px!important;
  }

  .v55-option-row{
    grid-template-columns:minmax(0,1fr) 96px!important;
    min-height:68px!important;
    padding:9px!important;
  }

  .v55-option-stepper{
    grid-template-columns:30px 26px 30px!important;
  }

  .v55-option-stepper button{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
  }

  .v58-topping-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .v58-buy-dock{
    margin-top:12px!important;
  }
}

/* =========================================================
   V60 — CHICHA MASTER SELECTOR (SAFE)
   Design only, V58 functional core preserved
   ========================================================= */

:root{
  --v60-green:#143f38;
  --v60-green2:#0d322d;
  --v60-cyan:#24c9c3;
  --v60-pink:#f05a87;
  --v60-cream:#fff8e8;
  --v60-muted:#6d777b;
  --v60-border:rgba(20,63,56,.10);
}

/* Hero */
.v60-product-art{
  height:168px!important;
  min-height:168px!important;
  max-height:168px!important;
  border-radius:0 0 20px 20px!important;
  box-shadow:0 9px 24px rgba(0,0,0,.09)!important;
}
.v60-product-name{
  margin-top:14px!important;
  color:var(--v60-green)!important;
  font-size:28px!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
}
.v60-product-desc{
  margin-top:7px!important;
  color:#43534f!important;
  font-size:13px!important;
  line-height:1.42!important;
  max-width:94%!important;
}
.v60-product-price{
  display:inline-flex!important;
  margin-top:9px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  background:rgba(20,63,56,.07)!important;
  color:var(--v60-green)!important;
  font-size:11px!important;
  font-weight:900!important;
}

/* Section */
.v60-options-title{
  margin:17px 0 4px!important;
  color:var(--v60-green)!important;
  font-size:18px!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
}
.v60-helper{
  margin:0 0 10px!important;
  color:var(--v60-muted)!important;
  font-size:10px!important;
}

/* Option cards */
.v55-option-row{
  min-height:63px!important;
  padding:8px 9px!important;
  border:1px solid var(--v60-border)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.95)!important;
  box-shadow:0 5px 14px rgba(8,43,39,.045)!important;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.v55-option-row.active{
  border-color:rgba(36,201,195,.78)!important;
  background:linear-gradient(180deg,rgba(36,201,195,.11),#fff)!important;
  box-shadow:0 0 0 3px rgba(36,201,195,.07),0 8px 20px rgba(8,43,39,.065)!important;
  transform:translateY(-1px)!important;
}
.v55-option-main span{
  color:var(--v60-green)!important;
  font-size:12px!important;
  font-weight:950!important;
}
.v55-option-main b{
  margin-top:4px!important;
  color:#111!important;
  font-size:10px!important;
}
.v55-option-stepper button{
  border-radius:10px!important;
  background:linear-gradient(180deg,#fff,#f2f5f3)!important;
  color:var(--v60-green)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 3px 8px rgba(8,43,39,.05)!important;
  transition:transform .13s ease!important;
}
.v55-option-stepper button:active{
  transform:scale(.9)!important;
}

/* Toppings */
.v60-topping-head{
  margin:5px 0 9px!important;
}
.v60-topping-title{
  color:var(--v60-green)!important;
  font-size:17px!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
}
.v60-topping-sub{
  margin-top:4px!important;
  color:var(--v60-muted)!important;
  font-size:10px!important;
}
.v60-topping-grid .v18-top{
  position:relative!important;
  min-height:58px!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 5px 14px rgba(8,43,39,.04)!important;
  transition:transform .14s ease,border-color .14s ease,background .14s ease!important;
}
.v60-topping-grid .v18-top.active{
  border-color:var(--v60-pink)!important;
  background:linear-gradient(180deg,rgba(240,90,135,.10),#fff)!important;
}
.v60-topping-grid .v18-top.active::after{
  content:"✓"!important;
  position:absolute!important;
  top:7px!important;
  right:7px!important;
  width:19px!important;
  height:19px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:var(--v60-pink)!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:950!important;
}

/* Bottom CTA */
.v60-buy-summary{
  margin:12px 0 6px!important;
  color:#66716d!important;
  font-size:10px!important;
  font-weight:850!important;
  text-align:center!important;
}
.v60-add-cart{
  position:sticky!important;
  bottom:0!important;
  z-index:25!important;
  width:100%!important;
  min-height:54px!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,var(--v60-green),var(--v60-green2))!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(8,43,39,.17)!important;
  font-size:13px!important;
  font-weight:950!important;
}
.v60-add-cart:active{
  transform:scale(.985)!important;
}

/* Share intentionally removed from purchase flow */
.share-product,.v58-share{
  display:none!important;
}

/* Mobile */
@media(max-width:700px){
  .v60-product-art{
    height:156px!important;
    min-height:156px!important;
    max-height:156px!important;
  }
  .v60-product-name{font-size:26px!important}
  .v55-option-row{
    grid-template-columns:minmax(0,1fr) 90px!important;
  }
}

/* =========================================================
   V61 — DESKTOP FIX
   ========================================================= */

/* Compatibility element required by old JS, never visible */
.v61-compat-share{
  display:none!important;
}

/* Desktop product modal gets its own layout */
@media(min-width:701px){
  .product-modal{
    align-items:center!important;
    justify-items:center!important;
    padding:30px!important;
    overflow:hidden!important;
  }

  .product-sheet,
  .v58-product-sheet{
    width:min(920px,calc(100vw - 64px))!important;
    max-width:920px!important;
    max-height:min(820px,calc(100vh - 60px))!important;
    overflow:hidden!important;
    grid-template-columns:360px minmax(0,1fr)!important;
    gap:24px!important;
    padding:24px!important;
    border-radius:26px!important;
  }

  .product-sheet-copy{
    min-width:0!important;
    max-height:calc(100vh - 110px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-right:8px!important;
    align-self:stretch!important;
    scrollbar-width:thin!important;
  }

  .v60-product-art,
  .v58-product-art,
  .product-sheet-art{
    width:100%!important;
    height:100%!important;
    min-height:520px!important;
    max-height:none!important;
    align-self:stretch!important;
    border-radius:20px!important;
    background-size:cover!important;
    background-position:center!important;
  }

  .v60-product-name,
  .v58-product-name{
    font-size:30px!important;
    margin-top:5px!important;
  }

  #sizeSelector{
    grid-template-columns:1fr!important;
    width:100%!important;
  }

  .v55-option-row{
    grid-template-columns:minmax(0,1fr) 100px!important;
    width:100%!important;
  }

  .v60-topping-grid,
  .v58-topping-grid,
  #v18ToppingGrid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .v58-buy-dock{
    position:sticky!important;
    bottom:-1px!important;
    z-index:30!important;
    padding-top:12px!important;
    background:linear-gradient(180deg,rgba(255,248,232,0),rgba(255,248,232,.96) 28%,#fff8e8)!important;
  }

  .v60-add-cart,
  .v58-add-cart,
  .add-cart{
    width:100%!important;
    min-height:52px!important;
  }
}

/* Laptop / smaller desktop */
@media(min-width:701px) and (max-width:1050px){
  .product-sheet,
  .v58-product-sheet{
    width:calc(100vw - 40px)!important;
    grid-template-columns:310px minmax(0,1fr)!important;
  }

  .v60-product-art,
  .v58-product-art,
  .product-sheet-art{
    min-height:470px!important;
  }
}

/* V64 — fotos reales */
.menu-card.v64-real-photo .product-photo{
  background:#fff!important;
  object-fit:contain!important;
  object-position:center!important;
  padding:7px!important;
}
@media(hover:hover){
  .menu-card.v64-real-photo .product-photo{transition:transform .22s ease!important}
  .menu-card.v64-real-photo:hover .product-photo{transform:scale(1.025)!important}
}
#productArt.v29-product-photo-art{background-color:#fff!important}

/* =========================================================
   V65 — DESKTOP AUDIT / CONSOLIDATION
   Mobile behavior preserved; desktop rebuilt cleanly.
   ========================================================= */

html,body{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
}
*,*::before,*::after{box-sizing:border-box!important}

/* Desktop content width */
@media(min-width:901px){
  .v65-menu-section{
    width:min(1440px,100%)!important;
    margin-inline:auto!important;
    padding-inline:clamp(24px,4vw,56px)!important;
  }

  .v65-menu-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:22px!important;
    align-items:stretch!important;
  }

  .v65-product-card{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:420px!important;
    display:flex!important;
    flex-direction:column!important;
    border-radius:22px!important;
    overflow:hidden!important;
    background:#fff!important;
    box-shadow:0 10px 28px rgba(13,50,45,.07)!important;
    transition:transform .18s ease,box-shadow .18s ease!important;
  }

  .v65-product-card:hover{
    transform:translateY(-3px)!important;
    box-shadow:0 16px 34px rgba(13,50,45,.11)!important;
  }

  .v65-product-image{
    width:100%!important;
    height:230px!important;
    min-height:230px!important;
    max-height:230px!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#fff!important;
    padding:14px!important;
    flex:0 0 auto!important;
  }

  .v65-product-card h3{
    font-size:18px!important;
    line-height:1.15!important;
    margin:16px 16px 7px!important;
    color:#143f38!important;
    -webkit-text-fill-color:#143f38!important;
  }

  .v65-product-card p{
    font-size:12px!important;
    line-height:1.45!important;
    margin:0 16px 10px!important;
    color:#68736f!important;
    -webkit-text-fill-color:#68736f!important;
  }

  .v65-product-card strong{
    margin:0 16px 14px!important;
    font-size:18px!important;
    color:#111!important;
  }

  .v65-product-card .v51-cta,
  .v65-product-card .v46-card-cta,
  .v65-product-card .v32-cta{
    margin:auto 16px 16px!important;
    min-height:46px!important;
    border-radius:14px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#111!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
  }

  /* Desktop product modal */
  .product-modal{
    display:grid!important;
    place-items:center!important;
    padding:28px!important;
    overflow:hidden!important;
  }

  .v65-product-sheet{
    width:min(1040px,calc(100vw - 64px))!important;
    max-width:1040px!important;
    max-height:calc(100vh - 56px)!important;
    display:grid!important;
    grid-template-columns:minmax(360px,42%) minmax(0,1fr)!important;
    gap:0!important;
    padding:0!important;
    border-radius:28px!important;
    overflow:hidden!important;
    background:#fff8e8!important;
    box-shadow:0 24px 70px rgba(0,0,0,.22)!important;
  }

  .v65-product-art{
    width:100%!important;
    height:100%!important;
    min-height:620px!important;
    max-height:none!important;
    border-radius:0!important;
    background-color:#fff!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
  }

  .v65-product-copy{
    width:100%!important;
    min-width:0!important;
    max-height:calc(100vh - 56px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:28px 30px 34px!important;
    scrollbar-width:thin!important;
  }

  .v65-product-copy::-webkit-scrollbar{width:8px!important}
  .v65-product-copy::-webkit-scrollbar-thumb{
    background:rgba(20,63,56,.18)!important;
    border-radius:999px!important;
  }

  .v65-product-copy .v60-product-name,
  .v65-product-copy .v58-product-name,
  .v65-product-copy #productName{
    font-size:34px!important;
    line-height:1!important;
    margin-top:2px!important;
  }

  .v65-product-copy #sizeSelector{
    width:100%!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
  }

  .v65-product-copy .v55-option-row{
    width:100%!important;
    grid-template-columns:minmax(0,1fr) 110px!important;
    min-height:66px!important;
  }

  .v65-product-copy #v18ToppingGrid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  .v65-product-copy .add-cart{
    width:100%!important;
    min-height:54px!important;
  }

  /* Search desktop */
  .v50-search-wrap{
    width:min(760px,100%)!important;
    margin:0 auto 22px!important;
  }
  .v50-search-input{
    min-height:52px!important;
    font-size:15px!important;
  }

  /* Desktop floating actions shouldn't cover footer/content */
  .v65-floating-actions{
    position:fixed!important;
    right:24px!important;
    bottom:24px!important;
    z-index:60!important;
    max-width:min(340px,calc(100vw - 48px))!important;
  }
}

/* Tablet / small desktop */
@media(min-width:701px) and (max-width:1100px){
  .v65-menu-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:18px!important;
  }

  .v65-product-image{
    height:200px!important;
    min-height:200px!important;
    max-height:200px!important;
  }

  .v65-product-sheet{
    width:calc(100vw - 40px)!important;
    grid-template-columns:320px minmax(0,1fr)!important;
  }

  .v65-product-art{
    min-height:540px!important;
  }
}

/* Preserve mobile two-column app layout */
@media(max-width:700px){
  .v65-menu-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  .v65-product-card{
    min-width:0!important;
  }

  .v65-product-image{
    width:100%!important;
    height:132px!important;
    min-height:132px!important;
    max-height:132px!important;
    object-fit:contain!important;
    background:#fff!important;
  }
}

/* =========================================================
   V66 — PASO 1: PERSONALIZACIÓN POR UNIDAD
   ========================================================= */
.v66-unit-head{margin:16px 0 9px!important}
.v66-unit-title{
  color:#143f38!important;font-size:18px!important;font-weight:950!important;
  line-height:1.1!important;letter-spacing:-.02em!important
}
.v66-unit-sub{margin-top:4px!important;color:#6d777b!important;font-size:10px!important;line-height:1.35!important}
.v66-unit-customizer{display:grid!important;gap:10px!important;margin-bottom:12px!important}
.v66-unit-customizer[hidden],.v66-unit-head[hidden]{display:none!important}

.v66-unit-card{
  padding:11px!important;border:1px solid rgba(20,63,56,.10)!important;border-radius:17px!important;
  background:#fff!important;box-shadow:0 6px 16px rgba(8,43,39,.045)!important
}
.v66-unit-card-head{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;
  padding-bottom:9px!important;border-bottom:1px solid rgba(20,63,56,.07)!important
}
.v66-unit-card-head>div{display:flex!important;flex-direction:column!important;gap:3px!important}
.v66-unit-card-head b{color:#143f38!important;font-size:12px!important;font-weight:950!important}
.v66-unit-card-head small{color:#78817e!important;font-size:9px!important;font-weight:750!important}
.v66-unit-card-head strong{color:#111!important;font-size:12px!important;font-weight:950!important}

.v66-unit-toppings{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;margin-top:9px!important
}
.v66-unit-top{
  position:relative!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;
  justify-content:center!important;min-height:48px!important;padding:8px 26px 8px 9px!important;
  border:1px solid rgba(20,63,56,.09)!important;border-radius:13px!important;background:#f9fbfa!important;
  color:#143f38!important;text-align:left!important;transition:transform .14s ease,border-color .14s ease,background .14s ease!important
}
.v66-unit-top span{font-size:10px!important;font-weight:900!important;line-height:1.15!important}
.v66-unit-top b{margin-top:3px!important;color:#111!important;font-size:9px!important}
.v66-unit-top.active{
  border-color:#f05a87!important;background:linear-gradient(180deg,rgba(240,90,135,.10),#fff)!important
}
.v66-unit-top.active::after{
  content:"✓"!important;position:absolute!important;top:7px!important;right:7px!important;width:18px!important;height:18px!important;
  display:grid!important;place-items:center!important;border-radius:50%!important;background:#f05a87!important;color:#fff!important;
  font-size:9px!important;font-weight:950!important
}
.v66-unit-top:active{transform:scale(.97)!important}

/* Hide generic topping grid only while Chicha's per-unit configurator is active */
#v66UnitCustomizer:not([hidden]) ~ #v18ToppingGrid{display:none!important}

@media(min-width:701px){
  .v66-unit-toppings{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
  .v66-unit-title{font-size:17px!important}
  .v66-unit-card{padding:9px!important;border-radius:15px!important}
  .v66-unit-toppings{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
  .v66-unit-top{min-height:46px!important;padding:7px 24px 7px 8px!important}
}

/* V67 — Paso 2: resumen visual */
.v67-order-summary{
  margin:14px 0 8px!important;
  padding:12px!important;
  border:1px solid rgba(20,63,56,.10)!important;
  border-radius:17px!important;
  background:linear-gradient(180deg,rgba(36,201,195,.045),rgba(255,255,255,.95))!important;
  box-shadow:0 7px 18px rgba(8,43,39,.045)!important;
}
.v67-order-summary[hidden]{display:none!important}
.v67-summary-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding-bottom:9px!important;
  margin-bottom:7px!important;
  border-bottom:1px solid rgba(20,63,56,.08)!important;
}
.v67-summary-title{
  color:#143f38!important;
  font-size:15px!important;
  font-weight:950!important;
}
#v67SummaryTotal{
  color:#111!important;
  font-size:15px!important;
  font-weight:950!important;
}
.v67-summary-items{
  display:grid!important;
  gap:7px!important;
}
.v67-summary-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  padding:8px 9px!important;
  border-radius:12px!important;
  background:#fff!important;
  border:1px solid rgba(20,63,56,.06)!important;
}
.v67-summary-copy{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
}
.v67-summary-copy b{
  color:#143f38!important;
  font-size:10.5px!important;
  font-weight:900!important;
}
.v67-summary-copy small{
  color:#74807c!important;
  font-size:8.5px!important;
  line-height:1.25!important;
  overflow-wrap:anywhere!important;
}
.v67-summary-row>strong{
  color:#111!important;
  font-size:10.5px!important;
  font-weight:950!important;
}
@media(max-width:700px){
  .v67-order-summary{
    margin-top:11px!important;
    padding:10px!important;
    border-radius:15px!important;
  }
  .v67-summary-title,#v67SummaryTotal{
    font-size:14px!important;
  }
}

/* =========================================================
   V68 — PASO 3: CARRITO EDITABLE
   ========================================================= */
.v68-cart-row{
  position:relative!important;
}
.v68-edit-line{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:max-content!important;
  min-height:28px!important;
  margin-top:7px!important;
  padding:5px 9px!important;
  border:1px solid rgba(20,63,56,.12)!important;
  border-radius:9px!important;
  background:#f3f8f6!important;
  color:#143f38!important;
  font-size:9px!important;
  font-weight:900!important;
  line-height:1!important;
  transition:transform .14s ease,background .14s ease,border-color .14s ease!important;
}
.v68-edit-line:hover{
  background:#e8f7f3!important;
  border-color:rgba(36,201,195,.45)!important;
}
.v68-edit-line:active{
  transform:scale(.96)!important;
}

/* Keep cart row aligned when Edit is present */
.v68-cart-row .cart-row-copy{
  align-self:center!important;
}
.v68-cart-row .v52-line-total{
  align-self:center!important;
}

/* Edit mode button gets a subtle cyan state */
.product-modal.open .add-cart{
  transition:background .16s ease,transform .16s ease,box-shadow .16s ease!important;
}

@media(max-width:700px){
  .v68-edit-line{
    min-height:27px!important;
    padding:5px 8px!important;
    font-size:8.5px!important;
  }
}

/* =========================================================
   V69 — PASO 4: FEEDBACK PROFESIONAL
   ========================================================= */
.v69-feedback{
  position:fixed!important;
  inset:0!important;
  z-index:9999!important;
  display:grid!important;
  place-items:center!important;
  padding:20px!important;
  background:rgba(8,28,25,.36)!important;
  backdrop-filter:blur(8px)!important;
  opacity:0!important;
  transition:opacity .18s ease!important;
}
.v69-feedback[hidden]{display:none!important}
.v69-feedback.show{opacity:1!important}

.v69-feedback-card{
  width:min(390px,calc(100vw - 32px))!important;
  padding:24px!important;
  border-radius:24px!important;
  background:#fff8e8!important;
  box-shadow:0 24px 70px rgba(0,0,0,.24)!important;
  text-align:center!important;
  transform:translateY(10px) scale(.985)!important;
  opacity:.6!important;
  transition:transform .2s ease,opacity .2s ease!important;
}
.v69-feedback.show .v69-feedback-card{
  transform:translateY(0) scale(1)!important;
  opacity:1!important;
}
.v69-feedback-icon{
  width:54px!important;
  height:54px!important;
  margin:0 auto 12px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:linear-gradient(135deg,#24c9c3,#143f38)!important;
  color:#fff!important;
  font-size:26px!important;
  font-weight:950!important;
  box-shadow:0 10px 24px rgba(36,201,195,.22)!important;
}
.v69-feedback-title{
  color:#143f38!important;
  font-size:20px!important;
  font-weight:950!important;
  letter-spacing:-.02em!important;
}
.v69-feedback-sub{
  margin-top:6px!important;
  color:#68736f!important;
  font-size:11px!important;
  line-height:1.4!important;
}
.v69-feedback-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:9px!important;
  margin-top:18px!important;
}
.v69-feedback-btn{
  min-height:46px!important;
  border-radius:14px!important;
  font-size:11px!important;
  font-weight:900!important;
  transition:transform .14s ease,box-shadow .14s ease,background .14s ease!important;
}
.v69-feedback-btn:active{transform:scale(.97)!important}
.v69-feedback-btn.secondary{
  border:1px solid rgba(20,63,56,.12)!important;
  background:#fff!important;
  color:#143f38!important;
}
.v69-feedback-btn.primary{
  border:0!important;
  background:linear-gradient(135deg,#143f38,#0d322d)!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(8,43,39,.16)!important;
}

/* Cart micro-feedback */
.v69-cart-pop{animation:v69CartPop .5s ease!important}
.v69-count-pop{animation:v69CountPop .5s ease!important}
@keyframes v69CartPop{
  0%,100%{transform:scale(1)}
  35%{transform:scale(.90)}
  70%{transform:scale(1.10)}
}
@keyframes v69CountPop{
  0%,100%{transform:scale(1)}
  40%{transform:scale(1.35)}
  75%{transform:scale(.96)}
}

@media(max-width:700px){
  .v69-feedback-card{
    padding:21px!important;
    border-radius:22px!important;
  }
  .v69-feedback-title{font-size:19px!important}
  .v69-feedback-actions{
    grid-template-columns:1fr!important;
  }
  .v69-feedback-btn{min-height:44px!important}
}

/* =========================================================
   V70 — PASO 5: CHICHA MASTER FINAL
   ========================================================= */

:root{
  --v70-green:#143f38;
  --v70-green2:#0d322d;
  --v70-cyan:#24c9c3;
  --v70-pink:#f05a87;
  --v70-cream:#fff8e8;
  --v70-surface:#ffffff;
  --v70-muted:#6b7672;
  --v70-border:rgba(20,63,56,.10);
}

/* Modal shell */
.v70-product-sheet{
  background:
    radial-gradient(circle at 12% 10%,rgba(240,90,135,.05),transparent 24%),
    radial-gradient(circle at 86% 14%,rgba(36,201,195,.05),transparent 24%),
    var(--v70-cream)!important;
}

/* Hero image */
.v70-product-art{
  background-color:#fff!important;
  background-size:contain!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
}

/* Option hierarchy */
.v70-size-selector{
  display:grid!important;
  gap:8px!important;
}
.v55-option-row{
  border-radius:16px!important;
  transition:
    transform .16s ease,
    border-color .16s ease,
    background .16s ease,
    box-shadow .16s ease!important;
}
.v55-option-row.active{
  border-color:var(--v70-cyan)!important;
  background:linear-gradient(180deg,rgba(36,201,195,.12),#fff)!important;
  box-shadow:0 0 0 3px rgba(36,201,195,.07),0 8px 18px rgba(8,43,39,.06)!important;
  transform:translateY(-1px)!important;
}
.v55-option-stepper button{
  transition:transform .13s ease,box-shadow .13s ease!important;
}
.v55-option-stepper button:active{
  transform:scale(.88)!important;
}
.v55-option-stepper strong{
  font-variant-numeric:tabular-nums!important;
}

/* Per-unit configurator */
.v70-unit-customizer{
  display:grid!important;
  gap:10px!important;
}
.v66-unit-card{
  border-radius:16px!important;
  box-shadow:0 6px 16px rgba(8,43,39,.045)!important;
}
.v66-unit-top{
  transition:
    transform .14s ease,
    border-color .14s ease,
    background .14s ease,
    box-shadow .14s ease!important;
}
.v66-unit-top.active{
  border-color:var(--v70-pink)!important;
  background:linear-gradient(180deg,rgba(240,90,135,.10),#fff)!important;
  box-shadow:0 0 0 2px rgba(240,90,135,.05)!important;
}
.v66-unit-top:active{
  transform:scale(.96)!important;
}

/* Summary */
.v70-summary{
  border-radius:16px!important;
  box-shadow:0 7px 18px rgba(8,43,39,.045)!important;
}
.v67-summary-row{
  transition:transform .14s ease,background .14s ease!important;
}
@media(hover:hover){
  .v67-summary-row:hover{
    transform:translateX(2px)!important;
    background:#fbfdfc!important;
  }
}

/* CTA */
.v70-add-cart{
  position:sticky!important;
  bottom:0!important;
  z-index:35!important;
  width:100%!important;
  min-height:56px!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,var(--v70-green),var(--v70-green2))!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(8,43,39,.18)!important;
  transition:
    transform .14s ease,
    box-shadow .14s ease,
    filter .14s ease!important;
}
.v70-add-cart:not(:disabled)::after{
  content:""!important;
  position:absolute!important;
  left:12px!important;
  right:12px!important;
  bottom:0!important;
  height:2px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,var(--v70-cyan),var(--v70-pink))!important;
}
.v70-add-cart:active{
  transform:scale(.985)!important;
  box-shadow:0 7px 18px rgba(8,43,39,.14)!important;
}
.v70-add-cart:disabled{
  background:#a3a097!important;
  box-shadow:none!important;
  opacity:.72!important;
}

/* Feedback */
.v70-feedback .v69-feedback-card{
  border:1px solid rgba(20,63,56,.08)!important;
}

/* Desktop layout */
@media(min-width:901px){
  .v70-product-sheet{
    width:min(1060px,calc(100vw - 64px))!important;
    max-width:1060px!important;
    grid-template-columns:minmax(380px,42%) minmax(0,1fr)!important;
    border-radius:28px!important;
  }
  .v70-product-art{
    min-height:640px!important;
    height:100%!important;
    max-height:none!important;
    border-radius:0!important;
  }
  .v70-product-copy{
    max-height:calc(100vh - 56px)!important;
    overflow-y:auto!important;
    padding:28px 30px 38px!important;
  }
  .v70-product-copy::-webkit-scrollbar{
    width:8px!important;
  }
  .v70-product-copy::-webkit-scrollbar-thumb{
    background:rgba(20,63,56,.16)!important;
    border-radius:999px!important;
  }
}

/* Tablet */
@media(min-width:701px) and (max-width:900px){
  .v70-product-sheet{
    grid-template-columns:310px minmax(0,1fr)!important;
  }
  .v70-product-art{
    min-height:520px!important;
  }
}

/* Mobile */
@media(max-width:700px){
  .v70-product-sheet{
    width:100%!important;
    max-width:100%!important;
    max-height:92svh!important;
    overflow-y:auto!important;
  }
  .v70-product-art{
    height:145px!important;
    min-height:145px!important;
    max-height:145px!important;
  }
  .v70-product-copy{
    padding-bottom:calc(18px + env(safe-area-inset-bottom))!important;
  }
  .v66-unit-toppings{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .v70-add-cart{
    min-height:54px!important;
    bottom:0!important;
  }
}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){
  .v55-option-row,
  .v55-option-stepper button,
  .v66-unit-top,
  .v67-summary-row,
  .v70-add-cart,
  .v69-feedback-card{
    transition:none!important;
    animation:none!important;
  }
}

/* =========================================================
   V71 — SISTEMA MAESTRO PARA TODO EL CATÁLOGO
   ========================================================= */

:root{
  --v71-green:#143f38;
  --v71-green2:#0d322d;
  --v71-cyan:#24c9c3;
  --v71-pink:#f05a87;
  --v71-cream:#fff8e8;
  --v71-muted:#6d777b;
  --v71-border:rgba(20,63,56,.10);
}

/* Universal modal */
.v71-product-sheet{
  background:
    radial-gradient(circle at 12% 10%,rgba(240,90,135,.05),transparent 25%),
    radial-gradient(circle at 87% 14%,rgba(36,201,195,.05),transparent 25%),
    var(--v71-cream)!important;
}
.v71-product-art{
  background-color:#fff!important;
  background-size:contain!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
}

/* Same section hierarchy everywhere */
.v71-section-title,
#v58OptionsTitle{
  margin:17px 0 5px!important;
  color:var(--v71-green)!important;
  font-size:18px!important;
  font-weight:950!important;
  line-height:1.1!important;
  letter-spacing:-.02em!important;
}
.v71-section-title[hidden],
#v58OptionsTitle[hidden]{
  display:none!important;
}

/* Variant products: Chicha, Pastelitos, future variants */
.v71-option-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
}
.v55-option-row{
  min-height:62px!important;
  border-radius:16px!important;
  border:1px solid var(--v71-border)!important;
  background:#fff!important;
  box-shadow:0 5px 14px rgba(8,43,39,.045)!important;
}
.v55-option-row.active{
  border-color:var(--v71-cyan)!important;
  background:linear-gradient(180deg,rgba(36,201,195,.11),#fff)!important;
  box-shadow:0 0 0 3px rgba(36,201,195,.07),0 8px 18px rgba(8,43,39,.06)!important;
}

/* Simple products: same premium control instead of legacy-looking counter */
.v71-simple-qty{
  display:grid!important;
  grid-template-columns:1fr 42px 40px 42px!important;
  align-items:center!important;
  gap:7px!important;
  width:100%!important;
  min-height:64px!important;
  margin:0 0 10px!important;
  padding:10px 11px!important;
  border:1px solid var(--v71-border)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 5px 14px rgba(8,43,39,.045)!important;
}
.v71-simple-qty[hidden]{display:none!important}
.v71-simple-qty .v56-qty-label{
  color:var(--v71-green)!important;
  font-size:12px!important;
  font-weight:950!important;
}
.v71-simple-qty button{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  border:1px solid rgba(20,63,56,.10)!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,#fff,#f1f5f3)!important;
  color:var(--v71-green)!important;
  font-size:18px!important;
  font-weight:950!important;
  box-shadow:0 3px 8px rgba(8,43,39,.05)!important;
  transition:transform .13s ease!important;
}
.v71-simple-qty button:active{transform:scale(.9)!important}
.v71-simple-qty #qtyValue{
  color:var(--v71-green)!important;
  font-size:15px!important;
  font-weight:950!important;
  text-align:center!important;
  font-variant-numeric:tabular-nums!important;
}

/* Universal summary */
.v71-order-summary{
  margin-top:13px!important;
  border-radius:16px!important;
  border:1px solid rgba(20,63,56,.09)!important;
  background:linear-gradient(180deg,rgba(36,201,195,.035),rgba(255,255,255,.96))!important;
  box-shadow:0 7px 18px rgba(8,43,39,.045)!important;
}
.v67-summary-row{
  border-radius:12px!important;
  background:#fff!important;
}

/* Universal CTA */
.v71-add-cart{
  position:sticky!important;
  bottom:0!important;
  z-index:35!important;
  width:100%!important;
  min-height:56px!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,var(--v71-green),var(--v71-green2))!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(8,43,39,.18)!important;
}
.v71-add-cart:disabled{
  background:#a3a097!important;
  box-shadow:none!important;
  opacity:.72!important;
}

/* Chicha-specific customization remains only where needed */
#v66UnitHead[hidden],
#v66UnitCustomizer[hidden],
#v18ToppingBlock[hidden]{
  display:none!important;
}

/* Desktop = image left / configurator right for every product */
@media(min-width:901px){
  .v71-product-sheet{
    width:min(1060px,calc(100vw - 64px))!important;
    max-width:1060px!important;
    grid-template-columns:minmax(380px,42%) minmax(0,1fr)!important;
    border-radius:28px!important;
    overflow:hidden!important;
  }
  .v71-product-art{
    min-height:620px!important;
    height:100%!important;
    max-height:none!important;
    border-radius:0!important;
  }
  .v71-product-copy{
    max-height:calc(100vh - 56px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:28px 30px 38px!important;
  }
}

/* Mobile = same visual system, stacked */
@media(max-width:700px){
  .v71-product-sheet{
    width:100%!important;
    max-width:100%!important;
    max-height:92svh!important;
    overflow-y:auto!important;
  }
  .v71-product-art{
    height:145px!important;
    min-height:145px!important;
    max-height:145px!important;
  }
  .v71-simple-qty{
    grid-template-columns:minmax(0,1fr) 38px 34px 38px!important;
    min-height:58px!important;
    padding:8px 9px!important;
  }
  .v71-simple-qty button{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
  }
  .v71-add-cart{
    min-height:54px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .v55-option-row,
  .v71-simple-qty button,
  .v71-add-cart{
    transition:none!important;
    animation:none!important;
  }
}

/* =========================================================
   V72 — SELECTOR PREMIUM (visual only)
   ========================================================= */
.v72-choice-card{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  gap:0 10px!important;
  min-height:76px!important;
  padding:9px 10px!important;
  overflow:hidden!important;
  border:1px solid rgba(20,63,56,.10)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,#fff,#fbfcfb)!important;
  box-shadow:0 7px 18px rgba(8,43,39,.045)!important;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.v72-choice-card::before{
  content:""!important;position:absolute!important;left:0!important;top:12px!important;bottom:12px!important;
  width:3px!important;border-radius:0 99px 99px 0!important;background:transparent!important;
  transition:background .16s ease!important;
}
.v72-choice-card.active{
  transform:translateY(-1px)!important;
  border-color:rgba(36,201,195,.72)!important;
  background:linear-gradient(145deg,rgba(36,201,195,.10),#fff 62%,rgba(240,90,135,.035))!important;
  box-shadow:0 0 0 3px rgba(36,201,195,.06),0 10px 22px rgba(8,43,39,.07)!important;
}
.v72-choice-card.active::before{background:linear-gradient(180deg,#24c9c3,#f05a87)!important}

.v72-choice-main{
  min-width:0!important;display:grid!important;grid-template-columns:38px minmax(0,1fr) 24px!important;
  align-items:center!important;gap:9px!important;padding:2px!important;text-align:left!important;background:transparent!important;
}
.v72-choice-icon{
  width:38px!important;height:38px!important;display:grid!important;place-items:center!important;
  border-radius:12px!important;background:#f3f8f6!important;font-size:18px!important;
  box-shadow:inset 0 0 0 1px rgba(20,63,56,.06)!important;
}
.v72-choice-copy{min-width:0!important;display:flex!important;flex-direction:column!important;gap:3px!important}
.v72-choice-copy strong{
  color:#143f38!important;font-size:11.5px!important;font-weight:950!important;line-height:1.15!important;
  white-space:normal!important;
}
.v72-choice-copy small{color:#6d777b!important;font-size:9.5px!important;font-weight:800!important}
.v72-selected-badge{
  width:22px!important;height:22px!important;display:grid!important;place-items:center!important;border-radius:50%!important;
  background:transparent!important;color:#fff!important;font-size:10px!important;font-weight:950!important;
}
.v72-choice-card.active .v72-selected-badge{
  background:linear-gradient(135deg,#24c9c3,#143f38)!important;
  box-shadow:0 4px 10px rgba(36,201,195,.20)!important;
}

.v72-stepper{
  align-self:center!important;display:grid!important;grid-template-columns:34px 32px 34px!important;align-items:center!important;
  padding:4px!important;border:1px solid rgba(20,63,56,.08)!important;border-radius:13px!important;background:#f5f8f7!important;
}
.v72-stepper button{
  width:34px!important;height:34px!important;min-width:34px!important;border:0!important;border-radius:10px!important;
  background:#fff!important;color:#143f38!important;font-size:17px!important;font-weight:950!important;
  box-shadow:0 3px 8px rgba(8,43,39,.06)!important;
}
.v72-step-value{
  min-width:32px!important;text-align:center!important;color:#143f38!important;font-size:12px!important;font-weight:950!important;
  font-variant-numeric:tabular-nums!important;
}
.v72-selected-label{
  grid-column:1/2!important;min-height:12px!important;padding:3px 0 0 49px!important;
  color:#188f89!important;font-size:8px!important;font-weight:900!important;letter-spacing:.01em!important;
}

/* Toppings */
.v72-top-card,.v66-unit-top{
  position:relative!important;display:grid!important;grid-template-columns:30px minmax(0,1fr) 20px!important;
  align-items:center!important;gap:7px!important;min-height:54px!important;padding:8px!important;
  border-radius:14px!important;text-align:left!important;
}
.v72-top-icon{
  width:30px!important;height:30px!important;display:grid!important;place-items:center!important;
  border-radius:9px!important;background:rgba(20,63,56,.055)!important;font-size:14px!important;
}
.v72-top-copy{min-width:0!important;display:flex!important;flex-direction:column!important;gap:2px!important}
.v72-top-copy strong{font-size:9.5px!important;font-weight:950!important;color:#143f38!important;line-height:1.1!important}
.v72-top-copy small{font-size:8px!important;font-weight:800!important;color:#6d777b!important}
.v72-top-check{
  width:19px!important;height:19px!important;display:grid!important;place-items:center!important;border-radius:50%!important;
  color:#fff!important;font-size:9px!important;font-weight:950!important;
}
.v72-top-card.active .v72-top-check,.v66-unit-top.active .v72-top-check{background:#f05a87!important}
.v72-tap{animation:v72Tap .25s ease!important}
@keyframes v72Tap{0%,100%{transform:scale(1)}50%{transform:scale(.975)}}

@media(hover:hover){
  .v72-choice-card:hover{transform:translateY(-2px)!important;box-shadow:0 11px 24px rgba(8,43,39,.075)!important}
}
@media(max-width:700px){
  .v72-choice-card{min-height:72px!important;padding:8px!important;border-radius:16px!important}
  .v72-choice-main{grid-template-columns:34px minmax(0,1fr) 21px!important;gap:7px!important}
  .v72-choice-icon{width:34px!important;height:34px!important;border-radius:10px!important;font-size:16px!important}
  .v72-stepper{grid-template-columns:30px 27px 30px!important;padding:3px!important}
  .v72-stepper button{width:30px!important;height:30px!important;min-width:30px!important}
  .v72-step-value{min-width:27px!important}
  .v72-selected-label{padding-left:41px!important}
}
@media(prefers-reduced-motion:reduce){.v72-tap{animation:none!important}}

/* =========================================================
   V73 — CARRITO PREMIUM / VISUAL POLISH ONLY
   No cambia lógica, cantidades, edición ni cálculos.
   ========================================================= */

/* Panel */
#cartDrawer,.cart-drawer,.cart-panel,.cart-sheet{
  background:
    radial-gradient(circle at 88% 8%,rgba(36,201,195,.08),transparent 28%),
    radial-gradient(circle at 10% 92%,rgba(240,90,135,.055),transparent 24%),
    #fff8e8!important;
}
#cartDrawer::before,.cart-drawer::before,.cart-panel::before,.cart-sheet::before{
  content:""!important;position:absolute!important;inset:0!important;pointer-events:none!important;opacity:.24!important;
  background-image:radial-gradient(rgba(20,63,56,.16) .65px,transparent .65px)!important;
  background-size:12px 12px!important;
}

/* Header: preserve markup, improve hierarchy */
#cartDrawer .cart-head,#cartDrawer .cart-header,
.cart-drawer .cart-head,.cart-drawer .cart-header{
  position:relative!important;z-index:2!important;padding-top:18px!important;padding-bottom:16px!important;
}
#cartDrawer h2,.cart-drawer h2,.cart-panel h2,.cart-sheet h2{
  color:#143f38!important;
  text-shadow:0 1px 0 rgba(255,255,255,.7)!important;
  letter-spacing:-.035em!important;
}
#cartDrawer .eyebrow,.cart-drawer .eyebrow{
  letter-spacing:.18em!important;font-weight:950!important;
}

/* Product cards */
#cartItems > *,.cart-items > *,.cart-list > *{
  position:relative!important;
}
.cart-item,.cart-row,.cart-card{
  border:1px solid rgba(20,63,56,.09)!important;
  border-radius:22px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(250,253,252,.96))!important;
  box-shadow:
    0 14px 34px rgba(8,43,39,.07),
    inset 0 1px 0 rgba(255,255,255,.95)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
  overflow:hidden!important;
}
.cart-item::before,.cart-row::before,.cart-card::before{
  content:""!important;position:absolute!important;left:0!important;top:18px!important;bottom:18px!important;width:3px!important;
  border-radius:0 99px 99px 0!important;background:linear-gradient(180deg,#24c9c3,#f05a87)!important;opacity:.85!important;
}
@media(hover:hover){
  .cart-item:hover,.cart-row:hover,.cart-card:hover{
    transform:translateY(-2px)!important;border-color:rgba(36,201,195,.28)!important;
    box-shadow:0 18px 38px rgba(8,43,39,.09),0 0 0 3px rgba(36,201,195,.035)!important;
  }
}

/* Images */
.cart-item img,.cart-row img,.cart-card img{
  background:linear-gradient(145deg,#fff,#f6faf8)!important;
  border:1px solid rgba(20,63,56,.08)!important;
  border-radius:17px!important;
  box-shadow:0 7px 16px rgba(8,43,39,.065)!important;
  object-fit:contain!important;
}

/* Product typography */
.cart-item h3,.cart-row h3,.cart-card h3,
.cart-item .cart-name,.cart-row .cart-name,.cart-card .cart-name{
  color:#143f38!important;font-weight:950!important;letter-spacing:-.02em!important;
}
.cart-item .meta,.cart-row .meta,.cart-card .meta,
.cart-item small,.cart-row small,.cart-card small{
  color:#82908d!important;
}

/* Chips */
.cart-item .chip,.cart-row .chip,.cart-card .chip,
.cart-item .tag,.cart-row .tag,.cart-card .tag{
  border:1px solid rgba(20,63,56,.045)!important;
  background:#f1f7f5!important;color:#24564f!important;
  border-radius:999px!important;font-weight:850!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important;
}

/* Edit button */
.cart-item [data-cart-edit],.cart-row [data-cart-edit],.cart-card [data-cart-edit],
.cart-item .edit,.cart-row .edit,.cart-card .edit{
  border:1px solid rgba(20,63,56,.12)!important;
  border-radius:999px!important;background:linear-gradient(180deg,#fff,#f3f8f6)!important;
  color:#143f38!important;font-weight:900!important;
  box-shadow:0 4px 10px rgba(8,43,39,.045)!important;
}

/* Remove button: cleaner premium affordance */
.cart-item [data-cart-remove],.cart-row [data-cart-remove],.cart-card [data-cart-remove],
.cart-item .remove,.cart-row .remove,.cart-card .remove{
  width:30px!important;height:30px!important;display:grid!important;place-items:center!important;
  border-radius:50%!important;background:rgba(240,90,135,.075)!important;color:#f05a87!important;
  transition:transform .16s ease,background .16s ease!important;
}
.cart-item [data-cart-remove]:hover,.cart-row [data-cart-remove]:hover,.cart-card [data-cart-remove]:hover,
.cart-item .remove:hover,.cart-row .remove:hover,.cart-card .remove:hover{
  transform:scale(1.06)!important;background:rgba(240,90,135,.14)!important;
}

/* Quantity control */
.cart-item .qty,.cart-row .qty,.cart-card .qty,
.cart-item .stepper,.cart-row .stepper,.cart-card .stepper{
  border:1px solid rgba(20,63,56,.10)!important;
  border-radius:15px!important;background:#f4f8f7!important;padding:3px!important;
  box-shadow:inset 0 1px 2px rgba(8,43,39,.025)!important;
}
.cart-item .qty button,.cart-row .qty button,.cart-card .qty button,
.cart-item .stepper button,.cart-row .stepper button,.cart-card .stepper button{
  border-radius:11px!important;background:#fff!important;color:#143f38!important;
  box-shadow:0 3px 8px rgba(8,43,39,.055)!important;font-weight:950!important;
}

/* Price emphasis */
.cart-item .subtotal,.cart-row .subtotal,.cart-card .subtotal,
.cart-item .total,.cart-row .total,.cart-card .total{
  color:#111!important;font-weight:950!important;letter-spacing:-.025em!important;
}

/* Bottom checkout area if present */
.cart-footer,.cart-bottom,.cart-checkout{
  position:sticky!important;bottom:0!important;z-index:5!important;
  border-top:1px solid rgba(20,63,56,.08)!important;
  background:rgba(255,248,232,.93)!important;
  -webkit-backdrop-filter:blur(16px)!important;backdrop-filter:blur(16px)!important;
  box-shadow:0 -12px 28px rgba(8,43,39,.055)!important;
}
.cart-footer .total,.cart-bottom .total,.cart-checkout .total{
  color:#143f38!important;font-weight:950!important;
}
.cart-footer button,.cart-bottom button,.cart-checkout button{
  border-radius:16px!important;
}

/* Mobile refinement: compact but not structurally changed */
@media(max-width:700px){
  .cart-item,.cart-row,.cart-card{
    border-radius:20px!important;
    box-shadow:0 10px 25px rgba(8,43,39,.065)!important;
  }
  .cart-item img,.cart-row img,.cart-card img{border-radius:15px!important}
  #cartDrawer h2,.cart-drawer h2,.cart-panel h2,.cart-sheet h2{letter-spacing:-.045em!important}
}
@media(prefers-reduced-motion:reduce){
  .cart-item,.cart-row,.cart-card{transition:none!important}
}

/* =========================================================
   V74 — CARRITO SUPER APP
   Rediseño visual real. Misma lógica / mismas acciones.
   ========================================================= */
:root{
  --v74-green:#143f38;
  --v74-green-2:#0d322d;
  --v74-cyan:#24c9c3;
  --v74-pink:#f05a87;
  --v74-cream:#fff8e8;
  --v74-surface:#fff;
  --v74-ink:#14211f;
  --v74-muted:#7a8884;
  --v74-border:rgba(20,63,56,.09);
}

/* Whole cart as one coherent app surface */
.v74-cart-sheet{
  position:relative!important;
  background:
    radial-gradient(circle at 90% 7%,rgba(36,201,195,.08),transparent 28%),
    radial-gradient(circle at 8% 92%,rgba(240,90,135,.055),transparent 25%),
    var(--v74-cream)!important;
}

/* Close is now a real app icon button */
.v74-cart-close{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(20,63,56,.12)!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.88)!important;
  color:var(--v74-green)!important;
  box-shadow:0 7px 18px rgba(8,43,39,.07)!important;
  font-size:0!important;
  backdrop-filter:blur(12px)!important;
}
.v74-cart-close::before{
  content:""!important;
  width:16px!important;height:16px!important;
  background:
    linear-gradient(45deg,transparent 45%,currentColor 45%,currentColor 55%,transparent 55%),
    linear-gradient(-45deg,transparent 45%,currentColor 45%,currentColor 55%,transparent 55%)!important;
}
.v74-cart-close:active{transform:scale(.94)!important}

/* Spacing */
.v74-cart-items{
  display:grid!important;
  gap:13px!important;
  margin-top:18px!important;
}

/* Card structure */
.v74-cart-card{
  position:relative!important;
  display:block!important;
  padding:14px!important;
  border:1px solid var(--v74-border)!important;
  border-radius:22px!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.995),rgba(248,252,250,.97))!important;
  box-shadow:
    0 14px 34px rgba(8,43,39,.075),
    inset 0 1px 0 rgba(255,255,255,.95)!important;
  overflow:hidden!important;
}
.v74-cart-card::before{
  content:""!important;
  position:absolute!important;
  left:0!important;top:18px!important;bottom:18px!important;width:3px!important;
  border-radius:0 99px 99px 0!important;
  background:linear-gradient(180deg,var(--v74-cyan),var(--v74-pink))!important;
}

.v74-card-top{
  display:grid!important;
  grid-template-columns:86px minmax(0,1fr)!important;
  gap:13px!important;
  align-items:center!important;
}

.v74-product-art{
  width:86px!important;
  height:86px!important;
  min-width:86px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(20,63,56,.075)!important;
  border-radius:19px!important;
  background:linear-gradient(145deg,#fff,#f4f9f7)!important;
  box-shadow:0 8px 18px rgba(8,43,39,.065)!important;
  overflow:hidden!important;
}
.v74-product-art img{
  width:100%!important;height:100%!important;
  object-fit:contain!important;
  padding:7px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.v74-product-copy{min-width:0!important}
.v74-product-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:10px!important;
}
.v74-name-wrap{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}
.v74-product-name{
  color:var(--v74-green)!important;
  font-size:15px!important;
  font-weight:950!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
}
.v74-unit-price{
  color:#93a09c!important;
  font-size:9px!important;
  font-weight:750!important;
}

/* Real icon buttons instead of basic X */
.v74-icon-btn{
  flex:0 0 auto!important;
  width:34px!important;height:34px!important;
  display:grid!important;place-items:center!important;
  border:1px solid rgba(240,90,135,.12)!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,#fff,rgba(240,90,135,.055))!important;
  color:var(--v74-pink)!important;
  box-shadow:0 5px 12px rgba(240,90,135,.075)!important;
  transition:transform .14s ease,background .14s ease,box-shadow .14s ease!important;
}
.v74-icon-btn svg{width:16px!important;height:16px!important}
.v74-icon-btn:active{
  transform:scale(.92)!important;
  background:rgba(240,90,135,.12)!important;
}

/* Chips are more controlled */
.v74-chips{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  margin-top:9px!important;
}
.v74-chip{
  display:inline-flex!important;
  align-items:center!important;
  min-height:25px!important;
  padding:5px 8px!important;
  border:1px solid rgba(20,63,56,.055)!important;
  border-radius:999px!important;
  background:#f1f7f5!important;
  color:#315d57!important;
  font-size:8.3px!important;
  font-weight:850!important;
  line-height:1!important;
}
.v74-chip.primary{
  background:rgba(36,201,195,.10)!important;
  border-color:rgba(36,201,195,.14)!important;
  color:#166e68!important;
}
.v74-chip.more{
  background:rgba(240,90,135,.075)!important;
  border-color:rgba(240,90,135,.10)!important;
  color:#b74468!important;
}

/* Bottom row makes card compact and app-like */
.v74-card-bottom{
  display:grid!important;
  grid-template-columns:auto auto minmax(92px,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  margin-top:13px!important;
  padding-top:12px!important;
  border-top:1px solid rgba(20,63,56,.07)!important;
}

.v74-edit-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-height:38px!important;
  margin:0!important;
  padding:8px 11px!important;
  border:1px solid rgba(20,63,56,.11)!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,#fff,#f2f7f5)!important;
  color:var(--v74-green)!important;
  box-shadow:0 4px 10px rgba(8,43,39,.045)!important;
  font-size:9px!important;
  font-weight:900!important;
}
.v74-edit-btn svg{width:14px!important;height:14px!important}
.v74-edit-btn:active{transform:scale(.96)!important}

/* Quantity is a proper segmented pill */
.v74-qty-control{
  display:grid!important;
  grid-template-columns:34px 28px 34px!important;
  align-items:center!important;
  gap:2px!important;
  padding:3px!important;
  border:1px solid rgba(20,63,56,.10)!important;
  border-radius:13px!important;
  background:#edf4f1!important;
  box-shadow:inset 0 1px 2px rgba(8,43,39,.025)!important;
}
.v74-qty-control button{
  width:34px!important;height:34px!important;min-width:34px!important;
  border:0!important;border-radius:10px!important;
  background:#fff!important;color:var(--v74-green)!important;
  box-shadow:0 3px 8px rgba(8,43,39,.055)!important;
  font-size:16px!important;font-weight:950!important;
}
.v74-qty-control b{
  min-width:28px!important;
  text-align:center!important;
  color:var(--v74-green)!important;
  font-size:12px!important;font-weight:950!important;
  font-variant-numeric:tabular-nums!important;
}

.v74-subtotal{
  min-width:0!important;
  justify-self:end!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:2px!important;
}
.v74-subtotal small{
  color:#9ba6a3!important;
  font-size:7.5px!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
.v74-subtotal strong{
  color:#111!important;
  font-size:15px!important;
  font-weight:950!important;
  letter-spacing:-.03em!important;
}

/* Order summary becomes a premium total card */
.v74-cart-summary{
  margin-top:16px!important;
  padding:15px 16px!important;
  border:1px solid rgba(20,63,56,.09)!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,rgba(20,63,56,.055),rgba(36,201,195,.055))!important;
  box-shadow:0 8px 20px rgba(8,43,39,.045)!important;
}
.v74-cart-summary span{
  color:#6f7c78!important;
  font-size:10px!important;
  font-weight:850!important;
}
.v74-cart-summary strong{
  color:var(--v74-green)!important;
  font-size:22px!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
}

/* Checkout fields all speak same visual language */
.v74-checkout-fields{
  display:grid!important;
  gap:11px!important;
  margin-top:14px!important;
}
.v74-checkout-fields label>span{
  display:block!important;
  margin:0 0 5px!important;
  color:var(--v74-green)!important;
  font-size:9px!important;
  font-weight:900!important;
}
.v74-checkout-fields input,
.v74-checkout-fields textarea{
  width:100%!important;
  min-height:46px!important;
  padding:11px 13px!important;
  border:1px solid rgba(20,63,56,.10)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.92)!important;
  color:var(--v74-ink)!important;
  box-shadow:inset 0 1px 2px rgba(8,43,39,.025)!important;
  outline:none!important;
}
.v74-checkout-fields input:focus,
.v74-checkout-fields textarea:focus{
  border-color:rgba(36,201,195,.70)!important;
  box-shadow:0 0 0 3px rgba(36,201,195,.08)!important;
}

/* Pickup / Delivery as segmented control */
.v74-methods{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:4px!important;
  padding:4px!important;
  border:1px solid rgba(20,63,56,.08)!important;
  border-radius:15px!important;
  background:#edf4f1!important;
}
.v74-methods button{
  min-height:40px!important;
  border:0!important;
  border-radius:11px!important;
  background:transparent!important;
  color:#6f7c78!important;
  font-size:9px!important;
  font-weight:900!important;
  transition:background .14s ease,color .14s ease,box-shadow .14s ease!important;
}
.v74-methods button.active{
  background:#fff!important;
  color:var(--v74-green)!important;
  box-shadow:0 4px 10px rgba(8,43,39,.07)!important;
}

/* Checkout CTA */
.v74-checkout{
  width:100%!important;
  min-height:56px!important;
  margin-top:14px!important;
  border:0!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,var(--v74-green),var(--v74-green-2))!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:950!important;
  box-shadow:0 12px 26px rgba(8,43,39,.18)!important;
}
.v74-checkout:active{transform:scale(.985)!important}

/* Clear cart becomes a subtle text action, not another primary button */
.v74-clear{
  width:100%!important;
  min-height:40px!important;
  margin-top:8px!important;
  border:0!important;
  background:transparent!important;
  color:#8b9793!important;
  font-size:9px!important;
  font-weight:850!important;
  box-shadow:none!important;
}
.v74-clear img{opacity:.45!important}

/* Mobile specifically compact and coherent */
@media(max-width:700px){
  .v74-cart-sheet{
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .v74-cart-card{
    padding:12px!important;
    border-radius:20px!important;
  }
  .v74-card-top{
    grid-template-columns:76px minmax(0,1fr)!important;
    gap:11px!important;
  }
  .v74-product-art{
    width:76px!important;height:76px!important;min-width:76px!important;
    border-radius:17px!important;
  }
  .v74-product-name{font-size:14px!important}
  .v74-card-bottom{
    grid-template-columns:auto auto minmax(78px,1fr)!important;
    gap:7px!important;
  }
  .v74-edit-btn{
    min-height:36px!important;
    padding:7px 9px!important;
  }
  .v74-qty-control{
    grid-template-columns:31px 25px 31px!important;
  }
  .v74-qty-control button{
    width:31px!important;height:31px!important;min-width:31px!important;
  }
  .v74-subtotal strong{font-size:14px!important}
}

@media(prefers-reduced-motion:reduce){
  .v74-icon-btn,
  .v74-edit-btn,
  .v74-methods button,
  .v74-checkout{
    transition:none!important;
  }
}

/* V75 — COHERENCIA GLOBAL */
:root{--app-green:#143f38;--app-green2:#0d322d;--app-cyan:#24c9c3;--app-pink:#f05a87;--app-cream:#fff8e8;--app-border:rgba(20,63,56,.09);--app-shadow:0 14px 32px rgba(8,43,39,.075)}
.v75-cart-sheet{padding-top:20px!important;background:radial-gradient(circle at 90% 7%,rgba(36,201,195,.08),transparent 28%),radial-gradient(circle at 8% 92%,rgba(240,90,135,.055),transparent 25%),var(--app-cream)!important}
.v75-cart-sheet .cart-eyebrow{color:#71807b!important;font-size:9px!important;font-weight:950!important;letter-spacing:.18em!important}
.v75-cart-sheet .cart-title{margin-top:2px!important;color:var(--app-green)!important;font-size:34px!important;line-height:.95!important;letter-spacing:-.045em!important}
.v75-cart-meta{margin-top:6px!important;color:#899590!important;font-size:10px!important;font-weight:800!important}
.v75-close{top:18px!important;right:18px!important;width:42px!important;height:42px!important;border-radius:14px!important;border:1px solid rgba(20,63,56,.10)!important;background:rgba(255,255,255,.9)!important;color:var(--app-green)!important;box-shadow:0 7px 16px rgba(8,43,39,.065)!important}
#cartEmpty{margin-top:18px!important;padding:28px 18px!important;border:1px dashed rgba(20,63,56,.14)!important;border-radius:22px!important;background:rgba(255,255,255,.62)!important;text-align:center!important}
#cartEmpty>span{width:64px!important;height:64px!important;margin:0 auto 12px!important;display:grid!important;place-items:center!important;border-radius:20px!important;background:linear-gradient(145deg,rgba(36,201,195,.11),rgba(240,90,135,.07))!important}
#cartEmpty>span img{width:28px!important;height:28px!important;opacity:.78!important}
#cartEmpty b{display:block!important;color:var(--app-green)!important;font-size:14px!important;font-weight:950!important}
#cartEmpty small{display:block!important;margin-top:5px!important;color:#899590!important;font-size:9px!important}
.v75-explore-menu{min-height:40px!important;margin-top:14px!important;padding:8px 14px!important;border:1px solid rgba(20,63,56,.11)!important;border-radius:12px!important;background:linear-gradient(180deg,#fff,#f3f8f6)!important;color:var(--app-green)!important;font-size:9.5px!important;font-weight:900!important;box-shadow:0 4px 10px rgba(8,43,39,.045)!important}
.v74-cart-card{border-color:var(--app-border)!important;border-radius:22px!important;box-shadow:var(--app-shadow)!important;background:linear-gradient(145deg,#fff,#fbfdfc)!important}
.v74-icon-btn,.v74-edit-btn,.v74-qty-control button{transition:transform .14s ease,box-shadow .14s ease,background .14s ease!important}
.v74-icon-btn:active,.v74-edit-btn:active,.v74-qty-control button:active{transform:scale(.93)!important}
.v75-card-leave{animation:v75Leave .22s ease both!important}
.v75-card-edit{animation:v75Edit .34s ease!important}
@keyframes v75Leave{from{opacity:1;transform:translateX(0) scale(1)}to{opacity:0;transform:translateX(18px) scale(.985)}}
@keyframes v75Edit{0%,100%{box-shadow:var(--app-shadow)}50%{box-shadow:0 0 0 3px rgba(36,201,195,.10),0 16px 34px rgba(8,43,39,.09)}}
.v75-cart-summary{margin-top:18px!important;border-radius:18px!important}
.v75-cart-summary strong{font-size:24px!important;letter-spacing:-.04em!important}
.v75-total-pop{animation:v75TotalPop .38s ease!important}
@keyframes v75TotalPop{0%,100%{transform:scale(1)}45%{transform:scale(1.08)}}
.v75-checkout-fields input,.v75-checkout-fields textarea{border-radius:14px!important}
.v75-checkout-fields input:focus,.v75-checkout-fields textarea:focus{border-color:rgba(36,201,195,.7)!important;box-shadow:0 0 0 3px rgba(36,201,195,.08)!important}
.v75-checkout{position:sticky!important;bottom:8px!important;z-index:15!important;min-height:58px!important;margin-top:16px!important;border:0!important;border-radius:17px!important;background:linear-gradient(135deg,var(--app-green),var(--app-green2))!important;color:#fff!important;font-weight:950!important;box-shadow:0 12px 26px rgba(8,43,39,.18)!important}
.v75-checkout::after{content:""!important;position:absolute!important;left:14px!important;right:14px!important;bottom:0!important;height:2px!important;border-radius:999px!important;background:linear-gradient(90deg,var(--app-cyan),var(--app-pink))!important}
.v75-clear{opacity:.78!important}
.v72-choice-card,.v66-unit-card,.v67-order-summary,.v74-cart-card,.v69-feedback-card{border-color:var(--app-border)!important}
.v72-choice-card,.v66-unit-card,.v74-cart-card{background:linear-gradient(145deg,#fff,#fbfdfc)!important}
.v72-choice-card.active,.v55-option-row.active{border-color:rgba(36,201,195,.75)!important;box-shadow:0 0 0 3px rgba(36,201,195,.06),0 10px 22px rgba(8,43,39,.07)!important}
.v66-unit-top.active,.v72-top-card.active{border-color:var(--app-pink)!important}
@media(max-width:700px){.v75-cart-sheet{padding-top:16px!important}.v75-cart-sheet .cart-title{font-size:31px!important}.v75-close{width:40px!important;height:40px!important;top:14px!important;right:14px!important}.v75-checkout{min-height:56px!important;bottom:6px!important}}
@media(prefers-reduced-motion:reduce){.v75-card-leave,.v75-card-edit,.v75-total-pop{animation:none!important}}
