@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--rmp-a:var(--rm-accent,#9d1f1b);--rmp-ah:var(--rm-accent-h,#b82922);--rmp-ad:var(--rm-accent-dark,#650f0d);--rmp-g:var(--rm-gold,#d8b15a);--rmp-bg:var(--rm-bg,#f7efe2);--rmp-paper:#fff8eb;--rmp-line:rgba(100,34,18,.16);--rmp-t:#351812;--rmp-muted:#8a6557;--rmp-fh:var(--rm-fh,'Cormorant Garamond',Georgia,serif);--rmp-fb:var(--rm-fb,'Manrope',system-ui,sans-serif)}
html body .rmp-app, html body .rmp-app *{box-sizing:border-box!important}.rmp-hidden{display:none!important}.rmp-app{font-family:var(--rmp-fb)!important;color:var(--rmp-t)!important;position:relative!important;width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;background:radial-gradient(circle at 18% 8%,rgba(216,177,90,.18),transparent 28%),linear-gradient(180deg,#f1e5d6 0,#fbf2e5 100%)!important;min-height:calc(100vh - 80px)!important;padding:34px clamp(18px,3vw,48px)!important;overflow:hidden!important}.rmp-app:before{content:"";position:absolute;inset:0;opacity:.16;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='180' viewBox='0 0 360 180'%3E%3Cg fill='none' stroke='%239d1f1b' stroke-opacity='.55' stroke-width='2'%3E%3Cpath d='M20 35c28-28 64-28 92 0-28 28-64 28-92 0Z'/%3E%3Cpath d='M66 35c0-18 13-31 31-31 0 18-13 31-31 31Zm0 0c0 18-13 31-31 31 0-18 13-31 31-31Z'/%3E%3Cpath d='M250 28c22-22 50-22 72 0-22 22-50 22-72 0Z'/%3E%3Cpath d='M286 28c0-15 10-25 25-25 0 15-10 25-25 25Zm0 0c0 15-10 25-25 25 0-15 10-25 25-25Z'/%3E%3Cpath d='M0 160h360M15 160c10-14 20-14 30 0 10-14 20-14 30 0 10-14 20-14 30 0 10-14 20-14 30 0 10-14 20-14 30 0 10-14 20-14 30 0 10-14 20-14 30 0 10-14 20-14 30 0 10-14 20-14 30 0 10-14 20-14 30 0 10-14 20-14 30 0'/%3E%3C/g%3E%3C/svg%3E");background-size:520px 260px;background-position:top center}.rmp-orn-top{position:absolute;left:0;right:0;top:0;height:18px;background:linear-gradient(90deg,transparent,var(--rmp-a),transparent);opacity:.18}.rmp-shell{position:relative;z-index:1;display:grid!important;grid-template-columns:minmax(250px,310px) minmax(0,1fr);gap:28px;width:min(1800px,100%);margin:0 auto}.rmp-side{background:linear-gradient(180deg,#fff8ec,#fbeddc)!important;border:1px solid var(--rmp-line)!important;border-radius:28px!important;box-shadow:0 22px 55px rgba(75,25,12,.12)!important;padding:22px!important;align-self:start!important;position:sticky!important;top:24px!important;max-height:none!important}.rmp-brand-card{display:flex;align-items:center;gap:12px;padding:0 0 18px;border-bottom:1px solid var(--rmp-line)}.rmp-brand-mark{width:42px;height:42px;border-radius:12px;background:var(--rmp-a);color:#fff;display:grid;place-items:center;font-size:20px;box-shadow:0 10px 22px rgba(157,31,27,.25)}.rmp-brand-card strong{display:block;font-family:var(--rmp-fh)!important;color:var(--rmp-a);font-size:28px;line-height:1}.rmp-brand-card span{font-size:11px;color:var(--rmp-muted);letter-spacing:.05em}.rmp-side-title{margin:18px 0 6px;text-transform:uppercase;letter-spacing:.18em;font-weight:800;font-size:11px;color:var(--rmp-a)}.rmp-search-wrap{margin:14px 0}.rmp-search,#rmp-cat-search{width:100%!important;height:48px!important;border-radius:14px!important;border:1px solid rgba(157,31,27,.18)!important;background:#fffaf1!important;color:var(--rmp-t)!important;padding:0 16px!important;font-size:14px!important;outline:none!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)!important}.rmp-search:focus,#rmp-cat-search:focus{border-color:rgba(157,31,27,.45)!important;box-shadow:0 0 0 4px rgba(157,31,27,.08)!important}.rmp-allcats{width:100%;display:flex;justify-content:space-between;align-items:center;border:1px solid rgba(157,31,27,.2)!important;background:#fff5e5!important;color:var(--rmp-a)!important;border-radius:16px!important;padding:12px 14px!important;font-weight:800!important;cursor:pointer!important;margin:8px 0 12px!important}.rmp-allcats span{background:rgba(157,31,27,.09);border-radius:999px;padding:2px 9px}.rmp-cats{display:grid!important;gap:7px!important;overflow:visible!important;max-height:none!important}.rmp-cat{height:auto!important;min-height:44px!important;width:100%!important;border:0!important;background:transparent!important;border-radius:14px!important;color:var(--rmp-t)!important;display:grid!important;grid-template-columns:22px minmax(0,1fr) auto;align-items:center!important;gap:10px!important;text-align:left!important;padding:10px 12px!important;cursor:pointer!important;font-family:var(--rmp-fb)!important;font-weight:700!important;font-size:14px!important;line-height:1.25!important;transition:.2s!important}.rmp-cat span:nth-child(2){white-space:normal!important;overflow:hidden!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important}.rmp-cat-ico{color:var(--rmp-a)}.rmp-cat em{font-style:normal;color:#b98b46;background:#fff0d5;border-radius:999px;padding:1px 8px;font-size:12px}.rmp-cat.on,.rmp-cat:hover{background:linear-gradient(135deg,var(--rmp-a),var(--rmp-ad))!important;color:#fff!important;box-shadow:0 11px 22px rgba(157,31,27,.22)!important}.rmp-cat.on .rmp-cat-ico,.rmp-cat:hover .rmp-cat-ico{color:var(--rmp-g)}.rmp-cat.on em,.rmp-cat:hover em{background:rgba(255,255,255,.16);color:#fff}.rmp-cat.rmp-cat-extra{display:none!important}.rmp-waiter-side{margin-top:18px!important;width:100%!important}.rmp-waiter{border:1px solid rgba(157,31,27,.18)!important;border-radius:18px!important;background:#fff4e4!important;color:var(--rmp-a)!important;min-height:56px!important;font-weight:800!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important}.rmp-main-area{min-width:0!important}.rmp-hero{position:relative!important;overflow:hidden!important;background:linear-gradient(135deg,#fff9ed 0%,#fff0d8 100%)!important;border:1px solid var(--rmp-line)!important;border-radius:30px!important;padding:34px 36px!important;box-shadow:0 18px 45px rgba(75,25,12,.10)!important;margin-bottom:18px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:18px!important;align-items:end!important}.rmp-hero-pattern{position:absolute;right:-40px;top:-70px;width:440px;height:230px;opacity:.18;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='220' viewBox='0 0 420 220'%3E%3Cg fill='none' stroke='%239d1f1b' stroke-width='4'%3E%3Cpath d='M20 110c70-85 140-85 210 0-70 85-140 85-210 0Z'/%3E%3Cpath d='M125 110c0-55 38-93 93-93 0 55-38 93-93 93Zm0 0c0 55-38 93-93 93 0-55 38-93 93-93Z'/%3E%3Cpath d='M270 70c38-40 76-40 114 0-38 40-76 40-114 0Z'/%3E%3Cpath d='M327 70c0-30 21-51 51-51 0 30-21 51-51 51Z'/%3E%3C/g%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat}.rmp-kicker{text-transform:uppercase;letter-spacing:.32em;font-size:11px;font-weight:900;color:var(--rmp-a);margin-bottom:4px}.rmp-hero h1{font-family:var(--rmp-fh)!important;font-weight:700!important;font-size:clamp(46px,4.1vw,76px)!important;line-height:.92!important;margin:0!important;color:var(--rmp-a)!important;letter-spacing:-.02em!important}.rmp-hero p{margin:10px 0 0!important;color:var(--rmp-muted)!important;font-size:16px!important}.rmp-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:wrap!important;position:relative;z-index:1}.rmp-sort,.rmp-cart-top{border:1px solid rgba(157,31,27,.18)!important;background:#fff8ec!important;color:var(--rmp-a)!important;border-radius:16px!important;min-height:48px!important;padding:0 18px!important;font-weight:800!important;cursor:pointer!important;box-shadow:0 8px 18px rgba(75,25,12,.06)!important}.rmp-sort.on,.rmp-cart-top{background:linear-gradient(135deg,var(--rmp-a),var(--rmp-ad))!important;color:#fff!important;border-color:transparent!important;box-shadow:0 14px 25px rgba(157,31,27,.26)!important}.rmp-cart-top span{display:inline-grid;place-items:center;min-width:22px;height:22px;margin-left:6px;border-radius:999px;background:rgba(255,255,255,.18)}.rmp-table{justify-self:start;margin-top:16px;display:inline-flex!important;align-items:center;gap:10px;border:1px solid rgba(157,31,27,.16);border-radius:14px;padding:8px 14px;background:#fff7e9}.rmp-table span{color:var(--rmp-muted);font-size:12px}.rmp-table strong{font-size:28px;color:var(--rmp-a);font-family:var(--rmp-fh)}.rmp-status{display:flex;justify-content:space-between;gap:12px;padding:2px 6px 16px;color:var(--rmp-muted);font-size:13px}.rmp-status-cat{color:var(--rmp-a);font-weight:800}.rmp-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))!important;gap:22px!important;align-items:start!important;min-height:260px!important}.rmp-card{background:linear-gradient(180deg,#fffaf0,#fff7ea)!important;border:1px solid rgba(103,42,20,.13)!important;border-radius:22px!important;overflow:hidden!important;box-shadow:0 18px 34px rgba(74,25,12,.13)!important;min-width:0!important;transition:transform .18s ease,box-shadow .18s ease!important;cursor:pointer!important}.rmp-card:hover{transform:translateY(-4px);box-shadow:0 25px 50px rgba(74,25,12,.18)!important}.rmp-photo{height:210px!important;position:relative!important;overflow:hidden!important;background:#ead9c0!important}.rmp-photo img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;transition:transform .35s ease!important}.rmp-card:hover .rmp-photo img{transform:scale(1.05)}.rmp-photo:after{content:"";position:absolute;left:0;right:0;bottom:0;height:70px;background:linear-gradient(transparent,rgba(52,16,8,.68))}.rmp-price-ov{position:absolute;left:16px;bottom:13px;z-index:2;color:#fff!important;font-family:var(--rmp-fh)!important;font-weight:700!important;font-size:25px!important;text-shadow:0 2px 10px rgba(0,0,0,.45)}.rmp-price-ov del{font-size:14px;margin-left:8px;opacity:.75}.rmp-badge,.rmp-varbadge,.rmp-oos-tag{position:absolute;z-index:3;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.rmp-badge{left:12px;top:12px;background:var(--rmp-a);color:#fff}.rmp-varbadge{right:12px;bottom:12px;background:linear-gradient(135deg,var(--rmp-g),#f4df9d);color:#5a210b}.rmp-oos-tag{right:12px;top:12px;background:#333;color:#fff}.rmp-zoom{position:absolute;right:12px;top:12px;z-index:2;width:34px;height:34px;border-radius:50%;background:rgba(0,0,0,.3);display:grid;place-items:center;opacity:0;transition:.2s}.rmp-photo:hover .rmp-zoom{opacity:1}.rmp-body{padding:16px 18px 18px!important;min-height:190px!important;display:flex!important;flex-direction:column!important}.rmp-name{font-weight:900!important;color:#2d1710!important;font-size:18px!important;line-height:1.18!important;margin-bottom:8px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}.rmp-desc{color:#866659!important;font-size:13px!important;line-height:1.45!important;display:-webkit-box!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;overflow:hidden!important}.rmp-divider{height:1px;background:linear-gradient(90deg,transparent,rgba(157,31,27,.18),transparent);margin:auto 0 14px}.rmp-foot{display:flex!important;justify-content:flex-end!important;align-items:center!important}.rmp-add{width:46px!important;height:46px!important;border-radius:50%!important;border:0!important;background:linear-gradient(135deg,var(--rmp-a),var(--rmp-ad))!important;color:#fff!important;font-size:24px!important;font-weight:700!important;line-height:1!important;box-shadow:0 12px 24px rgba(157,31,27,.3)!important;cursor:pointer!important}.rmp-add:disabled{filter:grayscale(1);opacity:.5}.rmp-qty{display:inline-flex!important;align-items:center!important;gap:8px!important;background:#fff4e5!important;border:1px solid rgba(157,31,27,.16)!important;border-radius:999px!important;padding:5px!important}.rmp-qb{width:34px!important;height:34px!important;border-radius:50%!important;border:0!important;background:#fff!important;color:var(--rmp-a)!important;font-weight:900!important;cursor:pointer!important}.rmp-qn{min-width:22px;text-align:center;font-weight:900}.rmp-loader{grid-column:1/-1!important;display:flex;justify-content:center;gap:10px;padding:46px}.rmp-dot{width:12px;height:12px;border-radius:50%;background:var(--rmp-a);opacity:.22;animation:rmpPulse 1s infinite alternate}.rmp-dot:nth-child(2){animation-delay:.15s}.rmp-dot:nth-child(3){animation-delay:.3s}@keyframes rmpPulse{to{opacity:.9;transform:translateY(-6px)}}.rmp-more-wrap{text-align:center;padding:28px}.rmp-more{border:0;border-radius:999px;background:var(--rmp-a);color:#fff;padding:14px 26px;font-weight:800;cursor:pointer}.rmp-fab-off{position:fixed!important;right:28px!important;bottom:24px!important;z-index:99998!important;border:0!important;border-radius:999px!important;background:linear-gradient(135deg,var(--rmp-a),var(--rmp-ad))!important;color:#fff!important;min-height:56px!important;padding:0 18px!important;display:flex!important;align-items:center!important;gap:10px!important;box-shadow:0 18px 40px rgba(94,20,14,.35)!important;font-weight:900!important;cursor:pointer!important}.rmp-fab-cnt{min-width:24px;height:24px;border-radius:999px;background:var(--rmp-g);color:#4b130d;display:grid;place-items:center;font-size:12px}.rmp-fab-icon{font-size:18px}#rmp-overlay{position:fixed;inset:0;background:rgba(34,12,7,.45);z-index:99997;opacity:0;pointer-events:none;transition:.22s}#rmp-overlay.on{opacity:1;pointer-events:auto}#rmp-cart{position:fixed!important;right:22px!important;top:90px!important;bottom:24px!important;width:min(420px,calc(100vw - 34px))!important;background:linear-gradient(180deg,var(--rmp-ad),var(--rmp-a))!important;color:#fff!important;border-radius:28px!important;box-shadow:0 30px 80px rgba(56,8,5,.45)!important;z-index:99999!important;transform:translateX(calc(100% + 40px));transition:.28s ease!important;padding:22px!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}#rmp-cart.on{transform:translateX(0)}.rmp-cart-orn{position:absolute;inset:0;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='320' height='180'%3E%3Cg fill='none' stroke='%23f3d982' stroke-width='2'%3E%3Cpath d='M25 70c35-42 70-42 105 0-35 42-70 42-105 0Z'/%3E%3Cpath d='M77 70c0-28 20-48 48-48 0 28-20 48-48 48Zm0 0c0 28-20 48-48 48 0-28 20-48 48-48Z'/%3E%3C/g%3E%3C/svg%3E");background-size:420px 240px;pointer-events:none}#rmp-cart-head{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.16)}#rmp-cart-title{font-family:var(--rmp-fh)!important;font-size:34px!important;font-weight:700;color:#f7df98}.rmp-cart-cnt{font-family:var(--rmp-fb);font-size:14px;background:rgba(255,255,255,.16);color:#fff;border-radius:999px;padding:3px 9px}#rmp-cart-close{border:0;background:transparent;color:#fff;font-size:22px;cursor:pointer}#rmp-cart-list{position:relative;z-index:1;overflow:auto;flex:1;padding:12px 2px}.rmp-ci{display:grid;grid-template-columns:64px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.13)}.rmp-ci img,.rmp-ci-ph{width:64px;height:64px;object-fit:cover;border-radius:14px;background:#fff2d8;color:var(--rmp-a);display:grid;place-items:center}.rmp-ci-name{font-weight:800;line-height:1.25}.rmp-ci-var{opacity:.72;font-size:12px;margin-top:3px}.rmp-ci-row{display:flex;justify-content:space-between;align-items:center;margin-top:9px}.rmp-ci-price{font-family:var(--rmp-fh);font-size:20px;color:#f7df98}.rmp-empty{text-align:center;padding:45px 10px;color:rgba(255,255,255,.82)}.rmp-empty-icon{font-size:38px}.rmp-empty-t{font-size:20px;font-weight:800;margin:10px 0 2px}.rmp-promo,.rmp-order-mode,#rmp-cart-foot{position:relative;z-index:1}.rmp-promo{padding-top:12px}.rmp-promo-row{display:flex;border:1px solid rgba(255,255,255,.18);border-radius:14px;overflow:hidden}.rmp-promo-inp{flex:1;background:rgba(255,255,255,.08)!important;color:#fff!important;border:0!important;padding:13px!important;outline:0!important}.rmp-promo-inp::placeholder{color:rgba(255,255,255,.55)}.rmp-promo-btn{width:52px;border:0;background:#fff2d2;color:var(--rmp-a);font-size:22px}.rmp-promo-msg{min-height:20px;font-size:12px;margin-top:6px}.rmp-order-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}.rmp-order-mode label{border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:12px;background:rgba(255,255,255,.06);font-weight:700}.rmp-trow{display:flex;justify-content:space-between;padding:7px 0;color:rgba(255,255,255,.86)}.rmp-trow.rmp-main{font-size:24px;font-weight:900;color:#fff;border-top:1px solid rgba(255,255,255,.18);margin-top:8px;padding-top:14px}.rmp-tv{font-family:var(--rmp-fh);color:#f7df98}#rmp-checkout{width:100%;height:58px;border:0;border-radius:16px;background:linear-gradient(135deg,#fff4d7,#f6d17b);color:var(--rmp-a);font-weight:900;font-size:16px;cursor:pointer;margin-top:14px}.rmp-table-note{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);padding:10px;border-radius:12px;color:#fff}.rmp-cat-box{position:fixed;z-index:100000;left:50%;top:50%;transform:translate(-50%,-50%);width:min(920px,calc(100vw - 30px));max-height:min(760px,calc(100vh - 40px));overflow:auto;background:#fff8ec;border:1px solid var(--rmp-line);border-radius:30px;box-shadow:0 30px 90px rgba(43,10,4,.35);padding:28px}#rmp-cat-modal:before{content:"";position:fixed;inset:0;background:rgba(33,10,5,.56);z-index:99999}#rmp-cat-close{position:absolute;right:18px;top:18px;border:0;background:var(--rmp-a);color:#fff;border-radius:50%;width:34px;height:34px;cursor:pointer}.rmp-cat-head span{display:block;text-transform:uppercase;letter-spacing:.25em;color:var(--rmp-a);font-size:11px;font-weight:900}.rmp-cat-head strong{display:block;font-family:var(--rmp-fh);font-size:44px;color:var(--rmp-a);line-height:1;margin-bottom:18px}#rmp-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin-top:16px}.rmp-cat-tile{min-height:58px;border:1px solid rgba(157,31,27,.15);background:#fffaf1;color:var(--rmp-t);border-radius:16px;text-align:left;padding:12px 14px;font-weight:800;cursor:pointer}.rmp-cat-tile.on,.rmp-cat-tile:hover{background:linear-gradient(135deg,var(--rmp-a),var(--rmp-ad));color:#fff}.rmp-cat-tile small{float:right;background:rgba(157,31,27,.08);border-radius:999px;padding:2px 8px}.rmp-cat-tile.on small,.rmp-cat-tile:hover small{background:rgba(255,255,255,.14)}#rmp-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(30px);opacity:0;background:#2d1710;color:#fff;border-radius:999px;padding:13px 22px;z-index:100001;font-weight:800;box-shadow:0 16px 38px rgba(0,0,0,.25);transition:.25s}#rmp-toast.on{opacity:1;transform:translateX(-50%) translateY(0)}#rmp-lightbox,#rmp-var-bg,#rmp-wmodal-bg{position:fixed;inset:0;background:rgba(25,7,4,.78);z-index:100000;display:grid;place-items:center;padding:24px}#rmp-lightbox[hidden],#rmp-var-bg[hidden],#rmp-wmodal-bg[hidden],#rmp-cat-modal[hidden]{display:none!important}#rmp-lb-img{max-width:min(1100px,94vw);max-height:80vh;border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.45)}#rmp-lb-close,#rmp-var-close{position:absolute;right:24px;top:24px;border:0;background:#fff;color:var(--rmp-a);border-radius:50%;width:42px;height:42px;font-size:22px;cursor:pointer}#rmp-lb-name{color:#fff;margin-top:14px;font-weight:800;text-align:center}#rmp-var-box,#rmp-wmodal{background:#fff8ec;border-radius:28px;padding:28px;width:min(520px,94vw);position:relative;box-shadow:0 30px 90px rgba(0,0,0,.35)}.rmp-var-photo{width:100%;height:230px;object-fit:cover;border-radius:20px}.rmp-var-title,.rmp-wm-title{font-family:var(--rmp-fh);font-size:34px;color:var(--rmp-a);font-weight:700;margin:16px 0 4px}.rmp-var-from{color:var(--rmp-muted);margin-bottom:18px}.rmp-var-attr-lbl{font-weight:900;display:block;margin:12px 0 8px}.rmp-var-opts{display:flex;gap:8px;flex-wrap:wrap}.rmp-var-opt{border:1px solid rgba(157,31,27,.18);background:#fff;border-radius:999px;padding:10px 14px;cursor:pointer}.rmp-var-opt.on{background:var(--rmp-a);color:#fff}.rmp-var-price{font-family:var(--rmp-fh);font-size:30px;color:var(--rmp-a);font-weight:700;display:block;margin:16px 0}.rmp-var-add,#rmp-wmodal-ok{width:100%;height:54px;border:0;border-radius:16px;background:var(--rmp-a);color:#fff;font-weight:900;cursor:pointer}.rmp-wm-icon{font-size:42px;display:block;text-align:center}.rmp-wm-txt{text-align:center;color:var(--rmp-muted)}
@media (min-width:1600px){.rmp-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr))!important}.rmp-photo{height:230px!important}}@media (max-width:1180px){.rmp-shell{grid-template-columns:1fr}.rmp-side{position:relative!important;top:0!important}.rmp-cats{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))!important}.rmp-cat.rmp-cat-extra{display:grid!important}.rmp-hero{grid-template-columns:1fr}.rmp-actions{justify-content:flex-start}.rmp-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))!important}}@media (max-width:720px){.rmp-app{padding:14px 12px 92px!important}.rmp-shell{gap:14px}.rmp-side{border-radius:22px;padding:16px}.rmp-brand-card strong{font-size:24px}.rmp-cats{grid-template-columns:1fr 1fr!important}.rmp-cat{font-size:12px!important;min-height:42px!important}.rmp-hero{padding:24px 20px;border-radius:24px}.rmp-hero h1{font-size:48px!important}.rmp-grid{grid-template-columns:1fr!important;gap:16px}.rmp-photo{height:220px!important}#rmp-cart{right:8px!important;left:8px!important;top:70px!important;width:auto!important}.rmp-fab-off{left:14px!important;right:14px!important;justify-content:center!important}.rmp-cat-box{padding:22px}.rmp-cat-head strong{font-size:34px}#rmp-cat-grid{grid-template-columns:1fr}} 

/* v6.1 — Premium clean style: no decorative folk clipart/patterns */
html body .rmp-app{
  background:
    radial-gradient(circle at 16% 6%, rgba(196,150,62,.16), transparent 28%),
    radial-gradient(circle at 88% 10%, rgba(139,31,31,.08), transparent 30%),
    linear-gradient(180deg, #f7efe4 0%, #fff8ef 46%, #f3e6d7 100%) !important;
  overflow-x:hidden !important;
}
html body .rmp-app:before,
.rmp-hero-pattern,
.rmp-cart-orn{
  display:none !important;
  content:none !important;
  background:none !important;
}
.rmp-orn-top{
  height:4px !important;
  opacity:1 !important;
  background:linear-gradient(90deg, transparent, rgba(139,31,31,.8), rgba(196,150,62,.75), rgba(139,31,31,.8), transparent) !important;
}
.rmp-shell{width:min(1840px,100%) !important;gap:30px !important;}
.rmp-side,.rmp-hero,.rmp-card,.rmp-cat-box,#rmp-var-box,#rmp-wmodal{
  background:rgba(255,250,241,.94) !important;
  border:1px solid rgba(94,35,17,.14) !important;
  box-shadow:0 24px 70px rgba(67,24,10,.10), inset 0 1px 0 rgba(255,255,255,.9) !important;
}
.rmp-side{border-radius:30px !important;}
.rmp-brand-mark{
  background:linear-gradient(135deg,var(--rmp-a),var(--rmp-ad)) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  box-shadow:0 14px 28px rgba(139,31,31,.26) !important;
}
.rmp-brand-card strong,.rmp-hero h1,#rmp-cart-title,.rmp-cat-head strong,.rmp-var-title,.rmp-wm-title{
  letter-spacing:-.018em !important;
}
.rmp-search,#rmp-cat-search{
  background:#fffdf8 !important;
  border-color:rgba(139,31,31,.18) !important;
  box-shadow:0 10px 24px rgba(70,25,10,.05) !important;
}
.rmp-allcats,.rmp-waiter,.rmp-sort{
  background:#fffdf8 !important;
  border:1px solid rgba(139,31,31,.16) !important;
  box-shadow:0 10px 24px rgba(70,25,10,.05) !important;
}
.rmp-cat{
  border:1px solid transparent !important;
  background:rgba(255,255,255,.38) !important;
}
.rmp-cat.on,.rmp-cat:hover{
  background:linear-gradient(135deg,var(--rmp-a),var(--rmp-ad)) !important;
  border-color:rgba(255,255,255,.16) !important;
}
.rmp-hero{
  background:
    linear-gradient(135deg, rgba(255,253,248,.96), rgba(255,244,225,.94)) !important;
  border-radius:34px !important;
  min-height:190px !important;
}
.rmp-kicker{
  color:var(--rmp-g) !important;
  letter-spacing:.34em !important;
}
.rmp-grid{
  grid-template-columns:repeat(auto-fill,minmax(310px,1fr)) !important;
  gap:28px !important;
}
.rmp-card{
  border-radius:28px !important;
  overflow:hidden !important;
}
.rmp-card:hover{
  transform:translateY(-5px) !important;
  box-shadow:0 32px 75px rgba(67,24,10,.18), inset 0 1px 0 rgba(255,255,255,.9) !important;
}
.rmp-photo{height:250px !important;background:#eadac5 !important;}
.rmp-card-body{padding:22px 22px 20px !important;}
.rmp-title{font-family:var(--rmp-fh) !important;font-size:28px !important;line-height:1.02 !important;color:#32140f !important;}
.rmp-desc{font-size:14px !important;line-height:1.55 !important;color:var(--rmp-muted) !important;}
.rmp-add{
  background:linear-gradient(135deg,var(--rmp-a),var(--rmp-ad)) !important;
  box-shadow:0 13px 26px rgba(139,31,31,.24) !important;
}
#rmp-cart{
  background:linear-gradient(180deg,#6e1714,#8b1f1f) !important;
  border:1px solid rgba(255,255,255,.13) !important;
}
#rmp-checkout{
  background:linear-gradient(135deg,#fff6d9,#e9be61) !important;
}
.rmp-cat-tile{
  background:#fffdf8 !important;
  box-shadow:0 10px 24px rgba(70,25,10,.05) !important;
}
@media (max-width:1180px){
  .rmp-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr)) !important;}
  .rmp-photo{height:230px !important;}
}
@media (max-width:720px){
  .rmp-grid{grid-template-columns:1fr !important;}
  .rmp-photo{height:240px !important;}
  .rmp-title{font-size:25px !important;}
}


