:root{
  --bg:#0c0907;
  --ink:#fff5e6;
  --soft:#dfcdb1;
  --muted:#bba88d;
  --gold:#d6aa61;
  --gold2:#ffe0a0;
  --brown:#5c3420;
  --green:#18281e;
  --line:rgba(255,245,230,.18);
  --glass:rgba(255,245,230,.095);
  --glass2:rgba(255,245,230,.055);
  --shadow:0 28px 90px rgba(0,0,0,.46);
  --radius:30px;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;min-height:100vh;overflow-x:hidden;color:var(--ink);font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:
  radial-gradient(circle at 12% 6%,rgba(115,61,33,.62),transparent 30%),
  radial-gradient(circle at 92% 20%,rgba(32,54,39,.72),transparent 34%),
  radial-gradient(circle at 48% 110%,rgba(214,170,97,.22),transparent 38%),
  linear-gradient(135deg,#0c0907,#130d09 45%,#0e160f);
  background-size:130% 130%,140% 140%,150% 150%,100% 100%;
  animation:bodyGradientDrift 30s ease-in-out infinite;}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
body:before{content:"";position:fixed;inset:0;z-index:-3;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:78px 78px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 86%)}
@keyframes bodyGradientDrift{
  0%,100%{background-position:0% 0%,100% 10%,45% 100%,0 0}
  50%{background-position:12% 8%,82% 26%,58% 86%,0 0}
}
.page-bg{position:fixed;inset:0;z-index:-2;overflow:hidden;pointer-events:none}
.page-bg:before{content:"";position:absolute;inset:-34%;background:
  conic-gradient(from 20deg at 50% 50%,rgba(255,224,160,.12),rgba(122,67,37,.24),rgba(36,64,47,.22),rgba(255,224,160,.11),rgba(122,67,37,.2),rgba(255,224,160,.12));
  filter:blur(82px);opacity:.72;animation:premiumGradientFlow 28s ease-in-out infinite;transform-origin:center}
.page-bg:after{content:"";position:absolute;inset:-10%;background:
  linear-gradient(115deg,transparent 0 38%,rgba(255,244,218,.08) 48%,transparent 58% 100%),
  radial-gradient(circle at 25% 15%,rgba(255,224,160,.12),transparent 28%),
  radial-gradient(circle at 74% 64%,rgba(83,126,90,.12),transparent 34%);
  mix-blend-mode:screen;opacity:.52;animation:softShimmer 16s ease-in-out infinite}
