: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;
}


/* 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 */

.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;
}

.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 > 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;
}


/* 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}}

/* =========================================================
   V76 — FINAL WEB / DESKTOP STABILITY LAYER
   Desktop-only refinements. Mobile app rules remain intact.
   ========================================================= */

@media(min-width:701px){
  html,body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  /* Header: prevent collisions on laptop/desktop */
  .v76-nav{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto auto!important;
    align-items:center!important;
    gap:18px!important;
    width:100%!important;
    max-width:100%!important;
    padding-left:clamp(22px,3vw,48px)!important;
    padding-right:clamp(22px,3vw,48px)!important;
  }
  .v76-nav .brand{
    min-width:0!important;
  }
  .v76-nav .brand img{
    max-width:150px!important;
    height:auto!important;
  }
  .v76-nav .nav-links{
    min-width:0!important;
    justify-content:center!important;
    gap:clamp(14px,1.8vw,28px)!important;
  }
  .v76-nav .nav-links a{
    white-space:nowrap!important;
  }
  .v76-nav .menu-toggle{
    display:none!important;
  }

  /* Main desktop sections */
  .section,
  .v41-section{
    max-width:1440px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Favorites remain ordered and proportional */
  .v76-favorites{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:20px!important;
    align-items:stretch!important;
  }
  .v76-favorites .product-feature{
    min-width:0!important;
    width:100%!important;
    height:100%!important;
  }
  .v76-favorites .product-feature.big{
    grid-column:auto!important;
    grid-row:auto!important;
  }

  /* Search stays centered */
  .v76-search{
    width:min(760px,100%)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Product catalog grid */
  .v76-menu-grid{
    display:grid!important;
    align-items:stretch!important;
    width:100%!important;
  }
  .v76-menu-grid .menu-card{
    min-width:0!important;
    width:100%!important;
    max-width:none!important;
  }

  /* Product modal: stable centered desktop dialog */
  .v76-product-modal{
    padding:28px!important;
    place-items:center!important;
    overflow:hidden!important;
  }
  .v76-product-sheet{
    width:min(1060px,calc(100vw - 56px))!important;
    max-width:1060px!important;
    max-height:calc(100vh - 56px)!important;
    grid-template-columns:minmax(340px,42%) minmax(0,1fr)!important;
    border-radius:28px!important;
    overflow:hidden!important;
  }
  .v76-product-sheet #productArt{
    width:100%!important;
    min-height:560px!important;
    height:100%!important;
    max-height:none!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
  }
  .v76-product-sheet .product-sheet-copy{
    min-width:0!important;
    max-height:calc(100vh - 56px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:28px 30px 38px!important;
  }

  /* Cart is a contained desktop app panel, not a stretched mobile sheet */
  .v76-cart-modal{
    padding:24px!important;
    place-items:center!important;
    overflow:hidden!important;
  }
  .v76-cart-sheet{
    width:min(580px,calc(100vw - 48px))!important;
    max-width:580px!important;
    max-height:calc(100vh - 48px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    border-radius:28px!important;
    padding:24px!important;
    box-shadow:0 26px 80px rgba(0,0,0,.22)!important;
  }
  .v76-cart-sheet .v74-cart-card{
    width:100%!important;
    min-width:0!important;
  }
  .v76-cart-sheet .v74-card-bottom{
    grid-template-columns:auto auto minmax(92px,1fr)!important;
  }
  .v76-cart-sheet .v75-checkout{
    bottom:0!important;
  }

  /* Order modal stays centered and readable */
  .v76-order-modal{
    padding:28px!important;
    place-items:center!important;
    overflow:auto!important;
  }
  .v76-order-card{
    width:min(560px,calc(100vw - 56px))!important;
    max-width:560px!important;
    max-height:calc(100vh - 56px)!important;
    overflow-y:auto!important;
    border-radius:26px!important;
  }

  /* Floating tools never overlap the content column */
  .v76-floating-actions{
    right:22px!important;
    bottom:22px!important;
    max-width:320px!important;
    z-index:80!important;
  }
}

/* Laptop: 3-column catalog */
@media(min-width:960px) and (max-width:1279px){
  .v76-menu-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:18px!important;
  }
}

/* Large desktop: 4-column catalog */
@media(min-width:1280px){
  .v76-menu-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:22px!important;
  }
}

/* Small desktop/tablet web: avoid cramped 3-column cards */
@media(min-width:701px) and (max-width:959px){
  .v76-menu-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
  }
  .v76-favorites{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .v76-favorites .product-feature:last-child{
    grid-column:1/-1!important;
  }
  .v76-product-sheet{
    grid-template-columns:300px minmax(0,1fr)!important;
  }
  .v76-product-sheet #productArt{
    min-height:500px!important;
  }
}

/* Very important: keep native mobile/app layout below 700px */
@media(max-width:700px){
  .v76-nav,
  .v76-favorites,
  .v76-menu-grid,
  .v76-product-sheet,
  .v76-cart-sheet,
  .v76-order-card{
    /* no structural overrides here */
  }
}

/* =========================================================
   V77 — REPARACIÓN WEB REAL (desktop only)
   ========================================================= */

/* Modals must never leak into the page flow */
#productModal:not(.open),
#cartModal:not(.open),
#orderModal:not(.open),
#qrModal:not(.open){
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
#productModal.open,
#cartModal.open,
#orderModal.open,
#qrModal.open{
  visibility:visible!important;
  pointer-events:auto!important;
}
body.modal-open{overflow:hidden!important}

@media(min-width:701px){
  /* Desktop navigation */
  .v76-nav{
    min-height:82px!important;
    grid-template-columns:minmax(130px,170px) minmax(420px,1fr) auto auto!important;
    column-gap:18px!important;
  }
  .v76-nav .nav-links{overflow:visible!important}
  .v76-nav .nav-actions{display:flex!important;align-items:center!important;gap:10px!important}
  .v76-nav .lang-switch{flex:0 0 auto!important}

  /* Favorites: exactly three equal cards on normal desktop */
  .v77-favorites{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    align-items:stretch!important;
  }
  .v77-favorites>*{min-width:0!important}

  /* Catalog */
  .v77-menu-grid{grid-auto-rows:1fr!important}
  .v77-menu-grid .menu-card{
    display:flex!important;
    flex-direction:column!important;
    height:100%!important;
    overflow:hidden!important;
  }
  .v77-menu-grid .menu-card .menu-card-body{flex:1 1 auto!important}
  .v77-menu-grid .menu-card img{display:block!important;max-width:100%!important}

  /* Product modal */
  .v77-product-modal.open{
    display:grid!important;
    position:fixed!important;
    inset:0!important;
    z-index:1000!important;
    place-items:center!important;
    padding:24px!important;
    background:rgba(9,31,28,.55)!important;
    backdrop-filter:blur(8px)!important;
  }
  .v77-product-sheet{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(320px,40%) minmax(0,1fr)!important;
    width:min(1040px,calc(100vw - 48px))!important;
    max-height:calc(100vh - 48px)!important;
    margin:0!important;
    border-radius:28px!important;
    background:#fff8e8!important;
    overflow:hidden!important;
  }
  .v77-product-sheet .product-sheet-copy{
    min-width:0!important;
    max-height:calc(100vh - 48px)!important;
    overflow:auto!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable!important;
  }
  .v77-product-sheet #productArt{
    min-height:0!important;
    height:100%!important;
    max-height:calc(100vh - 48px)!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
    background-size:contain!important;
  }
  .v77-product-sheet .product-close{
    position:absolute!important;
    top:14px!important;
    right:14px!important;
    z-index:20!important;
  }

  /* Hide obsolete generic quantity block when multi-option selector is active.
     Simple products continue using their normal quantity control. */
  .v77-product-sheet:has(#productOptions:not(:empty)) #productQtyWrap,
  .v77-product-sheet:has(#productOptions:not(:empty)) .product-qty-wrap{
    display:none!important;
  }

  /* Cart */
  .v77-cart-modal.open{
    display:grid!important;
    position:fixed!important;
    inset:0!important;
    z-index:1100!important;
    place-items:center!important;
    padding:24px!important;
    background:rgba(9,31,28,.55)!important;
    backdrop-filter:blur(8px)!important;
  }
  .v77-cart-sheet{
    position:relative!important;
    width:min(590px,calc(100vw - 48px))!important;
    max-height:calc(100vh - 48px)!important;
    margin:0!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable!important;
    border-radius:28px!important;
  }
  .v77-cart-sheet .v74-card-top{grid-template-columns:82px minmax(0,1fr)!important}
  .v77-cart-sheet .v74-card-bottom{
    grid-template-columns:auto auto minmax(95px,1fr)!important;
    align-items:center!important;
  }

  /* Order modal */
  .v77-order-modal.open{
    display:grid!important;
    position:fixed!important;
    inset:0!important;
    z-index:1050!important;
    place-items:center!important;
    padding:24px!important;
    background:rgba(9,31,28,.55)!important;
    backdrop-filter:blur(8px)!important;
  }

  /* Floating desktop controls */
  .floating-actions{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    right:22px!important;
    bottom:22px!important;
  }
  .mobile-bottom-nav{display:none!important}
}

/* Tablet web */
@media(min-width:701px) and (max-width:980px){
  .v76-nav{
    grid-template-columns:auto 1fr auto!important;
  }
  .v76-nav .nav-links{display:none!important}
  .v76-nav .menu-toggle{display:grid!important}
  .v77-favorites{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .v77-favorites>*:last-child{grid-column:1/-1!important}
  .v77-product-sheet{grid-template-columns:290px minmax(0,1fr)!important}
}

/* Do not change the working app/mobile layout */
@media(max-width:700px){
  #productModal.open,
  #cartModal.open,
  #orderModal.open,
  #qrModal.open{
    visibility:visible!important;
    pointer-events:auto!important;
  }
}

/* =========================================================
   V78 — DESKTOP PROPORTION FIX
   IMPORTANT: only applies from 701px upward.
   Mobile <=700px is intentionally untouched.
   ========================================================= */

@media(min-width:701px){

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

  /* Main desktop sheet:
     compact, centered, image left / configuration right */
  .v78-product-sheet{
    width:min(1080px,calc(100vw - 72px))!important;
    max-width:1080px!important;
    height:min(760px,calc(100vh - 72px))!important;
    max-height:min(760px,calc(100vh - 72px))!important;
    min-height:560px!important;

    display:grid!important;
    grid-template-columns:minmax(360px,39%) minmax(0,61%)!important;
    grid-template-rows:1fr!important;

    margin:0!important;
    padding:0!important;
    border-radius:28px!important;
    overflow:hidden!important;

    background:#fff8e8!important;
    box-shadow:0 28px 90px rgba(0,0,0,.24)!important;
  }

  /* Image side */
  .v78-product-art{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;

    align-self:stretch!important;
    justify-self:stretch!important;

    background-color:#fff!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:center center!important;

    border-radius:0!important;
  }

  /* Configuration side */
  .v78-product-copy{
    width:100%!important;
    min-width:0!important;
    height:100%!important;
    max-height:none!important;

    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;

    padding:30px 32px 38px!important;
    scrollbar-width:thin!important;
    scrollbar-gutter:stable!important;
  }

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

  /* Product title area tighter */
  .v78-product-copy #productTag{
    margin-top:0!important;
  }

  .v78-product-copy #productName{
    margin-top:8px!important;
    margin-bottom:8px!important;
    font-size:32px!important;
    line-height:1!important;
  }

  .v78-product-copy #productDesc{
    margin-top:0!important;
    margin-bottom:10px!important;
    max-width:56ch!important;
  }

  .v78-product-copy #productPrice{
    display:block!important;
    margin-bottom:12px!important;
  }

  /* Options visible sooner */
  .v78-product-copy #v58OptionsTitle,
  .v78-product-copy #v71SimpleQtyTitle{
    margin-top:12px!important;
  }

  .v78-product-copy #sizeSelector{
    gap:8px!important;
  }

  .v78-product-copy .v72-choice-card{
    min-height:68px!important;
  }

  /* Per-unit customization more compact on desktop */
  .v78-product-copy #v66UnitCustomizer{
    gap:8px!important;
  }

  .v78-product-copy .v66-unit-card{
    padding:10px!important;
  }

  .v78-product-copy .v66-unit-toppings{
    gap:6px!important;
  }

  /* Summary + CTA */
  .v78-product-copy #v67OrderSummary{
    margin-top:12px!important;
  }

  .v78-product-copy .v58-buy-dock{
    position:sticky!important;
    bottom:-1px!important;
    z-index:30!important;

    margin-top:12px!important;
    padding-top:12px!important;

    background:
      linear-gradient(
        180deg,
        rgba(255,248,232,0),
        rgba(255,248,232,.96) 30%,
        #fff8e8 62%
      )!important;
  }

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

  /* Close button belongs to modal, not left edge */
  .v78-product-sheet .product-close{
    position:absolute!important;
    top:14px!important;
    right:14px!important;
    left:auto!important;
    z-index:40!important;
  }
}