/* v6.2 — polished premium layout, larger cards, no table UI when mode switch is off */
html body .rmp-app{
  padding:42px clamp(24px,3.2vw,64px) 112px !important;
  background:
    radial-gradient(circle at 12% 4%, rgba(196,150,62,.13), transparent 30%),
    radial-gradient(circle at 92% 0%, rgba(139,31,31,.07), transparent 32%),
    linear-gradient(180deg,#f8f0e5 0%,#fffaf2 43%,#f3e6d7 100%) !important;
}
.rmp-shell{
  width:min(1920px,100%) !important;
  grid-template-columns:minmax(280px,330px) minmax(0,1fr) !important;
  gap:34px !important;
  align-items:start !important;
}
.rmp-main-area{min-width:0 !important;width:100% !important;}
.rmp-side{
  padding:26px !important;
  border-radius:34px !important;
  background:rgba(255,251,244,.96) !important;
}
.rmp-brand-card{padding-bottom:22px !important;}
.rmp-brand-mark{width:48px !important;height:48px !important;border-radius:16px !important;}
.rmp-brand-card strong{font-size:32px !important;}
.rmp-search{height:54px !important;border-radius:18px !important;font-size:15.5px !important;}
.rmp-allcats{
  min-height:56px !important;
  border-radius:18px !important;
  font-size:15px !important;
  background:linear-gradient(135deg,#fffdf8,#fff2dc) !important;
}
.rmp-cats{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:8px !important;
  max-height:none !important;
  overflow:visible !important;
}
.rmp-cat{min-height:48px !important;border-radius:16px !important;font-size:14px !important;padding:11px 13px !important;}
.rmp-cat.rmp-cat-extra{display:none !important;}
.rmp-hero{
  padding:42px 46px !important;
  border-radius:38px !important;
  min-height:235px !important;
  margin-bottom:22px !important;
  align-items:center !important;
  background:linear-gradient(135deg,rgba(255,253,248,.98),rgba(255,245,229,.96)) !important;
}
.rmp-hero h1{font-size:clamp(58px,4.8vw,92px) !important;}
.rmp-hero p{font-size:17px !important;max-width:680px !important;}
.rmp-actions{gap:12px !important;}
.rmp-sort,.rmp-cart-top{min-height:52px !important;border-radius:18px !important;padding:0 20px !important;}
.rmp-status{padding:4px 4px 18px !important;font-size:14px !important;}
.rmp-grid{
  grid-template-columns:repeat(auto-fill,minmax(350px,1fr)) !important;
  gap:30px !important;
  width:100% !important;
}
.rmp-card{
  border-radius:32px !important;
  min-width:0 !important;
  max-width:100% !important;
  background:linear-gradient(180deg,#fffdf7,#fff5e8) !important;
  box-shadow:0 26px 62px rgba(67,24,10,.13), inset 0 1px 0 rgba(255,255,255,.95) !important;
}
.rmp-photo{height:285px !important;}
.rmp-body{padding:22px 24px 22px !important;min-height:178px !important;display:flex !important;flex-direction:column !important;}
.rmp-name{
  font-family:var(--rmp-fh) !important;
  font-size:32px !important;
  line-height:1.02 !important;
  font-weight:700 !important;
  color:#32140f !important;
  letter-spacing:-.018em !important;
  margin-bottom:9px !important;
}
.rmp-desc{font-size:15px !important;line-height:1.55 !important;color:rgba(77,42,31,.72) !important;}
.rmp-divider{margin-top:auto !important;margin-bottom:16px !important;}
.rmp-price-ov{font-size:32px !important;left:22px !important;bottom:18px !important;}
.rmp-add{width:54px !important;height:54px !important;font-size:28px !important;}
.rmp-qty{padding:7px !important;gap:10px !important;}
.rmp-qb{width:38px !important;height:38px !important;}
#rmp-cart{width:min(460px,calc(100vw - 34px)) !important;border-radius:32px !important;}
#rmp-cart-title{font-size:38px !important;}
.rmp-order-mode{display:grid !important;}
/* hide table controls completely when shortcode/plugin forced delivery */
.rmp-app[data-mode="delivery"] .rmp-table,
.rmp-app[data-mode="delivery"] .rmp-waiter,
.rmp-app[data-mode="delivery"] ~ #rmp-cart .rmp-table-note{display:none !important;}
@media (min-width:1500px){
  .rmp-grid{grid-template-columns:repeat(auto-fill,minmax(380px,1fr)) !important;}
  .rmp-photo{height:310px !important;}
}
@media (max-width:1180px){
  html body .rmp-app{padding:22px 16px 100px !important;}
  .rmp-shell{grid-template-columns:1fr !important;gap:20px !important;}
  .rmp-side{position:relative !important;top:0 !important;}
  .rmp-cats{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .rmp-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr)) !important;gap:22px !important;}
  .rmp-photo{height:255px !important;}
}
@media (max-width:720px){
  .rmp-side,.rmp-hero{border-radius:26px !important;padding:20px !important;}
  .rmp-cats{grid-template-columns:1fr 1fr !important;}
  .rmp-grid{grid-template-columns:1fr !important;gap:20px !important;}
  .rmp-photo{height:270px !important;}
  .rmp-body{min-height:auto !important;padding:20px !important;}
  .rmp-name{font-size:29px !important;}
  .rmp-hero h1{font-size:52px !important;}
}


/* ================================================================
   v6.3 — LIGHTBOX FULL-SCREEN + FULL RESPONSIVE
   ================================================================ */

/* ── LIGHTBOX — максимально большое фото ── */
#rmp-lightbox {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(14,5,2,.96) !important;
    z-index: 100000 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    cursor: zoom-out !important;
}
#rmp-lightbox[hidden] { display: none !important; }