.page-bg span{position:absolute;z-index:1;border-radius:999px;filter:blur(70px);opacity:.36;animation:orb 18s ease-in-out infinite}.page-bg span:nth-child(1){width:460px;height:460px;background:#7e4326;left:-160px;top:80px}.page-bg span:nth-child(2){width:520px;height:520px;background:#27402e;right:-160px;top:260px;animation-delay:-5s}.page-bg span:nth-child(3){width:360px;height:360px;background:#d6aa61;left:45%;bottom:-180px;opacity:.18;animation-delay:-10s}
@keyframes premiumGradientFlow{
  0%,100%{transform:translate3d(-3%,-2%,0) rotate(0deg) scale(1)}
  50%{transform:translate3d(4%,3%,0) rotate(14deg) scale(1.08)}
}
@keyframes softShimmer{
  0%,100%{transform:translateX(-6%) translateY(-2%);opacity:.42}
  50%{transform:translateX(6%) translateY(3%);opacity:.62}
}
@keyframes orb{50%{transform:translate3d(42px,-34px,0) scale(1.08)}}
.glass,.glass-panel{background:linear-gradient(145deg,rgba(255,245,230,.15),rgba(255,245,230,.045));border:1px solid rgba(255,245,230,.18);box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.16);-webkit-backdrop-filter:blur(30px) saturate(155%);backdrop-filter:blur(30px) saturate(155%)}
.glass-lite{background:rgba(255,245,230,.07);border:1px solid rgba(255,245,230,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.muted,.mini{color:var(--muted)}
.topbar{position:sticky;top:14px;z-index:50;width:min(1240px,calc(100% - 28px));margin:14px auto 0;border-radius:30px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:14px}.brand{display:flex;align-items:center;gap:12px;min-width:max-content}.brand-mark{width:46px;height:46px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(135deg,var(--ink),var(--gold));color:#20140b;font-family:"Playfair Display",serif;font-weight:800;box-shadow:0 16px 36px rgba(214,170,97,.25)}.brand-text b{display:block;font-family:"Playfair Display",serif;font-size:23px;line-height:1}.brand-text small{display:block;margin-top:4px;color:var(--soft);font-size:12px}.desktop-nav{display:flex;align-items:center;gap:4px}.desktop-nav a{padding:11px 14px;border-radius:16px;color:var(--soft);font-size:14px;font-weight:800;transition:.25s}.desktop-nav a:hover{background:rgba(255,245,230,.1);color:var(--ink);transform:translateY(-1px)}.top-actions{display:flex;align-items:center;gap:8px}
.btn{border:0;border-radius:18px;padding:12px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:900;color:var(--ink);position:relative;isolation:isolate;overflow:hidden;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease,background .24s ease}.btn:before{content:"";position:absolute;inset:-60% -80%;z-index:-1;background:linear-gradient(110deg,transparent 34%,rgba(255,255,255,.35),transparent 65%);transform:translateX(-62%) rotate(8deg);transition:transform .55s ease}.btn:hover:before{transform:translateX(62%) rotate(8deg)}.btn:hover{transform:translateY(-2px);box-shadow:0 20px 42px rgba(0,0,0,.28)}.btn.gold{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#22150b;box-shadow:0 18px 44px rgba(214,170,97,.22)}.btn.cream,.btn.ghost,.btn.glass-btn{background:rgba(255,245,230,.095);border:1px solid rgba(255,245,230,.18);color:var(--ink);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.btn.big{font-size:16px;padding:15px 22px;border-radius:20px}.btn.wide{width:100%}.cart-button span{min-width:24px;height:24px;border-radius:99px;background:#20140b;color:var(--gold2);font-size:12px;display:inline-grid;place-items:center}.icon-btn{width:40px;height:40px;border-radius:15px;border:1px solid var(--line);background:rgba(255,245,230,.09);color:var(--ink);font-size:19px;transition:.2s}.icon-btn:hover{transform:translateY(-1px);background:rgba(255,245,230,.15)}
.section{width:min(1240px,calc(100% - 28px));margin:0 auto;padding:76px 0}.section.compact{padding-top:24px}.eyebrow{display:inline-flex;color:var(--gold2);font-weight:900;text-transform:uppercase;letter-spacing:.15em;font-size:12px}.center{text-align:center}.section-head{margin-bottom:28px}.section h2,.hero h1,.action-card h2,.contact-card h2,.drawer h2,.modal h3,.modal-card h2{font-family:"Playfair Display",Georgia,serif;line-height:.98;margin:10px 0 0;letter-spacing:-.03em}.section h2{font-size:clamp(34px,4vw,54px)}
.hero{min-height:520px;display:grid;place-items:center;text-align:center;padding-top:58px;padding-bottom:44px;gap:18px}.hero-shell{width:min(920px,100%);border-radius:40px;padding:54px 54px 44px;position:relative;overflow:hidden}.hero-shell:before{content:"";position:absolute;inset:1px;border-radius:39px;background:radial-gradient(circle at 50% -20%,rgba(255,224,160,.22),transparent 48%);pointer-events:none}.hero h1{font-size:clamp(38px,5.4vw,64px);max-width:850px;margin-left:auto;margin-right:auto}.hero p{max-width:690px;margin:18px auto 0;color:var(--soft);font-size:19px;line-height:1.6}.hero-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}.benefits{width:min(920px,100%);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.benefit-card{border-radius:26px;padding:18px 20px;min-height:104px;text-align:left;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}.benefit-card:after{content:"";position:absolute;right:-40px;bottom:-70px;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,rgba(255,224,160,.22),transparent 70%)}.benefit-card b{font-family:"Playfair Display",serif;font-size:30px;color:var(--gold2);line-height:1}.benefit-card span{color:var(--soft);font-weight:700;line-height:1.35}
.promo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.promo-card{border-radius:30px;padding:26px;min-height:180px;position:relative;overflow:hidden}.promo-card:after{content:"";position:absolute;right:-90px;top:-120px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(214,170,97,.24),transparent 68%)}.promo-card img{width:100%;height:180px;object-fit:cover;border-radius:22px;margin-bottom:16px}.promo-card h3{font-family:"Playfair Display",serif;font-size:34px;line-height:1.04;margin:10px 0}.promo-card p{color:var(--soft);line-height:1.55;margin:0;max-width:560px}
.menu-section{padding-top:64px}.category-rail{position:sticky;top:92px;z-index:20;border-radius:26px;padding:10px;margin-bottom:34px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;overflow:visible}.category-rail a{min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center;white-space:normal;line-height:1.16;border-radius:16px;padding:10px 8px;background:rgba(255,245,230,.07);border:1px solid transparent;color:var(--soft);font-weight:900;font-size:13px;transition:.22s}.category-rail a:hover,.category-rail a.active{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#20140b;border-color:rgba(255,255,255,.18);transform:translateY(-1px)}.menu-groups{display:grid;gap:54px}.category-title{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:20px}.category-title h3{font-family:"Playfair Display",serif;font-size:clamp(34px,3.5vw,46px);line-height:1;margin:0}.category-title span{min-width:38px;height:38px;border-radius:15px;display:grid;place-items:center;background:rgba(255,245,230,.08);border:1px solid var(--line);font-weight:900;color:var(--gold2)}.menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.menu-card{border-radius:28px;overflow:hidden;background:linear-gradient(145deg,rgba(255,245,230,.105),rgba(255,245,230,.04));border:1px solid rgba(255,245,230,.15);box-shadow:0 18px 52px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.1);display:flex;flex-direction:column;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}.menu-card:hover{transform:translateY(-7px);border-color:rgba(255,224,160,.48);box-shadow:0 28px 64px rgba(0,0,0,.34)}.menu-img{height:220px;width:100%;padding:0;border:0;background:linear-gradient(135deg,#3a2317,#142015);overflow:hidden;position:relative;display:block;color:rgba(255,245,230,.58)}.menu-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s ease}.menu-img:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(12,9,7,.55),transparent 58%);pointer-events:none}.menu-card:hover .menu-img img{transform:scale(1.06)}.menu-img.placeholder{display:grid;place-items:center;font-family:"Playfair Display",serif;font-size:44px}.menu-body{padding:18px;display:flex;flex-direction:column;gap:12px;flex:1}.menu-title{border:0;background:transparent;color:var(--ink);text-align:left;padding:0;font-size:20px;font-weight:900;line-height:1.22;transition:.2s}.menu-title:hover{color:var(--gold2)}.desc{color:var(--muted);font-size:14px;line-height:1.45}.meta{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px}.price{font-size:23px;font-weight:900;color:var(--gold2)}.weight{color:var(--soft);font-weight:800}.card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.add-btn{margin-top:2px}.qty-row{display:flex;align-items:center;gap:8px}.qty-row button{width:38px;height:38px;border-radius:14px;border:1px solid var(--line);background:rgba(255,245,230,.09);color:var(--ink);font-size:18px;transition:.2s}.qty-row button:hover{background:rgba(255,245,230,.15);transform:translateY(-1px)}
.action-section{display:grid;grid-template-columns:1fr 1fr;gap:18px}.action-card,.contact-card{border-radius:34px;padding:30px;position:relative;overflow:hidden}.action-card{min-height:286px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between}.action-card:after,.contact-card:after{content:"";position:absolute;width:260px;height:260px;right:-100px;top:-120px;border-radius:50%;background:radial-gradient(circle,rgba(255,224,160,.19),transparent 70%);pointer-events:none}.action-card h2{font-size:clamp(34px,3.4vw,50px)}.action-card p,.contact-card p{color:var(--soft);font-size:17px;line-height:1.6;max-width:620px}.contacts{padding-top:38px}.contact-card{max-width:930px;margin:0 auto;text-align:center}.contact-address{display:block;margin:12px auto 0;text-align:center;max-width:100%}.contact-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:18px}.map-actions{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;align-items:flex-start;margin-top:20px}.map-link-group{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:180px}.map-btn{min-width:178px}.review-btn{min-width:136px;padding:8px 13px;border-radius:14px;font-size:13px;line-height:1.1;box-shadow:0 10px 26px rgba(232,184,98,.18)}
.drawer,.modal{position:fixed;inset:0;z-index:100;display:none}.drawer.open,.modal.open{display:block}.drawer-backdrop,.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.drawer-panel{position:absolute;right:14px;top:14px;bottom:14px;width:min(480px,calc(100% - 28px));border-radius:34px;padding:26px;overflow:auto;animation:slideIn .28s cubic-bezier(.2,.8,.2,1)}@keyframes slideIn{from{transform:translateX(24px);opacity:0}to{transform:none;opacity:1}}.close{position:absolute;right:18px;top:18px}.drawer h2{font-size:38px;margin:8px 0 12px}.cart-items{display:grid;gap:12px;margin-top:18px}.cart-item{display:grid;grid-template-columns:62px 1fr auto;gap:12px;align-items:center;padding:10px;border-radius:20px;background:rgba(255,245,230,.07);border:1px solid var(--line)}.cart-item img,.cart-mini-placeholder{width:62px;height:62px;border-radius:16px;object-fit:cover;background:#302015}.cart-item h4{font-size:14px;margin:0 0 4px}.cart-item small{color:var(--muted)}.cart-summary{display:flex;justify-content:space-between;align-items:center;margin:18px 0;padding:16px;border-radius:20px;background:rgba(214,170,97,.13);border:1px solid rgba(214,170,97,.24)}.checkout-form{display:grid;gap:12px}.field-label{font-weight:900;color:var(--gold2)}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:8px}.segmented label{display:block}.segmented input{display:none}.segmented span{display:block;text-align:center;padding:13px;border-radius:17px;background:rgba(255,245,230,.08);border:1px solid var(--line);font-weight:900;transition:.2s}.segmented input:checked+span{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#20140b}.delivery-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.toggle{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:17px;color:var(--soft)}.toggle input{width:auto}.bonus-box,.payment-note,.login-offer{padding:14px;border-radius:20px;background:rgba(255,245,230,.07);border:1px solid var(--line);color:var(--soft)}.bonus-box b,.login-offer b{color:var(--gold2)}
input,textarea,select{width:100%;border:1px solid rgba(255,245,230,.16);background:rgba(255,245,230,.08);color:var(--ink);border-radius:18px;padding:14px 15px;outline:none;transition:.2s}textarea{min-height:98px;resize:vertical}input:focus,textarea:focus,select:focus{border-color:rgba(214,170,97,.7);box-shadow:0 0 0 5px rgba(214,170,97,.13);background:rgba(255,245,230,.12)}input::placeholder,textarea::placeholder{color:rgba(223,205,177,.72)}
.modal-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(560px,calc(100% - 28px));max-height:calc(100vh - 28px);overflow:auto;border-radius:36px;padding:28px;animation:modalPop .28s cubic-bezier(.2,.8,.2,1)}@keyframes modalPop{from{transform:translate(-50%,-47%) scale(.98);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.modal-card h3{font-size:36px;margin:10px 44px 16px 0}.tabs{display:flex;gap:8px;margin:18px 44px 18px 0}.tab{flex:1;border:1px solid var(--line);background:rgba(255,245,230,.075);color:var(--soft);border-radius:16px;padding:12px;font-weight:900;transition:.2s}.tab:hover{background:rgba(255,245,230,.12);color:var(--ink)}.tab.active{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#20140b}.forgot-link{border:0;background:transparent;color:var(--gold2);padding:2px 0 0;justify-self:center;font-weight:900;font-size:14px;cursor:pointer;transition:.2s}.forgot-link:hover{color:var(--ink);transform:translateY(-1px)}.form-note{margin:-6px 0 4px;color:var(--soft);line-height:1.45}.input-wrap{position:relative;display:block}.input-wrap span{position:absolute;left:15px;top:9px;z-index:1;color:rgba(223,205,177,.72);font-size:12px;font-weight:900;letter-spacing:.02em}.input-wrap input{padding-top:26px}
.auth-form{display:grid;gap:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid textarea,.form-grid button{grid-column:1/-1}.modal-form{margin-top:8px}.profile-card{width:min(960px,calc(100% - 28px))}.profile-grid{display:grid;grid-template-columns:310px 1fr;gap:18px}.profile-side,.profile-main{border-radius:26px;padding:18px}.bonus-balance{font-size:42px;font-weight:900;color:var(--gold2)}.accordion{display:grid;gap:10px}.accordion details{border:1px solid var(--line);border-radius:20px;background:rgba(255,245,230,.055);padding:12px}.accordion summary{cursor:pointer;font-weight:900}.order-lines{margin:10px 0 0;color:var(--muted)}.admin-link{margin-top:12px}.item-modal-card{width:min(880px,calc(100% - 28px));padding:18px}.item-modal-grid{display:grid;grid-template-columns:minmax(260px,1fr) 1fr;gap:22px;align-items:center}.item-modal-img{height:390px;border-radius:26px;overflow:hidden;background:linear-gradient(135deg,#3a2317,#142015);display:grid;place-items:center;font-family:"Playfair Display",serif;font-size:52px;color:rgba(255,245,230,.55)}.item-modal-img img{width:100%;height:100%;object-fit:cover;display:block}.item-modal-info{padding:12px}.item-modal-info h2{font-size:clamp(34px,4vw,56px);margin:10px 0;line-height:1.04}.item-modal-info p{color:var(--soft);line-height:1.6}.item-modal-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0;padding:16px;border-radius:20px;background:rgba(255,245,230,.07);border:1px solid var(--line)}.item-modal-meta b{font-size:28px;color:var(--gold2)}.item-modal-meta span{color:var(--soft);font-weight:900}
.toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(20px);opacity:0;z-index:200;background:var(--ink);color:#20140b;border-radius:18px;padding:14px 18px;box-shadow:0 18px 44px rgba(0,0,0,.34);font-weight:900;transition:.25s}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.empty{padding:30px;border-radius:22px;background:rgba(255,245,230,.07);border:1px dashed var(--line);color:var(--soft);text-align:center}.danger{color:#ffb4a8}.reveal{opacity:0;transform:translateY(18px);animation:reveal .72s cubic-bezier(.22,.85,.3,1) forwards}.delay-1{animation-delay:.15s}@keyframes reveal{to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){body,.page-bg:before,.page-bg:after,.page-bg span{animation:none!important}}
@media(max-width:1100px){.category-rail{grid-template-columns:repeat(4,minmax(0,1fr));position:relative;top:auto}}
@media(max-width:980px){.desktop-nav{display:none}.hero{padding-top:44px}.hero-shell{padding:44px 28px 36px}.benefits,.action-section,.profile-grid,.item-modal-grid{grid-template-columns:1fr}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.promo-grid{grid-template-columns:1fr}.topbar{align-items:flex-start}.top-actions{margin-left:auto}.brand-text small{display:none}.item-modal-img{height:300px}}
@media(max-width:640px){.topbar{top:8px;width:calc(100% - 16px);margin-top:8px;border-radius:24px}.brand-text b{font-size:20px}.brand-mark{width:42px;height:42px}.top-actions{gap:6px}.top-actions .btn{padding:10px 11px;font-size:13px}.section{width:calc(100% - 18px);padding:58px 0}.hero h1{font-size:38px}.hero-shell{border-radius:30px;padding:38px 18px 30px}.benefits{gap:10px}.benefit-card{min-height:96px;padding:16px}.menu-grid{grid-template-columns:1fr}.card-actions{grid-template-columns:1fr}.form-grid,.delivery-fields{grid-template-columns:1fr}.category-title{align-items:flex-start;flex-direction:column}.category-title h3{font-size:34px}.drawer-panel{right:8px;top:8px;bottom:8px;width:calc(100% - 16px);border-radius:26px}.cart-item{grid-template-columns:54px 1fr}.cart-item .qty-row{grid-column:2}.segmented{grid-template-columns:1fr}.modal-card{padding:20px}.tabs{margin-right:38px;flex-direction:column}.profile-card{width:calc(100% - 16px)}.item-modal-card{padding:12px}.item-modal-img{height:240px}.category-rail{top:auto;grid-template-columns:repeat(2,minmax(0,1fr))}}


/* v7 polish: premium scrollbars and profile spacing */
html{
  scrollbar-width: thin;
  scrollbar-color: rgba(239,195,109,.82) rgba(255,245,230,.055);
}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-track{background:rgba(255,245,230,.045);border-radius:999px}
*::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(255,218,151,.95),rgba(190,127,51,.9));border:2px solid rgba(21,14,9,.75);border-radius:999px;box-shadow:0 0 18px rgba(236,184,92,.25)}
*::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,rgba(255,228,170,1),rgba(214,150,61,.98))}
.modal-card{scrollbar-gutter:stable both-edges}
.modal-card::-webkit-scrollbar{width:8px}
.modal-card::-webkit-scrollbar-track{margin:26px 0;background:rgba(255,245,230,.045);border-radius:999px}
.modal-card::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(255,221,159,.96),rgba(190,127,51,.88));border:2px solid rgba(58,41,29,.92);border-radius:999px}
.profile-card #profileContent>h2{padding-top:22px;margin:18px 56px 26px 10px;font-size:clamp(36px,4.2vw,56px)}
.profile-card{padding-top:30px}
.profile-grid{margin-top:8px}
@media(max-width:640px){.profile-card #profileContent>h2{padding-top:18px;margin:18px 44px 22px 2px;font-size:36px}.profile-card{padding-top:24px}}

.cart-total-details{
  display:grid;
  gap:8px;
  margin:-6px 0 12px;
  padding:0 4px;
  color:var(--muted);
  font-size:14px;
}
.cart-total-details div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.cart-total-details b{
  color:var(--cream);
}
.cart-total-details .bonus-discount b{
  color:var(--gold2);
}

/* v10 mobile app layout */
:root{--cream:#fff5e6;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px)}
html,body{max-width:100%;overscroll-behavior-y:none}
img,video,canvas,svg{max-width:100%;height:auto}
input,textarea,select,button{max-width:100%;-webkit-tap-highlight-color:transparent}
@media(max-width:760px){
  body{padding-bottom:calc(92px + var(--safe-bottom));background-attachment:fixed;touch-action:manipulation}
  html{scroll-padding-top:96px}
  .page-bg span{filter:blur(54px);opacity:.28}
  .topbar{position:sticky;top:calc(8px + var(--safe-top));width:calc(100% - 16px);margin:8px auto 0;padding:9px 10px;border-radius:25px;align-items:center;gap:8px;box-shadow:0 18px 46px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.18)}
  .brand{gap:9px;min-width:0;overflow:hidden}.brand-mark{width:42px;height:42px;border-radius:16px;flex:0 0 42px;font-size:15px}.brand-text,.brand span:not(.brand-mark){min-width:0}.brand-text b,.brand b{font-size:18px;max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-text small,.brand small{display:none!important}
  .top-actions{margin-left:auto;gap:6px;flex:0 0 auto}.top-actions .btn{min-height:42px;border-radius:16px;padding:10px 12px;font-size:0}.top-actions .btn#profileBtn:after{content:'ЛК';font-size:13px}.top-actions .cart-button{min-width:58px}.top-actions .cart-button:before{content:'Корзина';font-size:0}.top-actions .cart-button{font-size:0}.top-actions .cart-button span{font-size:12px;margin-left:0}
  .desktop-nav{display:flex!important;position:fixed;z-index:80;left:10px;right:10px;bottom:calc(10px + var(--safe-bottom));gap:6px;padding:8px;border-radius:26px;background:linear-gradient(145deg,rgba(255,245,230,.16),rgba(255,245,230,.075));border:1px solid rgba(255,245,230,.18);box-shadow:0 20px 58px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.16);-webkit-backdrop-filter:blur(28px) saturate(165%);backdrop-filter:blur(28px) saturate(165%)}
  .desktop-nav a{flex:1;min-width:0;padding:10px 6px;border-radius:18px;text-align:center;font-size:12px;line-height:1.08;color:var(--soft);background:rgba(255,245,230,.055)}.desktop-nav a:hover,.desktop-nav a:active{transform:none;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#21150c}
  .section{width:calc(100% - 18px);padding:42px 0}.section.compact{padding-top:20px}.section-head{margin-bottom:18px}.section h2{font-size:clamp(34px,10vw,46px)}.eyebrow{font-size:11px;letter-spacing:.14em}
  .hero{min-height:auto;padding-top:30px;padding-bottom:26px;gap:12px}.hero-shell{border-radius:32px;padding:38px 18px 26px}.hero h1{font-size:clamp(38px,12.2vw,56px);line-height:.96}.hero p{font-size:16px;line-height:1.48;margin-top:14px}.hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:22px}.hero-actions .btn{width:100%;min-height:52px}.benefits{grid-template-columns:1fr;gap:10px}.benefit-card{min-height:84px;border-radius:24px}.benefit-card b{font-size:28px}
  .promo-grid,.action-section{grid-template-columns:1fr;gap:12px}.promo-card,.action-card,.contact-card{border-radius:28px;padding:22px}.promo-card h3{font-size:30px}.action-card{min-height:220px}.action-card h2,.contact-card h2{font-size:clamp(34px,10vw,44px)}.action-card p,.contact-card p{font-size:15px;line-height:1.5}.contact-links,.map-actions{display:grid;grid-template-columns:1fr;gap:10px}.map-link-group,.map-btn,.review-btn{width:100%;min-width:0}.review-btn{min-height:40px}
  .menu-section{padding-top:44px}.category-rail{position:relative;top:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px;border-radius:24px;margin-bottom:26px;max-width:100%;overflow:hidden}.category-rail a{min-height:44px;padding:9px 7px;border-radius:15px;font-size:12px;line-height:1.1}.menu-groups{gap:34px}.category-title{margin-bottom:14px}.category-title h3{font-size:32px}.menu-grid{grid-template-columns:1fr;gap:12px}.menu-card{display:grid;grid-template-columns:108px minmax(0,1fr);border-radius:24px;min-height:140px}.menu-img{height:100%;min-height:140px;border-radius:0}.menu-img.placeholder{font-size:30px}.menu-body{padding:13px;gap:8px;min-width:0}.menu-title{font-size:17px;line-height:1.16;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.desc{font-size:12px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.meta{align-items:flex-start;flex-direction:column;gap:2px}.price{font-size:20px}.weight{font-size:12px}.add-btn{min-height:40px;border-radius:15px;padding:10px 12px;width:100%}
  .drawer-panel{left:0;right:0;top:auto;bottom:0;width:100%;max-height:92dvh;border-radius:32px 32px 0 0;padding:24px 16px calc(18px + var(--safe-bottom));animation:mobileSheet .28s cubic-bezier(.2,.8,.2,1);box-shadow:0 -28px 70px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.18)}@keyframes mobileSheet{from{transform:translateY(22px);opacity:0}to{transform:none;opacity:1}}
  .drawer h2{font-size:36px;margin-right:48px}.cart-item{grid-template-columns:58px minmax(0,1fr) auto;gap:10px;padding:9px;border-radius:18px}.cart-item h4{font-size:13px}.cart-item small{font-size:12px}.cart-item .qty-row{grid-column:auto}.qty-row button{width:34px;height:34px;border-radius:13px}.checkout-form input,.checkout-form textarea,.auth-form input,.modal-form input,.modal-form textarea{min-height:50px;border-radius:18px}.delivery-fields,.form-grid{grid-template-columns:1fr}.segmented{grid-template-columns:1fr 1fr}.segmented span{min-height:50px;padding:14px 8px;border-radius:18px}.bonus-box,.payment-note,.login-offer{border-radius:20px}
  .modal-card{left:0;right:0;top:auto;bottom:0;transform:none;width:100%;max-height:92dvh;border-radius:32px 32px 0 0;padding:24px 16px calc(18px + var(--safe-bottom));animation:mobileSheet .28s cubic-bezier(.2,.8,.2,1);scrollbar-gutter:auto}.modal-card h3{font-size:34px;margin:8px 48px 16px 0}.tabs{margin:12px 48px 16px 0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.auth-tabs .tab{min-height:52px}.profile-card{width:100%;padding-top:24px}.profile-grid{grid-template-columns:1fr;gap:12px}.profile-side,.profile-main{border-radius:22px;padding:14px}.profile-card #profileContent>h2{padding-top:8px;margin:14px 48px 18px 0;font-size:34px}.item-modal-card{padding:16px}.item-modal-grid{grid-template-columns:1fr;gap:14px}.item-modal-img{height:260px;border-radius:24px}.item-modal-info{padding:2px}.item-modal-meta{margin:16px 0;align-items:flex-start;flex-direction:column}.toast{left:10px;right:10px;bottom:calc(100px + var(--safe-bottom));transform:translateY(20px);text-align:center}.toast.show{transform:translateY(0)}
}
@media(max-width:390px){.brand-text b,.brand b{max-width:36vw;font-size:16px}.top-actions .btn#profileBtn:after{content:'ЛК'}.category-rail{grid-template-columns:1fr 1fr}.menu-card{grid-template-columns:94px minmax(0,1fr);min-height:128px}.menu-img{min-height:128px}.menu-body{padding:11px}.menu-title{font-size:16px}.price{font-size:18px}.desktop-nav a{font-size:11px;padding:9px 4px}.hero h1{font-size:38px}}
@media(max-width:330px){.top-actions .btn{padding:9px 10px}.brand-mark{width:38px;height:38px}.menu-card{grid-template-columns:1fr}.menu-img{height:170px}.desc{display:none}}

/* v11 mobile header, centered overlays and locked background scroll */
body.overlay-open{
  position:fixed;
  left:0;
  right:0;
  width:100%;
  overflow:hidden!important;
  touch-action:none;
}
body.overlay-open .page-bg{position:fixed}

input[type="date"], input[type="time"]{color-scheme:dark}
input[type="date"]::-webkit-calendar-picker-indicator,
input[type="time"]::-webkit-calendar-picker-indicator{
  filter:invert(1) sepia(.18) saturate(1.4) brightness(1.15);
  opacity:.86;
}
.input-wrap{min-width:0}
.input-wrap input{height:100%}
.input-wrap span{pointer-events:none}

@media(max-width:980px){
  .topbar{
    position:sticky;
    top:calc(8px + env(safe-area-inset-top,0px));
    z-index:90;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center!important;
    width:calc(100% - 16px)!important;
    min-height:68px;
    margin:8px auto 0!important;
    padding:10px!important;
    border-radius:26px!important;
    gap:10px!important;
    overflow:visible;
  }
  .brand{
    min-width:0!important;
    width:100%;
    overflow:hidden;
    gap:10px!important;
  }
  .brand-mark{
    flex:0 0 46px;
    width:46px!important;
    height:46px!important;
    border-radius:17px!important;
    font-size:15px;
  }
  .brand-text, .brand span:not(.brand-mark){
    display:block;
    min-width:0;
    overflow:hidden;
  }
  .brand-text b, .brand b{
    display:block;
    max-width:100%!important;
    font-size:19px!important;
    line-height:1.02;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .brand-text small, .brand small{
    display:block!important;
    max-width:100%;
    margin-top:3px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    font-size:11px!important;
    color:rgba(255,245,230,.72)!important;
  }
  .top-actions{
    margin-left:0!important;
    display:flex!important;
    align-items:center;
    gap:7px!important;
    flex:0 0 auto;
  }
  .top-actions .btn{
    min-height:44px;
    border-radius:17px!important;
    padding:10px 13px!important;
    font-size:13px!important;
    white-space:nowrap;
  }
  .top-actions #profileBtn{
    min-width:52px;
    font-size:0!important;
  }
  .top-actions #profileBtn:after{
    content:'ЛК';
    font-size:13px;
  }
  .top-actions .cart-button{
    min-width:54px;
    max-width:70px;
    font-size:0!important;
    padding:9px 11px!important;
  }
  .top-actions .cart-button span{
    min-width:26px;
    height:26px;
    margin:0;
    font-size:12px!important;
  }
  .desktop-nav{
    display:flex!important;
    position:fixed!important;
    z-index:95!important;
    left:10px!important;
    right:10px!important;
    bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;
    top:auto!important;
    width:auto!important;
    margin:0!important;
    gap:6px!important;
    padding:8px!important;
    border-radius:26px!important;
    background:linear-gradient(145deg,rgba(255,245,230,.17),rgba(255,245,230,.075))!important;
    border:1px solid rgba(255,245,230,.2)!important;
    box-shadow:0 20px 58px rgba(0,0,0,.50),inset 0 1px 0 rgba(255,255,255,.16)!important;
    -webkit-backdrop-filter:blur(30px) saturate(170%)!important;
    backdrop-filter:blur(30px) saturate(170%)!important;
    overflow:hidden!important;
  }
  .desktop-nav a{
    flex:1 1 0;
    min-width:0;
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:8px 4px!important;
    border-radius:18px!important;
    text-align:center;
    font-size:12px!important;
    line-height:1.08;
    background:rgba(255,245,230,.055);
  }
  .desktop-nav a[href="#contacts"]{display:none}
  body{padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}
}

@media(max-width:760px){
  .topbar{min-height:66px;border-radius:24px!important}
  .brand-mark{flex-basis:44px;width:44px!important;height:44px!important}
  .brand-text b,.brand b{font-size:18px!important;max-width:48vw!important}
  .brand-text small,.brand small{font-size:10.5px!important;max-width:48vw!important}
  .top-actions #profileBtn{min-width:48px}
  .top-actions .cart-button{min-width:50px;max-width:58px}

  .modal.open{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:calc(16px + env(safe-area-inset-top,0px)) 10px calc(16px + env(safe-area-inset-bottom,0px))!important;
  }
  .modal-card{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    width:min(100%,560px)!important;
    max-height:min(86dvh,760px)!important;
    border-radius:30px!important;
    padding:24px 16px!important;
    animation:modalCenterPop .24s cubic-bezier(.2,.8,.2,1)!important;
    overflow:auto!important;
    overscroll-behavior:contain;
  }
  @keyframes modalCenterPop{from{transform:translateY(10px) scale(.985);opacity:0}to{transform:none;opacity:1}}
  .modal-card h3{
    font-size:clamp(32px,10vw,44px)!important;
    margin:8px 50px 18px 0!important;
  }
  .modal-form{gap:12px!important}
  .modal-form .input-wrap input{
    min-height:58px!important;
    padding-top:28px!important;
  }
  .modal-form .input-wrap span{
    top:9px;
    left:16px;
    font-size:12px;
    color:rgba(255,224,160,.85);
  }
  .drawer.open{display:block!important}
  .drawer-panel{overscroll-behavior:contain}
}

@media(max-width:390px){
  .topbar{grid-template-columns:minmax(0,1fr) auto;padding:8px!important;gap:7px!important}
  .brand{gap:8px!important}.brand-mark{flex-basis:40px;width:40px!important;height:40px!important;border-radius:15px!important}
  .brand-text b,.brand b{font-size:16px!important;max-width:44vw!important}
  .brand-text small,.brand small{display:none!important}
  .top-actions{gap:5px!important}.top-actions #profileBtn{min-width:43px;padding:8px 10px!important}.top-actions .cart-button{min-width:46px;padding:8px 9px!important}.desktop-nav a{font-size:11px!important;min-height:42px;border-radius:16px!important}
}

/* v12 clean mobile header + premium bottom navigation + search overlay */
.mobile-app-nav{display:none}
.search-field svg,.nav-ico svg{width:22px;height:22px;display:block}
.search-card{width:min(720px,calc(100% - 28px));max-height:min(86dvh,760px)}
.search-card h3{font-size:clamp(34px,7vw,52px);margin-right:54px!important}
.search-field{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;margin-top:18px;padding:12px 16px;border-radius:24px;border:1px solid rgba(255,245,230,.18);background:rgba(255,245,230,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.search-field span{color:var(--gold2);opacity:.95}.search-field input{border:0!important;background:transparent!important;min-height:42px!important;padding:0!important;font-size:18px;font-weight:800;color:var(--ink);outline:0}.search-field input::placeholder{color:rgba(255,245,230,.48)}
.search-hint{margin:12px 0 16px;color:var(--muted);font-size:14px;line-height:1.45}.search-results{display:grid;gap:10px;max-height:48dvh;overflow:auto;padding-right:3px}.search-result{display:grid;grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;border-radius:22px;border:1px solid rgba(255,245,230,.13);background:linear-gradient(145deg,rgba(255,245,230,.095),rgba(255,245,230,.045));transition:.22s}.search-result:hover{transform:translateY(-1px);border-color:rgba(255,224,160,.38);background:rgba(255,245,230,.11)}.search-result img,.search-result .search-img-placeholder{width:68px;height:68px;border-radius:18px;object-fit:cover;background:linear-gradient(135deg,#3a2518,#182315);display:grid;place-items:center;color:var(--gold2);font-family:"Playfair Display",serif;font-weight:900}.search-result h4{margin:0 0 4px;font-size:15px;line-height:1.18;color:var(--ink);font-weight:900}.search-result small{display:block;color:var(--muted);font-weight:700}.search-result .search-actions{display:flex;align-items:center;gap:7px}.search-result .btn{min-height:40px;padding:10px 12px;border-radius:15px}.search-empty{padding:26px;border-radius:22px;border:1px dashed rgba(255,245,230,.18);background:rgba(255,245,230,.055);color:var(--soft);text-align:center;font-weight:800}

@media(max-width:980px){
  body{padding-bottom:calc(94px + env(safe-area-inset-bottom,0px))!important}
  .topbar{
    position:sticky!important;top:calc(8px + env(safe-area-inset-top,0px))!important;z-index:82!important;
    display:flex!important;align-items:center!important;justify-content:flex-start!important;
    width:calc(100% - 18px)!important;min-height:64px!important;margin:8px auto 0!important;padding:9px 10px!important;
    border-radius:25px!important;overflow:hidden!important;gap:10px!important;
  }
  .topbar .desktop-nav,.topbar .top-actions{display:none!important;visibility:hidden!important;width:0!important;height:0!important;overflow:hidden!important;padding:0!important;margin:0!important;pointer-events:none!important}
  .brand{width:100%!important;min-width:0!important;display:flex!important;align-items:center!important;gap:10px!important;overflow:hidden!important}
  .brand-mark{flex:0 0 44px!important;width:44px!important;height:44px!important;border-radius:17px!important;font-size:15px!important}
  .brand-text{min-width:0!important;overflow:hidden!important;display:block!important}.brand-text b{display:block!important;max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:20px!important;line-height:1.02!important}.brand-text small{display:block!important;max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:11px!important;color:rgba(255,245,230,.68)!important;margin-top:3px!important}
  .mobile-app-nav{position:fixed;z-index:160;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:8px;border-radius:28px;background:linear-gradient(145deg,rgba(255,245,230,.18),rgba(255,245,230,.075));border:1px solid rgba(255,245,230,.22);box-shadow:0 22px 62px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.18);-webkit-backdrop-filter:blur(32px) saturate(175%);backdrop-filter:blur(32px) saturate(175%)}
  .mobile-nav-item{appearance:none;border:0;min-width:0;min-height:58px;padding:7px 5px;border-radius:21px;background:rgba(255,245,230,.055);color:rgba(255,245,230,.76);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font:800 11px/1.05 Manrope,system-ui;position:relative;transition:transform .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease}.mobile-nav-item:active{transform:scale(.96)}.mobile-nav-item:hover,.mobile-nav-item.active{color:#1e140c;background:linear-gradient(135deg,var(--gold),var(--gold2));box-shadow:0 10px 24px rgba(214,170,97,.2)}.mobile-nav-item .nav-ico{width:26px;height:26px;display:grid;place-items:center}.mobile-cart-nav b{position:absolute;right:9px;top:7px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;display:grid;place-items:center;background:#20140b;color:var(--gold2);font-size:11px;line-height:20px;border:1px solid rgba(255,224,160,.22)}
}
@media(max-width:760px){
  .search-modal.open{display:flex!important;align-items:center!important;justify-content:center!important;padding:calc(14px + env(safe-area-inset-top,0px)) 10px calc(96px + env(safe-area-inset-bottom,0px))!important}.search-card{width:100%!important;max-height:78dvh!important;border-radius:30px!important;padding:22px 16px!important}.search-card h3{font-size:40px!important;margin:8px 48px 16px 0!important}.search-field{border-radius:22px;margin-top:10px}.search-field input{font-size:16px}.search-results{max-height:45dvh}.search-result{grid-template-columns:58px minmax(0,1fr);gap:10px;border-radius:20px}.search-result img,.search-result .search-img-placeholder{width:58px;height:58px;border-radius:16px}.search-result .search-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;width:100%}.search-result .btn{width:100%}
}
@media(max-width:390px){
  .topbar{min-height:60px!important;border-radius:22px!important}.brand-mark{flex-basis:40px!important;width:40px!important;height:40px!important}.brand-text b{font-size:17px!important}.brand-text small{display:none!important}.mobile-app-nav{left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));border-radius:25px;gap:5px;padding:7px}.mobile-nav-item{min-height:54px;border-radius:18px;font-size:10px}.mobile-nav-item .nav-ico{width:24px;height:24px}.mobile-cart-nav b{right:6px;top:5px}
}

/* v13 adaptive overlays + performance pass */
.modal.open,.drawer.open{z-index:320!important}
body.overlay-open .mobile-app-nav{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(14px);transition:.18s ease}
.modal-card,.drawer-panel,.profile-card,.search-card{box-sizing:border-box;max-width:calc(100dvw - 24px)}
#profileContent,.profile-grid,.profile-side,.profile-main,.accordion,.accordion details{min-width:0;max-width:100%}
.profile-main{overflow:hidden}.profile-main h3{overflow-wrap:anywhere}.accordion summary{overflow-wrap:anywhere}.order-lines{overflow-wrap:anywhere}
@media(max-width:980px){
  .modal.open{display:flex!important;align-items:center!important;justify-content:center!important;padding:calc(12px + env(safe-area-inset-top,0px)) 10px calc(12px + env(safe-area-inset-bottom,0px))!important}
  .modal-card{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;width:min(560px,calc(100dvw - 20px))!important;max-width:calc(100dvw - 20px)!important;max-height:calc(100dvh - 28px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;overflow:auto!important;overscroll-behavior:contain!important;border-radius:28px!important;padding:22px 14px!important;scrollbar-gutter:auto!important}
  .profile-card{width:min(820px,calc(100dvw - 20px))!important;max-width:calc(100dvw - 20px)!important;max-height:calc(100dvh - 28px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;padding:22px 12px 16px!important}
  .profile-card #profileContent>h2{font-size:clamp(30px,8.8vw,44px)!important;margin:8px 50px 16px 4px!important;padding-top:0!important;line-height:1.02!important}
  .profile-grid{grid-template-columns:1fr!important;gap:12px!important;width:100%!important;margin-top:0!important}
  .profile-side,.profile-main{width:100%!important;border-radius:22px!important;padding:14px!important;overflow:hidden!important}
  .profile-side form,.profile-side input,.profile-side button,.profile-side .btn,.profile-side a,.profile-main .accordion,.profile-main details{width:100%!important;max-width:100%!important}
  .profile-main h3{font-size:clamp(24px,7.6vw,34px)!important;line-height:1.05!important;margin:20px 0 10px!important}
  .bonus-balance{font-size:clamp(34px,12vw,52px)!important;line-height:1!important}
  .tabs{grid-template-columns:1fr 1fr!important;margin:8px 50px 14px 0!important}
  .auth-tabs .tab{min-width:0!important;white-space:normal!important}
}
@media(max-width:430px){
  .modal.open{padding:calc(10px + env(safe-area-inset-top,0px)) 8px calc(10px + env(safe-area-inset-bottom,0px))!important}
  .modal-card,.profile-card{width:calc(100dvw - 16px)!important;max-width:calc(100dvw - 16px)!important;max-height:calc(100dvh - 22px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;border-radius:24px!important;padding:18px 12px!important}
  .modal-card h3{font-size:clamp(30px,11vw,38px)!important;margin-right:46px!important}
  .tabs{grid-template-columns:1fr!important}.auth-tabs .tab{min-height:48px!important}
  .profile-side,.profile-main{padding:12px!important;border-radius:20px!important}.accordion details{padding:11px!important;border-radius:18px!important}
}
/* lighter visual effects for speed */
.menu-group,.promo-grid,.action-section,.contacts,.admin-panel{content-visibility:auto;contain-intrinsic-size:720px}
.menu-card,.promo-card,.benefit-card,.action-card,.contact-card,.admin-card{contain:layout paint style}
@media(max-width:980px){
  body,.admin-body{animation:none!important;background-size:100% 100%!important;background-attachment:scroll!important}
  .page-bg:before,.page-bg:after,.page-bg span{animation:none!important}.page-bg:before{filter:blur(44px)!important;opacity:.38!important}.page-bg:after{opacity:.28!important}.page-bg span{filter:blur(34px)!important;opacity:.18!important}
  .glass,.glass-panel,.topbar,.modal-card,.drawer-panel,.mobile-app-nav,.admin-tabs{box-shadow:0 14px 38px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.13)!important;-webkit-backdrop-filter:blur(14px) saturate(135%)!important;backdrop-filter:blur(14px) saturate(135%)!important}
  .btn:before{display:none!important}.reveal{animation:none!important;opacity:1!important;transform:none!important}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

/* v14 compact adaptive mobile bottom menu + sane button sizes */
@media(max-width:980px){
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))!important}
  .mobile-app-nav{
    left:50%!important;
    right:auto!important;
    bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;
    transform:translateX(-50%)!important;
    width:min(420px,calc(100dvw - 20px))!important;
    height:clamp(58px,13.6vw,66px)!important;
    min-height:0!important;
    padding:6px!important;
    gap:5px!important;
    border-radius:22px!important;
    align-items:center!important;
    box-sizing:border-box!important;
  }
  .mobile-nav-item{
    min-height:0!important;
    height:calc(100% - 2px)!important;
    padding:4px 3px!important;
    border-radius:16px!important;
    gap:2px!important;
    font-size:10px!important;
    line-height:1!important;
  }
  .mobile-nav-item .nav-ico,
  .mobile-nav-item .nav-ico svg{
    width:20px!important;
    height:20px!important;
  }
  .mobile-cart-nav b{
    right:5px!important;
    top:4px!important;
    min-width:17px!important;
    height:17px!important;
    padding:0 4px!important;
    font-size:9px!important;
    line-height:17px!important;
  }
  body.overlay-open .mobile-app-nav{
    transform:translate(-50%,14px)!important;
  }
  .btn,
  .btn.big,
  .btn.wide,
  .add-btn,
  .review-btn,
  .map-btn,
  .search-result .btn,
  .profile-side .btn,
  .profile-side button,
  .checkout-form .btn,
  .modal-form .btn{
    min-height:42px!important;
    padding:10px 14px!important;
    border-radius:16px!important;
    font-size:14px!important;
    line-height:1.15!important;
  }
  .hero-actions .btn,
  .modal-form button[type="submit"],
  .checkout-form button[type="submit"]{
    min-height:48px!important;
    padding:12px 16px!important;
    border-radius:18px!important;
    font-size:15px!important;
  }
  .segmented span{
    min-height:44px!important;
    padding:11px 8px!important;
    border-radius:16px!important;
    font-size:14px!important;
  }
  .icon-btn{
    width:38px!important;
    height:38px!important;
    border-radius:14px!important;
    font-size:18px!important;
  }
  .qty-row button{
    width:32px!important;
    height:32px!important;
    border-radius:12px!important;
    font-size:16px!important;
  }
}
@media(max-width:390px){
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))!important}
  .mobile-app-nav{
    width:calc(100dvw - 16px)!important;
    height:58px!important;
    padding:5px!important;
    gap:4px!important;
    border-radius:20px!important;
  }
  .mobile-nav-item{
    border-radius:14px!important;
    font-size:9px!important;
  }
  .mobile-nav-item .nav-ico,
  .mobile-nav-item .nav-ico svg{
    width:18px!important;
    height:18px!important;
  }
  .mobile-cart-nav b{
    min-width:16px!important;
    height:16px!important;
    font-size:8.5px!important;
    line-height:16px!important;
    right:4px!important;
    top:4px!important;
  }
  .btn,
  .btn.big,
  .btn.wide,
  .add-btn,
  .review-btn,
  .map-btn,
  .search-result .btn,
  .profile-side .btn,
  .profile-side button,
  .checkout-form .btn,
  .modal-form .btn{
    min-height:40px!important;
    padding:9px 12px!important;
    border-radius:15px!important;
    font-size:13px!important;
  }
  .hero-actions .btn,
  .modal-form button[type="submit"],
  .checkout-form button[type="submit"]{
    min-height:46px!important;
    font-size:14px!important;
  }
}

/* v15 full mobile normalization: adaptive app scale for all phone screens */
:root{
  --m-safe-top: env(safe-area-inset-top, 0px);
  --m-safe-bottom: env(safe-area-inset-bottom, 0px);
}
@media (max-width: 980px){
  *{box-sizing:border-box}
  html{width:100%;max-width:100%;overflow-x:hidden!important;scroll-padding-top:76px;font-size:15px}
  body{width:100%;max-width:100%;overflow-x:hidden!important;padding-bottom:calc(clamp(68px,16vw,84px) + var(--m-safe-bottom))!important;font-size:clamp(13px,3.55vw,15px);line-height:1.38}
  main,#home{max-width:100%;overflow:hidden}
  img,svg,video,canvas{max-width:100%;height:auto}

  /* compact mobile header */
  .topbar{
    position:sticky!important;
    top:calc(8px + var(--m-safe-top))!important;
    z-index:82!important;
    width:min(440px,calc(100dvw - 20px))!important;
    min-height:clamp(54px,14vw,64px)!important;
    margin:8px auto 0!important;
    padding:clamp(7px,2.2vw,10px)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:clamp(8px,2.5vw,12px)!important;
    border-radius:clamp(20px,6vw,26px)!important;
    overflow:hidden!important;
  }
  .topbar .desktop-nav,.topbar .top-actions{display:none!important;width:0!important;height:0!important;min-width:0!important;overflow:hidden!important;visibility:hidden!important;pointer-events:none!important;margin:0!important;padding:0!important}
  .brand{width:100%!important;min-width:0!important;max-width:100%!important;gap:clamp(8px,2.5vw,10px)!important;overflow:hidden!important}
  .brand-mark{flex:0 0 clamp(38px,11vw,44px)!important;width:clamp(38px,11vw,44px)!important;height:clamp(38px,11vw,44px)!important;border-radius:clamp(14px,4vw,17px)!important;font-size:clamp(13px,3.7vw,15px)!important}
  .brand-text{min-width:0!important;overflow:hidden!important}.brand-text b{font-size:clamp(16px,4.9vw,20px)!important;line-height:1.02!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important}.brand-text small{display:block!important;font-size:clamp(10px,3vw,11px)!important;line-height:1.1!important;margin-top:2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:rgba(255,245,230,.68)!important}

  /* global mobile spacing and typography */
  .section{width:min(100% - 20px,440px)!important;padding:clamp(32px,9vw,46px) 0!important;margin-left:auto!important;margin-right:auto!important}.section.compact{padding-top:clamp(18px,5vw,26px)!important}.section-head{margin-bottom:clamp(16px,5vw,22px)!important}.section h2{font-size:clamp(28px,8.8vw,40px)!important;line-height:1.02!important}.eyebrow{font-size:clamp(10px,2.8vw,11px)!important;letter-spacing:.12em!important}
  p,.desc,.action-card p,.contact-card p,.hero p{font-size:clamp(13px,3.7vw,15px)!important;line-height:1.48!important}

  /* hero */
  .hero{min-height:auto!important;padding-top:clamp(26px,7vw,34px)!important;padding-bottom:clamp(18px,6vw,28px)!important;gap:12px!important}.hero-shell{width:100%!important;border-radius:clamp(26px,7vw,32px)!important;padding:clamp(26px,8vw,38px) clamp(14px,4.5vw,20px) clamp(22px,6vw,30px)!important}.hero h1{font-size:clamp(30px,9.6vw,42px)!important;line-height:.98!important;letter-spacing:-.035em!important;margin-top:8px!important}.hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;margin-top:clamp(16px,5vw,22px)!important}.benefits{grid-template-columns:1fr!important;width:100%!important;gap:10px!important}.benefit-card{min-height:clamp(72px,20vw,88px)!important;border-radius:22px!important;padding:14px 16px!important}.benefit-card b{font-size:clamp(24px,7.5vw,30px)!important}.benefit-card span{font-size:13px!important}

  /* cards and sections */
  .promo-grid,.action-section{grid-template-columns:1fr!important;gap:12px!important}.promo-card,.action-card,.contact-card{border-radius:clamp(24px,6.5vw,28px)!important;padding:clamp(18px,5.5vw,24px)!important}.promo-card img{height:clamp(135px,42vw,180px)!important;border-radius:20px!important}.promo-card h3{font-size:clamp(26px,8.2vw,34px)!important;line-height:1.04!important}.action-card{min-height:clamp(190px,52vw,230px)!important}.action-card h2,.contact-card h2{font-size:clamp(28px,8.8vw,40px)!important;line-height:1.04!important}.contact-links,.map-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}.map-link-group,.map-btn,.review-btn{width:100%!important;min-width:0!important}.review-btn{min-height:38px!important;font-size:12.5px!important}

  /* category and menu list */
  .menu-section{padding-top:clamp(34px,9vw,44px)!important}.category-rail{position:relative!important;top:auto!important;width:100%!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;padding:7px!important;border-radius:22px!important;margin-bottom:clamp(20px,6vw,28px)!important;overflow:hidden!important}.category-rail a{min-height:40px!important;padding:8px 6px!important;border-radius:14px!important;font-size:clamp(10.5px,3.05vw,12px)!important;line-height:1.08!important}.menu-groups{gap:clamp(30px,8vw,40px)!important}.category-title{align-items:center!important;flex-direction:row!important;margin-bottom:14px!important}.category-title h3{font-size:clamp(27px,8.2vw,34px)!important}.category-title span{min-width:34px!important;height:34px!important;border-radius:13px!important;font-size:13px!important}.menu-grid{grid-template-columns:1fr!important;gap:11px!important}.menu-card{display:grid!important;grid-template-columns:clamp(88px,28vw,112px) minmax(0,1fr)!important;min-height:clamp(126px,36vw,146px)!important;border-radius:22px!important;overflow:hidden!important}.menu-img{height:100%!important;min-height:clamp(126px,36vw,146px)!important}.menu-body{padding:clamp(10px,3vw,13px)!important;gap:7px!important;min-width:0!important}.menu-title{font-size:clamp(15px,4.15vw,17px)!important;line-height:1.15!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}.desc{font-size:clamp(11.5px,3.25vw,12.5px)!important;line-height:1.32!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}.meta{align-items:flex-start!important;flex-direction:column!important;gap:1px!important}.price{font-size:clamp(17px,5vw,20px)!important}.weight{font-size:11.5px!important}.add-btn{width:100%!important;margin-top:0!important}

  /* universal control scale */
  .btn,.btn.big,.btn.wide,.add-btn,.map-btn,.review-btn,.search-result .btn,.profile-side .btn,.profile-side button,.checkout-form .btn,.modal-form .btn,.hero-actions .btn,.admin-link{
    min-height:clamp(38px,10.8vw,46px)!important;
    padding:clamp(8px,2.8vw,12px) clamp(10px,3.5vw,15px)!important;
    border-radius:clamp(14px,4vw,18px)!important;
    font-size:clamp(12.5px,3.55vw,14.5px)!important;
    line-height:1.12!important;
    gap:6px!important;
  }
  .icon-btn{width:clamp(34px,10vw,40px)!important;height:clamp(34px,10vw,40px)!important;border-radius:clamp(12px,3.5vw,15px)!important;font-size:17px!important}.close{right:clamp(12px,4vw,18px)!important;top:clamp(12px,4vw,18px)!important}.qty-row button{width:clamp(30px,9vw,34px)!important;height:clamp(30px,9vw,34px)!important;border-radius:12px!important}.segmented span{min-height:clamp(40px,11vw,48px)!important;padding:10px 7px!important;border-radius:15px!important;font-size:13px!important}input,textarea,select{min-height:clamp(42px,11.5vw,50px)!important;border-radius:16px!important;padding:12px 13px!important;font-size:16px!important}textarea{min-height:88px!important}

  /* modals/drawers fit any phone */
  .modal.open{display:flex!important;align-items:center!important;justify-content:center!important;padding:calc(8px + var(--m-safe-top)) 8px calc(8px + var(--m-safe-bottom))!important}.modal-card,.profile-card,.search-card,.item-modal-card{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;width:min(440px,calc(100dvw - 16px))!important;max-width:calc(100dvw - 16px)!important;max-height:calc(100dvh - 18px - var(--m-safe-top) - var(--m-safe-bottom))!important;border-radius:clamp(22px,6vw,28px)!important;padding:clamp(16px,4.6vw,22px) clamp(12px,3.8vw,16px)!important;overflow:auto!important;overscroll-behavior:contain!important}.modal-card h3{font-size:clamp(28px,8.8vw,38px)!important;line-height:1.02!important;margin:8px 46px 14px 0!important}.tabs{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;margin:8px 46px 14px 0!important}.tab{min-height:42px!important;padding:9px 8px!important;border-radius:15px!important;font-size:13px!important}.form-grid,.delivery-fields{grid-template-columns:1fr!important}.drawer-panel{left:8px!important;right:8px!important;top:auto!important;bottom:calc(8px + var(--m-safe-bottom))!important;width:auto!important;max-width:calc(100dvw - 16px)!important;max-height:calc(100dvh - 18px - var(--m-safe-top) - var(--m-safe-bottom))!important;border-radius:28px!important;padding:clamp(18px,5vw,24px) clamp(12px,4vw,16px)!important;overflow:auto!important;overscroll-behavior:contain!important}.drawer h2{font-size:clamp(30px,9vw,38px)!important;margin-right:48px!important}.cart-item{grid-template-columns:clamp(50px,15vw,60px) minmax(0,1fr) auto!important;gap:8px!important;padding:8px!important;border-radius:17px!important}.cart-item img,.cart-mini-placeholder{width:clamp(50px,15vw,60px)!important;height:clamp(50px,15vw,60px)!important;border-radius:14px!important}.cart-item h4{font-size:12.5px!important;line-height:1.18!important}.cart-item small{font-size:11.5px!important}.cart-summary{padding:13px!important;border-radius:18px!important}

  /* profile */
  .profile-card #profileContent>h2{font-size:clamp(28px,9vw,40px)!important;line-height:1.02!important;margin:6px 48px 14px 2px!important}.profile-grid{grid-template-columns:1fr!important;gap:10px!important}.profile-side,.profile-main{border-radius:20px!important;padding:12px!important;min-width:0!important;overflow:hidden!important}.bonus-balance{font-size:clamp(30px,10vw,46px)!important}.profile-main h3{font-size:clamp(22px,7vw,30px)!important}.accordion details{padding:10px!important;border-radius:17px!important}

  /* search */
  .search-card{width:min(440px,calc(100dvw - 16px))!important}.search-card h3{font-size:clamp(30px,9vw,40px)!important}.search-field{border-radius:20px!important;padding:10px 12px!important}.search-field input{min-height:38px!important;font-size:16px!important}.search-results{max-height:42dvh!important}.search-result{grid-template-columns:clamp(50px,15vw,58px) minmax(0,1fr)!important;gap:9px!important;padding:9px!important;border-radius:18px!important}.search-result img,.search-result .search-img-placeholder{width:clamp(50px,15vw,58px)!important;height:clamp(50px,15vw,58px)!important;border-radius:15px!important}.search-result h4{font-size:13px!important}.search-result small{font-size:11.5px!important}.search-result .search-actions{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;width:100%!important}

  /* bottom app nav */
  .mobile-app-nav{display:grid!important;position:fixed!important;z-index:160!important;left:50%!important;right:auto!important;bottom:calc(8px + var(--m-safe-bottom))!important;transform:translateX(-50%)!important;width:min(410px,calc(100dvw - 22px))!important;height:clamp(56px,14.5vw,66px)!important;min-height:0!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:clamp(4px,1.4vw,6px)!important;padding:clamp(5px,1.7vw,7px)!important;border-radius:clamp(20px,5.5vw,25px)!important;box-sizing:border-box!important}.mobile-nav-item{height:100%!important;min-height:0!important;min-width:0!important;padding:4px 2px!important;border-radius:clamp(14px,4.2vw,18px)!important;gap:2px!important;font-size:clamp(9px,2.7vw,10.5px)!important;line-height:1!important}.mobile-nav-item .nav-ico,.mobile-nav-item .nav-ico svg{width:clamp(18px,5.5vw,22px)!important;height:clamp(18px,5.5vw,22px)!important}.mobile-cart-nav b{right:clamp(4px,1.5vw,7px)!important;top:clamp(3px,1.2vw,5px)!important;min-width:clamp(15px,4.4vw,18px)!important;height:clamp(15px,4.4vw,18px)!important;padding:0 4px!important;font-size:clamp(8px,2.3vw,9.5px)!important;line-height:clamp(15px,4.4vw,18px)!important}body.overlay-open .mobile-app-nav{transform:translate(-50%,14px)!important}
}
@media (max-width: 340px){
  .brand-text small{display:none!important}.section{width:calc(100% - 14px)!important}.hero h1{font-size:29px!important}.category-rail{grid-template-columns:1fr 1fr!important;gap:6px!important}.category-rail a{font-size:10px!important;min-height:38px!important}.menu-card{grid-template-columns:1fr!important}.menu-img{height:160px!important;min-height:160px!important}.desc{display:none!important}.tabs{grid-template-columns:1fr!important}.cart-item{grid-template-columns:48px minmax(0,1fr)!important}.cart-item .qty-row{grid-column:2!important}.search-result .search-actions{grid-template-columns:1fr!important}.mobile-app-nav{width:calc(100dvw - 14px)!important;height:54px!important}.mobile-nav-item span:not(.nav-ico){font-size:8.5px!important}
}


/* v16 brand logo install */
.brand-mark,
.admin-body .brand-mark{
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 50% !important;
  overflow: visible !important;
  color: transparent !important;
  display: grid !important;
  place-items: center !important;
  flex: 0 0 clamp(46px, 4.8vw, 62px) !important;
  width: clamp(46px, 4.8vw, 62px) !important;
  height: clamp(46px, 4.8vw, 62px) !important;
}
.brand-mark img,
.admin-body .brand-mark img{
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: contain !important;
  border-radius: 50% !important;
  filter: drop-shadow(0 10px 22px rgba(214,170,97,.18));
}
@media (max-width: 980px){
  .brand-mark,
  .admin-body .brand-mark{
    flex-basis: clamp(40px, 11vw, 50px) !important;
    width: clamp(40px, 11vw, 50px) !important;
    height: clamp(40px, 11vw, 50px) !important;
  }
  .topbar .brand{gap: clamp(8px,2.5vw,11px) !important;}
}
@media (max-width: 340px){
  .brand-mark,
  .admin-body .brand-mark{
    flex-basis: 38px !important;
    width: 38px !important;
    height: 38px !important;
  }
}