/* Smaller laptops */
@media(min-width:701px) and (max-width:1100px){
  .v78-product-sheet{
    width:calc(100vw - 48px)!important;
    height:min(720px,calc(100vh - 48px))!important;
    max-height:min(720px,calc(100vh - 48px))!important;

    grid-template-columns:minmax(300px,38%) minmax(0,62%)!important;
  }

  .v78-product-copy{
    padding:26px 26px 34px!important;
  }

  .v78-product-copy #productName{
    font-size:29px!important;
  }
}

/* Wider desktops */
@media(min-width:1400px){
  .v78-product-sheet{
    width:1120px!important;
    max-width:1120px!important;
    height:760px!important;
    max-height:760px!important;
    grid-template-columns:420px minmax(0,1fr)!important;
  }
}

/* Absolutely no mobile overrides in V78 */

/* =========================================================
   V79 — DESKTOP FULL-SITE PROPORTION SYSTEM
   IMPORTANT:
   - Applies ONLY from 701px upward.
   - Mobile <=700px is intentionally untouched.
   ========================================================= */

@media(min-width:701px){

  /* ---------- Global desktop rhythm ---------- */
  html, body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  .v79-site{
    --v79-max:1440px;
    --v79-pad:clamp(24px,4vw,56px);
    --v79-gap:clamp(18px,2vw,28px);
  }

  .v79-section,
  .v79-site main > section{
    width:min(var(--v79-max),100%)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:var(--v79-pad)!important;
    padding-right:var(--v79-pad)!important;
  }

  /* ---------- Header / navigation ---------- */
  .v79-nav{
    min-height:78px!important;
    width:100%!important;
    padding-left:clamp(22px,3vw,48px)!important;
    padding-right:clamp(22px,3vw,48px)!important;
    display:grid!important;
    grid-template-columns:minmax(140px,180px) minmax(0,1fr) auto auto!important;
    align-items:center!important;
    gap:18px!important;
  }

  .v79-nav .brand{
    min-width:0!important;
  }

  .v79-nav .brand img{
    width:auto!important;
    max-width:150px!important;
    max-height:54px!important;
    object-fit:contain!important;
  }

  .v79-nav .nav-links{
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex-wrap:nowrap!important;
    gap:clamp(14px,1.8vw,28px)!important;
  }

  .v79-nav .nav-links a{
    white-space:nowrap!important;
    font-size:clamp(12px,1vw,14px)!important;
  }

  .v79-nav .menu-toggle{
    display:none!important;
  }

  /* ---------- Hero ---------- */
  .v79-hero{
    min-height:clamp(540px,68vh,760px)!important;
    height:auto!important;
    display:grid!important;
    align-items:center!important;
    overflow:hidden!important;
  }

  .v79-hero-inner{
    width:min(1320px,100%)!important;
    margin:0 auto!important;
    padding:clamp(48px,6vw,90px) var(--v79-pad)!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr)!important;
    gap:clamp(32px,5vw,72px)!important;
    align-items:center!important;
  }

  .v79-hero h1{
    font-size:clamp(48px,5.4vw,82px)!important;
    line-height:.95!important;
    max-width:10ch!important;
  }

  .v79-hero p{
    max-width:58ch!important;
    font-size:clamp(15px,1.15vw,18px)!important;
    line-height:1.6!important;
  }

  .v79-hero img,
  .v79-hero picture img{
    max-width:100%!important;
    max-height:560px!important;
    object-fit:contain!important;
  }

  /* ---------- Section titles / spacing ---------- */
  .v79-section{
    padding-top:clamp(52px,6vw,88px)!important;
    padding-bottom:clamp(52px,6vw,88px)!important;
  }

  .v79-section h2{
    font-size:clamp(34px,3.6vw,54px)!important;
    line-height:1!important;
  }

  .v79-section > p,
  .v79-section .section-copy{
    max-width:720px!important;
  }

  /* ---------- Favorites ---------- */
  .v79-favorites{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:22px!important;
    align-items:stretch!important;
  }

  .v79-feature-card{
    width:100%!important;
    min-width:0!important;
    height:100%!important;
    border-radius:24px!important;
    overflow:hidden!important;
  }

  .v79-feature-card.big{
    grid-column:auto!important;
    grid-row:auto!important;
  }

  .v79-feature-card img{
    width:100%!important;
    height:260px!important;
    object-fit:cover!important;
  }

  /* ---------- Search ---------- */
  .v79-search{
    width:min(760px,100%)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    margin-bottom:28px!important;
  }

  .v79-search input{
    min-height:54px!important;
    font-size:15px!important;
  }

  /* ---------- Product catalog ---------- */
  .v79-menu-grid{
    display:grid!important;
    grid-auto-rows:1fr!important;
    gap:22px!important;
    align-items:stretch!important;
  }

  .v79-menu-card{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:100%!important;
    display:flex!important;
    flex-direction:column!important;
    border-radius:22px!important;
    overflow:hidden!important;
  }

  .v79-menu-card .product-photo,
  .v79-menu-card img.product-photo{
    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;
  }

  .v79-menu-card h3{
    font-size:18px!important;
    line-height:1.15!important;
    margin-top:14px!important;
  }

  .v79-menu-card p{
    line-height:1.45!important;
  }

  .v79-menu-card .v51-cta,
  .v79-menu-card .v46-card-cta,
  .v79-menu-card .v32-cta,
  .v79-menu-card .product-open{
    margin-top:auto!important;
  }

  /* ---------- Gallery ---------- */
  .v79-gallery{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;
  }

  .v79-gallery img{
    width:100%!important;
    aspect-ratio:1/1!important;
    object-fit:cover!important;
    border-radius:18px!important;
  }

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

  .v79-product-sheet{
    width:min(1080px,calc(100vw - 72px))!important;
    max-width:1080px!important;
    height:min(760px,calc(100vh - 72px))!important;
    max-height:min(760px,calc(100vh - 72px))!important;
    min-height:560px!important;
    grid-template-columns:minmax(360px,39%) minmax(0,61%)!important;
    grid-template-rows:1fr!important;
    border-radius:28px!important;
    overflow:hidden!important;
  }

  .v79-product-sheet #productArt{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
  }

  .v79-product-sheet .product-sheet-copy{
    width:100%!important;
    min-width:0!important;
    height:100%!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:30px 32px 38px!important;
    scrollbar-gutter:stable!important;
  }

  /* ---------- Cart ---------- */
  .v79-cart-modal.open{
    display:grid!important;
    place-items:center!important;
    padding:24px!important;
    overflow:hidden!important;
  }

  .v79-cart-sheet{
    width:min(620px,calc(100vw - 48px))!important;
    max-width:620px!important;
    max-height:calc(100vh - 48px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    border-radius:28px!important;
    padding:24px!important;
    scrollbar-gutter:stable!important;
  }

  .v79-cart-sheet .v74-cart-card{
    width:100%!important;
    min-width:0!important;
  }

  .v79-cart-sheet .v74-card-top{
    grid-template-columns:84px minmax(0,1fr)!important;
  }

  .v79-cart-sheet .v74-card-bottom{
    grid-template-columns:auto auto minmax(100px,1fr)!important;
  }

  /* ---------- Order modal ---------- */
  .v79-order-modal.open{
    display:grid!important;
    place-items:center!important;
    padding:24px!important;
    overflow:auto!important;
  }

  .v79-order-card{
    width:min(560px,calc(100vw - 48px))!important;
    max-width:560px!important;
    max-height:calc(100vh - 48px)!important;
    overflow-y:auto!important;
    border-radius:26px!important;
  }

  /* ---------- Floating actions ---------- */
  .v79-floating-actions{
    right:22px!important;
    bottom:22px!important;
    max-width:320px!important;
    z-index:90!important;
    gap:8px!important;
  }

  /* ---------- Footer ---------- */
  .v79-footer{
    padding:54px var(--v79-pad) 42px!important;
  }

  .v79-footer > *{
    width:min(1320px,100%)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .v79-footer .footer-inner,
  .v79-footer .footer-grid{
    display:grid!important;
    grid-template-columns:minmax(180px,1fr) repeat(3,minmax(140px,.7fr))!important;
    gap:28px!important;
    align-items:start!important;
  }

  .v79-footer img{
    max-width:180px!important;
    height:auto!important;
  }
}

/* ---------- Tablet / small desktop ---------- */
@media(min-width:701px) and (max-width:959px){

  .v79-nav{
    grid-template-columns:auto 1fr auto!important;
  }

  .v79-nav .nav-links{
    display:none!important;
  }

  .v79-nav .menu-toggle{
    display:grid!important;
  }

  .v79-hero-inner{
    grid-template-columns:1fr!important;
    text-align:center!important;
  }

  .v79-hero h1,
  .v79-hero p{
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .v79-hero img,
  .v79-hero picture img{
    max-height:420px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

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

  .v79-favorites > *:last-child{
    grid-column:1/-1!important;
  }

  .v79-menu-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
  }

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

  .v79-product-sheet{
    width:calc(100vw - 48px)!important;
    height:min(720px,calc(100vh - 48px))!important;
    max-height:min(720px,calc(100vh - 48px))!important;
    grid-template-columns:minmax(300px,38%) minmax(0,62%)!important;
  }

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

/* ---------- Laptop ---------- */
@media(min-width:960px) and (max-width:1279px){

  .v79-menu-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:18px!important;
  }

  .v79-gallery{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

/* ---------- Large desktop ---------- */
@media(min-width:1280px){

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

  .v79-gallery{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}

/* =========================================================
   IMPORTANT: NO V79 RULES EXIST FOR <=700px
   Mobile/app behavior remains exactly inherited from V78.
   ========================================================= */

/* =========================================================
   V80 — DESKTOP PREMIUM POLISH
   ONLY >= 701px. Mobile is untouched.
   ========================================================= */
@media(min-width:701px){
  /* Header */
  .v80-nav{
    min-height:72px!important;
    padding-top:8px!important;padding-bottom:8px!important;
    background:rgba(255,248,232,.92)!important;
    backdrop-filter:blur(16px)!important;
    border-bottom:1px solid rgba(20,63,56,.065)!important;
  }
  .v80-nav .nav-links a{
    position:relative!important;
    font-weight:800!important;
    letter-spacing:.005em!important;
    transition:color .18s ease!important;
  }
  .v80-nav .nav-links a::after{
    content:""!important;position:absolute!important;left:50%!important;right:50%!important;bottom:-7px!important;height:2px!important;
    border-radius:999px!important;background:#24c9c3!important;transition:left .18s ease,right .18s ease!important;
  }
  .v80-nav .nav-links a:hover::after{left:0!important;right:0!important}

  /* Hero */
  .v80-hero{
    min-height:600px!important;
    max-height:760px!important;
  }
  .v80-hero-inner{
    width:min(1280px,100%)!important;
    grid-template-columns:minmax(0,1.02fr) minmax(380px,.98fr)!important;
    gap:clamp(42px,5vw,76px)!important;
  }
  .v80-hero h1{
    font-size:clamp(52px,5vw,76px)!important;
    line-height:.93!important;
    letter-spacing:-.055em!important;
  }
  .v80-hero p{font-size:16px!important;line-height:1.62!important}
  .v80-hero .hero-actions{gap:10px!important;margin-top:24px!important}
  .v80-hero .hero-actions a,.v80-hero .hero-actions button{
    min-height:48px!important;border-radius:14px!important;padding:0 18px!important;
  }

  /* Global section rhythm */
  .v79-section{
    padding-top:72px!important;
    padding-bottom:72px!important;
  }
  .v79-section h2{
    font-size:clamp(36px,3.2vw,50px)!important;
    letter-spacing:-.04em!important;
  }

  /* Search */
  .v80-search{
    width:min(720px,100%)!important;
    margin-bottom:30px!important;
  }
  .v80-search input{
    min-height:52px!important;
    border-radius:16px!important;
    box-shadow:0 7px 18px rgba(8,43,39,.045)!important;
  }

  /* Catalog cards */
  .v80-menu-grid{gap:20px!important}
  .v80-card{
    border:1px solid rgba(20,63,56,.075)!important;
    border-radius:22px!important;
    background:linear-gradient(145deg,#fff,#fbfdfc)!important;
    box-shadow:0 10px 25px rgba(8,43,39,.055)!important;
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important;
  }
  .v80-card .product-photo,.v80-card img.product-photo{
    height:220px!important;min-height:220px!important;max-height:220px!important;
    padding:12px!important;
    transition:transform .28s ease!important;
  }
  .v80-card h3{font-size:17px!important;letter-spacing:-.025em!important}
  .v80-card p{font-size:12px!important;color:#72807c!important}
  .v80-card:hover{
    transform:translateY(-5px)!important;
    border-color:rgba(36,201,195,.22)!important;
    box-shadow:0 18px 38px rgba(8,43,39,.085)!important;
  }
  .v80-card:hover .product-photo,.v80-card:hover img.product-photo{transform:scale(1.025)!important}
  .v80-card .product-open,.v80-card button{
    transition:transform .16s ease,box-shadow .16s ease!important;
  }

  /* Product selector internal rhythm */
  .v80-product-sheet .product-sheet-copy{padding:28px 30px 34px!important}
  .v80-product-sheet #productName{
    font-size:30px!important;letter-spacing:-.04em!important;margin-bottom:7px!important;
  }
  .v80-product-sheet #productDesc{font-size:12px!important;line-height:1.5!important}
  .v80-product-sheet .v72-choice-card{min-height:64px!important}
  .v80-product-sheet .v58-buy-dock{
    box-shadow:0 -10px 24px rgba(255,248,232,.92)!important;
  }

  /* Cart: desktop-native proportions */
  .v80-cart-sheet{
    width:min(660px,calc(100vw - 56px))!important;
    max-width:660px!important;
    padding:26px!important;
  }
  .v80-cart-sheet .v74-cart-card{padding:14px!important}
  .v80-cart-sheet .v74-card-top{grid-template-columns:88px minmax(0,1fr)!important}
  .v80-cart-sheet .v74-product-art{
    width:88px!important;height:88px!important;min-width:88px!important;
  }
  .v80-cart-sheet .v74-product-name{font-size:15px!important}
  .v80-cart-sheet .v75-cart-summary{
    margin-top:20px!important;padding:16px 18px!important;
  }
  .v80-cart-sheet .v75-checkout{
    min-height:58px!important;
    font-size:12px!important;
  }

  /* Footer */
  .v80-footer{
    padding-top:48px!important;
    padding-bottom:34px!important;
    border-top:1px solid rgba(20,63,56,.065)!important;
  }
  .v80-footer .footer-inner,.v80-footer .footer-grid{
    gap:34px!important;
  }
  .v80-footer a{
    transition:opacity .16s ease!important;
  }
  .v80-footer a:hover{opacity:.68!important}

  /* Consistent desktop interactive feel */
  button,a,[role="button"]{
    -webkit-tap-highlight-color:transparent;
  }
  button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{
    outline:3px solid rgba(36,201,195,.20)!important;
    outline-offset:2px!important;
  }
}
@media(min-width:701px) and (max-width:959px){
  .v80-hero{max-height:none!important}
  .v80-hero-inner{grid-template-columns:1fr!important}
  .v80-card .product-photo,.v80-card img.product-photo{
    height:210px!important;min-height:210px!important;max-height:210px!important;
  }
}
@media(min-width:1280px){
  .v80-menu-grid{gap:22px!important}
  .v80-card .product-photo,.v80-card img.product-photo{
    height:230px!important;min-height:230px!important;max-height:230px!important;
  }
}
/* No V80 styles below 701px */

/* =========================================================
   V81 — UX DESKTOP FINAL
   ONLY >=701px. Mobile is untouched.
   ========================================================= */

@media(min-width:701px){

  /* Sticky header with compact state */
  .v81-nav{
    position:sticky!important;
    top:0!important;
    z-index:150!important;
    transition:
      min-height .2s ease,
      padding .2s ease,
      box-shadow .2s ease,
      background .2s ease!important;
  }
  .v81-nav.v81-nav-compact{
    min-height:62px!important;
    padding-top:4px!important;
    padding-bottom:4px!important;
    background:rgba(255,248,232,.96)!important;
    box-shadow:0 8px 24px rgba(8,43,39,.065)!important;
  }
  .v81-nav.v81-nav-compact .brand img{
    max-height:46px!important;
  }

  /* Product cards: consistent image footprint */
  .v81-card{
    isolation:isolate!important;
  }
  .v81-card .product-photo,
  .v81-card img.product-photo{
    width:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#fff!important;
    padding:14px!important;
  }
  .v81-card .price,
  .v81-card strong{
    font-variant-numeric:tabular-nums!important;
  }

  /* Search feels like a desktop marketplace control */
  .v81-search{
    position:relative!important;
  }
  .v81-search input{
    padding-left:48px!important;
    padding-right:48px!important;
  }

  /* Product selector hierarchy */
  .v81-product-sheet{
    border:1px solid rgba(20,63,56,.07)!important;
  }
  .v81-product-copy{
    scroll-behavior:smooth!important;
  }
  .v81-product-copy #productTag{
    font-size:9px!important;
    letter-spacing:.16em!important;
  }
  .v81-product-copy #productName{
    color:#143f38!important;
  }
  .v81-product-copy #productPrice{
    font-variant-numeric:tabular-nums!important;
  }
  .v81-product-copy .v72-choice-card{
    cursor:pointer!important;
  }
  .v81-product-copy .v72-choice-card:hover{
    border-color:rgba(36,201,195,.30)!important;
  }
  .v81-product-copy .v67-order-summary{
    border:1px solid rgba(20,63,56,.08)!important;
  }

  /* CTA stays visually anchored */
  .v81-product-copy .add-cart{
    min-height:56px!important;
    letter-spacing:.005em!important;
    position:sticky!important;
    bottom:0!important;
  }
  .v81-product-copy .add-cart.v81-cta-confirm{
    animation:v81CtaConfirm .48s ease!important;
  }

  /* Cart: clearer hierarchy */
  .v81-cart-sheet{
    scroll-behavior:smooth!important;
  }
  .v81-cart-sheet .v74-cart-card{
    border:1px solid rgba(20,63,56,.075)!important;
  }
  .v81-cart-sheet .v74-product-name{
    font-size:15px!important;
    line-height:1.1!important;
  }
  .v81-cart-sheet .v74-chip{
    min-height:24px!important;
  }
  .v81-cart-sheet .v74-qty-control{
    min-width:96px!important;
  }
  .v81-cart-sheet .v74-subtotal strong{
    font-variant-numeric:tabular-nums!important;
  }

  .v81-checkout{
    position:sticky!important;
    bottom:0!important;
    z-index:20!important;
    box-shadow:0 14px 30px rgba(8,43,39,.20)!important;
  }

  /* Desktop focus accessibility */
  .v81-product-sheet button:focus-visible,
  .v81-cart-sheet button:focus-visible,
  .v81-product-sheet input:focus-visible,
  .v81-cart-sheet input:focus-visible,
  .v81-cart-sheet textarea:focus-visible{
    outline:3px solid rgba(36,201,195,.22)!important;
    outline-offset:2px!important;
  }

  /* Micro interactions */
  .v81-step-pop{
    animation:v81StepPop .24s ease!important;
  }

  @keyframes v81StepPop{
    0%,100%{transform:translateY(0) scale(1)}
    50%{transform:translateY(-1px) scale(1.01)}
  }

  @keyframes v81CtaConfirm{
    0%,100%{transform:scale(1)}
    35%{transform:scale(.985)}
    70%{transform:scale(1.012)}
  }
}

/* Laptop refinement */
@media(min-width:701px) and (max-width:1100px){
  .v81-product-copy .v72-choice-card{
    min-height:62px!important;
  }
  .v81-cart-sheet{
    width:min(620px,calc(100vw - 40px))!important;
  }
}

/* Large desktop clamp */
@media(min-width:1440px){
  .v81-search{max-width:720px!important}
  .v81-cart-sheet{max-width:660px!important}
}

/* No V81 CSS below 701px */

/* =========================================================
   V82 — TARJETAS DESKTOP PREMIUM
   ONLY >=701px. Mobile untouched.
   ========================================================= */
@media(min-width:701px){
  .v79-menu-grid,.v80-menu-grid{
    align-items:stretch!important;
    grid-auto-rows:1fr!important;
  }

  .v82-card{
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    height:100%!important;
    min-height:410px!important;
    overflow:hidden!important;

    border:1px solid rgba(20,63,56,.10)!important;
    border-radius:24px!important;
    background:
      linear-gradient(180deg,#fffdf8 0%,#fff 38%,#fffaf0 100%)!important;
    box-shadow:
      0 12px 28px rgba(8,43,39,.07),
      inset 0 1px 0 rgba(255,255,255,.95)!important;

    transition:
      transform .20s ease,
      box-shadow .20s ease,
      border-color .20s ease!important;
  }

  .v82-card::before{
    content:""!important;
    position:absolute!important;
    top:0!important;
    left:0!important;
    right:0!important;
    height:4px!important;
    background:linear-gradient(90deg,#24c9c3,#f05a87)!important;
    opacity:.85!important;
  }

  .v82-card::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    pointer-events:none!important;
    background:
      radial-gradient(circle at 90% 10%,rgba(36,201,195,.045),transparent 26%),
      radial-gradient(circle at 8% 90%,rgba(240,90,135,.035),transparent 24%)!important;
  }

  .v82-card-img{
    position:relative!important;
    z-index:1!important;
    width:calc(100% - 24px)!important;
    height:210px!important;
    min-height:210px!important;
    max-height:210px!important;
    margin:12px 12px 0!important;
    padding:18px!important;

    object-fit:contain!important;
    object-position:center!important;

    border:1px solid rgba(20,63,56,.07)!important;
    border-radius:19px!important;
    background:
      linear-gradient(145deg,#fff,#f6faf8)!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.95),
      0 8px 18px rgba(8,43,39,.055)!important;

    transition:transform .26s ease!important;
  }

  .v82-card .menu-card-body,
  .v82-card .card-body{
    position:relative!important;
    z-index:2!important;
    display:flex!important;
    flex-direction:column!important;
    flex:1 1 auto!important;
    min-height:0!important;
    padding:16px 18px 18px!important;
  }

  .v82-card h3{
    margin:0 0 7px!important;
    color:#143f38!important;
    font-size:18px!important;
    line-height:1.12!important;
    font-weight:950!important;
    letter-spacing:-.025em!important;
  }

  .v82-card p{
    margin:0 0 14px!important;
    color:#596966!important;
    font-size:12px!important;
    line-height:1.45!important;
  }

  .v82-card strong,
  .v82-card .price{
    margin-top:auto!important;
    margin-bottom:14px!important;
    color:#111!important;
    font-size:22px!important;
    font-weight:950!important;
    letter-spacing:-.03em!important;
    font-variant-numeric:tabular-nums!important;
  }

  .v82-card .product-open,
  .v82-card .v51-cta,
  .v82-card .v46-card-cta,
  .v82-card .v32-cta{
    position:relative!important;
    z-index:2!important;
    width:100%!important;
    min-height:48px!important;
    margin-top:auto!important;
    border:0!important;
    border-radius:15px!important;
    background:linear-gradient(135deg,#143f38,#0d322d)!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:950!important;
    box-shadow:0 9px 20px rgba(8,43,39,.16)!important;
    transition:transform .16s ease,box-shadow .16s ease,filter .16s ease!important;
  }

  .v82-card .product-open::after,
  .v82-card .v51-cta::after,
  .v82-card .v46-card-cta::after,
  .v82-card .v32-cta::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,#24c9c3,#f05a87)!important;
  }

  .v82-card .badge,
  .v82-card .favorite,
  .v82-card .tag,
  .v82-card [class*="badge"]{
    border-radius:999px!important;
    background:rgba(255,255,255,.9)!important;
    color:#143f38!important;
    border:1px solid rgba(20,63,56,.08)!important;
    box-shadow:0 5px 12px rgba(8,43,39,.05)!important;
    font-weight:900!important;
  }

  .v82-card:hover{
    transform:translateY(-4px)!important;
    border-color:rgba(36,201,195,.28)!important;
    box-shadow:
      0 20px 42px rgba(8,43,39,.10),
      0 0 0 3px rgba(36,201,195,.035)!important;
  }

  .v82-card:hover .v82-card-img{
    transform:scale(1.035)!important;
  }

  .v82-card:hover .product-open,
  .v82-card:hover .v51-cta,
  .v82-card:hover .v46-card-cta,
  .v82-card:hover .v32-cta{
    transform:translateY(-1px)!important;
    box-shadow:0 12px 24px rgba(8,43,39,.20)!important;
  }

  .v82-card .product-open:active,
  .v82-card .v51-cta:active,
  .v82-card .v46-card-cta:active,
  .v82-card .v32-cta:active{
    transform:scale(.985)!important;
  }

  /* Force equal inner spacing regardless of description length */
  .v82-card > *{
    min-width:0!important;
  }
}

@media(min-width:701px) and (max-width:959px){
  .v82-card{min-height:390px!important}
  .v82-card-img{
    height:195px!important;
    min-height:195px!important;
    max-height:195px!important;
  }
}

@media(min-width:1280px){
  .v82-card{min-height:420px!important}
  .v82-card-img{
    height:220px!important;
    min-height:220px!important;
    max-height:220px!important;
  }
}

/* No V82 styles under 701px */

/* =========================================================
   V83 — REPARACIÓN TARJETAS DESKTOP
   Corrige la tarjeta de Chicha y uniforma TODAS las tarjetas.
   ONLY >=701px. Mobile untouched.
   ========================================================= */

@media(min-width:701px){

  /* Grid should size rows naturally, not stretch one card across rows */
  .v79-menu-grid,
  .v80-menu-grid,
  #menuGrid{
    grid-auto-rows:auto!important;
    align-items:start!important;
  }

  /* Every product card uses one fixed desktop component height */
  .v83-card{
    position:relative!important;
    display:grid!important;
    grid-template-rows:220px auto 1fr auto auto!important;
    align-content:start!important;
    width:100%!important;
    height:430px!important;
    min-height:430px!important;
    max-height:430px!important;
    overflow:hidden!important;
    margin:0!important;
  }

  /* Critical: cancel legacy spans/special grid sizing */
  .v83-card,
  .v83-card.big,
  .v83-card.featured,
  .v83-card-chicha{
    grid-row:auto!important;
    grid-column:auto!important;
    align-self:start!important;
  }

  /* Image region */
  .v83-card .product-photo,
  .v83-card img.product-photo{
    grid-row:1!important;
    width:calc(100% - 24px)!important;
    height:208px!important;
    min-height:208px!important;
    max-height:208px!important;
    margin:12px 12px 0!important;
    padding:14px!important;
    object-fit:contain!important;
    object-position:center!important;
  }

  /* Normalize body regardless of old nested wrappers */
  .v83-card .menu-card-body,
  .v83-card .card-body{
    display:contents!important;
  }

  /* Product title */
  .v83-card h3{
    grid-row:2!important;
    align-self:start!important;
    margin:14px 18px 6px!important;
    padding:0!important;
    min-height:22px!important;
    max-height:42px!important;
    overflow:hidden!important;
    text-align:center!important;
  }

  /* Description */
  .v83-card p{
    grid-row:3!important;
    align-self:start!important;
    margin:0 18px!important;
    padding:0!important;
    max-height:52px!important;
    overflow:hidden!important;
    text-align:center!important;
  }

  /* Price */
  .v83-card > strong,
  .v83-card .price,
  .v83-card .menu-price{
    grid-row:4!important;
    align-self:end!important;
    justify-self:center!important;
    margin:12px 18px 10px!important;
    padding:0!important;
    font-size:20px!important;
    line-height:1!important;
  }

  /* Button */
  .v83-card .product-open,
  .v83-card .v51-cta,
  .v83-card .v46-card-cta,
  .v83-card .v32-cta{
    grid-row:5!important;
    align-self:end!important;
    width:calc(100% - 32px)!important;
    min-height:46px!important;
    margin:0 16px 16px!important;
  }

  /* Chicha must behave exactly like every other card */
  .v83-card-chicha{
    height:430px!important;
    min-height:430px!important;
    max-height:430px!important;
  }

  .v83-card-chicha .product-photo,
  .v83-card-chicha img.product-photo{
    height:208px!important;
    min-height:208px!important;
    max-height:208px!important;
  }

  /* Prevent old "from price" or special content from forcing stretch */
  .v83-card-chicha [class*="from"],
  .v83-card-chicha [class*="starting"],
  .v83-card-chicha [class*="price"]{
    min-height:0!important;
  }

  /* Make all columns line up */
  .v83-card:nth-child(n){
    justify-self:stretch!important;
  }
}

/* Medium desktop/tablet web */
@media(min-width:701px) and (max-width:959px){
  .v83-card{
    height:410px!important;
    min-height:410px!important;
    max-height:410px!important;
    grid-template-rows:200px auto 1fr auto auto!important;
  }

  .v83-card .product-photo,
  .v83-card img.product-photo{
    height:188px!important;
    min-height:188px!important;
    max-height:188px!important;
  }

  .v83-card-chicha{
    height:410px!important;
    min-height:410px!important;
    max-height:410px!important;
  }
}

/* Large desktop */
@media(min-width:1280px){
  .v83-card{
    height:440px!important;
    min-height:440px!important;
    max-height:440px!important;
    grid-template-rows:225px auto 1fr auto auto!important;
  }

  .v83-card .product-photo,
  .v83-card img.product-photo{
    height:213px!important;
    min-height:213px!important;
    max-height:213px!important;
  }

  .v83-card-chicha{
    height:440px!important;
    min-height:440px!important;
    max-height:440px!important;
  }
}

/* NO V83 STYLES BELOW 701px */

/* =========================================================
   V84 — DESKTOP GRID ALIGNMENT
   Fixes Chicha special spanning and aligns all 17 cards.
   ONLY >=701px. Mobile untouched.
   ========================================================= */

@media(min-width:701px){

  /* One consistent catalog grid */
  .v84-menu-grid{
    display:grid!important;
    grid-auto-flow:row!important;
    grid-auto-rows:auto!important;
    align-items:start!important;
    justify-items:stretch!important;
  }

  /* Kill ALL legacy featured/span behavior on catalog cards */
  .v84-menu-grid > .v84-card,
  .v84-menu-grid > .v84-card.big,
  .v84-menu-grid > .v84-card.featured,
  .v84-menu-grid > .v84-card.hero-card,
  .v84-menu-grid > .v84-card[data-product="chicha"],
  .v84-chicha-card{
    grid-column:auto!important;
    grid-row:auto!important;
    grid-area:auto!important;
    align-self:start!important;
    justify-self:stretch!important;

    width:100%!important;
    min-width:0!important;
    max-width:none!important;

    height:430px!important;
    min-height:430px!important;
    max-height:430px!important;
  }

  /* Chicha uses same internal layout as every other card */
  .v84-chicha-card{
    display:grid!important;
    grid-template-rows:208px auto 1fr auto auto!important;
    align-content:start!important;
    overflow:hidden!important;
  }

  .v84-chicha-card .product-photo,
  .v84-chicha-card img.product-photo{
    grid-row:1!important;
    width:calc(100% - 24px)!important;
    height:196px!important;
    min-height:196px!important;
    max-height:196px!important;
    margin:12px 12px 0!important;
    padding:14px!important;
    object-fit:contain!important;
    object-position:center!important;
  }

  .v84-chicha-card .menu-card-body,
  .v84-chicha-card .card-body{
    display:contents!important;
  }

  .v84-chicha-card h3{
    grid-row:2!important;
    margin:14px 18px 6px!important;
    min-height:22px!important;
    max-height:42px!important;
    overflow:hidden!important;
    text-align:center!important;
  }

  .v84-chicha-card p{
    grid-row:3!important;
    align-self:start!important;
    margin:0 18px!important;
    max-height:52px!important;
    overflow:hidden!important;
    text-align:center!important;
  }

  .v84-chicha-card > strong,
  .v84-chicha-card .price,
  .v84-chicha-card .menu-price{
    grid-row:4!important;
    align-self:end!important;
    justify-self:center!important;
    margin:12px 18px 10px!important;
    font-size:20px!important;
    line-height:1!important;
  }

  .v84-chicha-card .product-open,
  .v84-chicha-card .v51-cta,
  .v84-chicha-card .v46-card-cta,
  .v84-chicha-card .v32-cta{
    grid-row:5!important;
    align-self:end!important;
    width:calc(100% - 32px)!important;
    min-height:46px!important;
    margin:0 16px 16px!important;
  }

  /* Any nested legacy wrappers must not create height */
  .v84-chicha-card [class*="feature"],
  .v84-chicha-card [class*="highlight"],
  .v84-chicha-card [class*="special"]{
    min-height:0!important;
    max-height:none!important;
  }
}

@media(min-width:701px) and (max-width:959px){
  .v84-menu-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
  }

  .v84-menu-grid > .v84-card,
  .v84-chicha-card{
    height:410px!important;
    min-height:410px!important;
    max-height:410px!important;
  }

  .v84-chicha-card{
    grid-template-rows:188px auto 1fr auto auto!important;
  }

  .v84-chicha-card .product-photo,
  .v84-chicha-card img.product-photo{
    height:176px!important;
    min-height:176px!important;
    max-height:176px!important;
  }
}

@media(min-width:960px) and (max-width:1279px){
  .v84-menu-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:18px!important;
  }
}

@media(min-width:1280px){
  .v84-menu-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:22px!important;
  }

  .v84-menu-grid > .v84-card,
  .v84-chicha-card{
    height:440px!important;
    min-height:440px!important;
    max-height:440px!important;
  }

  .v84-chicha-card{
    grid-template-rows:213px auto 1fr auto auto!important;
  }

  .v84-chicha-card .product-photo,
  .v84-chicha-card img.product-photo{
    height:201px!important;
    min-height:201px!important;
    max-height:201px!important;
  }
}

/* NO V84 STYLES BELOW 701px */

/* =========================================================
   V85 — HERO VENEZUELA / DESKTOP ONLY
   Mobile <=700px remains visually unchanged.
   ========================================================= */
@media(min-width:701px){
  .v85-hero{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(420px,48%) minmax(0,52%)!important;
    align-items:center!important;
    width:100%!important;
    min-height:560px!important;
    height:min(68vh,680px)!important;
    max-height:680px!important;
    padding:0!important;
    overflow:hidden!important;
    background:
      radial-gradient(circle at 22% 52%,rgba(36,201,195,.10),transparent 30%),
      radial-gradient(circle at 82% 24%,rgba(240,90,135,.08),transparent 25%),
      linear-gradient(110deg,#020303 0%,#07110f 54%,#061814 100%)!important;
    isolation:isolate!important;
  }

  .v85-hero::after{
    content:""!important;
    position:absolute!important;
    left:0!important;right:0!important;bottom:0!important;
    height:7px!important;
    background:linear-gradient(90deg,#24c9c3 0 35%,#f05a87 35% 68%,#f4d329 68% 100%)!important;
    z-index:8!important;
  }

  .v85-hero-product{
    position:relative!important;
    z-index:4!important;
    grid-column:1!important;
    width:100%!important;
    height:100%!important;
    min-height:560px!important;
    max-height:680px!important;
    object-fit:cover!important;
    object-position:center 58%!important;
    margin:0!important;
    filter:saturate(1.04) contrast(1.03)!important;
    -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 74%,rgba(0,0,0,.65) 88%,transparent 100%)!important;
    mask-image:linear-gradient(90deg,#000 0%,#000 74%,rgba(0,0,0,.65) 88%,transparent 100%)!important;
  }

  .v85-hero-copy{
    position:relative!important;
    z-index:6!important;
    grid-column:2!important;
    width:min(600px,calc(100% - 48px))!important;
    padding:54px 40px 54px 18px!important;
    color:#fff!important;
  }

  .v85-kicker{
    display:inline-flex!important;
    align-items:center!important;
    gap:9px!important;
    margin-bottom:18px!important;
    color:#7be3dc!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.17em!important;
  }
  .v85-kicker::before{
    content:""!important;
    width:34px!important;height:2px!important;
    background:#f4d329!important;
    border-radius:999px!important;
  }

  .v85-hero-copy h1{
    margin:0!important;
    max-width:9ch!important;
    color:#fff!important;
    font-size:clamp(48px,5vw,76px)!important;
    line-height:.91!important;
    letter-spacing:-.06em!important;
    font-weight:950!important;
  }
  .v85-hero-copy h1 em{
    color:#f6d52f!important;
    font-style:normal!important;
    position:relative!important;
  }

  .v85-hero-copy p{
    max-width:510px!important;
    margin:22px 0 0!important;
    color:rgba(255,255,255,.72)!important;
    font-size:15px!important;
    line-height:1.65!important;
  }

  .v85-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:10px!important;
    margin-top:28px!important;
  }
  .v85-btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:16px!important;
    min-height:50px!important;
    padding:0 20px!important;
    border-radius:14px!important;
    border:1px solid transparent!important;
    font-size:12px!important;
    font-weight:950!important;
    text-decoration:none!important;
    cursor:pointer!important;
    transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important;
  }
  .v85-btn-primary{
    background:#f05a87!important;
    color:#fff!important;
    box-shadow:0 12px 28px rgba(240,90,135,.20)!important;
  }
  .v85-btn-ghost{
    background:rgba(255,255,255,.07)!important;
    color:#fff!important;
    border-color:rgba(255,255,255,.15)!important;
    backdrop-filter:blur(8px)!important;
  }
  .v85-btn:hover{transform:translateY(-2px)!important}

  .v85-signature{
    display:block!important;
    margin-top:22px!important;
    color:rgba(255,255,255,.38)!important;
    font-size:10px!important;
    font-weight:850!important;
    letter-spacing:.14em!important;
    text-transform:uppercase!important;
  }

  .v85-flag-brush{
    position:absolute!important;
    z-index:2!important;
    right:-42px!important;
    top:50%!important;
    width:min(58vw,790px)!important;
    height:auto!important;
    transform:translateY(-50%) rotate(-4deg)!important;
    opacity:.30!important;
    mix-blend-mode:screen!important;
    pointer-events:none!important;
    user-select:none!important;
    filter:saturate(1.1) drop-shadow(0 16px 34px rgba(0,0,0,.25))!important;
  }
}

@media(min-width:701px) and (max-width:980px){
  .v85-hero{
    grid-template-columns:44% 56%!important;
    min-height:520px!important;
    height:600px!important;
  }
  .v85-hero-product{min-height:520px!important;height:600px!important}
  .v85-hero-copy{padding-right:28px!important}
  .v85-hero-copy h1{font-size:46px!important}
  .v85-flag-brush{width:68vw!important;right:-110px!important}
}

@media(min-width:1400px){
  .v85-hero{
    grid-template-columns:minmax(520px,46%) minmax(0,54%)!important;
    height:660px!important;
  }
  .v85-hero-copy{padding-left:42px!important}
}

/* Explicitly preserve mobile hero from prior version */
@media(max-width:700px){
  .v85-hero-copy,
  .v85-flag-brush{display:none!important}
}

@media(min-width:701px){
.v86-hero{position:relative!important;isolation:isolate!important;display:grid!important;grid-template-columns:minmax(390px,45%) minmax(0,55%)!important;align-items:center!important;width:100%!important;min-height:560px!important;height:620px!important;max-height:620px!important;padding:0!important;overflow:hidden!important;background:radial-gradient(circle at 30% 45%,rgba(36,201,195,.08),transparent 32%),radial-gradient(circle at 78% 25%,rgba(240,90,135,.07),transparent 26%),linear-gradient(105deg,#020303 0%,#06110f 54%,#081511 100%)!important}
.v86-hero::after{content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:0!important;height:5px!important;z-index:15!important;background:linear-gradient(90deg,#f6d52f 0 33.33%,#1647a5 33.33% 66.66%,#d6283f 66.66% 100%)!important}
.v86-hero-product{position:relative!important;z-index:5!important;grid-column:1!important;width:100%!important;height:620px!important;min-height:620px!important;max-height:620px!important;margin:0!important;padding:0!important;object-fit:cover!important;object-position:center 52%!important;filter:saturate(1.04) contrast(1.04)!important;-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 80%,rgba(0,0,0,.78) 90%,transparent 100%)!important;mask-image:linear-gradient(90deg,#000 0%,#000 80%,rgba(0,0,0,.78) 90%,transparent 100%)!important}
.v86-flag-brush{position:absolute!important;z-index:2!important;right:-30px!important;top:48%!important;width:min(49vw,650px)!important;height:auto!important;max-height:430px!important;transform:translateY(-50%) rotate(-3deg)!important;opacity:.16!important;mix-blend-mode:screen!important;filter:saturate(1.12) contrast(1.05)!important;pointer-events:none!important;user-select:none!important;border-radius:18px!important;-webkit-mask-image:radial-gradient(ellipse at center,#000 48%,rgba(0,0,0,.82) 67%,transparent 88%)!important;mask-image:radial-gradient(ellipse at center,#000 48%,rgba(0,0,0,.82) 67%,transparent 88%)!important}
.v86-hero-copy{position:relative!important;z-index:10!important;grid-column:2!important;width:min(620px,calc(100% - 54px))!important;margin:0!important;padding:46px 44px 48px 30px!important;color:#fff!important}
.v86-kicker{display:inline-flex!important;align-items:center!important;gap:10px!important;margin:0 0 18px!important;color:#6fe0d8!important;font-size:11px!important;font-weight:950!important;letter-spacing:.17em!important;line-height:1!important}.v86-kicker::before{content:""!important;width:34px!important;height:2px!important;border-radius:999px!important;background:#f6d52f!important}
.v86-hero-copy h1{margin:0!important;max-width:9.5ch!important;color:#fff!important;font-size:clamp(52px,5vw,76px)!important;line-height:.90!important;letter-spacing:-.055em!important;font-weight:950!important;text-shadow:0 8px 30px rgba(0,0,0,.22)!important}.v86-hero-copy h1 em{display:inline-block!important;color:#f05a87!important;font-style:normal!important}
.v86-hero-copy p{max-width:510px!important;margin:23px 0 0!important;color:rgba(255,255,255,.76)!important;font-size:15px!important;line-height:1.65!important}
.v86-actions{display:flex!important;flex-wrap:wrap!important;gap:11px!important;margin-top:28px!important}.v86-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:18px!important;min-width:145px!important;min-height:50px!important;padding:0 20px!important;border-radius:14px!important;text-decoration:none!important;font-size:12px!important;font-weight:950!important;line-height:1!important;cursor:pointer!important;transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important}
.v86-btn-primary{border:1px solid #f05a87!important;background:linear-gradient(135deg,#f05a87,#e74878)!important;color:#fff!important;box-shadow:0 12px 28px rgba(240,90,135,.22)!important}.v86-btn-secondary{border:1px solid rgba(255,255,255,.18)!important;background:rgba(255,255,255,.08)!important;color:#fff!important;backdrop-filter:blur(10px)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important}.v86-btn:hover{transform:translateY(-2px)!important}.v86-btn-primary:hover{box-shadow:0 16px 32px rgba(240,90,135,.28)!important}.v86-btn-secondary:hover{background:rgba(255,255,255,.12)!important}
.v86-signature{display:block!important;margin-top:22px!important;color:rgba(255,255,255,.42)!important;font-size:10px!important;font-weight:850!important;letter-spacing:.14em!important;text-transform:uppercase!important}
}
@media(min-width:701px) and (max-width:980px){.v86-hero{grid-template-columns:43% 57%!important;height:570px!important;min-height:570px!important}.v86-hero-product{height:570px!important;min-height:570px!important;max-height:570px!important}.v86-hero-copy{width:calc(100% - 30px)!important;padding:40px 24px 42px 20px!important}.v86-hero-copy h1{font-size:46px!important}.v86-hero-copy p{font-size:13px!important}.v86-flag-brush{width:56vw!important;right:-100px!important}}
@media(min-width:1400px){.v86-hero{grid-template-columns:46% 54%!important;height:640px!important;max-height:640px!important}.v86-hero-product{height:640px!important;min-height:640px!important;max-height:640px!important}.v86-hero-copy{padding-left:46px!important}.v86-flag-brush{width:620px!important;right:30px!important}}
@media(max-width:700px){.v86-hero-copy,.v86-flag-brush{display:none!important}}

/* =========================================================
   V87 — HERO / BANDERA A LA DERECHA
   Desktop only. Mobile <=700px untouched.
   ========================================================= */
@media(min-width:701px){

  .v87-hero{
    grid-template-columns:minmax(390px,45%) minmax(0,55%)!important;
    height:620px!important;
    min-height:620px!important;
    max-height:620px!important;
    overflow:hidden!important;
  }

  /* Left image */
  .v87-hero-product{
    grid-column:1!important;
    z-index:5!important;
    width:100%!important;
    height:620px!important;
    min-height:620px!important;
    max-height:620px!important;
    object-fit:cover!important;
    object-position:center 52%!important;
  }

  /* Right composition container */
  .v87-hero-copy{
    grid-column:2!important;
    position:relative!important;
    z-index:10!important;
    width:min(620px,calc(100% - 56px))!important;
    margin:0 auto!important;
    padding:38px 38px 42px!important;
    border-radius:28px!important;
    background:linear-gradient(
      135deg,
      rgba(5,18,16,.76),
      rgba(5,18,16,.50)
    )!important;
    border:1px solid rgba(255,255,255,.06)!important;
    box-shadow:
      0 24px 60px rgba(0,0,0,.18),
      inset 0 1px 0 rgba(255,255,255,.04)!important;
    backdrop-filter:blur(4px)!important;
  }

  /* Painted flag now belongs to the right/text side */
  .v87-flag-brush{
    position:absolute!important;
    z-index:3!important;
    right:3.5%!important;
    top:50%!important;
    width:min(48vw,690px)!important;
    height:auto!important;
    max-height:480px!important;
    transform:translateY(-50%) rotate(-4deg)!important;
    opacity:.26!important;
    mix-blend-mode:screen!important;
    pointer-events:none!important;
    user-select:none!important;
    border-radius:24px!important;
    filter:saturate(1.12) contrast(1.07) drop-shadow(0 18px 40px rgba(0,0,0,.20))!important;
    -webkit-mask-image:radial-gradient(ellipse at center,#000 44%,rgba(0,0,0,.86) 66%,transparent 89%)!important;
    mask-image:radial-gradient(ellipse at center,#000 44%,rgba(0,0,0,.86) 66%,transparent 89%)!important;
  }

  /* Stronger readable hierarchy */
  .v87-hero-copy .v86-kicker{
    position:relative!important;
    z-index:2!important;
    margin-bottom:18px!important;
    color:#74e2da!important;
    text-shadow:0 2px 14px rgba(0,0,0,.4)!important;
  }

  .v87-hero-copy h1{
    position:relative!important;
    z-index:2!important;
    max-width:8.8ch!important;
    font-size:clamp(50px,4.9vw,72px)!important;
    line-height:.91!important;
    color:#fff!important;
    text-shadow:0 8px 28px rgba(0,0,0,.30)!important;
  }

  .v87-hero-copy h1 em{
    color:#f05a87!important;
  }

  .v87-hero-copy p{
    position:relative!important;
    z-index:2!important;
    max-width:470px!important;
    color:rgba(255,255,255,.82)!important;
    font-size:15px!important;
    line-height:1.6!important;
    text-shadow:0 3px 14px rgba(0,0,0,.34)!important;
  }

  .v87-hero-copy .v86-actions{
    position:relative!important;
    z-index:2!important;
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    margin-top:26px!important;
  }

  .v87-hero-copy .v86-btn{
    min-height:50px!important;
    border-radius:14px!important;
  }

  .v87-hero-copy .v86-signature{
    position:relative!important;
    z-index:2!important;
    margin-top:20px!important;
    color:rgba(255,255,255,.56)!important;
  }
}

@media(min-width:701px) and (max-width:980px){
  .v87-hero{
    grid-template-columns:42% 58%!important;
    height:570px!important;
    min-height:570px!important;
    max-height:570px!important;
  }

  .v87-hero-product{
    height:570px!important;
    min-height:570px!important;
    max-height:570px!important;
  }

  .v87-hero-copy{
    width:calc(100% - 34px)!important;
    padding:30px 26px 34px!important;
  }

  .v87-hero-copy h1{
    font-size:44px!important;
  }

  .v87-flag-brush{
    right:-3%!important;
    width:58vw!important;
    opacity:.22!important;
  }
}

@media(min-width:1400px){
  .v87-hero{
    grid-template-columns:46% 54%!important;
    height:640px!important;
    min-height:640px!important;
    max-height:640px!important;
  }

  .v87-hero-product{
    height:640px!important;
    min-height:640px!important;
    max-height:640px!important;
  }

  .v87-hero-copy{
    width:600px!important;
    padding:42px 44px 46px!important;
  }

  .v87-flag-brush{
    right:5%!important;
    width:650px!important;
  }
}

/* Keep mobile untouched */
@media(max-width:700px){
  .v87-hero-copy,
  .v87-flag-brush{
    display:none!important;
  }
}

/* =========================================================
   V88 — HERO RIGHT SIDE / MORE LIFE
   Desktop only. Mobile untouched.
   ========================================================= */

@media(min-width:701px){

  .v88-hero{
    position:relative!important;
    overflow:hidden!important;
    background:
      radial-gradient(circle at 74% 38%,rgba(36,201,195,.11),transparent 27%),
      radial-gradient(circle at 86% 58%,rgba(240,90,135,.095),transparent 24%),
      radial-gradient(circle at 67% 74%,rgba(246,213,47,.055),transparent 22%),
      linear-gradient(105deg,#020303 0%,#06110f 53%,#081812 100%)!important;
  }

  /* Clean transition into next section */
  .v88-hero::after{
    content:""!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    height:6px!important;
    z-index:30!important;
    background:linear-gradient(90deg,#f6d52f 0 33.33%,#1647a5 33.33% 66.66%,#d6283f 66.66% 100%)!important;
  }

  /* Right panel gains depth but stays elegant */
  .v88-hero-copy{
    position:relative!important;
    z-index:12!important;
    overflow:visible!important;
    background:
      linear-gradient(135deg,rgba(5,18,16,.78),rgba(4,16,14,.56))!important;
    border:1px solid rgba(255,255,255,.07)!important;
    box-shadow:
      0 28px 70px rgba(0,0,0,.20),
      inset 0 1px 0 rgba(255,255,255,.045)!important;
  }

  /* Venezuelan brush becomes part of text composition */
  .v88-flag-brush{
    position:absolute!important;
    z-index:4!important;
    right:1.5%!important;
    top:50%!important;
    width:min(47vw,670px)!important;
    height:auto!important;
    max-height:470px!important;
    transform:translateY(-50%) rotate(-6deg)!important;
    opacity:.18!important;
    mix-blend-mode:screen!important;
    filter:saturate(1.15) contrast(1.08) drop-shadow(0 18px 40px rgba(0,0,0,.22))!important;
    -webkit-mask-image:radial-gradient(ellipse at center,#000 38%,rgba(0,0,0,.90) 62%,transparent 90%)!important;
    mask-image:radial-gradient(ellipse at center,#000 38%,rgba(0,0,0,.90) 62%,transparent 90%)!important;
  }

  /* Tiny Venezuelan color accent beside kicker */
  .v88-hero-copy .v86-kicker{
    position:relative!important;
    z-index:3!important;
    color:#74e2da!important;
  }
  .v88-hero-copy .v86-kicker::after{
    content:""!important;
    width:24px!important;
    height:3px!important;
    margin-left:3px!important;
    border-radius:999px!important;
    background:linear-gradient(90deg,#f6d52f 0 33%,#1647a5 33% 66%,#d6283f 66%)!important;
  }

  /* Main headline */
  .v88-hero-copy h1{
    position:relative!important;
    z-index:3!important;
    color:#fff!important;
  }

  /* Pink brush behind second line */
  .v88-hero-copy h1 em{
    position:relative!important;
    display:inline-block!important;
    color:#fff!important;
    z-index:1!important;
    padding:0 .06em!important;
  }
  .v88-hero-copy h1 em::before{
    content:""!important;
    position:absolute!important;
    z-index:-1!important;
    left:-2%!important;
    right:-3%!important;
    top:16%!important;
    bottom:4%!important;
    background:
      linear-gradient(92deg,
        rgba(240,90,135,.92) 0%,
        rgba(240,90,135,.98) 52%,
        rgba(224,64,113,.90) 100%)!important;
    clip-path:polygon(2% 16%,97% 3%,100% 78%,93% 93%,4% 86%,0 58%)!important;
    transform:rotate(-1.4deg)!important;
    box-shadow:0 8px 24px rgba(240,90,135,.15)!important;
  }

  .v88-hero-copy p{
    position:relative!important;
    z-index:3!important;
    color:rgba(255,255,255,.84)!important;
    max-width:490px!important;
  }

  .v88-hero-copy .v86-actions{
    position:relative!important;
    z-index:3!important;
    margin-top:28px!important;
  }

  .v88-hero-copy .v86-btn-primary{
    background:linear-gradient(135deg,#f05a87,#df416f)!important;
    box-shadow:0 14px 32px rgba(240,90,135,.24)!important;
  }

  .v88-hero-copy .v86-btn-secondary{
    border-color:rgba(255,255,255,.20)!important;
    background:rgba(255,255,255,.085)!important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.07),
      0 8px 18px rgba(0,0,0,.08)!important;
  }

  /* Venezuela -> Madrid visual route */
  .v88-route{
    position:relative!important;
    z-index:3!important;
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    margin-top:21px!important;
    width:min(360px,100%)!important;
  }

  .v88-country{
    color:rgba(255,255,255,.54)!important;
    font-size:9px!important;
    font-weight:900!important;
    letter-spacing:.14em!important;
  }

  .v88-route-line{
    position:relative!important;
    flex:1 1 auto!important;
    height:1px!important;
    background:linear-gradient(90deg,#f6d52f,#1647a5,#d6283f)!important;
    opacity:.85!important;
  }

  .v88-route-line::after{
    content:"→"!important;
    position:absolute!important;
    right:-1px!important;
    top:50%!important;
    transform:translateY(-54%)!important;
    color:#fff!important;
    font-size:12px!important;
  }

  .v88-route-line i{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    width:6px!important;
    height:6px!important;
    border-radius:50%!important;
    background:#24c9c3!important;
    transform:translate(-50%,-50%)!important;
    box-shadow:0 0 0 4px rgba(36,201,195,.08)!important;
  }

  /* Remove any large legacy lower strip effect leaking from hero */
  .v88-hero + *{
    margin-top:0!important;
  }
}

/* Smaller desktop */
@media(min-width:701px) and (max-width:980px){
  .v88-flag-brush{
    width:56vw!important;
    right:-8%!important;
    opacity:.15!important;
  }

  .v88-hero-copy h1 em::before{
    left:-1%!important;
    right:-1%!important;
  }
}

/* Large screens */
@media(min-width:1400px){
  .v88-flag-brush{
    right:4%!important;
    width:640px!important;
  }
}

/* Mobile untouched */
@media(max-width:700px){
  .v88-route{display:none!important}
}

/* =========================================================
   V89 — HERO FINAL POLISH
   Desktop only. Mobile untouched.
   ========================================================= */

@media(min-width:701px){

  .v89-hero{
    position:relative!important;
    overflow:hidden!important;
  }

  /* Preserve current premium panel */
  .v89-hero-copy{
    position:relative!important;
    z-index:12!important;
    overflow:hidden!important;
  }

  /* Bring back Venezuelan painted flag as subtle atmosphere */
  .v89-flag-brush{
    position:absolute!important;
    z-index:2!important;
    right:4%!important;
    top:48%!important;
    width:min(44vw,620px)!important;
    max-height:430px!important;
    transform:translateY(-50%) rotate(-7deg)!important;
    opacity:.12!important;
    mix-blend-mode:screen!important;
    filter:saturate(1.15) contrast(1.08)!important;
    border-radius:20px!important;
    pointer-events:none!important;
    -webkit-mask-image:radial-gradient(ellipse at center,#000 40%,rgba(0,0,0,.88) 63%,transparent 90%)!important;
    mask-image:radial-gradient(ellipse at center,#000 40%,rgba(0,0,0,.88) 63%,transparent 90%)!important;
  }

  /* Keep text over all decorative layers */
  .v89-hero-copy .v86-kicker,
  .v89-hero-copy h1,
  .v89-hero-copy p,
  .v89-hero-copy .v86-actions,
  .v89-hero-copy .v88-route{
    position:relative!important;
    z-index:4!important;
  }

  /* Real brush effect behind "tiene nombre." */
  .v89-hero-copy h1 em{
    position:relative!important;
    display:inline-block!important;
    color:#fff!important;
    padding:0 .04em!important;
    z-index:1!important;
  }

  .v89-hero-copy h1 em::before{
    content:""!important;
    position:absolute!important;
    z-index:-1!important;
    left:-.08em!important;
    right:-.10em!important;
    top:22%!important;
    bottom:9%!important;
    background:
      linear-gradient(90deg,
        rgba(240,90,135,.96) 0%,
        rgba(240,90,135,.98) 45%,
        rgba(220,58,105,.94) 100%)!important;
    transform:rotate(-1.2deg)!important;
    clip-path:polygon(
      0% 27%, 5% 15%, 16% 19%, 27% 8%, 38% 16%, 51% 6%,
      64% 12%, 78% 4%, 90% 13%, 100% 8%,
      97% 76%, 88% 83%, 74% 78%, 62% 90%, 48% 83%, 33% 92%,
      20% 84%, 9% 90%, 1% 76%
    )!important;
    filter:drop-shadow(0 8px 18px rgba(240,90,135,.16))!important;
  }

  /* Add a subtle extra painted streak for natural feel */
  .v89-hero-copy h1 em::after{
    content:""!important;
    position:absolute!important;
    z-index:-2!important;
    left:4%!important;
    right:8%!important;
    bottom:3%!important;
    height:10px!important;
    background:rgba(240,90,135,.36)!important;
    transform:rotate(.8deg)!important;
    clip-path:polygon(0 40%,8% 12%,19% 32%,33% 0,51% 27%,69% 8%,85% 26%,100% 5%,96% 66%,82% 48%,65% 76%,44% 52%,24% 82%,6% 60%)!important;
  }

  /* Slightly more breathing room */
  .v89-hero-copy h1{
    margin-bottom:4px!important;
  }

  .v89-hero-copy p{
    margin-top:24px!important;
  }

  /* Lower transition: eliminate chopped ticker feeling */
  .v89-hero + *{
    position:relative!important;
    margin-top:0!important;
    padding-top:0!important;
  }

  /* Any marquee/ticker immediately after hero gets safe inset */
  .v89-hero + * [class*="marquee"],
  .v89-hero + * [class*="ticker"],
  .v89-hero + * [class*="ribbon"],
  .v89-hero + * [class*="strip"]{
    padding-left:28px!important;
    padding-right:28px!important;
    overflow:hidden!important;
  }

  /* Pink lower band less dominant */
  .v89-hero + section,
  .v89-hero + div{
    border-top:0!important;
  }
}

/* Smaller desktop */
@media(min-width:701px) and (max-width:980px){
  .v89-flag-brush{
    width:52vw!important;
    right:-4%!important;
    opacity:.10!important;
  }
}

/* Large desktop */
@media(min-width:1400px){
  .v89-flag-brush{
    right:6%!important;
    width:600px!important;
  }
}

/* Mobile stays as before */
@media(max-width:700px){
  .v89-flag-brush{display:none!important}
}

/* V90 — surgical desktop hero correction. No mobile redesign. */
@media(min-width:701px){

  /* 1) Thinner, broken brush — only behind the emphasized phrase */
  .v90-hero-copy h1 em::before{
    left:-.035em!important;
    right:-.045em!important;
    top:34%!important;
    bottom:14%!important;
    transform:rotate(-.55deg)!important;
    background:
      linear-gradient(92deg,
        rgba(239,75,126,.96) 0%,
        rgba(240,82,132,.98) 58%,
        rgba(218,55,103,.92) 100%)!important;
    clip-path:polygon(
      0 35%,3% 24%,8% 29%,13% 18%,19% 26%,25% 15%,31% 22%,38% 12%,
      45% 19%,52% 10%,59% 18%,66% 8%,73% 17%,80% 10%,87% 20%,94% 12%,100% 22%,
      99% 70%,95% 77%,90% 72%,84% 82%,77% 75%,70% 86%,63% 78%,56% 88%,
      49% 80%,42% 90%,35% 81%,28% 89%,21% 79%,14% 87%,8% 76%,3% 82%,0 70%
    )!important;
    filter:drop-shadow(0 6px 14px rgba(240,90,135,.12))!important;
  }

  .v90-hero-copy h1 em::after{
    left:5%!important;
    right:7%!important;
    bottom:8%!important;
    height:5px!important;
    opacity:.48!important;
    transform:rotate(.35deg)!important;
  }

  /* 2) Venezuelan painted flag: visible, atmospheric, never over text */
  .v90-flag-brush{
    display:block!important;
    right:2.5%!important;
    top:51%!important;
    width:min(42vw,590px)!important;
    max-height:390px!important;
    opacity:.19!important;
    transform:translateY(-50%) rotate(-8deg)!important;
    mix-blend-mode:screen!important;
    filter:saturate(1.25) contrast(1.12) blur(.15px)!important;
    -webkit-mask-image:radial-gradient(ellipse at center,#000 34%,rgba(0,0,0,.82) 61%,transparent 88%)!important;
    mask-image:radial-gradient(ellipse at center,#000 34%,rgba(0,0,0,.82) 61%,transparent 88%)!important;
    pointer-events:none!important;
  }

  /* 3) Fix chopped first word of lower moving ribbon */
  .v90-hero + *{
    overflow:hidden!important;
  }
  .v90-hero + * [class*="marquee"],
  .v90-hero + * [class*="ticker"],
  .v90-hero + * [class*="ribbon"],
  .v90-hero + * [class*="strip"]{
    box-sizing:border-box!important;
    width:100%!important;
    padding-left:42px!important;
    padding-right:42px!important;
    overflow:hidden!important;
  }

  /* Common direct text-track patterns: start with a safe full item */
  .v90-hero + * [class*="track"]{
    padding-left:28px!important;
    box-sizing:border-box!important;
  }
}

/* Explicitly preserve mobile behavior */
@media(max-width:700px){
  .v90-flag-brush{display:none!important}
}

/* =========================================================
   V91 — REAL BRUSH TEXTURES
   Desktop only. Mobile unchanged.
   ========================================================= */
@media(min-width:701px){

  .v91-hero-copy h1 em{
    position:relative!important;
    display:inline-block!important;
    color:#fff!important;
    z-index:2!important;
    padding:0 .02em!important;
  }

  /* Disable all legacy synthetic polygon brushes */
  .v91-hero-copy h1 em::before,
  .v91-hero-copy h1 em::after{
    content:none!important;
    display:none!important;
  }

  /* Real transparent pink brush extracted from user's reference */
  .v91-pink-brush{
    position:absolute!important;
    z-index:-1!important;
    left:-7%!important;
    top:47%!important;
    width:116%!important;
    height:72%!important;
    object-fit:fill!important;
    transform:translateY(-50%) rotate(-1.2deg)!important;
    opacity:.98!important;
    pointer-events:none!important;
    user-select:none!important;
    filter:drop-shadow(0 7px 15px rgba(240,90,135,.15))!important;
  }

  /* Real Venezuelan painted flag with true transparent edges */
  .v91-flag-brush{
    display:block!important;
    position:absolute!important;
    z-index:2!important;
    right:2.5%!important;
    top:51%!important;
    width:min(41vw,590px)!important;
    height:auto!important;
    max-height:390px!important;
    transform:translateY(-50%) rotate(-7deg)!important;
    opacity:.20!important;
    mix-blend-mode:screen!important;
    filter:saturate(1.18) contrast(1.06)!important;
    pointer-events:none!important;
    user-select:none!important;
    border-radius:0!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }

  /* Keep all content above real flag */
  .v91-hero-copy{
    position:relative!important;
    z-index:12!important;
  }
  .v91-hero-copy .v86-kicker,
  .v91-hero-copy h1,
  .v91-hero-copy p,
  .v91-hero-copy .v86-actions,
  .v91-hero-copy .v88-route{
    position:relative!important;
    z-index:4!important;
  }

  /* Lower ticker: ensure clean visible start */
  .v91-hero + *{
    overflow:hidden!important;
  }
  .v91-hero + * [class*="marquee"],
  .v91-hero + * [class*="ticker"],
  .v91-hero + * [class*="ribbon"],
  .v91-hero + * [class*="strip"]{
    padding-left:50px!important;
    padding-right:50px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  .v91-hero + * [class*="track"]{
    padding-left:36px!important;
    box-sizing:border-box!important;
  }
}

@media(min-width:701px) and (max-width:980px){
  .v91-flag-brush{
    right:-4%!important;
    width:51vw!important;
    opacity:.17!important;
  }
  .v91-pink-brush{
    left:-6%!important;
    width:114%!important;
  }
}

@media(min-width:1400px){
  .v91-flag-brush{
    right:5%!important;
    width:575px!important;
  }
}

@media(max-width:700px){
  .v91-pink-brush,
  .v91-flag-brush{
    display:none!important;
  }
}

/* =========================================================
   V92 — FORCE REAL ASSETS VISIBLE / DESKTOP ONLY
   ========================================================= */
@media(min-width:701px){
  .v92-hero-copy{
    position:relative!important;
    isolation:isolate!important;
    overflow:hidden!important;
  }

  /* Kill every previous synthetic brush */
  .v92-hero-copy h1 em::before,
  .v92-hero-copy h1 em::after{
    content:none!important;
    display:none!important;
  }

  /* Real pink brush is now independent from <em> stacking */
  .v92-pink-brush{
    display:block!important;
    position:absolute!important;
    z-index:1!important;
    left:5.5%!important;
    top:39%!important;
    width:74%!important;
    height:88px!important;
    object-fit:fill!important;
    opacity:.96!important;
    transform:rotate(-1.3deg)!important;
    pointer-events:none!important;
    user-select:none!important;
    visibility:visible!important;
  }

  .v92-hero-copy h1{
    position:relative!important;
    z-index:4!important;
  }
  .v92-hero-copy h1 em{
    position:relative!important;
    z-index:4!important;
    color:#fff!important;
  }

  /* Flag placed as an atmospheric graphic in the right panel */
  .v92-flag-brush{
    display:block!important;
    visibility:visible!important;
    position:absolute!important;
    z-index:3!important;
    right:2.2%!important;
    top:51%!important;
    width:34%!important;
    max-width:470px!important;
    height:auto!important;
    opacity:.27!important;
    transform:translateY(-50%) rotate(-7deg)!important;
    mix-blend-mode:screen!important;
    filter:saturate(1.28) contrast(1.12)!important;
    pointer-events:none!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }

  /* Content stays readable over flag */
  .v92-hero-copy .v86-kicker,
  .v92-hero-copy p,
  .v92-hero-copy .v86-actions,
  .v92-hero-copy .v88-route{
    position:relative!important;
    z-index:5!important;
  }

  /* Ticker: don't fake padding on an animated track.
     Hide overflow and offset the viewport safely instead. */
  .v92-hero + *{
    overflow:hidden!important;
  }
  .v92-hero + * [class*="marquee"],
  .v92-hero + * [class*="ticker"],
  .v92-hero + * [class*="ribbon"],
  .v92-hero + * [class*="strip"]{
    box-sizing:border-box!important;
    overflow:hidden!important;
    padding-left:0!important;
    padding-right:0!important;
  }
}

/* Keep current mobile exactly as before */
@media(max-width:700px){
  .v92-pink-brush,
  .v92-flag-brush{
    display:none!important;
  }
}

@media(min-width:701px){
  .v92-menu-ticker{
    /* give animated copies enough offscreen runway */
    min-width:max-content!important;
    padding-left:28px!important;
    padding-right:28px!important;
  }
}

/* =========================================================
   V93 — VENEZUELAN FLAG DIRECTLY BEHIND HERO TITLE
   Desktop only. Exact requested composition.
   Layer order: flag -> pink brush -> white title.
   ========================================================= */
@media(min-width:701px){

  .v93-hero-copy{
    position:relative!important;
    isolation:isolate!important;
    overflow:hidden!important;
  }

  /* Painted Venezuelan flag positioned exactly behind headline area */
  .v93-flag-behind-title{
    display:block!important;
    visibility:visible!important;
    position:absolute!important;
    z-index:1!important;

    /* upper-right/title zone */
    right:7%!important;
    top:39%!important;
    width:72%!important;
    max-width:none!important;
    height:auto!important;
    max-height:none!important;

    transform:translateY(-50%) rotate(-7deg)!important;
    transform-origin:center center!important;

    opacity:.23!important;
    mix-blend-mode:screen!important;
    filter:saturate(1.22) contrast(1.08)!important;

    pointer-events:none!important;
    user-select:none!important;
    border-radius:0!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }

  /* Real pink brush stays above flag and below text */
  .v93-pink-brush{
    display:block!important;
    visibility:visible!important;
    position:absolute!important;
    z-index:2!important;
    left:7%!important;
    top:48%!important;
    width:68%!important;
    height:74px!important;
    object-fit:fill!important;
    opacity:.96!important;
    transform:rotate(-1.2deg)!important;
    pointer-events:none!important;
  }

  /* Headline always dominates */
  .v93-hero-copy h1{
    position:relative!important;
    z-index:5!important;
  }
  .v93-hero-copy h1 em{
    position:relative!important;
    z-index:5!important;
    color:#fff!important;
  }

  /* Other content above atmospheric flag */
  .v93-hero-copy .v86-kicker,
  .v93-hero-copy p,
  .v93-hero-copy .v86-actions,
  .v93-hero-copy .v88-route{
    position:relative!important;
    z-index:5!important;
  }
}

@media(min-width:701px) and (max-width:1100px){
  .v93-flag-behind-title{
    right:3%!important;
    width:78%!important;
    opacity:.20!important;
  }
}

@media(min-width:1500px){
  .v93-flag-behind-title{
    right:8%!important;
    width:68%!important;
  }
}

/* Mobile remains exactly as previous version */
@media(max-width:700px){
  .v93-flag-behind-title,
  .v93-pink-brush{
    display:none!important;
  }
}

/* =========================================================
   V94 — FIXED RELATIVE POSITIONING
   Flag is physically INSIDE right panel.
   Desktop only. Mobile untouched.
   ========================================================= */
@media(min-width:701px){

  .v94-hero-copy{
    position:relative!important;
    isolation:isolate!important;
    overflow:hidden!important;
  }

  /* Real painted Venezuelan flag now anchored to the right panel */
  .v94-flag-inside-panel{
    display:block!important;
    visibility:visible!important;
    position:absolute!important;
    z-index:1!important;

    left:17%!important;
    top:29%!important;
    width:72%!important;
    height:auto!important;
    max-width:none!important;
    max-height:none!important;

    transform:rotate(-6deg)!important;
    transform-origin:center!important;

    opacity:.21!important;
    mix-blend-mode:screen!important;
    filter:saturate(1.20) contrast(1.08)!important;

    pointer-events:none!important;
    user-select:none!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }

  /* Pink real brush only behind "nombre.", not description */
  .v94-pink-brush{
    display:block!important;
    visibility:visible!important;
    position:absolute!important;
    z-index:2!important;

    left:11%!important;
    top:45%!important;
    width:61%!important;
    height:66px!important;

    object-fit:fill!important;
    opacity:.96!important;
    transform:rotate(-1.1deg)!important;

    pointer-events:none!important;
    user-select:none!important;
  }

  /* Headline/content stay above both decorative layers */
  .v94-hero-copy h1,
  .v94-hero-copy .v86-kicker,
  .v94-hero-copy p,
  .v94-hero-copy .v86-actions,
  .v94-hero-copy .v88-route{
    position:relative!important;
    z-index:5!important;
  }

  .v94-hero-copy h1 em{
    position:relative!important;
    z-index:5!important;
    color:#fff!important;
  }

  /* Disable old synthetic brush pseudo elements */
  .v94-hero-copy h1 em::before,
  .v94-hero-copy h1 em::after{
    content:none!important;
    display:none!important;
  }
}

@media(min-width:701px) and (max-width:1100px){
  .v94-flag-inside-panel{
    left:12%!important;
    top:30%!important;
    width:78%!important;
    opacity:.18!important;
  }

  .v94-pink-brush{
    left:9%!important;
    top:46%!important;
    width:66%!important;
    height:60px!important;
  }
}

@media(min-width:1500px){
  .v94-flag-inside-panel{
    left:20%!important;
    width:68%!important;
  }
}

/* Preserve mobile exactly */
@media(max-width:700px){
  .v94-flag-inside-panel,
  .v94-pink-brush{
    display:none!important;
  }
}

/* =========================================================
   V95 — CLEAN HERO: VENEZUELAN FLAG ONLY
   Pink brush removed completely.
   Desktop only; mobile remains untouched.
   ========================================================= */
@media(min-width:701px){

  .v95-hero-copy{
    position:relative!important;
    isolation:isolate!important;
    overflow:hidden!important;
  }

  /* Remove every legacy pink brush */
  .v95-hero-copy .v94-pink-brush,
  .v95-hero-copy .v93-pink-brush,
  .v95-hero-copy .v92-pink-brush,
  .v95-hero-copy .v91-pink-brush{
    display:none!important;
  }

  .v95-hero-copy h1 em::before,
  .v95-hero-copy h1 em::after{
    content:none!important;
    display:none!important;
  }

  /* Flag becomes the only artistic layer behind the headline */
  .v95-flag-only{
    display:block!important;
    visibility:visible!important;
    position:absolute!important;
    z-index:1!important;

    left:7%!important;
    top:16%!important;
    width:82%!important;
    height:auto!important;
    max-width:none!important;
    max-height:none!important;

    transform:rotate(-5deg)!important;
    transform-origin:center center!important;

    opacity:.17!important;
    mix-blend-mode:screen!important;
    filter:saturate(1.18) contrast(1.06)!important;

    pointer-events:none!important;
    user-select:none!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }

  .v95-hero-copy h1,
  .v95-hero-copy .v86-kicker,
  .v95-hero-copy p,
  .v95-hero-copy .v86-actions,
  .v95-hero-copy .v88-route{
    position:relative!important;
    z-index:5!important;
  }

  .v95-hero-copy h1 em{
    position:relative!important;
    z-index:5!important;
    color:#fff!important;
  }
}

@media(min-width:701px) and (max-width:1100px){
  .v95-flag-only{
    left:3%!important;
    top:18%!important;
    width:90%!important;
    opacity:.15!important;
  }
}

@media(min-width:1500px){
  .v95-flag-only{
    left:9%!important;
    top:15%!important;
    width:78%!important;
  }
}

@media(max-width:700px){
  .v95-flag-only{
    display:none!important;
  }
}

/* =========================================================
   V96 — FINAL HERO POLISH / DESKTOP ONLY
   1. Flag smaller
   2. Flag higher
   3. Flag subtler
   4. Bottom ticker clean start
   ========================================================= */
@media(min-width:701px){

  .v96-hero-copy{
    position:relative!important;
    isolation:isolate!important;
    overflow:hidden!important;
  }

  /* Concentrate the flag behind the headline only */
  .v96-flag-final{
    display:block!important;
    visibility:visible!important;
    position:absolute!important;
    z-index:1!important;

    left:13%!important;
    top:8%!important;
    width:67%!important;
    height:auto!important;
    max-width:none!important;
    max-height:none!important;

    transform:rotate(-5deg)!important;
    transform-origin:center center!important;

    opacity:.125!important;
    mix-blend-mode:screen!important;
    filter:saturate(1.15) contrast(1.05)!important;

    pointer-events:none!important;
    user-select:none!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }

  .v96-hero-copy h1,
  .v96-hero-copy .v86-kicker,
  .v96-hero-copy p,
  .v96-hero-copy .v86-actions,
  .v96-hero-copy .v88-route{
    position:relative!important;
    z-index:5!important;
  }

  /* Keep ticker viewport clean instead of showing a chopped first word */
  .v96-product-ticker{
    box-sizing:border-box!important;
  }
}

/* Responsive desktop tuning only */
@media(min-width:701px) and (max-width:1100px){
  .v96-flag-final{
    left:9%!important;
    top:10%!important;
    width:73%!important;
    opacity:.115!important;
  }
}

@media(min-width:1500px){
  .v96-flag-final{
    left:15%!important;
    top:7%!important;
    width:64%!important;
  }
}

/* Mobile remains exactly as before */
@media(max-width:700px){
  .v96-flag-final{
    display:none!important;
  }
}

@media(min-width:701px){
  /* Product ribbon: mask both edges so moving text never looks accidentally cut */
  .v96-product-ticker{
    -webkit-mask-image:linear-gradient(
      90deg,
      transparent 0,
      #000 34px,
      #000 calc(100% - 34px),
      transparent 100%
    )!important;
    mask-image:linear-gradient(
      90deg,
      transparent 0,
      #000 34px,
      #000 calc(100% - 34px),
      transparent 100%
    )!important;
  }
}

/* =========================================================
   V102 — HERO FINAL STABLE
   Restores the proven V96 composition and visually unifies
   both halves without duplicating the product/hand.
   ========================================================= */
@media (min-width:701px){

  #inicio.v96-hero{
    position:relative!important;
    isolation:isolate!important;
    display:grid!important;
    grid-template-columns:46% 54%!important;
    align-items:stretch!important;
    width:100%!important;
    height:620px!important;
    min-height:620px!important;
    max-height:620px!important;
    overflow:hidden!important;
    background:#050706!important;
  }

  /* Keep ONE real photo, on the left, exactly as intended. */
  #inicio.v96-hero > img.v39-hero-image{
    grid-column:1!important;
    position:relative!important;
    z-index:1!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    object-fit:cover!important;
    object-position:center center!important;
    opacity:1!important;
    visibility:visible!important;
    filter:none!important;
    transform:none!important;
  }

  /* Soft bridge hides the visible seam without altering the photo. */
  #inicio.v96-hero::after{
    content:""!important;
    position:absolute!important;
    z-index:2!important;
    top:0!important;
    bottom:0!important;
    left:40%!important;
    width:13%!important;
    pointer-events:none!important;
    background:linear-gradient(
      90deg,
      rgba(5,7,6,0) 0%,
      rgba(5,7,6,.52) 48%,
      #050706 100%
    )!important;
  }

  #inicio.v96-hero .v96-hero-copy{
    grid-column:2!important;
    align-self:center!important;
    justify-self:center!important;
    position:relative!important;
    z-index:4!important;
    width:min(620px,calc(100% - 64px))!important;
    margin:0!important;
    transform:none!important;

    /* Same dark family as the photo, no grey block. */
    background:
      radial-gradient(circle at 62% 42%,rgba(4,45,36,.13),transparent 54%),
      rgba(3,10,8,.76)!important;
    border:1px solid rgba(255,255,255,.065)!important;
    box-shadow:
      0 24px 70px rgba(0,0,0,.18),
      inset 0 1px 0 rgba(255,255,255,.025)!important;
  }

  /* Flag stays decorative and behind the copy. */
  #inicio.v96-hero .v96-flag-final{
    z-index:1!important;
    opacity:.22!important;
  }

  #inicio.v96-hero .v86-kicker,
  #inicio.v96-hero h1,
  #inicio.v96-hero p,
  #inicio.v96-hero .v86-actions,
  #inicio.v96-hero .v88-route{
    position:relative!important;
    z-index:3!important;
  }

  /* Never allow any experimental cutout to appear. */
  #inicio .v101-hero-cutout,
  #inicio .v100-hero-cutout,
  #inicio .hero-cutout{
    display:none!important;
  }
}

@media (min-width:701px) and (max-width:1100px){
  #inicio.v96-hero{
    grid-template-columns:44% 56%!important;
    height:570px!important;
    min-height:570px!important;
    max-height:570px!important;
  }
  #inicio.v96-hero .v96-hero-copy{
    width:calc(100% - 38px)!important;
  }
}

/* Mobile remains the already-tested V96 layout. */
@media (max-width:700px){
  #inicio .v101-hero-cutout,
  #inicio .v100-hero-cutout,
  #inicio .hero-cutout{
    display:none!important;
  }
}

/* =========================================================
   V107 — FIXED TRUE CONTINUOUS DESKTOP TICKERS
   Built from V105 stable base.
   ========================================================= */

@media(min-width:701px){

  /* ---------- GREEN TOP TICKER ---------- */
  .topbar.v49-green-ticker{
    display:block!important;
    width:100%!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    padding-inline:0!important;
  }

  .v107-green-track{
    display:flex!important;
    align-items:center!important;
    width:max-content!important;
    min-width:max-content!important;
    gap:0!important;
    animation:v107GreenLoop 38s linear infinite!important;
    will-change:transform!important;
  }

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

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

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

  /* ---------- PINK PRODUCT TICKER ---------- */
  section.marquee{
    display:block!important;
    width:100%!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    padding:12px 0!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }

  .v107-pink-track{
    display:flex!important;
    align-items:center!important;
    width:max-content!important;
    min-width:max-content!important;
    gap:0!important;
    animation:v107PinkLoop 42s linear infinite!important;
    will-change:transform!important;
  }

  .v107-pink-set{
    display:flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    width:max-content!important;
    min-width:max-content!important;
  }

  .v107-pink-item{
    display:inline-flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    padding:0 8px!important;
    white-space:nowrap!important;
  }

  .v107-pink-sep{
    display:inline-flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    opacity:.48!important;
    padding:0 2px!important;
  }

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

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

/* Existing mobile design/animation remains governed by prior rules. */
@media(max-width:700px){
  .v107-green-set,
  .v107-pink-set{
    flex-shrink:0;
  }
}