/* Обёртка фото — занимает всё пространство */
#rmp-lb-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 1 !important;
    width: 100% !important;
    padding: 60px 20px 56px !important;
    cursor: zoom-out !important;
}
#rmp-lb-img {
    max-width: min(1400px, calc(100vw - 40px)) !important;
    max-height: calc(100vh - 120px) !important;
    width: auto !important;
    height: auto !important;
    border-radius: 20px !important;
    object-fit: contain !important;
    box-shadow:
        0 0 0 1px rgba(255,255,255,.06),
        0 40px 120px rgba(0,0,0,.8) !important;
    animation: rmpLbIn .25s cubic-bezier(.34,1.2,.64,1) !important;
    cursor: default !important;
    display: block !important;
}
@keyframes rmpLbIn {
    from { transform: scale(.88); opacity: 0; }
    to   { transform: scale(1);   opacity: 1; }
}
/* Кнопка закрыть лайтбокса */
#rmp-lb-close {
    position: fixed !important;
    top: 18px !important;
    right: 22px !important;
    z-index: 10 !important;
    width: 52px !important;
    height: 52px !important;
    border-radius: 50% !important;
    border: 2px solid rgba(255,255,255,.25) !important;
    background: rgba(255,255,255,.12) !important;
    color: #fff !important;
    font-size: 22px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    backdrop-filter: blur(8px) !important;
    transition: background .15s, border-color .15s !important;
}
#rmp-lb-close:hover {
    background: rgba(157,31,27,.85) !important;
    border-color: transparent !important;
}
/* Название под фото */
#rmp-lb-name {
    position: fixed !important;
    bottom: 20px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    color: rgba(255,255,255,.9) !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    text-align: center !important;
    background: rgba(14,5,2,.6) !important;
    backdrop-filter: blur(10px) !important;
    padding: 10px 26px !important;
    border-radius: 999px !important;
    max-width: calc(100vw - 40px) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    letter-spacing: .1px !important;
    border: 1px solid rgba(255,255,255,.12) !important;
}

/* Стрелка навигации (если добавить в будущем) */
.rmp-lb-prev, .rmp-lb-next {
    position: fixed !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 52px !important;
    height: 52px !important;
    border-radius: 50% !important;
    border: 2px solid rgba(255,255,255,.2) !important;
    background: rgba(255,255,255,.1) !important;
    color: #fff !important;
    font-size: 22px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    backdrop-filter: blur(6px) !important;
    transition: background .15s !important;
    z-index: 10 !important;
}
.rmp-lb-prev { left: 22px !important; }
.rmp-lb-next { right: 22px !important; }
.rmp-lb-prev:hover, .rmp-lb-next:hover { background: rgba(157,31,27,.75) !important; }

/* ================================================================
   RESPONSIVE — все устройства
   ================================================================ */

/* ── 4K / Wide Desktop (1800px+) ── */
@media (min-width: 1800px) {
    .rmp-shell { grid-template-columns: minmax(310px, 360px) minmax(0, 1fr) !important; }
    .rmp-grid  { grid-template-columns: repeat(auto-fill, minmax(400px, 1fr)) !important; gap: 32px !important; }
    .rmp-photo { height: 320px !important; }
    .rmp-name  { font-size: 36px !important; }
}

/* ── Desktop (1400–1800px) ── */
@media (min-width: 1400px) and (max-width: 1799px) {
    .rmp-grid  { grid-template-columns: repeat(auto-fill, minmax(360px, 1fr)) !important; gap: 28px !important; }
    .rmp-photo { height: 295px !important; }
}

/* ── Laptop (1100–1400px) ── */
@media (min-width: 1100px) and (max-width: 1399px) {
    html body .rmp-app { padding: 32px clamp(20px, 2.5vw, 48px) 100px !important; }
    .rmp-shell { grid-template-columns: minmax(260px, 290px) minmax(0, 1fr) !important; gap: 22px !important; }
    .rmp-grid  { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)) !important; gap: 22px !important; }
    .rmp-photo { height: 255px !important; }
    .rmp-name  { font-size: 26px !important; }
    .rmp-hero h1 { font-size: clamp(48px, 4vw, 72px) !important; }
    .rmp-hero { padding: 32px 36px !important; }
}

/* ── Tablet landscape (768–1100px) — боковой сайдбар -> верхняя панель ── */
@media (max-width: 1099px) {
    html body .rmp-app {
        padding: 18px 16px 96px !important;
    }
    .rmp-shell {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
    .rmp-side {
        position: relative !important;
        top: 0 !important;
        border-radius: 24px !important;
        padding: 18px !important;
    }
    /* Категории в сайдбаре — 2 колонки на планшете */
    .rmp-cats {
        grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)) !important;
        max-height: 300px !important;
        overflow-y: auto !important;
    }
    .rmp-cat.rmp-cat-extra { display: grid !important; }
    .rmp-hero {
        padding: 26px 28px !important;
        border-radius: 26px !important;
        min-height: auto !important;
    }
    .rmp-hero h1 { font-size: clamp(42px, 5vw, 62px) !important; }
    .rmp-hero p  { font-size: 15px !important; }
    .rmp-grid {
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
        gap: 18px !important;
    }
    .rmp-photo { height: 240px !important; }
    .rmp-name  { font-size: 24px !important; }
}

/* ── Tablet portrait (600–768px) ── */
@media (min-width: 600px) and (max-width: 767px) {
    html body .rmp-app { padding: 14px 14px 90px !important; }
    .rmp-shell { gap: 14px !important; }
    .rmp-side  { border-radius: 20px !important; padding: 16px !important; }
    .rmp-brand-card strong { font-size: 26px !important; }
    .rmp-cats  { grid-template-columns: 1fr 1fr !important; }
    .rmp-hero  { padding: 22px 22px !important; border-radius: 22px !important; }
    .rmp-hero h1 { font-size: 44px !important; }
    .rmp-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 14px !important;
    }
    .rmp-photo { height: 200px !important; }
    .rmp-name  { font-size: 20px !important; }
    .rmp-price-ov { font-size: 22px !important; }
    .rmp-add   { width: 46px !important; height: 46px !important; }
    #rmp-cart  { right: 8px !important; left: 8px !important; top: 60px !important; width: auto !important; border-radius: 24px !important; }
}

/* ── Mobile (< 600px) ── */
@media (max-width: 599px) {
    html body .rmp-app { padding: 12px 12px 86px !important; }
    .rmp-shell { gap: 12px !important; }
    .rmp-side  { border-radius: 18px !important; padding: 14px !important; }
    .rmp-brand-card strong { font-size: 24px !important; }
    .rmp-brand-mark { width: 40px !important; height: 40px !important; border-radius: 12px !important; }
    .rmp-cats  { grid-template-columns: 1fr 1fr !important; gap: 6px !important; }
    .rmp-cat   { min-height: 44px !important; font-size: 13px !important; padding: 10px 10px !important; }
    .rmp-search { height: 46px !important; }
    .rmp-hero  { padding: 18px 18px !important; border-radius: 18px !important; }
    .rmp-hero h1 { font-size: 38px !important; }
    .rmp-hero p  { font-size: 14px !important; }
    .rmp-actions { gap: 8px !important; }
    .rmp-sort, .rmp-cart-top { min-height: 44px !important; padding: 0 14px !important; font-size: 13px !important; }
    /* Карточки — 1 колонка на маленьком телефоне, 2 если экран позволяет */
    .rmp-grid {
        grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
        gap: 14px !important;
    }
    .rmp-photo { height: 220px !important; }
    .rmp-body  { padding: 16px 16px 16px !important; min-height: auto !important; }
    .rmp-name  { font-size: 22px !important; letter-spacing: -.01em !important; }
    .rmp-desc  { font-size: 13px !important; }
    .rmp-price-ov { font-size: 24px !important; left: 14px !important; bottom: 12px !important; }
    .rmp-add   { width: 48px !important; height: 48px !important; font-size: 26px !important; }
    /* FAB — на всю ширину */
    .rmp-fab-off {
        left: 14px !important;
        right: 14px !important;
        bottom: 16px !important;
        justify-content: center !important;
        border-radius: 20px !important;
    }
    /* Корзина — на весь экран */
    #rmp-cart {
        right: 0 !important;
        left: 0 !important;
        top: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        border-radius: 0 !important;
    }
    /* Модал вариаций */
    #rmp-var-box {
        width: calc(100vw - 16px) !important;
        border-radius: 22px !important;
        padding: 20px !important;
    }
    .rmp-var-photo { height: 200px !important; }
    .rmp-var-title { font-size: 26px !important; }
    /* Лайтбокс на телефоне */
    #rmp-lb-wrap { padding: 54px 8px 52px !important; }
    #rmp-lb-img  {
        max-width: calc(100vw - 16px) !important;
        max-height: calc(100vh - 110px) !important;
        border-radius: 14px !important;
    }
    #rmp-lb-close { width: 44px !important; height: 44px !important; top: 12px !important; right: 14px !important; }
    /* Модал категорий */
    .rmp-cat-box { padding: 18px !important; border-radius: 20px !important; }
    .rmp-cat-head strong { font-size: 30px !important; }
    #rmp-cat-grid { grid-template-columns: 1fr !important; }
}

/* ── Очень маленький телефон (< 380px) ── */
@media (max-width: 379px) {
    html body .rmp-app { padding: 10px 10px 82px !important; }
    .rmp-grid { grid-template-columns: 1fr !important; }
    .rmp-hero h1 { font-size: 32px !important; }
    .rmp-name  { font-size: 20px !important; }
    .rmp-cats  { grid-template-columns: 1fr !important; }
    .rmp-side-title { font-size: 10px !important; }
    .rmp-allcats { min-height: 48px !important; font-size: 13px !important; }
}

/* Скрытие загрузчика через класс (display:none важнее flex) */
.rmp-loader-off {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* ================================================================
   v6.5 BUGFIXES — FAB, category tiles, search, lightbox
   ================================================================ */

/* ── FAB: базовые стили на #rmp-fab, НЕ на классе ── */
#rmp-fab {
    position: fixed !important;
    right: 28px !important;
    bottom: 28px !important;
    z-index: 99998 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, var(--rmp-a), var(--rmp-ad)) !important;
    color: #fff !important;
    min-height: 58px !important;
    padding: 0 22px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    box-shadow: 0 18px 40px rgba(94,20,14,.38) !important;
    font-weight: 900 !important;
    font-size: 15px !important;
    font-family: var(--rmp-fb) !important;
    cursor: pointer !important;
    transition: transform .25s cubic-bezier(.34,1.56,.64,1), box-shadow .22s !important;
    white-space: nowrap !important;
}
#rmp-fab:hover {
    transform: translateY(-3px) scale(1.04) !important;
    box-shadow: 0 24px 52px rgba(94,20,14,.48) !important;
}
/* Скрытое состояние — только transform+opacity, всё остальное сохраняется */
#rmp-fab.rmp-fab-off {
    transform: translateY(90px) scale(.85) !important;
    opacity: 0 !important;
    pointer-events: none !important;
}
/* На мобильном — на всю ширину */
@media (max-width: 720px) {
    #rmp-fab {
        left: 12px !important;
        right: 12px !important;
        bottom: 16px !important;
        justify-content: center !important;
        border-radius: 20px !important;
    }
}

/* ── CATEGORY TILES в модале — исправляем !important конфликт ── */
.rmp-cat-tile {
    min-height: 58px !important;
    border: 1.5px solid rgba(157,31,27,.18) !important;
    background: #fffdf8 !important;
    color: #351812 !important;          /* явный цвет, НЕ var */
    border-radius: 16px !important;
    text-align: left !important;
    padding: 12px 16px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    cursor: pointer !important;
    transition: all .18s !important;
    line-height: 1.3 !important;
    font-family: var(--rmp-fb) !important;
}
/* Hover и active — с !important чтобы перебить base */
.rmp-cat-tile:hover {
    background: linear-gradient(135deg, var(--rmp-a), var(--rmp-ad)) !important;
    color: #ffffff !important;
    border-color: transparent !important;
    box-shadow: 0 8px 22px rgba(157,31,27,.28) !important;
    transform: translateY(-1px) !important;
}
.rmp-cat-tile.on {
    background: linear-gradient(135deg, var(--rmp-a), var(--rmp-ad)) !important;
    color: #ffffff !important;
    border-color: transparent !important;
    box-shadow: 0 8px 22px rgba(157,31,27,.28) !important;
}
.rmp-cat-tile small {
    float: right !important;
    background: rgba(157,31,27,.10) !important;
    color: var(--rmp-a) !important;
    border-radius: 999px !important;
    padding: 2px 8px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    margin-left: 6px !important;
}
.rmp-cat-tile:hover small,
.rmp-cat-tile.on small {
    background: rgba(255,255,255,.2) !important;
    color: #fff !important;
}

/* ── SEARCH PLACEHOLDER — убеждаемся что виден ── */
.rmp-search::placeholder,
#rmp-search::placeholder {
    color: rgba(53,24,18,.45) !important;
    opacity: 1 !important;
    font-size: 14px !important;
}
#rmp-cat-search::placeholder {
    color: rgba(53,24,18,.45) !important;
    opacity: 1 !important;
}

/* ── LIGHTBOX — максимальный размер фото ── */
#rmp-lightbox {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(10,3,1,.95) !important;
    z-index: 100000 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    cursor: zoom-out !important;
}
#rmp-lightbox[hidden] { display: none !important; }

#rmp-lb-wrap {
    flex: 1 !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 64px 24px 60px !important;
    cursor: zoom-out !important;
}
#rmp-lb-img {
    max-width: min(1400px, calc(100vw - 48px)) !important;
    max-height: calc(100vh - 128px) !important;
    width: auto !important;
    height: auto !important;
    border-radius: 18px !important;
    object-fit: contain !important;
    box-shadow: 0 0 0 1px rgba(255,255,255,.07), 0 40px 120px rgba(0,0,0,.85) !important;
    display: block !important;
    cursor: default !important;
    animation: rmpLbIn .24s cubic-bezier(.34,1.2,.64,1) !important;
}
@keyframes rmpLbIn {
    from { transform: scale(.88); opacity: 0; }
    to   { transform: scale(1);   opacity: 1; }
}
#rmp-lb-close {
    position: fixed !important;
    top: 16px !important; right: 20px !important;
    z-index: 10 !important;
    width: 52px !important; height: 52px !important;
    border-radius: 50% !important;
    border: 2px solid rgba(255,255,255,.28) !important;
    background: rgba(255,255,255,.14) !important;
    color: #fff !important;
    font-size: 22px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    backdrop-filter: blur(8px) !important;
    transition: background .15s !important;
}
#rmp-lb-close:hover {
    background: rgba(157,31,27,.85) !important;
    border-color: transparent !important;
}
#rmp-lb-name {
    position: fixed !important;
    bottom: 20px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    color: rgba(255,255,255,.9) !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    text-align: center !important;
    background: rgba(10,3,1,.65) !important;
    backdrop-filter: blur(10px) !important;
    padding: 10px 26px !important;
    border-radius: 999px !important;
    max-width: calc(100vw - 40px) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    border: 1px solid rgba(255,255,255,.12) !important;
}
@media (max-width: 600px) {
    #rmp-lb-wrap { padding: 54px 8px 52px !important; }
    #rmp-lb-img  { max-width: calc(100vw - 16px) !important; max-height: calc(100vh - 110px) !important; border-radius: 12px !important; }
    #rmp-lb-close { width: 44px !important; height: 44px !important; top: 10px !important; right: 12px !important; }
}

/* ── VARIATION MODAL — убираем "загружаем" скачок ── */
.rmp-var-loading {
    padding: 28px !important;
    text-align: center !important;
    color: var(--rmp-muted) !important;
    font-size: 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
}
.rmp-var-spinner {
    width: 20px !important; height: 20px !important;
    border-radius: 50% !important;
    border: 2px solid rgba(157,31,27,.2) !important;
    border-top-color: var(--rmp-a) !important;
    animation: rmpSpin .7s linear infinite !important;
    flex-shrink: 0 !important;
}
@keyframes rmpSpin { to { transform: rotate(360deg); } }

/* ── LOADER скрытие (fix display:flex !important) ── */
.rmp-loader-off {
    display: none !important;
}

/* ================================================================
   v6.6 — STICKY SIDEBAR + LIGHTBOX + SCROLLBAR + VARIATIONS
   ================================================================ */

/* ── ГЛАВНЫЙ БАГ: overflow:hidden ломает position:sticky ──
   Меняем на overflow:clip — клипает визуально но НЕ создаёт
   scroll-container, поэтому sticky снова работает           */
.rmp-app {
    overflow: clip !important;
    overflow-x: clip !important;
}

/* ── SIDEBAR: sticky + плавное следование ── */
.rmp-side {
    position: sticky !important;
    top: 16px !important;
    align-self: start !important;
    max-height: calc(100vh - 32px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    /* плавный скролл внутри */
    scroll-behavior: smooth !important;
    scrollbar-width: thin !important;
    scrollbar-color: rgba(157,31,27,.2) transparent !important;
}
.rmp-side::-webkit-scrollbar { width: 4px !important; }
.rmp-side::-webkit-scrollbar-thumb { background: rgba(157,31,27,.25) !important; border-radius: 4px !important; }
.rmp-side::-webkit-scrollbar-track { background: transparent !important; }

/* ── КАТЕГОРИЙНЫЙ МОДАЛ: скроллбар красивый ── */
.rmp-cat-box {
    scrollbar-width: thin !important;
    scrollbar-color: rgba(157,31,27,.25) rgba(157,31,27,.06) !important;
}
.rmp-cat-box::-webkit-scrollbar { width: 6px !important; }
.rmp-cat-box::-webkit-scrollbar-thumb { background: rgba(157,31,27,.3) !important; border-radius: 6px !important; }
.rmp-cat-box::-webkit-scrollbar-track { background: rgba(157,31,27,.06) !important; border-radius: 6px !important; }

/* ── LIGHTBOX: фото на весь экран ──
   Ключевое: width (не max-width!) чтобы фото растягивалось */
#rmp-lightbox {
    position: fixed !important;
    inset: 0 !important;
    z-index: 9999999 !important;
    background: rgba(8,3,1,.97) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 60px 20px 64px !important;
    cursor: zoom-out !important;
}
#rmp-lightbox[hidden] { display: none !important; }

/* Фото — именно width, не max-width */
#rmp-lb-img {
    width: min(1360px, calc(100vw - 40px)) !important;
    max-height: calc(100vh - 130px) !important;
    height: auto !important;
    border-radius: 16px !important;
    object-fit: contain !important;
    box-shadow: 0 0 0 1px rgba(255,255,255,.06), 0 48px 130px rgba(0,0,0,.9) !important;
    display: block !important;
    cursor: default !important;
    animation: rmpLbZoom .22s cubic-bezier(.34,1.2,.64,1) both !important;
}
@keyframes rmpLbZoom {
    from { transform: scale(.84); opacity: 0; }
    to   { transform: scale(1);   opacity: 1; }
}
/* Кнопка закрыть — всегда поверх */
#rmp-lb-close {
    position: fixed !important;
    top: 14px !important; right: 18px !important;
    z-index: 10 !important;
    width: 50px !important; height: 50px !important;
    border-radius: 50% !important;
    border: 2px solid rgba(255,255,255,.3) !important;
    background: rgba(255,255,255,.15) !important;
    backdrop-filter: blur(8px) !important;
    color: #fff !important; font-size: 22px !important;
    cursor: pointer !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    transition: background .15s !important;
}
#rmp-lb-close:hover { background: rgba(157,31,27,.85) !important; border-color: transparent !important; }
/* Название снизу */
#rmp-lb-name {
    position: fixed !important;
    bottom: 18px !important; left: 50% !important;
    transform: translateX(-50%) !important;
    color: rgba(255,255,255,.88) !important;
    font-size: 15px !important; font-weight: 700 !important;
    background: rgba(8,3,1,.68) !important;
    backdrop-filter: blur(10px) !important;
    padding: 10px 26px !important; border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    max-width: calc(100vw - 40px) !important;
    white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important;
    text-align: center !important;
}
@media (max-width: 600px) {
    #rmp-lb-img {
        width: calc(100vw - 16px) !important;
        max-height: calc(100vh - 110px) !important;
        border-radius: 10px !important;
    }
    #rmp-lightbox { padding: 52px 8px 56px !important; }
    #rmp-lb-close { width: 44px !important; height: 44px !important; top: 10px !important; right: 12px !important; }
}

/* ── VARIATION MODAL: цена обновляется ── */
#rmp-var-price {
    font-family: var(--rmp-fh) !important;
    font-size: 38px !important;
    font-weight: 700 !important;
    color: var(--rmp-a) !important;
    display: block !important;
    margin: 18px 0 16px !important;
    min-height: 52px !important;
    line-height: 1 !important;
    transition: opacity .18s !important;
}
#rmp-var-price:empty::after {
    content: 'Выберите вариант' !important;
    font-family: var(--rmp-fb) !important;
    font-size: 14px !important;
    color: var(--rmp-muted) !important;
    font-weight: 400 !important;
}
.rmp-var-opt {
    border: 1.5px solid rgba(157,31,27,.22) !important;
    background: #fff !important;
    border-radius: 999px !important;
    padding: 10px 18px !important;
    cursor: pointer !important;
    font-family: var(--rmp-fb) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #351812 !important;
    transition: all .16s !important;
}
.rmp-var-opt:hover {
    border-color: var(--rmp-a) !important;
    color: var(--rmp-a) !important;
    background: rgba(157,31,27,.05) !important;
}
.rmp-var-opt.on {
    background: var(--rmp-a) !important;
    color: #fff !important;
    border-color: var(--rmp-a) !important;
    box-shadow: 0 4px 14px rgba(157,31,27,.3) !important;
}

/* ================================================================
   v6.8 — PREMIUM FLAT CARDS, NO DISH/LIGHTBOX SCROLL, FIXED SIDEBAR
   ================================================================ */
html body .rmp-app{
    overflow: visible !important;
    overflow-x: clip !important;
}
html body .rmp-side{
    position: sticky !important;
    top: 18px !important;
    max-height: none !important;
    overflow: visible !important;
    border-radius: 30px !important;
    background: linear-gradient(180deg,#fffaf2,#fbefdf) !important;
}
html body .rmp-cats{
    overflow: visible !important;
    max-height: none !important;
}
html body .rmp-cat.rmp-cat-extra{display:none !important;}
html body .rmp-cats.rmp-cats-open .rmp-cat.rmp-cat-extra{display:grid !important;}
html body .rmp-cat-more{
    width:100% !important;
    margin:12px 0 0 !important;
    height:44px !important;
    border:1px solid rgba(157,31,27,.16) !important;
    border-radius:16px !important;
    background:#fff8ec !important;
    color:var(--rmp-a) !important;
    font-weight:900 !important;
    cursor:pointer !important;
}
html body .rmp-grid{
    grid-template-columns: repeat(auto-fill,minmax(430px,1fr)) !important;
    gap:20px !important;
}
html body .rmp-card{
    display:grid !important;
    grid-template-columns: 178px minmax(0,1fr) !important;
    min-height:178px !important;
    border-radius:26px !important;
    border:1px solid rgba(94,36,18,.12) !important;
    background:linear-gradient(135deg,#fffdf8 0%,#fff7eb 100%) !important;
    box-shadow:0 16px 42px rgba(57,20,9,.10), inset 0 1px 0 rgba(255,255,255,.9) !important;
    overflow:hidden !important;
    cursor:pointer !important;
}
html body .rmp-card:hover{
    transform:translateY(-3px) !important;
    box-shadow:0 22px 56px rgba(57,20,9,.16), inset 0 1px 0 rgba(255,255,255,.95) !important;
}
html body .rmp-photo{
    height:100% !important;
    min-height:178px !important;
    border-radius:0 !important;
    background:#ead9c0 !important;
}
html body .rmp-photo img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    filter:saturate(1.04) contrast(1.02) !important;
}
html body .rmp-photo:after{
    height:100% !important;
    background:linear-gradient(90deg,rgba(38,12,5,.20),transparent 55%),linear-gradient(0deg,rgba(38,12,5,.38),transparent 42%) !important;
}
html body .rmp-price-ov{
    left:16px !important;
    bottom:15px !important;
    font-size:25px !important;
    line-height:1 !important;
    padding:0 !important;
}
html body .rmp-body{
    padding:20px 20px 16px !important;
    display:flex !important;
    flex-direction:column !important;
    min-width:0 !important;
}
html body .rmp-name{
    font-family:var(--rmp-fh) !important;
    font-size:22px !important;
    line-height:1.05 !important;
    font-weight:800 !important;
    color:var(--rmp-t) !important;
    margin:0 0 8px !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
}
html body .rmp-desc{
    font-size:14px !important;
    line-height:1.45 !important;
    color:var(--rmp-muted) !important;
    display:-webkit-box !important;
    -webkit-line-clamp:3 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    margin:0 !important;
}
html body .rmp-divider{
    margin-top:auto !important;
    height:1px !important;
    background:linear-gradient(90deg,rgba(157,31,27,.14),transparent) !important;
}
html body .rmp-foot{
    min-height:44px !important;
    display:flex !important;
    justify-content:flex-end !important;
    align-items:flex-end !important;
    padding-top:10px !important;
}
html body .rmp-add{
    width:44px !important;
    height:44px !important;
    border-radius:15px !important;
    background:linear-gradient(135deg,var(--rmp-a),var(--rmp-ad)) !important;
    box-shadow:0 12px 24px rgba(157,31,27,.28) !important;
}
html body .rmp-varbadge{
    right:12px !important;
    bottom:auto !important;
    top:12px !important;
    background:rgba(255,248,224,.94) !important;
    color:var(--rmp-a) !important;
    box-shadow:0 8px 18px rgba(0,0,0,.12) !important;
}
html body .rmp-zoom{display:none !important;}
html body #rmp-lightbox{display:none !important;}
html body #rmp-var-bg,
html body #rmp-wmodal-bg{
    overflow:hidden !important;
}
html body #rmp-var-box,
html body #rmp-wmodal,
html body .rmp-cat-box{
    max-height:none !important;
    overflow:visible !important;
}
html body .rmp-var-photo{
    height:160px !important;
    max-height:160px !important;
    object-fit:cover !important;
    border-radius:18px !important;
}
@media (max-width:1180px){
    html body .rmp-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr)) !important;}
    html body .rmp-side{position:relative !important; top:0 !important;}
}
@media (max-width:720px){
    html body .rmp-grid{grid-template-columns:1fr !important;}
    html body .rmp-card{grid-template-columns:136px minmax(0,1fr) !important;min-height:156px !important;border-radius:22px !important;}
    html body .rmp-photo{min-height:156px !important;}
    html body .rmp-body{padding:16px 15px 13px !important;}
    html body .rmp-name{font-size:19px !important;}
    html body .rmp-desc{-webkit-line-clamp:2 !important;font-size:13px !important;}
}
@media (max-width:460px){
    html body .rmp-card{grid-template-columns:1fr !important;}
    html body .rmp-photo{height:145px !important;min-height:145px !important;}
}


/* ================================================================
   v6.10 — EXTRA BIG PREMIUM PHOTO CARDS + WORKING PHOTO LIGHTBOX
   ================================================================ */
html body .rmp-grid{
    grid-template-columns:repeat(auto-fill,minmax(380px,1fr)) !important;
    gap:26px !important;
    align-items:stretch !important;
}
html body .rmp-card{
    display:flex !important;
    flex-direction:column !important;
    min-height:500px !important;
    border-radius:24px !important;
    background:linear-gradient(180deg,#fffdf8 0%,#fff8ee 100%) !important;
    border:1px solid rgba(94,36,18,.12) !important;
    box-shadow:0 18px 42px rgba(57,20,9,.11) !important;
    overflow:hidden !important;
}
html body .rmp-card:hover{
    transform:translateY(-4px) !important;
    box-shadow:0 26px 62px rgba(57,20,9,.17) !important;
}
html body .rmp-photo{
    width:100% !important;
    height:420px !important;
    min-height:420px !important;
    border-radius:0 !important;
    cursor:zoom-in !important;
    overflow:hidden !important;
}
html body .rmp-photo img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center center !important;
    transform:none !important;
}
html body .rmp-card:hover .rmp-photo img{transform:scale(1.035) !important;}
html body .rmp-photo:after{
    height:92px !important;
    background:linear-gradient(180deg,transparent 0%,rgba(38,12,5,.64) 100%) !important;
}
html body .rmp-zoom{
    display:grid !important;
    position:absolute !important;
    right:14px !important;
    top:14px !important;
    width:38px !important;
    height:38px !important;
    border-radius:50% !important;
    place-items:center !important;
    background:rgba(35,10,5,.42) !important;
    backdrop-filter:blur(5px) !important;
    opacity:.95 !important;
    z-index:4 !important;
}
html body .rmp-price-ov{
    left:18px !important;
    bottom:16px !important;
    font-size:27px !important;
}
html body .rmp-body{
    flex:1 !important;
    padding:20px 20px 18px !important;
    display:flex !important;
    flex-direction:column !important;
}
html body .rmp-name{
    font-family:var(--rmp-fb) !important;
    font-size:19px !important;
    line-height:1.28 !important;
    font-weight:900 !important;
    letter-spacing:-.01em !important;
    -webkit-line-clamp:2 !important;
}
html body .rmp-desc{
    font-size:15px !important;
    line-height:1.45 !important;
    -webkit-line-clamp:3 !important;
}
html body .rmp-foot{
    margin-top:auto !important;
    min-height:50px !important;
}
html body .rmp-add{
    width:48px !important;
    height:48px !important;
    border-radius:50% !important;
    font-size:25px !important;
}
html body #rmp-lightbox{
    display:grid !important;
    position:fixed !important;
    inset:0 !important;
    place-items:center !important;
    padding:28px !important;
    background:rgba(25,7,4,.72) !important;
    z-index:100000 !important;
    overflow:hidden !important;
}
html body #rmp-lightbox[hidden]{display:none !important;}
html body #rmp-lb-img{
    display:block !important;
    width:auto !important;
    height:auto !important;
    max-width:min(980px,88vw) !important;
    max-height:76vh !important;
    object-fit:contain !important;
    border-radius:24px !important;
    box-shadow:0 28px 90px rgba(0,0,0,.45) !important;
}
html body #rmp-lb-close{
    position:fixed !important;
    right:28px !important;
    top:28px !important;
    width:44px !important;
    height:44px !important;
    border-radius:50% !important;
    background:#fff8ec !important;
    color:var(--rmp-a) !important;
    z-index:100002 !important;
}
html body #rmp-lb-name{
    color:#fff !important;
    text-align:center !important;
    font-weight:900 !important;
    max-width:88vw !important;
}
html body .rmp-var-photo{
    height:260px !important;
    max-height:260px !important;
    object-fit:cover !important;
}
@media (min-width:1600px){
    html body .rmp-grid{grid-template-columns:repeat(auto-fill,minmax(410px,1fr)) !important;}
    html body .rmp-photo{height:355px !important;min-height:355px !important;}
    html body .rmp-card{min-height:530px !important;}
}
@media (max-width:1180px){
    html body .rmp-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr)) !important;}
    html body .rmp-photo{height:290px !important;min-height:290px !important;}
}
@media (max-width:720px){
    html body .rmp-grid{grid-template-columns:1fr !important;}
    html body .rmp-card{min-height:auto !important;}
    html body .rmp-photo{height:280px !important;min-height:280px !important;}
}
@media (max-width:460px){
    html body .rmp-photo{height:250px !important;min-height:250px !important;}
}


/* v6.12 — enlarged photo lightbox only */
html body #rmp-lightbox{
    display:grid !important;
    place-items:center !important;
    padding:34px 42px 58px !important;
    background:rgba(25,7,4,.78) !important;
    overflow:hidden !important;
}
html body #rmp-lightbox[hidden]{display:none !important;}
html body #rmp-lb-img{
    display:block !important;
    width:min(92vw,1420px) !important;
    height:auto !important;
    max-width:92vw !important;
    max-height:88vh !important;
    object-fit:contain !important;
    border-radius:26px !important;
    box-shadow:0 34px 100px rgba(0,0,0,.52) !important;
}
html body #rmp-lb-close{
    position:fixed !important;
    right:28px !important;
    top:28px !important;
    z-index:100002 !important;
}
html body #rmp-lb-name{
    position:fixed !important;
    left:50% !important;
    bottom:22px !important;
    transform:translateX(-50%) !important;
    max-width:90vw !important;
    padding:8px 16px !important;
    border-radius:999px !important;
    background:rgba(25,7,4,.54) !important;
}
@media (max-width:720px){
    html body #rmp-lightbox{padding:58px 10px 62px !important;}
    html body #rmp-lb-img{
        width:96vw !important;
        max-width:96vw !important;
        max-height:82vh !important;
        border-radius:18px !important;
    }
}


/* v6.13 — lightbox above site menu/admin bar + clean dark background */
html body #rmp-lightbox{
    position:fixed !important;
    inset:0 !important;
    z-index:2147483000 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:28px !important;
    background:rgba(18,6,3,.94) !important;
    overflow:hidden !important;
    isolation:isolate !important;
}
html body #rmp-lightbox[hidden]{display:none !important;}
html body #rmp-lb-img{
    display:block !important;
    width:auto !important;
    height:auto !important;
    max-width:94vw !important;
    max-height:92vh !important;
    object-fit:contain !important;
    border-radius:18px !important;
    background:transparent !important;
    box-shadow:0 32px 110px rgba(0,0,0,.62) !important;
}
html body #rmp-lb-close{
    position:fixed !important;
    right:24px !important;
    top:24px !important;
    z-index:2147483001 !important;
    width:52px !important;
    height:52px !important;
    border:0 !important;
    border-radius:50% !important;
    background:#fff8ec !important;
    color:#9d1f1b !important;
    font-size:28px !important;
    line-height:52px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    box-shadow:0 12px 34px rgba(0,0,0,.42) !important;
    cursor:pointer !important;
}
html body #rmp-lb-name{
    position:fixed !important;
    left:50% !important;
    bottom:18px !important;
    transform:translateX(-50%) !important;
    z-index:2147483001 !important;
    max-width:92vw !important;
    padding:9px 18px !important;
    border-radius:999px !important;
    background:rgba(18,6,3,.74) !important;
    color:#fff !important;
    text-align:center !important;
    font-weight:900 !important;
}
body.rmp-lightbox-open{overflow:hidden !important;}
@media (max-width:720px){
    html body #rmp-lightbox{padding:72px 10px 64px !important;}
    html body #rmp-lb-img{max-width:96vw !important;max-height:84vh !important;border-radius:16px !important;}
    html body #rmp-lb-close{right:14px !important;top:14px !important;width:48px !important;height:48px !important;line-height:48px !important;}
}


/* v6.14 — крупное фото при открытии + крестик выше меню сайта */
html body #rmp-lightbox{
    position:fixed !important;
    left:0 !important;
    top:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:100vw !important;
    height:100vh !important;
    z-index:2147483647 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:18px 22px 54px !important;
    background:rgba(18,6,3,.92) !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
}
html body #rmp-lightbox[hidden]{
    display:none !important;
}
html body #rmp-lb-wrap{
    width:min(96vw,1680px) !important;
    height:calc(100vh - 86px) !important;
    max-height:94vh !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:transparent !important;
    pointer-events:none !important;
}
html body #rmp-lb-img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:contain !important;
    border-radius:18px !important;
    background:transparent !important;
    box-shadow:0 34px 120px rgba(0,0,0,.66) !important;
    pointer-events:auto !important;
}
html body #rmp-lb-close{
    position:fixed !important;
    right:18px !important;
    top:18px !important;
    z-index:2147483647 !important;
    width:56px !important;
    height:56px !important;
    min-width:56px !important;
    min-height:56px !important;
    border:0 !important;
    border-radius:50% !important;
    background:#fff8ec !important;
    color:#9d1f1b !important;
    font-size:30px !important;
    line-height:1 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    box-shadow:0 14px 38px rgba(0,0,0,.48) !important;
    cursor:pointer !important;
}
html body #rmp-lb-name{
    position:fixed !important;
    left:50% !important;
    bottom:16px !important;
    transform:translateX(-50%) !important;
    z-index:2147483647 !important;
    max-width:92vw !important;
    padding:9px 18px !important;
    border-radius:999px !important;
    background:rgba(18,6,3,.78) !important;
    color:#fff !important;
    text-align:center !important;
    font-weight:900 !important;
}
body.rmp-lightbox-open,
html.rmp-lightbox-open{
    overflow:hidden !important;
}
@media (max-width:720px){
    html body #rmp-lightbox{
        padding:64px 8px 54px !important;
    }
    html body #rmp-lb-wrap{
        width:98vw !important;
        height:calc(100vh - 124px) !important;
    }
    html body #rmp-lb-img{
        border-radius:14px !important;
    }
    html body #rmp-lb-close{
        right:10px !important;
        top:10px !important;
        width:50px !important;
        height:50px !important;
        min-width:50px !important;
        min-height:50px !important;
        font-size:26px !important;
    }
}


/* v6.15 — чёткое крупное фото и непрозрачный фон лайтбокса */
html body #rmp-lightbox{
    background:#160805 !important;
    background-color:#160805 !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    opacity:1 !important;
}
html body #rmp-lightbox::before{
    content:"" !important;
    position:fixed !important;
    inset:0 !important;
    background:#160805 !important;
    opacity:1 !important;
    z-index:-1 !important;
}
html body #rmp-lb-wrap{
    width:min(98vw,1800px) !important;
    height:calc(100vh - 72px) !important;
    background:#160805 !important;
}
html body #rmp-lb-img{
    width:auto !important;
    height:auto !important;
    max-width:98vw !important;
    max-height:calc(100vh - 72px) !important;
    object-fit:contain !important;
    image-rendering:auto !important;
    transform:none !important;
    filter:none !important;
    opacity:1 !important;
    background:#160805 !important;
}
html body #rmp-lb-close{
    top:14px !important;
    right:14px !important;
    z-index:2147483647 !important;
}
html body.admin-bar #rmp-lb-close{
    top:14px !important;
}
html body #rmp-lb-name{
    bottom:14px !important;
}


/* v6.16 — возвращаем крупное фото при открытии, фон остаётся цельным */
html body #rmp-lightbox{
    position:fixed !important;
    inset:0 !important;
    width:100vw !important;
    height:100vh !important;
    z-index:2147483647 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:16px 18px 58px !important;
    background:#160805 !important;
    background-color:#160805 !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
}
html body #rmp-lightbox[hidden]{
    display:none !important;
}
html body #rmp-lb-wrap{
    width:96vw !important;
    height:calc(100vh - 86px) !important;
    max-width:1800px !important;
    max-height:94vh !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#160805 !important;
}
html body #rmp-lb-img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:96vw !important;
    max-height:calc(100vh - 86px) !important;
    object-fit:contain !important;
    border-radius:18px !important;
    background:#160805 !important;
    box-shadow:0 30px 110px rgba(0,0,0,.58) !important;
    opacity:1 !important;
    filter:none !important;
    transform:none !important;
}
html body #rmp-lb-close{
    position:fixed !important;
    top:14px !important;
    right:14px !important;
    z-index:2147483647 !important;
    width:56px !important;
    height:56px !important;
    min-width:56px !important;
    min-height:56px !important;
}
html body #rmp-lb-name{
    position:fixed !important;
    left:50% !important;
    bottom:14px !important;
    transform:translateX(-50%) !important;
    z-index:2147483647 !important;
}
@media (max-width:720px){
    html body #rmp-lightbox{
        padding:64px 8px 54px !important;
    }
    html body #rmp-lb-wrap{
        width:98vw !important;
        height:calc(100vh - 124px) !important;
    }
    html body #rmp-lb-img{
        max-width:98vw !important;
        max-height:calc(100vh - 124px) !important;
        border-radius:14px !important;
    }
}


/* v6.18 — лайтбокс большой, фон непрозрачный, блюда не затрагиваются */
html body #rmp-lightbox{
    background:#160805 !important;
    background-color:#160805 !important;
}
html body #rmp-lb-img{
    filter:none !important;
    opacity:1 !important;
    image-rendering:auto !important;
}


/* v6.19 — лайтбокс крупный, фон цельный, изображение берётся из full_image */
html body #rmp-lightbox{
    background:#160805 !important;
    background-color:#160805 !important;
}
html body #rmp-lb-img{
    object-fit:contain !important;
    filter:none !important;
    opacity:1 !important;
    image-rendering:auto !important;
}


/* v6.21 — реальное исправление наезда шапки сайта на плагин
   Фактические классы плагина: .rmp-app / .rmp-shell / .rmp-side / .rmp-main-area */

:root{
    --rmp-fixed-site-header: 104px;
}

/* Боковое меню больше не прилипает под самым верхом экрана и не уходит под шапку сайта */
html body .rmp-app .rmp-side{
    position: sticky !important;
    top: var(--rmp-fixed-site-header) !important;
    align-self: flex-start !important;
    max-height: calc(100vh - var(--rmp-fixed-site-header) - 18px) !important;
    overflow: visible !important;
}

/* На случай старых блоков CSS ниже/выше — принудительно сбрасываем top: 14/18/24px */
html body .rmp-side{
    top: var(--rmp-fixed-site-header) !important;
}

/* Якоря и автопрокрутка теперь учитывают фиксированную шапку */
html{
    scroll-padding-top: var(--rmp-fixed-site-header) !important;
}
html body .rmp-app,
html body #rmp-app,
html body .rmp-shell,
html body .rmp-main-area,
html body .rmp-grid,
html body .rmp-card{
    scroll-margin-top: var(--rmp-fixed-site-header) !important;
}

/* Делаем шапку сайта визуально непрозрачной над меню, чтобы карточки не просвечивали под ней */
html body header,
html body .site-header,
html body #masthead,
html body .main-header-bar,
html body .elementor-location-header,
html body .whb-header{
    background: #fff8ef !important;
    z-index: 99990 !important;
}

/* Если пользователь залогинен и видна WordPress admin bar */
html body.admin-bar{
    --rmp-fixed-site-header: 136px;
}

/* На планшетах/телефонах боковое меню не липкое */
@media (max-width: 1180px){
    html body .rmp-app .rmp-side,
    html body .rmp-side{
        position: relative !important;
        top: auto !important;
        max-height: none !important;
    }
}


/* v6.22 — ресторанный бейдж вариантов товара и правильное расположение рядом с лупой */
html body .rmp-photo{
    position:relative !important;
}
html body .rmp-varbadge{
    position:absolute !important;
    top:14px !important;
    right:58px !important;
    left:auto !important;
    bottom:auto !important;
    max-width:calc(100% - 82px) !important;
    min-height:34px !important;
    padding:8px 13px !important;
    border-radius:999px !important;
    background:rgba(255,248,236,.96) !important;
    color:var(--rmp-a) !important;
    border:1px solid rgba(157,31,27,.16) !important;
    box-shadow:0 10px 24px rgba(43,10,4,.16) !important;
    font-family:var(--rmp-fb) !important;
    font-size:11px !important;
    line-height:1.05 !important;
    font-weight:900 !important;
    letter-spacing:.03em !important;
    text-transform:none !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    z-index:8 !important;
    pointer-events:none !important;
}
html body .rmp-zoom{
    display:flex !important;
    position:absolute !important;
    top:14px !important;
    right:14px !important;
    left:auto !important;
    bottom:auto !important;
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
    min-height:36px !important;
    border-radius:50% !important;
    align-items:center !important;
    justify-content:center !important;
    background:rgba(70,43,35,.58) !important;
    backdrop-filter:blur(4px) !important;
    -webkit-backdrop-filter:blur(4px) !important;
    z-index:9 !important;
}
html body .rmp-zoom svg{
    display:block !important;
}
@media (max-width:720px){
    html body .rmp-varbadge{
        top:10px !important;
        right:52px !important;
        max-width:calc(100% - 72px) !important;
        min-height:30px !important;
        padding:7px 10px !important;
        font-size:10px !important;
    }
    html body .rmp-zoom{
        top:10px !important;
        right:10px !important;
        width:32px !important;
        height:32px !important;
        min-width:32px !important;
        min-height:32px !important;
    }
}


/* v6.23 — красивое широкое фото в окне выбора порции */
html body .rmp-varmodal .rmp-var-photo,
html body .rmp-modal .rmp-var-photo,
html body .rmp-dialog .rmp-var-photo,
html body .rmp-product-modal .rmp-var-photo,
html body .rmp-variant-modal .rmp-var-photo,
html body [role="dialog"] .rmp-var-photo{
    width:100% !important;
    height:260px !important;
    max-height:34vh !important;
    margin:0 0 22px !important;
    border-radius:22px !important;
    overflow:hidden !important;
    background:#f6ead9 !important;
    box-shadow:0 18px 46px rgba(43,10,4,.14) !important;
}

html body .rmp-varmodal .rmp-var-photo img,
html body .rmp-modal .rmp-var-photo img,
html body .rmp-dialog .rmp-var-photo img,
html body .rmp-product-modal .rmp-var-photo img,
html body .rmp-variant-modal .rmp-var-photo img,
html body [role="dialog"] .rmp-var-photo img{
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    display:block !important;
    object-fit:cover !important;
    object-position:center center !important;
    border-radius:22px !important;
}

html body .rmp-varmodal,
html body .rmp-modal,
html body .rmp-dialog,
html body .rmp-product-modal,
html body .rmp-variant-modal{
    max-width:560px !important;
}

html body .rmp-varmodal .rmp-modal-title,
html body .rmp-modal .rmp-modal-title,
html body .rmp-dialog .rmp-modal-title,
html body .rmp-product-modal .rmp-modal-title,
html body .rmp-variant-modal .rmp-modal-title,
html body [role="dialog"] .rmp-modal-title{
    margin-top:0 !important;
}

html body .rmp-varmodal .rmp-var-price,
html body .rmp-varmodal .rmp-modal-price,
html body .rmp-modal .rmp-var-price,
html body .rmp-modal .rmp-modal-price,
html body .rmp-dialog .rmp-var-price,
html body .rmp-dialog .rmp-modal-price,
html body [role="dialog"] .rmp-var-price,
html body [role="dialog"] .rmp-modal-price{
    transition:opacity .12s ease, transform .12s ease !important;
}

@media (max-width:720px){
    html body .rmp-varmodal .rmp-var-photo,
    html body .rmp-modal .rmp-var-photo,
    html body .rmp-dialog .rmp-var-photo,
    html body .rmp-product-modal .rmp-var-photo,
    html body .rmp-variant-modal .rmp-var-photo,
    html body [role="dialog"] .rmp-var-photo{
        height:220px !important;
        border-radius:18px !important;
    }
}


/* v6.28 — аккуратная цена в окне выбора порции */
html body #rmp-var-price{
    white-space:nowrap !important;
}


/* v6.30 — вариации восстановлены, цена обновляется из выбранной порции */
html body #rmp-var-price{
    white-space:nowrap !important;
}


/* v6.31 — цена порции берётся с сервера и обновляется на кнопке */
html body #rmp-var-price{
    white-space:nowrap !important;
}


/* v6.32 — выбранная цена видна в основной строке модального окна */
html body #rmp-var-from{
    transition:opacity .12s ease !important;
}
html body #rmp-var-price{
    white-space:nowrap !important;
}


/* v6.34 — цена порции обновляется по реальным WooCommerce variation display_price */
html body #rmp-var-from,
html body #rmp-var-price{
    white-space:nowrap !important;
}


/* v6.35 — аккуратный ресторанный шрифт в окне выбора порции */
html body #rmp-var-modal,
html body #rmp-var-modal *{
    font-family: var(--rmp-fb), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
}

html body #rmp-var-title{
    font-family: var(--rmp-fh), Georgia, "Times New Roman", serif !important;
    font-size: clamp(28px, 2.25vw, 38px) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.02em !important;
    font-weight: 700 !important;
    color: var(--rmp-a) !important;
    margin: 0 0 8px !important;
}

html body #rmp-var-from{
    font-family: var(--rmp-fb), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
    font-size: 17px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    color: rgba(83,49,42,.76) !important;
}

html body #rmp-var-price{
    font-family: var(--rmp-fb), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
    font-size: 28px !important;
    line-height: 1.05 !important;
    font-weight: 900 !important;
    letter-spacing: -0.015em !important;
    color: var(--rmp-a) !important;
    white-space: nowrap !important;
}

html body .rmp-var-attr-lbl{
    font-family: var(--rmp-fb), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    color: #2b1a16 !important;
}

html body .rmp-var-opt{
    font-family: var(--rmp-fb), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
}

html body #rmp-var-add{
    font-family: var(--rmp-fb), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    letter-spacing: .01em !important;
}

@media (max-width:720px){
    html body #rmp-var-title{
        font-size: 27px !important;
    }
    html body #rmp-var-price{
        font-size: 25px !important;
    }
}


/* ==========================================================
   v7.0 — Premium Design Engine
   База от v6.35: цены/вариации/лайтбокс сохранены.
   ========================================================== */

html body .rmp-app.rmp-v7{
    --rmp-a:var(--rmp-v7-accent,#9d1f1b) !important;
    --rmp-fh:var(--rmp-v7-heading, Georgia, "Times New Roman", serif) !important;
    background:
        radial-gradient(circle at 12% 0%, rgba(157,31,27,.10), transparent 28%),
        radial-gradient(circle at 95% 12%, rgba(196,150,62,.12), transparent 30%),
        linear-gradient(180deg,#fff8ed 0%,var(--rmp-v7-bg,#f4e3d0) 100%) !important;
    padding-top:38px !important;
    padding-bottom:70px !important;
}

/* Надёжный общий каркас: ничего не разваливается */
html body .rmp-app.rmp-v7 .rmp-shell{
    max-width:1540px !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:270px minmax(0,1fr) !important;
    gap:32px !important;
    align-items:start !important;
}
html body .rmp-app.rmp-v7 .rmp-main-area{
    min-width:0 !important;
}
html body .rmp-app.rmp-v7 .rmp-side{
    border-radius:30px !important;
    overflow:hidden !important;
    box-shadow:0 26px 80px rgba(43,10,4,.16) !important;
    border:1px solid rgba(255,255,255,.28) !important;
}
html body .rmp-app.rmp-v7 .rmp-hero{
    border-radius:32px !important;
    padding:44px 56px !important;
    background:rgba(255,250,242,.88) !important;
    border:1px solid rgba(84,45,22,.08) !important;
    box-shadow:0 26px 80px rgba(43,10,4,.10) !important;
}
html body .rmp-app.rmp-v7 .rmp-hero h1{
    font-family:var(--rmp-fh) !important;
    letter-spacing:-.035em !important;
}
html body .rmp-app.rmp-v7 .rmp-grid{
    align-items:stretch !important;
}
html body .rmp-app.rmp-v7 .rmp-card{
    position:relative !important;
    overflow:hidden !important;
    border-radius:var(--rmp-v7-radius,26px) !important;
    background:rgba(255,250,242,.94) !important;
    border:1px solid rgba(84,45,22,.10) !important;
    box-shadow:0 20px 58px rgba(43,10,4,.12) !important;
    transition:transform .22s ease, box-shadow .22s ease !important;
}
html body .rmp-app.rmp-v7 .rmp-card:hover{
    transform:translateY(-5px) !important;
    box-shadow:0 32px 86px rgba(43,10,4,.18) !important;
}
html body .rmp-app.rmp-v7 .rmp-photo{
    position:relative !important;
    overflow:hidden !important;
    border-radius:calc(var(--rmp-v7-radius,26px) - 2px) calc(var(--rmp-v7-radius,26px) - 2px) 0 0 !important;
}
html body .rmp-app.rmp-v7 .rmp-photo img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    transition:transform .42s ease, filter .42s ease !important;
}
html body .rmp-app.rmp-v7 .rmp-card:hover .rmp-photo img{
    transform:scale(1.045) !important;
}
html body .rmp-app.rmp-v7 .rmp-card-title{
    font-family:var(--rmp-fh) !important;
    color:#2a1510 !important;
}
html body .rmp-app.rmp-v7 .rmp-desc{
    color:rgba(55,31,25,.72) !important;
}
html body .rmp-app.rmp-v7 .rmp-plus{
    background:var(--rmp-v7-accent,#9d1f1b) !important;
    color:#fff !important;
    box-shadow:0 14px 34px rgba(157,31,27,.32) !important;
}
html body .rmp-app.rmp-v7 .rmp-price{
    color:var(--rmp-v7-accent,#9d1f1b) !important;
}

/* ===================== Classic: отключает v7-перестройку ===================== */
html body .rmp-app.rmp-v7-classic{
    background:var(--rmp-v7-bg,#f4e3d0) !important;
}
html body .rmp-app.rmp-v7-classic .rmp-card-title{
    font-family:var(--rmp-fb) !important;
}

/* ===================== 1. Royal Restaurant ===================== */
html body .rmp-app.rmp-v7-royal .rmp-side{
    background:
        linear-gradient(180deg,
            color-mix(in srgb,var(--rmp-v7-sidebar,#24140d) 92%,#fff 8%),
            color-mix(in srgb,var(--rmp-v7-sidebar,#24140d) 78%,#000 22%)
        ) !important;
    color:#fff !important;
}
html body .rmp-app.rmp-v7-royal .rmp-brand-card strong,
html body .rmp-app.rmp-v7-royal .rmp-side-title,
html body .rmp-app.rmp-v7-royal .rmp-cat-label{
    color:#fff7df !important;
}
html body .rmp-app.rmp-v7-royal .rmp-brand-card span{
    color:rgba(255,255,255,.72) !important;
}
html body .rmp-app.rmp-v7-royal .rmp-search,
html body .rmp-app.rmp-v7-royal .rmp-allcats{
    background:rgba(255,255,255,.08) !important;
    color:#fff !important;
    border-color:rgba(255,255,255,.16) !important;
}
html body .rmp-app.rmp-v7-royal .rmp-cat{
    background:transparent !important;
    color:#fff !important;
}
html body .rmp-app.rmp-v7-royal .rmp-cat.on,
html body .rmp-app.rmp-v7-royal .rmp-cat:hover{
    background:rgba(255,255,255,.10) !important;
    border-color:rgba(255,255,255,.14) !important;
}
html body .rmp-app.rmp-v7-royal .rmp-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:28px !important;
}
html body .rmp-app.rmp-v7-royal .rmp-card{
    min-height:calc(var(--rmp-v7-photo,330px) + 185px) !important;
}
html body .rmp-app.rmp-v7-royal .rmp-photo{
    height:var(--rmp-v7-photo,330px) !important;
}
html body .rmp-app.rmp-v7-royal .rmp-photo::after{
    content:"" !important;
    position:absolute !important;
    inset:auto 0 0 0 !important;
    height:44% !important;
    background:linear-gradient(180deg,transparent,rgba(0,0,0,.62)) !important;
    pointer-events:none !important;
}
html body .rmp-app.rmp-v7-royal .rmp-price{
    position:absolute !important;
    left:20px !important;
    top:calc(var(--rmp-v7-photo,330px) - 52px) !important;
    z-index:6 !important;
    color:#fff !important;
    font-size:25px !important;
    text-shadow:0 4px 18px rgba(0,0,0,.58) !important;
}
html body .rmp-app.rmp-v7-royal .rmp-card-body{
    padding:22px 22px 78px !important;
}
html body .rmp-app.rmp-v7-royal .rmp-card-title{
    font-size:23px !important;
    line-height:1.08 !important;
}
html body .rmp-app.rmp-v7-royal .rmp-desc{
    -webkit-line-clamp:2 !important;
    font-size:14px !important;
    line-height:1.48 !important;
}
html body .rmp-app.rmp-v7-royal .rmp-plus{
    width:48px !important;
    height:48px !important;
    right:22px !important;
    bottom:22px !important;
}

/* ===================== 2. Chef Table ===================== */
html body .rmp-app.rmp-v7-chef{
    background:linear-gradient(180deg,#fff8ee,#ead7bf) !important;
}
html body .rmp-app.rmp-v7-chef .rmp-shell{
    grid-template-columns:250px minmax(0,1fr) !important;
}
html body .rmp-app.rmp-v7-chef .rmp-side{
    background:rgba(255,250,242,.90) !important;
}
html body .rmp-app.rmp-v7-chef .rmp-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:30px !important;
}
html body .rmp-app.rmp-v7-chef .rmp-card{
    min-height:620px !important;
    border-radius:34px !important;
}
html body .rmp-app.rmp-v7-chef .rmp-photo{
    height:405px !important;
}
html body .rmp-app.rmp-v7-chef .rmp-card-body{
    padding:28px 30px 88px !important;
}
html body .rmp-app.rmp-v7-chef .rmp-card-title{
    font-size:30px !important;
    line-height:1.06 !important;
}
html body .rmp-app.rmp-v7-chef .rmp-desc{
    font-size:16px !important;
    line-height:1.58 !important;
    -webkit-line-clamp:3 !important;
}
html body .rmp-app.rmp-v7-chef .rmp-price{
    position:absolute !important;
    left:30px !important;
    bottom:28px !important;
    font-size:28px !important;
}
html body .rmp-app.rmp-v7-chef .rmp-plus{
    width:54px !important;
    height:54px !important;
    right:28px !important;
    bottom:26px !important;
}

/* ===================== 3. Dark Luxury ===================== */
html body .rmp-app.rmp-v7-dark{
    background:
        radial-gradient(circle at 80% 0%,rgba(196,150,62,.20),transparent 30%),
        linear-gradient(180deg,#170d09,#080504) !important;
}
html body .rmp-app.rmp-v7-dark .rmp-hero,
html body .rmp-app.rmp-v7-dark .rmp-card,
html body .rmp-app.rmp-v7-dark .rmp-side{
    background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035)) !important;
    border:1px solid rgba(220,178,91,.18) !important;
    box-shadow:0 28px 90px rgba(0,0,0,.34) !important;
}
html body .rmp-app.rmp-v7-dark .rmp-hero h1,
html body .rmp-app.rmp-v7-dark .rmp-card-title,
html body .rmp-app.rmp-v7-dark .rmp-brand-card strong{
    color:#ffe6aa !important;
}
html body .rmp-app.rmp-v7-dark .rmp-kicker,
html body .rmp-app.rmp-v7-dark .rmp-desc,
html body .rmp-app.rmp-v7-dark .rmp-brand-card span,
html body .rmp-app.rmp-v7-dark .rmp-cat-label,
html body .rmp-app.rmp-v7-dark .rmp-side-title{
    color:rgba(255,245,225,.76) !important;
}
html body .rmp-app.rmp-v7-dark .rmp-search,
html body .rmp-app.rmp-v7-dark .rmp-allcats,
html body .rmp-app.rmp-v7-dark .rmp-cat{
    background:rgba(255,255,255,.06) !important;
    color:#fff2d2 !important;
    border-color:rgba(220,178,91,.16) !important;
}
html body .rmp-app.rmp-v7-dark .rmp-cat.on{
    background:rgba(220,178,91,.18) !important;
}
html body .rmp-app.rmp-v7-dark .rmp-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:28px !important;
}
html body .rmp-app.rmp-v7-dark .rmp-card{
    min-height:500px !important;
}
html body .rmp-app.rmp-v7-dark .rmp-photo{
    height:320px !important;
}
html body .rmp-app.rmp-v7-dark .rmp-photo img{
    filter:saturate(1.1) contrast(1.04) !important;
}
html body .rmp-app.rmp-v7-dark .rmp-price{
    color:#ffd985 !important;
    font-size:24px !important;
}
html body .rmp-app.rmp-v7-dark .rmp-plus{
    background:#d7a84f !important;
    color:#130a06 !important;
}

/* ===================== 4. Food Gallery ===================== */
html body .rmp-app.rmp-v7-gallery .rmp-shell{
    grid-template-columns:230px minmax(0,1fr) !important;
}
html body .rmp-app.rmp-v7-gallery .rmp-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:20px !important;
}
html body .rmp-app.rmp-v7-gallery .rmp-card{
    min-height:390px !important;
    border-radius:24px !important;
}
html body .rmp-app.rmp-v7-gallery .rmp-photo{
    height:var(--rmp-v7-photo,330px) !important;
}
html body .rmp-app.rmp-v7-gallery .rmp-card-body{
    padding:16px 16px 66px !important;
}
html body .rmp-app.rmp-v7-gallery .rmp-card-title{
    font-family:var(--rmp-fb) !important;
    font-size:16px !important;
    font-weight:950 !important;
    line-height:1.2 !important;
}
html body .rmp-app.rmp-v7-gallery .rmp-desc{
    display:none !important;
}
html body .rmp-app.rmp-v7-gallery .rmp-price{
    font-size:20px !important;
}
html body .rmp-app.rmp-v7-gallery .rmp-plus{
    width:42px !important;
    height:42px !important;
}

/* Адаптив без развала */
@media (max-width:1320px){
    html body .rmp-app.rmp-v7-royal .rmp-grid,
    html body .rmp-app.rmp-v7-dark .rmp-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    html body .rmp-app.rmp-v7-gallery .rmp-grid{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}
@media (max-width:1080px){
    html body .rmp-app.rmp-v7 .rmp-shell{
        grid-template-columns:1fr !important;
    }
    html body .rmp-app.rmp-v7 .rmp-side{
        position:relative !important;
        top:auto !important;
        max-height:none !important;
    }
    html body .rmp-app.rmp-v7-chef .rmp-grid{
        grid-template-columns:1fr !important;
    }
}
@media (max-width:720px){
    html body .rmp-app.rmp-v7{
        padding-top:18px !important;
    }
    html body .rmp-app.rmp-v7 .rmp-hero{
        padding:30px 24px !important;
        border-radius:24px !important;
    }
    html body .rmp-app.rmp-v7 .rmp-hero h1{
        font-size:44px !important;
    }
    html body .rmp-app.rmp-v7-royal .rmp-grid,
    html body .rmp-app.rmp-v7-dark .rmp-grid,
    html body .rmp-app.rmp-v7-gallery .rmp-grid{
        grid-template-columns:1fr !important;
    }
    html body .rmp-app.rmp-v7-royal .rmp-photo,
    html body .rmp-app.rmp-v7-dark .rmp-photo,
    html body .rmp-app.rmp-v7-gallery .rmp-photo{
        height:280px !important;
    }
    html body .rmp-app.rmp-v7-chef .rmp-card{
        min-height:520px !important;
    }
    html body .rmp-app.rmp-v7-chef .rmp-photo{
        height:310px !important;
    }
}


/* ==========================================================
   v7.1 — Michelin-level presets
   Разные философии подачи: не перекраска, а разные виды карточек.
   ========================================================== */

/* Общая премиальная стабилизация */
html body .rmp-app.rmp-v7-michelin,
html body .rmp-app.rmp-v7-chef,
html body .rmp-app.rmp-v7-imperial,
html body .rmp-app.rmp-v7-nordic,
html body .rmp-app.rmp-v7-compact,
html body .rmp-app.rmp-v7-banquet{
    --rmp-a:var(--rmp-v7-accent,#9d1f1b) !important;
    --rmp-fh:var(--rmp-v7-heading, Georgia, "Times New Roman", serif) !important;
    padding:42px 18px 78px !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-shell,
html body .rmp-app.rmp-v7-chef .rmp-shell,
html body .rmp-app.rmp-v7-imperial .rmp-shell,
html body .rmp-app.rmp-v7-nordic .rmp-shell,
html body .rmp-app.rmp-v7-compact .rmp-shell,
html body .rmp-app.rmp-v7-banquet .rmp-shell{
    max-width:1540px !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:268px minmax(0,1fr) !important;
    gap:34px !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-card,
html body .rmp-app.rmp-v7-chef .rmp-card,
html body .rmp-app.rmp-v7-imperial .rmp-card,
html body .rmp-app.rmp-v7-nordic .rmp-card,
html body .rmp-app.rmp-v7-compact .rmp-card,
html body .rmp-app.rmp-v7-banquet .rmp-card{
    position:relative !important;
    overflow:hidden !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-card-title,
html body .rmp-app.rmp-v7-chef .rmp-card-title,
html body .rmp-app.rmp-v7-imperial .rmp-card-title,
html body .rmp-app.rmp-v7-nordic .rmp-card-title,
html body .rmp-app.rmp-v7-compact .rmp-card-title,
html body .rmp-app.rmp-v7-banquet .rmp-card-title{
    font-family:var(--rmp-fh) !important;
}

/* ==========================================================
   1. MICHELIN FINE DINING — не каталог, а меню высокой кухни
   ========================================================== */
html body .rmp-app.rmp-v7-michelin{
    background:#fbf8f1 !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-shell{
    grid-template-columns:230px minmax(0,980px) !important;
    justify-content:center !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-side{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    padding:8px 0 !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-brand-card{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    padding:0 0 28px !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-brand-card strong{
    font-family:var(--rmp-fh) !important;
    font-size:34px !important;
    color:#17120f !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-search,
html body .rmp-app.rmp-v7-michelin .rmp-side-title,
html body .rmp-app.rmp-v7-michelin .rmp-cat-count,
html body .rmp-app.rmp-v7-michelin .rmp-hero{
    display:none !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-allcats,
html body .rmp-app.rmp-v7-michelin .rmp-cat{
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    padding:10px 0 !important;
    color:#55443b !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-cat.on .rmp-cat-label,
html body .rmp-app.rmp-v7-michelin .rmp-cat:hover .rmp-cat-label{
    color:#15100d !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-main-area{
    background:#fffdf8 !important;
    border:1px solid rgba(35,25,18,.10) !important;
    padding:46px 56px !important;
    box-shadow:0 30px 110px rgba(43,10,4,.08) !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-grid{
    display:block !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-card{
    display:grid !important;
    grid-template-columns:1fr 128px 44px !important;
    gap:22px !important;
    align-items:center !important;
    min-height:128px !important;
    padding:26px 0 !important;
    background:transparent !important;
    border:0 !important;
    border-bottom:1px solid rgba(35,25,18,.12) !important;
    box-shadow:none !important;
    border-radius:0 !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-card:hover{
    transform:none !important;
    background:linear-gradient(90deg,rgba(157,31,27,.035),transparent) !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-photo{
    display:none !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-card-body{
    display:contents !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-card-title{
    grid-column:1 !important;
    font-size:24px !important;
    line-height:1.08 !important;
    font-weight:500 !important;
    color:#17120f !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-desc{
    grid-column:1 !important;
    margin-top:48px !important;
    max-width:680px !important;
    font-size:14px !important;
    line-height:1.72 !important;
    color:#7a6d64 !important;
    -webkit-line-clamp:2 !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-price{
    grid-column:2 !important;
    justify-self:end !important;
    font-family:var(--rmp-fb) !important;
    font-size:17px !important;
    font-weight:500 !important;
    color:#17120f !important;
}
html body .rmp-app.rmp-v7-michelin .rmp-plus{
    position:static !important;
    grid-column:3 !important;
    width:34px !important;
    height:34px !important;
    background:#17120f !important;
    color:#fff !important;
    box-shadow:none !important;
}

/* ==========================================================
   2. CHEF GALLERY — большие авторские фото, 2 в ряд
   ========================================================== */
html body .rmp-app.rmp-v7-chef{
    background:linear-gradient(180deg,#fff7ec,#ead6bd) !important;
}
html body .rmp-app.rmp-v7-chef .rmp-side{
    background:rgba(255,252,247,.78) !important;
    backdrop-filter:blur(12px) !important;
    border:1px solid rgba(92,55,35,.12) !important;
    box-shadow:0 24px 90px rgba(43,10,4,.12) !important;
}
html body .rmp-app.rmp-v7-chef .rmp-hero{
    min-height:220px !important;
    border-radius:38px !important;
    padding:54px 64px !important;
    background:
      linear-gradient(135deg,rgba(255,255,255,.90),rgba(255,246,233,.72)) !important;
}
html body .rmp-app.rmp-v7-chef .rmp-hero h1{
    font-size:clamp(58px,5.6vw,96px) !important;
}
html body .rmp-app.rmp-v7-chef .rmp-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:34px !important;
}
html body .rmp-app.rmp-v7-chef .rmp-card{
    min-height:660px !important;
    border-radius:38px !important;
    background:#fffaf2 !important;
    border:1px solid rgba(92,55,35,.10) !important;
    box-shadow:0 34px 100px rgba(43,10,4,.16) !important;
}
html body .rmp-app.rmp-v7-chef .rmp-photo{
    height:430px !important;
    border-radius:38px 38px 0 0 !important;
}
html body .rmp-app.rmp-v7-chef .rmp-photo img{
    object-fit:cover !important;
}
html body .rmp-app.rmp-v7-chef .rmp-card-body{
    padding:30px 34px 92px !important;
}
html body .rmp-app.rmp-v7-chef .rmp-card-title{
    font-size:34px !important;
    line-height:1.02 !important;
    font-weight:600 !important;
}
html body .rmp-app.rmp-v7-chef .rmp-desc{
    font-size:16px !important;
    line-height:1.62 !important;
    -webkit-line-clamp:3 !important;
}
html body .rmp-app.rmp-v7-chef .rmp-price{
    position:absolute !important;
    left:34px !important;
    bottom:30px !important;
    font-size:30px !important;
}
html body .rmp-app.rmp-v7-chef .rmp-plus{
    width:56px !important;
    height:56px !important;
    right:30px !important;
    bottom:28px !important;
}

/* ==========================================================
   3. IMPERIAL RUSSIAN — фирменный стиль для Избы
   ========================================================== */
html body .rmp-app.rmp-v7-imperial{
    background:
      radial-gradient(circle at 84% 0%,rgba(218,170,83,.22),transparent 32%),
      linear-gradient(180deg,#25160e,#0f0906) !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-shell{
    grid-template-columns:280px minmax(0,1fr) !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-side{
    background:
      linear-gradient(180deg,rgba(82,44,20,.96),rgba(31,17,10,.98)) !important;
    border:1px solid rgba(226,184,99,.22) !important;
    box-shadow:0 34px 100px rgba(0,0,0,.38) !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-brand-card strong,
html body .rmp-app.rmp-v7-imperial .rmp-side-title,
html body .rmp-app.rmp-v7-imperial .rmp-card-title{
    color:#ffe5a8 !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-brand-card span,
html body .rmp-app.rmp-v7-imperial .rmp-cat-label,
html body .rmp-app.rmp-v7-imperial .rmp-desc,
html body .rmp-app.rmp-v7-imperial .rmp-kicker{
    color:rgba(255,239,206,.78) !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-search,
html body .rmp-app.rmp-v7-imperial .rmp-allcats,
html body .rmp-app.rmp-v7-imperial .rmp-cat{
    background:rgba(255,232,177,.075) !important;
    color:#fff0c8 !important;
    border-color:rgba(226,184,99,.16) !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-cat.on{
    background:rgba(226,184,99,.20) !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-hero{
    background:
      linear-gradient(135deg,rgba(82,44,20,.92),rgba(28,15,9,.94)) !important;
    border:1px solid rgba(226,184,99,.20) !important;
    box-shadow:0 34px 100px rgba(0,0,0,.34) !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-hero h1{
    color:#ffe5a8 !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:28px !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-card{
    min-height:520px !important;
    border-radius:30px !important;
    background:linear-gradient(180deg,rgba(255,240,204,.09),rgba(255,240,204,.04)) !important;
    border:1px solid rgba(226,184,99,.19) !important;
    box-shadow:0 30px 92px rgba(0,0,0,.34) !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-photo{
    height:330px !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-photo::after{
    content:"" !important;
    position:absolute !important;
    inset:auto 0 0 0 !important;
    height:48% !important;
    background:linear-gradient(180deg,transparent,rgba(0,0,0,.72)) !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-price{
    position:absolute !important;
    left:22px !important;
    top:278px !important;
    z-index:6 !important;
    color:#ffd980 !important;
    font-size:25px !important;
    text-shadow:0 5px 18px rgba(0,0,0,.64) !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-card-body{
    padding:24px 24px 82px !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-card-title{
    font-size:25px !important;
    line-height:1.08 !important;
}
html body .rmp-app.rmp-v7-imperial .rmp-plus{
    width:48px !important;
    height:48px !important;
    right:24px !important;
    bottom:24px !important;
    background:#d9aa51 !important;
    color:#170d08 !important;
}

/* ==========================================================
   4. NORDIC MINIMAL — светлый Michelin
   ========================================================== */
html body .rmp-app.rmp-v7-nordic{
    background:#f8f7f2 !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-shell{
    grid-template-columns:220px minmax(0,1fr) !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-side{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-search,
html body .rmp-app.rmp-v7-nordic .rmp-side-title,
html body .rmp-app.rmp-v7-nordic .rmp-cat-count{
    display:none !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-cat,
html body .rmp-app.rmp-v7-nordic .rmp-allcats{
    background:transparent !important;
    border:0 !important;
    border-left:2px solid transparent !important;
    border-radius:0 !important;
    box-shadow:none !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-cat.on{
    border-left-color:#171717 !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-hero{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    padding:22px 0 50px !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-hero h1{
    color:#151515 !important;
    font-size:clamp(62px,6vw,104px) !important;
    font-weight:400 !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:36px 26px !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-card{
    min-height:430px !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    border-radius:0 !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-photo{
    height:250px !important;
    border-radius:0 !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-photo img{
    border-radius:0 !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-card-body{
    padding:18px 0 54px !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-card-title{
    font-size:22px !important;
    font-weight:400 !important;
    color:#171717 !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-desc{
    font-size:14px !important;
    line-height:1.65 !important;
    color:#6b6b66 !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-price{
    color:#171717 !important;
    font-size:18px !important;
    font-weight:500 !important;
}
html body .rmp-app.rmp-v7-nordic .rmp-plus{
    width:38px !important;
    height:38px !important;
    background:#171717 !important;
    color:#fff !important;
    box-shadow:none !important;
}

/* ==========================================================
   5. COMPACT MENU — отдельный ресторанный список
   ========================================================== */
html body .rmp-app.rmp-v7-compact{
    background:#fbf7ef !important;
}
html body .rmp-app.rmp-v7-compact .rmp-shell{
    grid-template-columns:260px minmax(0,1000px) !important;
    justify-content:center !important;
}
html body .rmp-app.rmp-v7-compact .rmp-side{
    background:#26301b !important;
    color:#fff !important;
    border:0 !important;
}
html body .rmp-app.rmp-v7-compact .rmp-brand-card strong,
html body .rmp-app.rmp-v7-compact .rmp-side-title,
html body .rmp-app.rmp-v7-compact .rmp-cat-label{
    color:#fff !important;
}
html body .rmp-app.rmp-v7-compact .rmp-search,
html body .rmp-app.rmp-v7-compact .rmp-allcats,
html body .rmp-app.rmp-v7-compact .rmp-cat{
    background:rgba(255,255,255,.08) !important;
    color:#fff !important;
    border-color:rgba(255,255,255,.13) !important;
}
html body .rmp-app.rmp-v7-compact .rmp-hero{
    display:none !important;
}
html body .rmp-app.rmp-v7-compact .rmp-main-area{
    background:#fffdf8 !important;
    padding:46px 56px !important;
    border:1px solid rgba(35,25,18,.10) !important;
    box-shadow:0 26px 90px rgba(43,10,4,.10) !important;
}
html body .rmp-app.rmp-v7-compact .rmp-grid{
    display:block !important;
}
html body .rmp-app.rmp-v7-compact .rmp-card{
    display:grid !important;
    grid-template-columns:96px minmax(0,1fr) 120px 44px !important;
    gap:20px !important;
    align-items:center !important;
    min-height:116px !important;
    padding:18px 0 !important;
    background:transparent !important;
    border:0 !important;
    border-bottom:1px solid rgba(35,25,18,.12) !important;
    box-shadow:none !important;
    border-radius:0 !important;
}
html body .rmp-app.rmp-v7-compact .rmp-photo{
    display:block !important;
    width:96px !important;
    height:78px !important;
    border-radius:18px !important;
    grid-column:1 !important;
}
html body .rmp-app.rmp-v7-compact .rmp-card-body{
    display:contents !important;
}
html body .rmp-app.rmp-v7-compact .rmp-card-title{
    grid-column:2 !important;
    font-size:19px !important;
    line-height:1.18 !important;
}
html body .rmp-app.rmp-v7-compact .rmp-desc{
    grid-column:2 !important;
    margin-top:30px !important;
    font-size:13px !important;
    line-height:1.45 !important;
    -webkit-line-clamp:1 !important;
}
html body .rmp-app.rmp-v7-compact .rmp-price{
    grid-column:3 !important;
    justify-self:end !important;
    font-size:19px !important;
}
html body .rmp-app.rmp-v7-compact .rmp-plus{
    position:static !important;
    grid-column:4 !important;
    width:36px !important;
    height:36px !important;
}

/* ==========================================================
   6. BANQUET & CATERING — премиальный каталог
   ========================================================== */
html body .rmp-app.rmp-v7-banquet{
    background:#fff4e5 !important;
}
html body .rmp-app.rmp-v7-banquet .rmp-side{
    background:#8f1714 !important;
    color:#fff !important;
}
html body .rmp-app.rmp-v7-banquet .rmp-brand-card strong,
html body .rmp-app.rmp-v7-banquet .rmp-side-title,
html body .rmp-app.rmp-v7-banquet .rmp-cat-label{
    color:#fff !important;
}
html body .rmp-app.rmp-v7-banquet .rmp-search,
html body .rmp-app.rmp-v7-banquet .rmp-allcats,
html body .rmp-app.rmp-v7-banquet .rmp-cat{
    background:rgba(255,255,255,.10) !important;
    color:#fff !important;
    border-color:rgba(255,255,255,.16) !important;
}
html body .rmp-app.rmp-v7-banquet .rmp-hero{
    min-height:170px !important;
}
html body .rmp-app.rmp-v7-banquet .rmp-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:20px !important;
}
html body .rmp-app.rmp-v7-banquet .rmp-card{
    min-height:385px !important;
    border-radius:22px !important;
    background:#fffdf8 !important;
    border:1px solid rgba(70,43,35,.10) !important;
    box-shadow:0 18px 54px rgba(43,10,4,.10) !important;
}
html body .rmp-app.rmp-v7-banquet .rmp-photo{
    height:220px !important;
}
html body .rmp-app.rmp-v7-banquet .rmp-card-body{
    padding:17px 17px 62px !important;
}
html body .rmp-app.rmp-v7-banquet .rmp-card-title{
    font-family:var(--rmp-fb) !important;
    font-size:16px !important;
    font-weight:950 !important;
}
html body .rmp-app.rmp-v7-banquet .rmp-desc{
    font-size:12.5px !important;
    line-height:1.42 !important;
    -webkit-line-clamp:2 !important;
}
html body .rmp-app.rmp-v7-banquet .rmp-price{
    font-size:19px !important;
}
html body .rmp-app.rmp-v7-banquet .rmp-plus{
    width:38px !important;
    height:38px !important;
}

/* Responsive */
@media (max-width:1320px){
    html body .rmp-app.rmp-v7-imperial .rmp-grid,
    html body .rmp-app.rmp-v7-nordic .rmp-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    html body .rmp-app.rmp-v7-banquet .rmp-grid{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}
@media (max-width:1080px){
    html body .rmp-app.rmp-v7-michelin .rmp-shell,
    html body .rmp-app.rmp-v7-chef .rmp-shell,
    html body .rmp-app.rmp-v7-imperial .rmp-shell,
    html body .rmp-app.rmp-v7-nordic .rmp-shell,
    html body .rmp-app.rmp-v7-compact .rmp-shell,
    html body .rmp-app.rmp-v7-banquet .rmp-shell{
        grid-template-columns:1fr !important;
    }
    html body .rmp-app.rmp-v7-chef .rmp-grid,
    html body .rmp-app.rmp-v7-imperial .rmp-grid,
    html body .rmp-app.rmp-v7-nordic .rmp-grid,
    html body .rmp-app.rmp-v7-banquet .rmp-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    html body .rmp-app.rmp-v7-michelin .rmp-side,
    html body .rmp-app.rmp-v7-chef .rmp-side,
    html body .rmp-app.rmp-v7-imperial .rmp-side,
    html body .rmp-app.rmp-v7-nordic .rmp-side,
    html body .rmp-app.rmp-v7-compact .rmp-side,
    html body .rmp-app.rmp-v7-banquet .rmp-side{
        position:relative !important;
        top:auto !important;
        max-height:none !important;
    }
}
@media (max-width:720px){
    html body .rmp-app.rmp-v7-chef .rmp-grid,
    html body .rmp-app.rmp-v7-imperial .rmp-grid,
    html body .rmp-app.rmp-v7-nordic .rmp-grid,
    html body .rmp-app.rmp-v7-banquet .rmp-grid{
        grid-template-columns:1fr !important;
    }
    html body .rmp-app.rmp-v7-michelin .rmp-main-area,
    html body .rmp-app.rmp-v7-compact .rmp-main-area{
        padding:28px 22px !important;
    }
    html body .rmp-app.rmp-v7-michelin .rmp-card{
        grid-template-columns:1fr 42px !important;
        gap:14px !important;
    }
    html body .rmp-app.rmp-v7-michelin .rmp-price{
        grid-column:1 !important;
        justify-self:start !important;
        margin-top:10px !important;
    }
    html body .rmp-app.rmp-v7-michelin .rmp-plus{
        grid-column:2 !important;
        grid-row:1 / span 2 !important;
    }
    html body .rmp-app.rmp-v7-compact .rmp-card{
        grid-template-columns:82px minmax(0,1fr) 38px !important;
    }
    html body .rmp-app.rmp-v7-compact .rmp-price{
        grid-column:2 !important;
        justify-self:start !important;
        margin-top:10px !important;
    }
    html body .rmp-app.rmp-v7-compact .rmp-plus{
        grid-column:3 !important;
        grid-row:1 / span 2 !important;
    }
    html body .rmp-app.rmp-v7-chef .rmp-photo{
        height:310px !important;
    }
    html body .rmp-app.rmp-v7-imperial .rmp-photo,
    html body .rmp-app.rmp-v7-nordic .rmp-photo{
        height:270px !important;
    }
}

/* ================================================================
   v7.1 — FULL-WIDTH FIX: все стили на полную ширину экрана
   ================================================================ */

/* Основной контейнер — на всю ширину, без ограничений */
html body .rmp-app {
    width: 100vw !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding-left: clamp(16px, 3vw, 56px) !important;
    padding-right: clamp(16px, 3vw, 56px) !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
}

/* Shell — на всю доступную ширину внутри паддингов */
html body .rmp-shell {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
}

/* Main area — занимает всё оставшееся место */
html body .rmp-main-area {
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

/* Hero — полная ширина */
html body .rmp-hero {
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Грид карточек — адаптивный, заполняет всю ширину */
html body .rmp-grid {
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Карточки — без ограничений на ширину */
html body .rmp-card {
    min-width: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Сайдбар — фиксированная ширина, не сжимается */
html body .rmp-side {
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
}

/* Модальное окно категорий — ширина от экрана */
html body .rmp-cat-box {
    width: min(980px, calc(100vw - 32px)) !important;
    box-sizing: border-box !important;
}

/* ── 4K / Very wide (2400px+) ── */
@media (min-width: 2400px) {
    html body .rmp-shell {
        grid-template-columns: minmax(320px, 380px) minmax(0, 1fr) !important;
        gap: 40px !important;
    }
    html body .rmp-grid {
        grid-template-columns: repeat(auto-fill, minmax(460px, 1fr)) !important;
        gap: 36px !important;
    }
    html body .rmp-photo {
        height: 280px !important;
    }
}

/* ── Wide Desktop (1800–2400px) ── */
@media (min-width: 1800px) and (max-width: 2399px) {
    html body .rmp-shell {
        grid-template-columns: minmax(300px, 360px) minmax(0, 1fr) !important;
        gap: 34px !important;
    }
    html body .rmp-grid {
        grid-template-columns: repeat(auto-fill, minmax(400px, 1fr)) !important;
        gap: 30px !important;
    }
    html body .rmp-photo {
        height: 260px !important;
    }
}

/* ── Desktop (1400–1800px) ── */
@media (min-width: 1400px) and (max-width: 1799px) {
    html body .rmp-shell {
        grid-template-columns: minmax(280px, 330px) minmax(0, 1fr) !important;
        gap: 28px !important;
    }
    html body .rmp-grid {
        grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)) !important;
        gap: 26px !important;
    }
}

/* ── Laptop (1100–1400px) ── */
@media (min-width: 1100px) and (max-width: 1399px) {
    html body .rmp-app {
        padding-left: clamp(14px, 2vw, 36px) !important;
        padding-right: clamp(14px, 2vw, 36px) !important;
    }
    html body .rmp-shell {
        grid-template-columns: minmax(250px, 290px) minmax(0, 1fr) !important;
        gap: 22px !important;
    }
    html body .rmp-grid {
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
        gap: 22px !important;
    }
    html body .rmp-hero h1 {
        font-size: clamp(44px, 4vw, 68px) !important;
    }
}

/* ── Tablet landscape (768–1100px) ── */
@media (min-width: 768px) and (max-width: 1099px) {
    html body .rmp-app {
        padding: 20px 16px 100px !important;
    }
    html body .rmp-shell {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }
    html body .rmp-side {
        position: relative !important;
        top: 0 !important;
        border-radius: 24px !important;
    }
    html body .rmp-cats {
        grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)) !important;
    }
    html body .rmp-grid {
        grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
        gap: 20px !important;
    }
    html body .rmp-hero {
        grid-template-columns: 1fr !important;
    }
    html body .rmp-hero h1 {
        font-size: clamp(38px, 5vw, 58px) !important;
    }
    html body .rmp-actions {
        justify-content: flex-start !important;
    }
}

/* ── Tablet portrait (600–768px) ── */
@media (min-width: 600px) and (max-width: 767px) {
    html body .rmp-app {
        padding: 14px 14px 90px !important;
    }
    html body .rmp-shell {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }
    html body .rmp-side {
        border-radius: 20px !important;
        padding: 16px !important;
    }
    html body .rmp-hero {
        grid-template-columns: 1fr !important;
        padding: 22px 22px !important;
        border-radius: 22px !important;
    }
    html body .rmp-hero h1 {
        font-size: 44px !important;
    }
    html body .rmp-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 16px !important;
    }
    html body .rmp-actions {
        justify-content: flex-start !important;
    }
}

/* ── Mobile (< 600px) ── */
@media (max-width: 599px) {
    html body .rmp-app {
        padding: 12px 12px 86px !important;
    }
    html body .rmp-shell {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }
    html body .rmp-side {
        border-radius: 18px !important;
        padding: 14px !important;
    }
    html body .rmp-hero {
        grid-template-columns: 1fr !important;
        padding: 18px !important;
        border-radius: 18px !important;
    }
    html body .rmp-hero h1 {
        font-size: clamp(32px, 9vw, 46px) !important;
    }
    html body .rmp-hero p {
        font-size: 14px !important;
    }
    html body .rmp-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }
    html body .rmp-cats {
        grid-template-columns: 1fr 1fr !important;
    }
    html body .rmp-actions {
        justify-content: flex-start !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }
    html body .rmp-sort,
    html body .rmp-cart-top {
        min-height: 42px !important;
        padding: 0 14px !important;
        font-size: 13px !important;
    }
    #rmp-cart {
        right: 8px !important;
        left: 8px !important;
        top: 60px !important;
        width: auto !important;
    }
    html body .rmp-fab-off {
        left: 12px !important;
        right: 12px !important;
        justify-content: center !important;
    }
}

/* ── Очень маленький телефон (< 380px) ── */
@media (max-width: 379px) {
    html body .rmp-app {
        padding: 10px 10px 80px !important;
    }
    html body .rmp-hero h1 {
        font-size: 28px !important;
    }
    html body .rmp-cats {
        grid-template-columns: 1fr !important;
    }
    html body .rmp-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }
}

/* ── Полноширинные фиксы для всех v7-пресетов ── */
html body .rmp-app[class*="rmp-v7-"] .rmp-shell {
    width: 100% !important;
    max-width: none !important;
}

html body .rmp-app[class*="rmp-v7-"] .rmp-main-area {
    width: 100% !important;
    min-width: 0 !important;
}

html body .rmp-app[class*="rmp-v7-"] .rmp-grid {
    width: 100% !important;
}

/* Michelin и Compact — горизонтальные карточки, тоже на всю ширину */
@media (max-width: 599px) {
    html body .rmp-app.rmp-v7-michelin .rmp-card,
    html body .rmp-app.rmp-v7-compact .rmp-card {
        width: 100% !important;
        min-width: 0 !important;
    }
}

/* ================================================================
   v7.2 — STICKY + BRAND NAME + MOBILE CATEGORY BUTTON
   ================================================================ */

/* ── 1. STICKY FIX (overflow:clip не ломает sticky) ── */
html body .rmp-app {
    overflow: clip !important;
    overflow-x: clip !important;
}
html body .rmp-side {
    position: sticky !important;
    top: 20px !important;
    align-self: start !important;
    max-height: calc(100vh - 40px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scrollbar-width: thin !important;
    scrollbar-color: rgba(157,31,27,.18) transparent !important;
}
html body .rmp-side::-webkit-scrollbar { width: 3px !important; }
html body .rmp-side::-webkit-scrollbar-thumb { background: rgba(157,31,27,.22) !important; border-radius: 3px !important; }

/* ── 2. BRAND NAME без иконки ── */
.rmp-brand-mark {
    display: none !important;
}
.rmp-brand-card {
    padding-bottom: 14px !important;
    gap: 0 !important;
}
.rmp-brand-card > div {
    min-width: 0 !important;
    width: 100% !important;
}
.rmp-brand-card strong {
    font-size: 15px !important;
    font-family: var(--rmp-fb) !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
    color: var(--rmp-a) !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}
.rmp-brand-card span {
    font-size: 11px !important;
    display: block !important;
    margin-top: 3px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* ── 3. МОБИЛЬНАЯ КНОПКА КАТЕГОРИЙ ── */
#rmp-mobile-catbar {
    display: none !important;
}

@media (max-width: 1099px) {
    #rmp-mobile-catbar {
        display: block !important;
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 9992 !important;
        padding: 10px 16px calc(10px + env(safe-area-inset-bottom,0px)) !important;
        background: rgba(247,240,229,0.97) !important;
        backdrop-filter: blur(12px) !important;
        -webkit-backdrop-filter: blur(12px) !important;
        border-top: 1px solid rgba(157,31,27,.12) !important;
        box-shadow: 0 -4px 20px rgba(75,25,12,.1) !important;
    }

    #rmp-mobile-cat-btn {
        width: 100% !important;
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        height: 52px !important;
        padding: 0 18px !important;
        border-radius: 16px !important;
        border: 1.5px solid rgba(157,31,27,.2) !important;
        background: linear-gradient(135deg,#fff9ed,#fff3df) !important;
        color: var(--rmp-t) !important;
        font-family: var(--rmp-fb) !important;
        cursor: pointer !important;
        box-shadow: 0 4px 14px rgba(75,25,12,.1) !important;
        text-align: left !important;
        transition: box-shadow .18s !important;
    }
    #rmp-mobile-cat-btn:active {
        box-shadow: 0 2px 6px rgba(75,25,12,.12) !important;
        transform: scale(.99) !important;
    }

    .rmp-mcb-icon {
        font-size: 18px !important;
        color: var(--rmp-a) !important;
        flex-shrink: 0 !important;
        line-height: 1 !important;
    }
    .rmp-mcb-label {
        font-size: 11px !important;
        font-weight: 800 !important;
        text-transform: uppercase !important;
        letter-spacing: .12em !important;
        color: var(--rmp-muted) !important;
        flex-shrink: 0 !important;
    }
    .rmp-mcb-current {
        flex: 1 !important;
        font-size: 14px !important;
        font-weight: 800 !important;
        color: var(--rmp-a) !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
    .rmp-mcb-arrow {
        font-size: 20px !important;
        color: var(--rmp-a) !important;
        flex-shrink: 0 !important;
        line-height: 1 !important;
        font-weight: 900 !important;
        transform: rotate(90deg) !important;
        display: inline-block !important;
    }

    /* Отступы под кнопку */
    html body .rmp-app {
        padding-bottom: calc(82px + env(safe-area-inset-bottom,0px)) !important;
    }
    html body .rmp-fab-off {
        bottom: calc(80px + env(safe-area-inset-bottom,4px)) !important;
    }
    /* Планшет: сайдбар в потоке */
    html body .rmp-side {
        position: relative !important;
        top: 0 !important;
        max-height: none !important;
        overflow-y: visible !important;
    }
}

@media (max-width: 599px) {
    /* Телефон: сайдбар скрыт, поиск над сеткой */
    html body .rmp-side {
        display: none !important;
    }
    html body .rmp-shell {
        grid-template-columns: 1fr !important;
    }
    #rmp-mobile-search-wrap {
        display: block !important;
        margin-bottom: 14px !important;
    }
    #rmp-mobile-search-wrap .rmp-search {
        width: 100% !important;
    }
    html body .rmp-fab-off {
        right: 16px !important;
        left: auto !important;
    }
}
