
@font-face{
  font-family:'BK Izhitsa';
  src:
    local('Izhitsa.kz'),
    local('Izhitsa.Kz'),
    url('https://fontsforyou.com/fonts/i/Izhitsa.Kz.ttf') format('truetype');
  font-style:normal;
  font-weight:400;
  font-display:swap;
}
@font-face{
  font-family:'BK Amaltea One';
  src:
    local('Amaltea One'),
    local('AmalteaOne'),
    url('https://ffont.ru/upls/fonts/AmalteaOne.ttf') format('truetype'),
    url('https://fontsforyou.com/fonts/a/AmalteaOne.ttf') format('truetype');
  font-style:normal;
  font-weight:400;
  font-display:swap;
}

:root{
  --bk-bg:#ead8ba;
  --bk-bg2:#f7ecda;
  --bk-paper:#fff9ed;
  --bk-paper2:#f3dfba;
  --bk-ink:#3b2416;
  --bk-muted:#80674f;
  --bk-line:rgba(121,79,42,.15);
  --bk-gold:#c58a41;
  --bk-gold-dark:#925f2e;
  --bk-dark:#3b281d;
  --bk-toolbar:76px;
  --bk-bottom:16px;
  --bk-radius:18px;
}
*{box-sizing:border-box}
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--bk-bg);color:var(--bk-ink)}
html{scroll-behavior:auto}
body{
  font-family:Georgia,'Times New Roman',serif;
  background:
    radial-gradient(circle at 15% 10%,rgba(255,255,255,.46),transparent 30%),
    radial-gradient(circle at 88% 84%,rgba(177,111,53,.12),transparent 26%),
    linear-gradient(180deg,#f5ead8 0%,#ead5b4 100%);
}
body::before{
  content:"";
  position:fixed;inset:0;pointer-events:none;opacity:.13;
  background-image:
    repeating-linear-gradient(0deg,rgba(70,43,23,.025) 0 1px,transparent 1px 5px),
    repeating-linear-gradient(90deg,rgba(70,43,23,.018) 0 1px,transparent 1px 7px);
}
button,input{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
.app{height:100dvh;display:grid;grid-template-rows:var(--bk-toolbar) minmax(0,1fr);overflow:hidden}

/* Header */
.topbar{
  height:var(--bk-toolbar);
  display:flex;align-items:center;gap:14px;
  padding:0 clamp(12px,2vw,22px);
  background:rgba(255,250,241,.92);
  border-bottom:1px solid var(--bk-line);
  box-shadow:0 7px 24px rgba(79,49,27,.07);
  backdrop-filter:blur(16px);
  position:relative;z-index:120;
}
.brand{display:flex;align-items:center;gap:13px;min-width:0}
.brand-mark{
  width:54px;height:54px;flex:0 0 54px;border-radius:50%;
  overflow:hidden;border:1px solid rgba(160,109,61,.22);
  background:#fff9ef;box-shadow:0 7px 16px rgba(79,49,27,.08)
}
.brand-mark img{width:100%;height:100%;object-fit:contain}
.brand-text{min-width:0;display:flex;flex-direction:column;gap:4px}
.brand-text strong{
  font-family:'BK Izhitsa',Georgia,serif;
  font-size:18px;line-height:1;color:#3a2417;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.brand-text small{
  font:700 10px/1 Arial,sans-serif;
  letter-spacing:.14em;text-transform:uppercase;color:#9a7958;
  white-space:nowrap
}
.top-actions{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:nowrap}
.icon-btn,.lang-btn{
  height:42px;border:1px solid rgba(132,87,47,.16);
  border-radius:8px;background:rgba(255,255,255,.72);color:#4c3020;
  padding:0 15px;box-shadow:0 4px 12px rgba(77,48,27,.04);
  font-weight:700;touch-action:manipulation
}
.icon-btn:hover,.lang-btn:hover{background:#fffdf9;border-color:rgba(155,101,52,.30)}
.lang-btn{font:800 11px/1 Arial,sans-serif;letter-spacing:.08em;min-width:48px}
.lang-btn.active{background:var(--bk-gold);color:#fff;border-color:var(--bk-gold)}
.progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:rgba(129,84,45,.05)}
.progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,#c27f38,#e0b873);transition:width .35s ease}

/* Stage and book */
.stage{
  position:relative;min-height:0;height:100%;
  display:grid;place-items:center;
  padding:24px clamp(92px,8vw,140px) 96px;
  perspective:2200px;
}
.book-shell{
  position:relative;
  width:min(1120px,calc(100vw - 250px));
  height:min(700px,calc(100dvh - var(--bk-toolbar) - 132px));
  min-height:0;
  perspective:2200px;
  transform-style:preserve-3d;
  filter:drop-shadow(0 24px 50px rgba(74,45,25,.16));
}
.book-shell::before{
  content:"";
  position:absolute;inset:13px -14px -14px 14px;
  border-radius:22px;
  background:linear-gradient(135deg,#b98f5d,#765032 55%,#b38a5c);
  box-shadow:0 18px 42px rgba(71,43,24,.18);
  transform:rotate(.3deg);
}
.book-shell::after{
  content:"";
  position:absolute;left:10px;top:22px;bottom:22px;width:10px;z-index:1;
  background:linear-gradient(90deg,rgba(78,43,19,.18),rgba(255,255,255,.15),transparent);
  filter:blur(1px);pointer-events:none;
}

/* Page stack */
.page{
  position:absolute;inset:0;
  display:flex;flex-direction:column;
  overflow:hidden;
  border-radius:var(--bk-radius);
  background:
    radial-gradient(circle at 15% 16%,rgba(255,255,255,.48),transparent 25%),
    linear-gradient(120deg,var(--bk-paper),#f7e8cc 72%,var(--bk-paper2));
  color:var(--bk-ink);
  border:1px solid rgba(126,82,45,.11);
  box-shadow:0 22px 50px rgba(72,45,26,.13),inset 0 0 0 1px rgba(255,255,255,.55);
  opacity:0;visibility:hidden;pointer-events:none;
  transform:translateZ(0);
  transform-style:preserve-3d;
  backface-visibility:hidden;
  z-index:2;
}
.page::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.17;
  background-image:repeating-radial-gradient(circle at 20% 30%,rgba(91,55,26,.14) 0 .6px,transparent .8px 3.2px);
}
.page::after{
  content:"";position:absolute;top:0;bottom:0;right:0;width:18px;pointer-events:none;z-index:5;
  background:linear-gradient(90deg,transparent,rgba(85,47,20,.06));
}
.page.active,.page.page-under,.page.page-flip-forward,.page.page-flip-backward{
  visibility:visible;opacity:1
}
.page.active{z-index:5;pointer-events:auto}
.page.page-under{z-index:3;pointer-events:none}
.page.page-flip-forward{
  z-index:9;pointer-events:none;
  transform-origin:left center;
  animation:bkPageForward .68s cubic-bezier(.28,.68,.18,1) forwards
}
.page.page-flip-backward{
  z-index:9;pointer-events:none;
  transform-origin:right center;
  animation:bkPageBackward .68s cubic-bezier(.28,.68,.18,1) forwards
}
@keyframes bkPageForward{
  0%{transform:rotateY(0deg) translateX(0) scale(1);filter:brightness(1);box-shadow:0 22px 50px rgba(72,45,26,.13)}
  36%{transform:rotateY(-38deg) translateX(-1%) scale(.996);filter:brightness(.96);box-shadow:18px 22px 44px rgba(55,31,16,.18)}
  70%{transform:rotateY(-78deg) translateX(-3%) scale(.986);filter:brightness(.82);box-shadow:28px 20px 42px rgba(48,26,13,.24)}
  100%{transform:rotateY(-103deg) translateX(-5%) scale(.978);opacity:.18;filter:brightness(.70)}
}
@keyframes bkPageBackward{
  0%{transform:rotateY(0deg) translateX(0) scale(1);filter:brightness(1);box-shadow:0 22px 50px rgba(72,45,26,.13)}
  36%{transform:rotateY(38deg) translateX(1%) scale(.996);filter:brightness(.96);box-shadow:-18px 22px 44px rgba(55,31,16,.18)}
  70%{transform:rotateY(78deg) translateX(3%) scale(.986);filter:brightness(.82);box-shadow:-28px 20px 42px rgba(48,26,13,.24)}
  100%{transform:rotateY(103deg) translateX(5%) scale(.978);opacity:.18;filter:brightness(.70)}
}

/* Scroll exists only inside the active paper. No stacked document scroll. */
.page-content{
  position:relative;z-index:2;
  flex:1 1 auto;min-height:0;
  overflow-y:auto;overflow-x:hidden;
  padding:34px 38px 24px;
  scrollbar-width:thin;
  scrollbar-color:rgba(135,91,51,.34) transparent;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
.page-content::-webkit-scrollbar{width:6px}
.page-content::-webkit-scrollbar-track{background:transparent}
.page-content::-webkit-scrollbar-thumb{background:rgba(135,91,51,.28);border-radius:6px}
.paper-grain{display:none}

/* Footer belongs to page layout, never overlays content */
.page-footer{
  position:relative;z-index:3;flex:0 0 auto;
  margin:0 38px 16px;padding:12px 0 0;
  border-top:1px solid rgba(126,82,45,.12);
  display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;gap:12px;
  color:#91775f;font:700 9px/1.2 Arial,sans-serif;letter-spacing:.10em;text-transform:uppercase
}
.page-footer>b{justify-self:end;color:#9b6637}
.graycape-credit{
  justify-self:center;display:inline-flex;align-items:center;gap:5px;
  white-space:nowrap;font:500 9px/1.2 Arial,sans-serif!important;
  text-transform:none!important;letter-spacing:.025em!important;color:#8b735d
}
.graycape-heart{color:#b24d3c;font-size:12px;line-height:1}
.graycape-credit a{color:#5b3a24;text-decoration:none;font-weight:800;letter-spacing:.04em}

/* Typography */
.page-heading{margin:0 0 20px}
.page-kicker{
  display:block;margin:0 0 8px;
  color:#9d6938;font:800 10px/1 Arial,sans-serif;
  letter-spacing:.20em;text-transform:uppercase
}
.page-heading h2,.contact-inner h2{
  margin:0;color:#392217;
  font-family:'BK Izhitsa',Georgia,serif;
  font-size:clamp(38px,3vw,54px);line-height:.94
}
.page-heading p{margin:10px 0 0;color:#80664f;font-size:16px;font-style:italic}
.group-title{
  margin:18px 0 10px;padding:0 0 8px;border-bottom:1px solid var(--bk-line);
  color:#9a6537;font:800 10px/1 Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase
}

/* Cover */
.cover-inner{
  min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  padding:30px 28px
}
.crest{overflow:hidden;border-radius:50%;background:#fff8ec;border:1px solid rgba(156,102,53,.20)}
.crest img{width:100%;height:100%;object-fit:contain}
.cover-logo{width:128px;height:128px;margin-bottom:18px}
.contact-logo{width:106px;height:106px;margin-bottom:18px}
.cover-eyebrow{margin:0;color:#9d6938;font:800 11px/1 Arial,sans-serif;letter-spacing:.23em;text-transform:uppercase}
.cover-inner h1{
  margin:12px 0 8px;max-width:780px;
  font-family:'BK Izhitsa',Georgia,serif;
  font-size:clamp(54px,5.6vw,88px);line-height:.90;color:#392217
}
.ornament{display:flex;align-items:center;gap:10px;width:min(260px,62%);margin:4px auto;color:#c69755}
.ornament span{height:1px;flex:1;background:linear-gradient(90deg,transparent,#c69755)}
.ornament span:last-child{background:linear-gradient(90deg,#c69755,transparent)}
.ornament b{font-size:8px}
.cover-subtitle{margin:12px 0 0;color:#72543c;font-size:clamp(24px,2.2vw,33px);font-style:italic}
.cover-note{margin:17px 0 0;color:#9a7959;font:800 11px/1.4 Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.cover-actions,.history-actions,.contact-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:24px}
.primary-btn,.secondary-btn{
  min-height:48px;border-radius:8px;padding:0 20px;
  border:1px solid rgba(148,95,47,.20);
  font:800 12px/1 Arial,sans-serif;letter-spacing:.10em;text-transform:uppercase;
  touch-action:manipulation
}
.primary-btn{background:linear-gradient(180deg,#cf964c,#b87934);color:#fff;border-color:#b87934;box-shadow:0 9px 20px rgba(154,91,36,.15)}
.secondary-btn{background:rgba(255,255,255,.70);color:#5a3822}

/* Menu cards */
.dish-group{margin:0 0 18px}
.dish-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(330px,1fr));
  gap:12px
}
.dish{
  display:grid;grid-template-columns:112px minmax(0,1fr);
  min-height:118px;overflow:hidden;
  border:1px solid rgba(128,83,44,.13);border-radius:11px;
  background:linear-gradient(110deg,rgba(255,255,255,.72),rgba(248,232,202,.72));
  box-shadow:0 6px 14px rgba(92,56,30,.045)
}
.dish-thumb{position:relative;margin:0;min-height:118px;background:#f0e4d3;overflow:hidden}
.dish-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dynamic-placeholder{position:absolute;inset:0;display:grid;place-items:center;padding:10px;text-align:center;color:#967b60;font:800 9px/1.45 Arial,sans-serif;letter-spacing:.11em;text-transform:uppercase;background:linear-gradient(135deg,#f2e5d0,#e4c9a1)}
.dish-copy{min-width:0;padding:12px 13px 11px;display:flex;flex-direction:column}
.dish-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:9px}
.dish-line h3{
  margin:0;font-family:'BK Amaltea One',Georgia,serif;
  font-size:18px;line-height:1.08;font-weight:400;color:#3b2518;overflow-wrap:anywhere
}
.dish-meta{display:flex;flex-direction:column;align-items:flex-end;gap:3px;white-space:nowrap}
.dish-weight{font:800 9px/1 Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#9b7d60}
.dish-price{font:800 16px/1 Arial,sans-serif;color:#945c2d}
.dish-desc{margin:6px 0 0;color:#6e5845;font:400 10px/1.42 Arial,sans-serif;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.dish-actions{display:flex;align-items:center;margin-top:auto;padding-top:8px}
.add-to-order{
  min-height:32px;padding:0 12px;border:1px solid rgba(125,82,44,.20);
  border-radius:6px;background:rgba(255,255,255,.74);color:#523421;
  font:800 9px/1 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase
}
.unavailable{color:#9b5d52;font:800 9px/1.3 Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}

/* History */
.story-layout{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);gap:24px;align-items:start}
.history-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.history-gallery-item{
  appearance:none;border:0;padding:0;position:relative;overflow:hidden;border-radius:9px;
  aspect-ratio:1/1;background:#ead9bf;box-shadow:0 7px 18px rgba(75,46,26,.10)
}
.history-gallery-item.is-featured{grid-column:1/-1;aspect-ratio:16/10}
.history-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.history-gallery-item:hover img{transform:scale(1.025)}
.history-gallery-caption{
  position:absolute;left:0;right:0;bottom:0;padding:28px 10px 9px;
  color:#fff;text-align:left;font:700 10px/1.25 Arial,sans-serif;
  background:linear-gradient(180deg,transparent,rgba(36,21,12,.76))
}
.history-gallery-empty{min-height:210px;display:grid;place-items:center;border:1px dashed rgba(137,91,50,.24);border-radius:9px;color:#987b5e;font:700 10px/1.4 Arial,sans-serif;letter-spacing:.10em;text-transform:uppercase}
.story-quote{margin:12px 0 0;padding:17px 18px;border-left:2px solid #b97b39;background:rgba(255,255,255,.42);color:#543724;font-size:22px;line-height:1.32;border-radius:0 8px 8px 0}
.story-copy{padding:20px;border:1px solid rgba(129,84,45,.11);border-radius:12px;background:rgba(255,255,255,.46)}
.story-paragraph{margin:0 0 13px;color:#523b2a;font:400 14px/1.72 Arial,sans-serif}

/* Contact */
.contact-inner{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px}
.contact-sub{margin:8px 0 0;color:#765941;font-size:20px;font-style:italic}
.contact-thanks{font-size:21px;margin:15px 0}
.contact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:min(680px,94%)}
.contact-cards a{padding:14px 16px;border:1px solid rgba(128,83,44,.13);border-radius:8px;background:rgba(255,255,255,.65);color:#463021;text-decoration:none}
.contact-cards small{display:block;margin-bottom:4px;color:#9a7959;font:800 9px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.contact-cards strong{font-size:13px}

/* Pager / external controls */
.pager{
  position:absolute;z-index:40;left:50%;bottom:16px;transform:translateX(-50%);
  display:flex;align-items:center;gap:8px;padding:7px 9px;
  border:1px solid rgba(126,82,45,.13);border-radius:9px;
  background:rgba(255,250,242,.93);box-shadow:0 10px 22px rgba(70,43,24,.10);backdrop-filter:blur(12px)
}
.pager button{width:44px;height:44px;border:1px solid rgba(126,82,45,.16);border-radius:7px;background:#fffaf2;color:#583820;font-size:20px}
.pager button:disabled{opacity:.32;cursor:default}
.page-count{min-width:76px;text-align:center;color:#72553d;font:800 10px/1 Arial,sans-serif;letter-spacing:.12em}

/* Category drawer */
.menu-ribbon{
  position:fixed;z-index:110;left:10px;top:50%;transform:translateY(-50%);
  width:58px;height:210px;border:1px solid rgba(155,101,52,.18);border-left:0;border-radius:0 10px 10px 0;
  background:rgba(255,249,239,.94);color:#664321;box-shadow:8px 12px 22px rgba(73,45,25,.09);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;overflow:hidden
}
.ribbon-copy{display:flex;align-items:center;gap:6px;writing-mode:vertical-rl;transform:rotate(180deg);font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:.17em}
.ribbon-copy small{font-size:7px;color:#9c8166}.ribbon-copy strong{font-size:9px}
.ribbon-arrows{display:flex;color:#b47b40}.ribbon-arrows i{font-style:normal;font-size:16px}
.ribbon-pulse{display:none}
.drawer{
  position:fixed;z-index:150;left:0;top:var(--bk-toolbar);bottom:0;width:min(390px,92vw);
  padding:22px;background:rgba(255,249,240,.985);border-right:1px solid var(--bk-line);
  box-shadow:18px 0 42px rgba(70,43,24,.12);transform:translateX(-103%);transition:transform .28s ease;overflow:auto
}
.drawer.open{transform:none}
.drawer-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--bk-line)}
.drawer-head strong{font-family:'BK Izhitsa',Georgia,serif;font-size:28px}
.drawer-head button{width:36px;height:36px;border:1px solid var(--bk-line);border-radius:7px;background:#fffaf2;color:#563821;font-size:20px}
.drawer-history-card{
  width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;
  margin:14px 0;padding:13px 14px;text-align:left;border:1px solid var(--bk-line);border-radius:8px;background:#fffaf3;color:#4e3321
}
.drawer-history-copy{display:flex;flex-direction:column;gap:3px}.drawer-history-copy strong{font-size:14px}.drawer-history-copy small{font:600 10px/1.35 Arial,sans-serif;color:#8a7058}
.drawer-history-arrow{font:800 9px/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#9c6634}
.toc{display:grid;gap:4px}.toc-section-label{margin:13px 8px 6px;color:#a18467;font:800 9px/1 Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.toc button{min-height:44px;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px;padding:0 9px;border:1px solid transparent;border-radius:7px;background:transparent;color:#4c3323;text-align:left}
.toc button:hover,.toc button.is-active{background:rgba(197,138,65,.08);border-color:rgba(155,101,52,.10)}
.toc button span{color:#a17f5c;font:800 9px/1 Arial,sans-serif}.toc button b{font-weight:700}
.drawer-note{margin:20px 0 0;padding-top:14px;border-top:1px solid var(--bk-line);color:#8a7058;font:600 10px/1.5 Arial,sans-serif}
.scrim{position:fixed;z-index:140;inset:var(--bk-toolbar) 0 0;background:rgba(61,38,23,.25);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .2s ease}
.scrim.open{opacity:1;pointer-events:auto}

/* Search */
.search-panel{
  position:fixed;z-index:170;top:calc(var(--bk-toolbar) + 12px);left:50%;transform:translate(-50%,-10px);
  width:min(640px,calc(100vw - 24px));padding:10px;border:1px solid var(--bk-line);border-radius:10px;
  background:rgba(255,249,240,.98);box-shadow:0 22px 45px rgba(66,41,24,.16);opacity:0;pointer-events:none;transition:.18s ease
}
.search-panel.open{opacity:1;pointer-events:auto;transform:translate(-50%,0)}
.search-input{width:100%;height:46px;padding:0 13px;border:1px solid var(--bk-line);border-radius:7px;background:#fffdf8;color:#432c1d;outline:none}
.search-results{max-height:360px;overflow:auto;display:grid;gap:3px;margin-top:7px}
.search-results button{min-height:40px;padding:8px 10px;border:0;border-radius:6px;background:transparent;color:#4c3323;text-align:left}
.search-results button:hover{background:rgba(197,138,65,.08)}

/* Cart */
.order-fab{
  position:fixed;z-index:115;right:14px;bottom:14px;height:48px;
  display:flex;align-items:center;gap:9px;padding:0 14px;border:1px solid rgba(56,36,24,.20);
  border-radius:8px;background:#3a281e;color:#fffaf2;box-shadow:0 11px 24px rgba(57,36,22,.16);
  font:800 10px/1 Arial,sans-serif;letter-spacing:.06em
}
.order-fab b{display:grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:5px;background:#c58a41;color:#fff}
.order-drawer{
  position:fixed;z-index:190;right:0;top:0;width:min(430px,95vw);height:100dvh;
  display:flex;flex-direction:column;background:#fbf5ec;color:#342217;
  border-left:1px solid var(--bk-line);box-shadow:-18px 0 42px rgba(66,42,25,.15);transform:translateX(105%);transition:transform .28s ease
}
.order-drawer.open{transform:none}
.order-head{display:flex;align-items:center;justify-content:space-between;padding:18px;border-bottom:1px solid var(--bk-line)}
.order-head strong{font-size:19px}.order-close,.waiter-close{width:38px;height:38px;border:1px solid var(--bk-line);border-radius:7px;background:#fff;color:#4a3020}
.order-items{flex:1;overflow:auto;padding:12px 18px}
.order-line{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:10px;padding:10px 0;border-bottom:1px solid rgba(124,81,44,.10)}
.order-line img{width:56px;height:54px;object-fit:cover;border-radius:5px}.order-line h4{margin:1px 0 6px;font-size:14px}
.qty{display:flex;align-items:center;gap:7px}.qty button{width:28px;height:28px;border:1px solid var(--bk-line);border-radius:5px;background:#fff}
.order-price{font:800 13px/1.2 Arial,sans-serif;color:#81502a;white-space:nowrap}
.order-foot{padding:16px 18px;border-top:1px solid var(--bk-line);background:#fffaf4}
.order-total{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:13px}.order-total span{font:800 10px/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.09em;color:#7c6652}.order-total strong{font:800 23px/1 Arial,sans-serif}
.order-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.order-actions button{min-height:42px;border:1px solid var(--bk-line);border-radius:6px;font-weight:700}.show-waiter{background:#37291f;color:#fff}.clear-order{background:#fff;color:#5b4030}
.order-empty{text-align:center;color:#7c6754;padding:40px 12px;font:500 13px/1.6 Arial,sans-serif}

/* Waiter */
.waiter-modal{position:fixed;z-index:210;inset:0;display:none;overflow:auto;padding:24px;background:#f3e5d0;color:#302015}.waiter-modal.open{display:block}
.waiter-card{max-width:760px;min-height:calc(100dvh - 48px);margin:0 auto;padding:26px;background:#fffaf1;border:1px solid var(--bk-line)}
.waiter-top{display:flex;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--bk-line)}.waiter-top h2{margin:0;font-size:32px}.waiter-top p{margin:7px 0 0;color:#7c6652}
.waiter-list{margin-top:18px}.waiter-row{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid rgba(124,81,44,.10);font-size:19px}.waiter-row b{white-space:nowrap}
.waiter-grand{display:flex;justify-content:space-between;align-items:flex-end;margin-top:24px;padding-top:18px;border-top:2px solid #4a3322}.waiter-grand span{font-size:16px;text-transform:uppercase;letter-spacing:.11em}.waiter-grand strong{font:800 32px/1 Arial,sans-serif}

/* Gallery lightbox */
.history-lightbox{
  position:fixed;z-index:220;inset:0;display:none;align-items:center;justify-content:center;
  padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));
  background:rgba(26,17,11,.92);backdrop-filter:blur(6px)
}
.history-lightbox.open{display:flex}
.history-lightbox-figure{margin:0;max-width:min(1100px,calc(100vw - 110px));max-height:90dvh;text-align:center;color:#fff}
.history-lightbox-figure img{max-width:100%;max-height:82dvh;object-fit:contain;margin:auto;box-shadow:0 18px 48px rgba(0,0,0,.28)}
.history-lightbox-figure figcaption{margin-top:10px;font:600 12px/1.4 Arial,sans-serif;color:#e8d6bc}
.history-lightbox-close,.history-lightbox-nav{position:absolute;border:1px solid rgba(255,255,255,.16);border-radius:7px;background:rgba(255,255,255,.08);color:#fff}
.history-lightbox-close{top:18px;right:18px;width:42px;height:42px;font-size:22px}
.history-lightbox-nav{top:50%;transform:translateY(-50%);width:46px;height:56px;font-size:22px}.history-lightbox-prev{left:18px}.history-lightbox-next{right:18px}

/* Responsive */
@media(max-width:1100px){
  .stage{padding-left:74px;padding-right:74px}
  .book-shell{width:min(980px,calc(100vw - 160px))}
  .dish-list{grid-template-columns:1fr}
  .story-layout{grid-template-columns:1fr;gap:18px}
}
@media(max-width:900px){
  :root{--bk-toolbar:64px;--bk-bottom:max(10px,env(safe-area-inset-bottom))}
  .topbar{padding:0 9px;gap:7px}
  .brand-logo{width:46px;height:46px;flex-basis:46px}
  .brand-text small{display:none}
  .brand-text strong{font-size:15px;max-width:180px}
  .top-actions{gap:4px}
  .icon-btn,.lang-btn{height:38px;padding:0 10px;border-radius:7px;font-size:11px}
  .lang-btn{min-width:35px;width:35px;padding:0}
  .stage{padding:10px 8px 118px;perspective:1600px}
  .book-shell{width:100%;height:calc(100dvh - var(--bk-toolbar) - 132px);min-height:0;perspective:1600px;filter:drop-shadow(0 15px 30px rgba(74,45,25,.14))}
  .book-shell::before{inset:8px -5px -7px 5px;border-radius:14px}
  .book-shell::after{left:5px;top:12px;bottom:12px;width:7px}
  .page{border-radius:12px}
  .page-content{padding:24px 17px 18px;scrollbar-width:none}
  .page-content::-webkit-scrollbar{display:none}
  .page-footer{margin:0 17px 11px;padding-top:9px;grid-template-columns:1fr auto}
  .page-footer>span:first-child{display:none}.graycape-credit{justify-self:start}.page-footer>b{justify-self:end}
  .page-heading{margin-bottom:16px}.page-heading h2{font-size:clamp(34px,8vw,46px)}.page-heading p{font-size:14px}
  .cover-inner{padding:22px 14px}.cover-logo{width:94px;height:94px;margin-bottom:12px}
  .cover-inner h1{font-size:clamp(40px,10vw,60px)}.cover-subtitle{font-size:clamp(20px,5vw,27px)}.cover-note{font-size:10px;margin-top:13px}
  .cover-actions{margin-top:18px}
  .dish{grid-template-columns:100px minmax(0,1fr);min-height:106px}.dish-thumb{min-height:106px}.dish-copy{padding:10px 11px}.dish-line h3{font-size:16px}.dish-price{font-size:14px}
  .history-gallery{gap:7px}.history-gallery-item.is-featured{aspect-ratio:16/10}.story-copy{padding:16px}.story-paragraph{font-size:13px}.story-quote{font-size:20px}
  .pager{position:fixed;bottom:var(--bk-bottom);z-index:125}
  .menu-ribbon{top:auto;bottom:calc(var(--bk-bottom) + 56px);left:8px;transform:none;width:auto;height:40px;max-width:43vw;padding:0 10px;border:1px solid rgba(155,101,52,.18);border-radius:7px;flex-direction:row;gap:7px}
  .ribbon-copy{writing-mode:horizontal-tb;transform:none}.ribbon-copy small{display:none}.ribbon-copy strong{font-size:9px;white-space:nowrap}
  .order-fab{right:8px;bottom:calc(var(--bk-bottom) + 56px);height:40px;max-width:52vw;padding:0 10px;font-size:9px;white-space:nowrap;overflow:hidden}
  .order-fab span:first-child{overflow:hidden;text-overflow:ellipsis}
  .drawer{top:var(--bk-toolbar)}
  .scrim{inset:var(--bk-toolbar) 0 0}
}
@media(max-width:620px){
  .brand-text{display:none}
  .history-btn{padding:0 9px}.top-actions{margin-left:auto}
  .stage{padding-left:5px;padding-right:5px}
  .book-shell::after{display:none}
  .page-content{padding:20px 12px 16px}
  .page-heading h2{font-size:clamp(31px,10vw,41px)}
  .cover-logo{width:82px;height:82px}
  .cover-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px}.primary-btn,.secondary-btn{min-height:44px;padding:0 12px;font-size:10px}
  .dish{grid-template-columns:88px minmax(0,1fr);min-height:98px}.dish-thumb{min-height:98px}.dish-copy{padding:9px}.dish-line h3{font-size:15px}.dish-desc{font-size:9px;-webkit-line-clamp:3}
  .contact-cards{grid-template-columns:1fr}
  .history-lightbox-figure{max-width:94vw}.history-lightbox-figure img{max-height:74dvh}.history-lightbox-prev{left:6px}.history-lightbox-next{right:6px}
}
@media(max-width:390px){
  .icon-btn{padding:0 7px;font-size:10px}.lang-btn{width:31px;min-width:31px}
  .cover-actions{grid-template-columns:1fr}
  .dish{grid-template-columns:82px minmax(0,1fr)}
  .menu-ribbon{max-width:41vw;padding:0 8px}.order-fab{max-width:55vw;padding:0 8px}
}
@media(max-height:650px) and (min-width:901px){
  .stage{padding-top:9px;padding-bottom:72px}
  .book-shell{height:calc(100dvh - var(--bk-toolbar) - 84px)}
  .page-content{padding-top:22px}
  .cover-logo{width:92px;height:92px;margin-bottom:10px}
  .cover-inner h1{font-size:clamp(46px,4.8vw,68px)}
  .cover-subtitle{font-size:23px}.cover-note{margin-top:10px}.cover-actions{margin-top:15px}
  .dish{min-height:96px;grid-template-columns:94px minmax(0,1fr)}.dish-thumb{min-height:96px}.dish-copy{padding:9px 10px}.dish-line h3{font-size:15px}.dish-desc{font-size:9px}.add-to-order{min-height:28px}
}
@media(prefers-reduced-motion:reduce){
  .page.page-flip-forward,.page.page-flip-backward{animation-duration:.01ms!important}
}


/* ===== v1.7.0 — real book interaction ===== */

/* Typography must remain explicit even if other WordPress/theme CSS exists. */
.brand-text strong,
.page-heading h2,
.cover-inner h1,
.contact-inner h2,
.drawer-head strong{
  font-family:'BK Izhitsa','Izhitsa.kz',Georgia,'Times New Roman',serif !important;
  font-weight:400 !important;
}
.dish-line h3{
  font-family:'BK Amaltea One','Amaltea One',Georgia,'Times New Roman',serif !important;
  font-weight:400 !important;
}

/* Menu pages no longer show an inner scrollbar. Long categories are split by JS. */
.page-content{
  overflow:hidden !important;
  scrollbar-width:none !important;
}
.page-content::-webkit-scrollbar{display:none !important}

/* Interactive paper corners */
.page-corner{
  position:absolute;
  z-index:80;
  top:0;
  width:82px;
  height:82px;
  border:0;
  padding:0;
  background:transparent;
  opacity:.34;
  transition:opacity .18s ease,filter .18s ease;
  touch-action:none;
  -webkit-tap-highlight-color:transparent;
  cursor:grab;
}
.page-corner:hover{opacity:.88}
.page-corner:active,.page-corner.is-dragging{cursor:grabbing;opacity:1}
.page-corner[disabled]{opacity:0;pointer-events:none}
.page-corner::before{
  content:"";
  position:absolute;
  top:0;
  width:72px;
  height:72px;
  filter:drop-shadow(0 6px 8px rgba(73,43,22,.12));
}
.page-corner::after{
  content:"";
  position:absolute;
  top:17px;
  width:20px;
  height:20px;
  border-top:1px solid rgba(114,72,36,.35);
  border-right:1px solid rgba(114,72,36,.35);
}
.page-corner-next{right:0}
.page-corner-next::before{
  right:0;
  clip-path:polygon(100% 0,0 0,100% 100%);
  background:linear-gradient(225deg,rgba(217,184,134,.92),rgba(255,251,240,.92) 48%,rgba(153,105,60,.18) 50%,transparent 51%);
}
.page-corner-next::after{right:18px;transform:rotate(45deg)}
.page-corner-prev{left:0}
.page-corner-prev::before{
  left:0;
  clip-path:polygon(0 0,100% 0,0 100%);
  background:linear-gradient(135deg,rgba(217,184,134,.92),rgba(255,251,240,.92) 48%,rgba(153,105,60,.18) 50%,transparent 51%);
}
.page-corner-prev::after{left:18px;transform:rotate(-135deg)}

/* Live-drag page. */
.page.is-manual-turn{
  transition:none !important;
  will-change:transform,opacity,filter,box-shadow;
  pointer-events:none !important;
}
.page.is-under-turn{
  visibility:visible !important;
  opacity:1 !important;
  z-index:4 !important;
  pointer-events:none !important;
}
.page.manual-settle{
  transition:
    transform .42s cubic-bezier(.22,.72,.18,1),
    opacity .32s ease,
    filter .32s ease,
    box-shadow .32s ease !important;
}
.book-shell.is-turning .page-corner{pointer-events:none}

/* Subtle page-edge shading during drag. */
.page.is-manual-turn::after{
  width:clamp(18px,5vw,72px) !important;
  background:linear-gradient(90deg,transparent,rgba(66,35,15,.18)) !important;
}

/* Pagination marker for continuation sheets */
.page[data-continuation="1"] .page-kicker::after{
  content:" · ";
}
.page[data-continuation="1"] .page-kicker{
  opacity:.82;
}

/* Page count remains readable with more generated sheets. */
.page-count{min-width:88px}

/* On phones, the fold remains usable but not visually intrusive. */
@media(max-width:900px){
  .page-corner{width:62px;height:62px;opacity:.22}
  .page-corner::before{width:56px;height:56px}
  .page-corner::after{top:13px;width:16px;height:16px}
  .page-corner-next::after{right:14px}
  .page-corner-prev::after{left:14px}
}
@media(max-width:420px){
  .page-corner{width:52px;height:52px}
  .page-corner::before{width:47px;height:47px}
}


/* ===== v1.8.0 — adaptive sheets + smooth paper fold ===== */
body:not(.bk-ready) .book-shell{visibility:hidden}

/* Content can always scroll if real-world content is taller than the calculated sheet.
   The scrollbar itself stays invisible. */
.page-content{
  overflow-y:auto !important;
  overflow-x:hidden !important;
  scrollbar-width:none !important;
  -ms-overflow-style:none !important;
  overscroll-behavior-y:contain !important;
  touch-action:pan-y !important;
}
.page-content::-webkit-scrollbar{width:0 !important;height:0 !important;display:none !important}

/* Soft masks imply depth instead of showing a browser scrollbar. */
.page.active.has-scroll::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:6 !important;
  pointer-events:none !important;
  opacity:1 !important;
  background:
    linear-gradient(180deg,
      rgba(255,249,237,.82) 0,
      rgba(255,249,237,0) 20px,
      rgba(255,249,237,0) calc(100% - 28px),
      rgba(192,143,83,.12) 100%) !important;
}

/* Measurement page used by JS pagination. */
.page.bk-measure-page{
  display:flex !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  z-index:-999 !important;
  transform:none !important;
  animation:none !important;
}

/* Better paper-turn fold. */
.page-turn-fold{
  position:absolute;
  z-index:95;
  top:0;bottom:0;
  width:0;
  opacity:0;
  pointer-events:none;
  will-change:width,opacity,transform;
}
.page-turn-fold.is-next{right:0}
.page-turn-fold.is-prev{left:0}
.page-turn-fold::before{
  content:"";
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,
      rgba(74,41,18,0),
      rgba(92,52,23,.08) 28%,
      rgba(255,252,242,.88) 64%,
      rgba(121,76,37,.22) 86%,
      rgba(50,28,13,.28));
}
.page-turn-fold.is-prev::before{transform:scaleX(-1)}
.page-turn-shadow{
  position:absolute;
  z-index:94;
  top:3%;bottom:3%;
  width:1px;
  opacity:0;
  pointer-events:none;
  background:rgba(55,31,15,.32);
  box-shadow:0 0 28px 12px rgba(61,34,16,.20);
  will-change:left,right,opacity,box-shadow;
}
.page-turn-shadow.is-next{right:0}
.page-turn-shadow.is-prev{left:0}

/* The under-page brightens as the top page is pulled away. */
.page.is-under-turn{
  transition:filter .08s linear,transform .08s linear !important;
  filter:brightness(.90) saturate(.94);
  transform:translateZ(-1px) scale(.997);
}
.book-shell.is-turning .page.is-under-turn{
  box-shadow:inset 0 0 46px rgba(112,68,31,.08),0 22px 50px rgba(72,45,26,.12);
}

/* More tactile corner target, visually quieter. */
.page-corner{
  opacity:.22 !important;
}
.page-corner:hover,
.page-corner.is-dragging{opacity:.76 !important}
.page-corner::before{
  filter:drop-shadow(0 5px 7px rgba(73,43,22,.10)) !important;
}

/* Continuation page heading is intentionally more compact. */
.page[data-continuation="1"] .page-heading{
  margin-bottom:14px !important;
}
.page[data-continuation="1"] .page-heading p{
  display:none;
}

/* On mobile give vertical scrolling priority outside the corner gesture. */
@media(max-width:900px){
  .page-content{touch-action:pan-y !important}
  .page-corner{touch-action:none !important}
  .page-turn-fold{top:0;bottom:0}
}


/* ===== v1.9.0 — hybrid book: real category pages + invisible content scroll ===== */

/* Never generate a visible browser scrollbar; scrolling itself remains fully functional. */
.page-content{
  overflow-y:auto !important;
  overflow-x:hidden !important;
  scrollbar-width:none !important;
  -ms-overflow-style:none !important;
  scroll-behavior:auto;
  overscroll-behavior:contain;
}
.page-content::-webkit-scrollbar{
  width:0 !important;
  height:0 !important;
  display:none !important;
}

/* Subtle indication that more content exists, without a scrollbar UI. */
.page.active.has-scroll .page-content{
  -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 15px,#000 calc(100% - 24px),transparent 100%);
  mask-image:linear-gradient(to bottom,transparent 0,#000 15px,#000 calc(100% - 24px),transparent 100%);
}
.page.active:not(.has-scroll) .page-content{
  -webkit-mask-image:none;
  mask-image:none;
}

/* Keep the footer visually separate from scrollable content. */
.page-footer{
  background:linear-gradient(180deg,rgba(255,249,237,0),rgba(248,232,203,.38));
}

/* More paper-like corner and fold. */
.page-corner{
  width:86px !important;
  height:86px !important;
  opacity:.18 !important;
}
.page-corner:hover,
.page-corner.is-dragging{
  opacity:.74 !important;
}
.page-corner::before{
  width:78px !important;
  height:78px !important;
}
.page-turn-fold::before{
  background:
    linear-gradient(90deg,
      rgba(62,34,15,0) 0,
      rgba(78,42,18,.07) 24%,
      rgba(255,252,244,.96) 58%,
      rgba(168,116,67,.22) 78%,
      rgba(55,30,13,.34) 100%) !important;
}
.page-turn-shadow{
  filter:blur(.2px);
}

/* On touch screens the paper corner stays large enough to grab,
   while vertical gestures over the content remain scrolling gestures. */
@media(max-width:900px){
  .page-corner{
    width:68px !important;
    height:68px !important;
    opacity:.16 !important;
  }
  .page-corner::before{
    width:61px !important;
    height:61px !important;
  }
  .page-content{
    touch-action:pan-y !important;
  }
}
@media(max-width:420px){
  .page-corner{
    width:60px !important;
    height:60px !important;
  }
  .page-corner::before{
    width:54px !important;
    height:54px !important;
  }
}


/* ===== v2.0.0 — progressive corner curl ===== */
.page-turn-fold{
  top:0 !important;
  bottom:auto !important;
  width:0;
  height:0;
  opacity:0;
  overflow:hidden;
  transform-origin:top right;
  filter:drop-shadow(-8px 10px 10px rgba(57,31,14,.12));
}
.page-turn-fold.is-next{
  right:0 !important;
  left:auto !important;
  clip-path:polygon(100% 0,100% 100%,0 0);
}
.page-turn-fold.is-prev{
  left:0 !important;
  right:auto !important;
  clip-path:polygon(0 0,100% 0,0 100%);
  transform-origin:top left;
}
.page-turn-fold::before{
  background:
    linear-gradient(135deg,
      rgba(255,252,244,.98) 0%,
      rgba(248,234,208,.96) 36%,
      rgba(187,137,86,.34) 68%,
      rgba(75,41,18,.42) 100%) !important;
}
.page-turn-fold.is-prev::before{
  transform:none !important;
  background:
    linear-gradient(225deg,
      rgba(255,252,244,.98) 0%,
      rgba(248,234,208,.96) 36%,
      rgba(187,137,86,.34) 68%,
      rgba(75,41,18,.42) 100%) !important;
}
.page-turn-shadow{
  top:0 !important;
  bottom:auto !important;
  width:0;
  height:0;
  opacity:0;
  border-radius:0 0 70% 0;
  background:radial-gradient(circle at 100% 0,rgba(52,28,12,.24),rgba(52,28,12,.10) 45%,transparent 72%);
  box-shadow:none !important;
  filter:blur(5px);
}
.page-turn-shadow.is-next{right:0 !important;left:auto !important}
.page-turn-shadow.is-prev{
  left:0 !important;right:auto !important;
  border-radius:0 0 0 70%;
  background:radial-gradient(circle at 0 0,rgba(52,28,12,.24),rgba(52,28,12,.10) 45%,transparent 72%);
}

/* During the early curl, the sheet remains almost flat. */
.page.is-manual-turn{
  backface-visibility:hidden !important;
  transform-style:preserve-3d !important;
}


@media(min-width:1400px){
  .stage{padding:28px 150px 108px}
  .book-shell{width:min(1080px,calc(100vw - 320px));height:min(690px,calc(100dvh - var(--bk-toolbar) - 144px))}
}


/* =====================================================================
   v2.2.0 CLASSIC STABLE
   No interactive page-corner animation. No fold/curl overlays.
   ===================================================================== */

/* Required menu typography */
@font-face{
  font-family:'Izhitsa.kz';
  src:
    local('Izhitsa.kz'),
    local('Izhitsa.Kz'),
    url('https://fontsforyou.com/fonts/i/Izhitsa.Kz.ttf') format('truetype');
  font-style:normal;
  font-weight:400;
  font-display:swap;
}
@font-face{
  font-family:'Amaltea One';
  src:
    local('Amaltea One'),
    local('AmalteaOne'),
    url('https://ffont.ru/upls/fonts/AmalteaOne.ttf') format('truetype'),
    url('https://fontsforyou.com/fonts/a/AmalteaOne.ttf') format('truetype');
  font-style:normal;
  font-weight:400;
  font-display:swap;
}

.brand-text strong,
.page-heading h2,
.cover-inner h1,
.contact-inner h2,
.drawer-head strong{
  font-family:'Izhitsa.kz','BK Izhitsa',Georgia,'Times New Roman',serif !important;
  font-weight:400 !important;
}

.dish-line h3{
  font-family:'Amaltea One','BK Amaltea One',Georgia,'Times New Roman',serif !important;
  font-weight:400 !important;
}

/* Completely remove the broken upper-corner / paper-curl interaction. */
.page-corner,
.page-turn-fold,
.page-turn-shadow{
  display:none !important;
  visibility:hidden !important;
  pointer-events:none !important;
  animation:none !important;
  transition:none !important;
}

/* Disable every manual-turn state left in older CSS. */
.page.is-manual-turn,
.page.is-under-turn,
.page.page-under,
.page.page-flip-forward,
.page.page-flip-backward,
.page.manual-settle{
  animation:none !important;
  clip-path:none !important;
  filter:none !important;
}

/* One stable page stack with only a quiet whole-page transition. */
.page{
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  transform:translateX(10px) scale(.997) !important;
  transform-origin:center center !important;
  transition:
    opacity .22s ease,
    transform .22s ease !important;
}

.page.active{
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  transform:none !important;
  z-index:5 !important;
}

.page.leaving-left,
.page.leaving-right{
  visibility:visible !important;
  opacity:0 !important;
  pointer-events:none !important;
  z-index:6 !important;
}

.page.leaving-left{
  transform:translateX(-12px) scale(.997) !important;
}

.page.leaving-right{
  transform:translateX(12px) scale(.997) !important;
}

/* Never hide the book while waiting for optional font/image resources. */
body:not(.bk-ready) .book-shell{
  visibility:visible !important;
}

/* Keep laptop / desktop calmer and less zoomed-in. */
@media(min-width:901px){
  .stage{
    padding:26px clamp(96px,8vw,150px) 100px !important;
  }
  .book-shell{
    width:min(1080px,calc(100vw - 280px)) !important;
    height:min(680px,calc(100dvh - var(--bk-toolbar) - 150px)) !important;
  }
}

@media(min-width:1400px){
  .book-shell{
    width:min(1040px,calc(100vw - 360px)) !important;
    height:min(665px,calc(100dvh - var(--bk-toolbar) - 158px)) !important;
  }
}

/* Mobile keeps the classic stable behavior and full usable width. */
@media(max-width:900px){
  .stage{
    padding:10px 8px 118px !important;
  }
  .book-shell{
    width:100% !important;
    height:calc(100dvh - var(--bk-toolbar) - 132px) !important;
  }
  .page{
    transform:translateX(6px) scale(.998) !important;
  }
  .page.active{
    transform:none !important;
  }
  .page.leaving-left{
    transform:translateX(-8px) scale(.998) !important;
  }
  .page.leaving-right{
    transform:translateX(8px) scale(.998) !important;
  }
}


/* =====================================================================
   v2.3.0 CLASSIC STATIC — ZERO ANIMATION
   ===================================================================== */

/* Kill every animation/transition related to page changing. */
.page,
.page.active,
.page.leaving-left,
.page.leaving-right,
.page.page-under,
.page.page-flip-forward,
.page.page-flip-backward,
.page.is-manual-turn,
.page.is-under-turn,
.page.manual-settle{
  animation:none !important;
  transition:none !important;
  transform:none !important;
  clip-path:none !important;
  filter:none !important;
  backface-visibility:visible !important;
  perspective:none !important;
}

/* Exactly one page is shown. */
.page{
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  display:flex !important;
}

.page.active{
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  z-index:5 !important;
}

/* Remove every old fold/corner/triangle helper. */
.page-corner,
.page-turn-fold,
.page-turn-shadow,
.bk-turn-corner,
.bk-turn-hint,
.bk-desktop-page-cue,
.bk-desktop-page-cue-sheet,
.bk-desktop-page-cue-mark{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  animation:none !important;
  transition:none !important;
  transform:none !important;
  clip-path:none !important;
}

/* Remove decorative page edge shapes that can look like triangles while switching. */
.page::after{
  display:none !important;
}

/* Keep only the subtle static paper texture. */
.page::before{
  animation:none !important;
  transition:none !important;
  transform:none !important;
}

/* Book container itself never animates. */
.book-shell,
.book-shell::before,
.book-shell::after,
.stage{
  animation:none !important;
  transition:none !important;
}

/* Respect reduced motion globally too. */
@media(prefers-reduced-motion:reduce){
  *{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
    scroll-behavior:auto !important;
  }
}


/* =====================================================================
   v2.4.0 — PREMIUM CATEGORY RIBBON
   Restores the polished v1.3-style category trigger only.
   Page switching remains completely static/stable.
   ===================================================================== */

/* Mandatory project typography — never replace these families. */
.brand-text strong,
.page-heading h2,
.cover-inner h1,
.contact-inner h2,
.drawer-head strong{
  font-family:'Izhitsa.kz','BK Izhitsa',Georgia,'Times New Roman',serif !important;
  font-weight:400 !important;
}
.dish-line h3{
  font-family:'Amaltea One','BK Amaltea One',Georgia,'Times New Roman',serif !important;
  font-weight:400 !important;
}

.menu-ribbon{
  position:fixed !important;
  z-index:180 !important;
  left:14px !important;
  top:50% !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  width:64px !important;
  height:236px !important;
  padding:0 !important;
  border:1px solid rgba(185,134,67,.34) !important;
  border-left:0 !important;
  border-radius:0 30px 30px 0 !important;
  background:linear-gradient(180deg,rgba(255,250,243,.97),rgba(239,221,191,.97)) !important;
  color:#63411f !important;
  box-shadow:10px 16px 32px rgba(96,61,34,.14),inset -1px 0 rgba(255,255,255,.35) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:15px !important;
  overflow:hidden !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
  touch-action:manipulation !important;
  transition:width .28s ease,opacity .20s ease,transform .24s ease,border-color .28s ease,background .28s ease !important;
}
.menu-ribbon:hover{
  width:72px !important;
  border-color:rgba(185,134,67,.58) !important;
  background:linear-gradient(180deg,#fff6e9,#edd7b6) !important;
}
.menu-ribbon::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:8px 7px 8px 0 !important;
  border:1px solid rgba(185,134,67,.18) !important;
  border-left:0 !important;
  border-radius:0 22px 22px 0 !important;
  pointer-events:none !important;
}
.ribbon-pulse{
  display:block !important;
  position:absolute !important;
  width:7px !important;
  height:56px !important;
  left:0 !important;
  top:50% !important;
  bottom:auto !important;
  margin-top:-28px !important;
  background:linear-gradient(180deg,transparent,#d59f58,transparent) !important;
  filter:drop-shadow(0 0 10px rgba(213,159,88,.80)) !important;
  opacity:.35 !important;
  animation:bkRibbonGlow 2.2s ease-in-out infinite !important;
}
.ribbon-copy{
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  writing-mode:vertical-rl !important;
  transform:rotate(180deg) !important;
  font-family:Arial,sans-serif !important;
  text-transform:uppercase !important;
  letter-spacing:.18em !important;
}
.ribbon-copy small{display:inline !important;font-size:7px !important;color:#917657 !important;}
.ribbon-copy strong{font-size:10px !important;font-weight:800 !important;color:#63411f !important;}
.ribbon-arrows{display:flex !important;gap:0 !important;color:#b78442 !important;}
.ribbon-arrows i{display:inline-block !important;font-style:normal !important;font-size:18px !important;line-height:1 !important;animation:bkRibbonArrow 1.35s ease-in-out infinite !important;}
.ribbon-arrows i:nth-child(2){animation-delay:.12s !important}
.ribbon-arrows i:nth-child(3){animation-delay:.24s !important}
@keyframes bkRibbonArrow{0%,100%{opacity:.22;transform:translateX(-3px)}50%{opacity:1;transform:translateX(3px)}}
@keyframes bkRibbonGlow{0%,100%{opacity:.35;transform:translateY(-60px)}50%{opacity:1;transform:translateY(60px)}}

body.nav-open .menu-ribbon{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translate(-115%,-50%) scale(.96) !important;
}
.drawer{z-index:220 !important;}
.scrim{z-index:210 !important;}
body.nav-open .stage{transform:none !important;filter:none !important;}

@media(max-width:900px){
  .menu-ribbon{
    top:auto !important;
    bottom:max(88px,calc(env(safe-area-inset-bottom,0px) + 80px)) !important;
    left:12px !important;
    transform:none !important;
    width:auto !important;
    height:48px !important;
    max-width:none !important;
    padding:0 14px !important;
    border-left:1px solid rgba(185,134,67,.34) !important;
    border-radius:999px !important;
    flex-direction:row !important;
    gap:9px !important;
  }
  .menu-ribbon:hover{width:auto !important;}
  .menu-ribbon::before{display:none !important;}
  .ribbon-copy{writing-mode:horizontal-tb !important;transform:none !important;gap:5px !important;}
  .ribbon-copy small{display:none !important;}
  .ribbon-copy strong{font-size:9px !important;white-space:nowrap !important;}
  .ribbon-pulse{
    width:38px !important;
    height:3px !important;
    left:8px !important;
    top:auto !important;
    bottom:0 !important;
    margin-top:0 !important;
    animation:bkMobileRibbonGlow 2.2s ease-in-out infinite !important;
  }
  .ribbon-arrows i{font-size:15px !important;}
  body.nav-open .menu-ribbon{
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transform:translateX(-135%) scale(.96) !important;
  }
  @keyframes bkMobileRibbonGlow{0%,100%{opacity:.25;transform:translateX(0)}50%{opacity:1;transform:translateX(58px)}}
}


/* =====================================================================
   v2.4.1 — MOBILE TOP NAV RECOVERY
   Desktop/tablet >= 901px remains unchanged.
   ===================================================================== */

@media(max-width:900px){
  :root{
    --bk-mobile-safe-top:env(safe-area-inset-top,0px);
    --bk-mobile-header-h:62px;
  }

  html,
  body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  .app{
    display:block !important;
    min-height:100dvh !important;
    height:100dvh !important;
    padding-top:calc(var(--bk-mobile-header-h) + var(--bk-mobile-safe-top)) !important;
    overflow:hidden !important;
  }

  /* Always-visible mobile navigation */
  .topbar{
    position:fixed !important;
    z-index:1000 !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    height:calc(var(--bk-mobile-header-h) + var(--bk-mobile-safe-top)) !important;
    min-height:calc(var(--bk-mobile-header-h) + var(--bk-mobile-safe-top)) !important;
    padding:
      var(--bk-mobile-safe-top)
      max(8px,env(safe-area-inset-right,0px))
      0
      max(8px,env(safe-area-inset-left,0px)) !important;
    display:flex !important;
    align-items:center !important;
    gap:6px !important;
    overflow:visible !important;
    visibility:visible !important;
    opacity:1 !important;
    transform:none !important;
    background:rgba(255,250,241,.97) !important;
    border-bottom:1px solid rgba(121,79,42,.13) !important;
    box-shadow:0 7px 20px rgba(79,49,27,.08) !important;
    backdrop-filter:blur(16px) !important;
    -webkit-backdrop-filter:blur(16px) !important;
  }

  .brand{
    flex:0 0 auto !important;
    min-width:0 !important;
    width:auto !important;
    gap:0 !important;
  }

  .brand-mark,
  .brand-logo{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    min-height:44px !important;
    flex:0 0 44px !important;
    border-radius:50% !important;
  }

  /* Mobile uses the logo as brand identity; text is hidden to guarantee nav fit. */
  .brand-text{
    display:none !important;
  }

  .top-actions{
    margin-left:auto !important;
    min-width:0 !important;
    width:auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:4px !important;
    flex:1 1 auto !important;
    overflow:visible !important;
    visibility:visible !important;
    opacity:1 !important;
  }

  .top-actions > *{
    flex:0 0 auto !important;
  }

  .icon-btn,
  .lang-btn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    visibility:visible !important;
    opacity:1 !important;
    height:36px !important;
    min-height:36px !important;
    border-radius:7px !important;
    white-space:nowrap !important;
  }

  .history-btn{
    padding:0 9px !important;
    min-width:auto !important;
    max-width:84px !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    font-size:10px !important;
  }

  #searchBtn{
    width:38px !important;
    min-width:38px !important;
    padding:0 !important;
    font-size:0 !important;
  }

  #searchBtn::before{
    content:"⌕" !important;
    font-size:20px !important;
    line-height:1 !important;
  }

  .lang-btn{
    width:34px !important;
    min-width:34px !important;
    padding:0 !important;
    font-size:9px !important;
  }

  /* Progress stays attached to the fixed header. */
  .progress{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    z-index:2 !important;
  }

  /* Stage starts below the fixed mobile navigation. */
  .stage{
    height:calc(100dvh - var(--bk-mobile-header-h) - var(--bk-mobile-safe-top)) !important;
    min-height:0 !important;
    padding-top:10px !important;
  }

  /* Drawers/panels begin below the fixed navigation. */
  .drawer{
    top:calc(var(--bk-mobile-header-h) + var(--bk-mobile-safe-top)) !important;
  }

  .scrim{
    inset:
      calc(var(--bk-mobile-header-h) + var(--bk-mobile-safe-top))
      0
      0
      0 !important;
  }

  .search-panel{
    top:calc(var(--bk-mobile-header-h) + var(--bk-mobile-safe-top) + 8px) !important;
    width:calc(100vw - 16px) !important;
  }
}

/* Very small phones: History becomes compact but remains present. */
@media(max-width:380px){
  .topbar{
    gap:3px !important;
    padding-left:max(5px,env(safe-area-inset-left,0px)) !important;
    padding-right:max(5px,env(safe-area-inset-right,0px)) !important;
  }

  .brand-mark,
  .brand-logo{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
    flex-basis:40px !important;
  }

  .top-actions{
    gap:3px !important;
  }

  .history-btn{
    max-width:70px !important;
    padding:0 7px !important;
    font-size:9px !important;
  }

  #searchBtn{
    width:34px !important;
    min-width:34px !important;
  }

  .lang-btn{
    width:31px !important;
    min-width:31px !important;
  }
}


/* =====================================================================
   v2.5.0 — PHYSICAL MENU VISUAL LANGUAGE
   Layout, navigation, buttons and zero-animation page switching unchanged.
   ===================================================================== */

/* Project-mandatory typography: never remove or replace. */
.page-heading h2,.cover-inner h1,.contact-inner h2,.drawer-head strong,.brand-text strong{
  font-family:'Izhitsa.kz','BK Izhitsa',Georgia,'Times New Roman',serif !important;
  font-weight:400 !important;
}
.dish-line h3{
  font-family:'Amaltea One','BK Amaltea One',Georgia,'Times New Roman',serif !important;
  font-weight:400 !important;
}

/* Dark wood / fire mood from the printed menu, without changing structure. */
.page--menu{
  background:
    radial-gradient(circle at 14% 16%,rgba(171,78,28,.22),transparent 28%),
    radial-gradient(circle at 86% 78%,rgba(192,128,53,.10),transparent 25%),
    linear-gradient(135deg,#130c08,#2a160d 52%,#120b08) !important;
  color:#fff6e8 !important;
  border-color:rgba(206,153,79,.26) !important;
  box-shadow:0 22px 50px rgba(40,19,8,.26),inset 0 0 0 1px rgba(222,176,109,.07) !important;
}
.page--menu.has-category-bg{
  background-image:
    linear-gradient(rgba(13,7,4,var(--bk-category-overlay,.58)),rgba(13,7,4,var(--bk-category-overlay,.58))),
    var(--bk-category-bg) !important;
  background-position:center, var(--bk-category-x,50%) var(--bk-category-y,50%) !important;
  background-size:cover, var(--bk-category-size,cover) !important;
  background-repeat:no-repeat !important;
}
.page--menu::before{
  opacity:.15 !important;
  background-image:
    repeating-linear-gradient(0deg,rgba(255,226,184,.022) 0 1px,transparent 1px 5px),
    repeating-linear-gradient(90deg,rgba(255,226,184,.018) 0 1px,transparent 1px 9px) !important;
}
.page--menu .page-kicker{color:#d39a4f !important}
.page--menu .page-heading h2{color:#fff4df !important;text-shadow:0 2px 16px rgba(0,0,0,.28)}
.page--menu .page-heading p{color:#d7b98f !important}
.page--menu .group-title{color:#d8a35d !important;border-color:rgba(220,171,101,.28) !important}
.page--menu .dish{
  background:rgba(22,12,7,.58) !important;
  border:1px solid rgba(222,175,107,.18) !important;
  box-shadow:0 8px 22px rgba(0,0,0,.12) !important;
}
.page--menu .dish-line h3{color:#e4b25f !important;text-shadow:0 1px 10px rgba(0,0,0,.25)}
.page--menu .dish-desc{color:#f4eadb !important}
.page--menu .dish-weight{color:#d2b48e !important}
.page--menu .dish-price{color:#fff !important}
.page--menu .dynamic-placeholder{color:#d5b789 !important;background:rgba(255,255,255,.04) !important}
.page--menu .add-to-order{background:#b9752e !important;color:#fff8e9 !important;border-color:#d29b57 !important}
.page--menu .unavailable{color:#d2b791 !important}
.page--menu .page-footer{color:#c7ab84 !important;background:linear-gradient(180deg,rgba(20,11,6,0),rgba(20,11,6,.58)) !important}
.page--menu .page-footer b{color:#dba85f !important}
.page--menu .graycape-credit a{color:#e3b56f !important}

/* Keep thumbnails warm, natural and consistent with the printed photography. */
.page--menu .dish-thumb{background:#21130b !important}
.page--menu .dish-thumb img{filter:saturate(.95) contrast(1.04) brightness(.94) !important}


/* =====================================================================
   v2.6.0 — CONFIGURABLE DARK BROWN THEME
   Layout/navigation/static page behavior unchanged.
   ===================================================================== */

:root{
  --bk-theme-bg:#24130d;
  --bk-theme-surface:#321c12;
  --bk-theme-text:#f8ead8;
  --bk-theme-heading:#fff0d0;
  --bk-theme-item:#e8b866;
  --bk-theme-muted:#d2b48c;
  --bk-theme-accent:#c8893e;
}

/* The page stack now consistently uses the dark tavern palette. */
.page,
.page--menu,
.page--history,
.page--contact,
.page--cover{
  background:
    radial-gradient(circle at 13% 15%,rgba(173,82,32,.17),transparent 29%),
    radial-gradient(circle at 86% 80%,rgba(192,128,53,.08),transparent 27%),
    linear-gradient(135deg,var(--bk-theme-bg),var(--bk-theme-surface) 54%,var(--bk-theme-bg)) !important;
  color:var(--bk-theme-text) !important;
  border-color:rgba(221,178,112,.20) !important;
  box-shadow:
    0 22px 50px rgba(26,12,6,.30),
    inset 0 0 0 1px rgba(255,255,255,.035) !important;
}

.page--menu.has-category-bg{
  background-image:
    linear-gradient(rgba(13,7,4,var(--bk-category-overlay,.58)),rgba(13,7,4,var(--bk-category-overlay,.58))),
    var(--bk-category-bg) !important;
}

/* Required typography remains fixed; only colors are configurable. */
.page-heading h2,
.cover-inner h1,
.contact-inner h2,
.drawer-head strong,
.brand-text strong{
  font-family:'Izhitsa.kz','BK Izhitsa',Georgia,'Times New Roman',serif !important;
  color:var(--bk-theme-heading) !important;
  font-weight:400 !important;
}

.dish-line h3{
  font-family:'Amaltea One','BK Amaltea One',Georgia,'Times New Roman',serif !important;
  color:var(--bk-theme-item) !important;
  font-weight:400 !important;
}

.page-kicker,
.group-title,
.cover-eyebrow{
  color:var(--bk-theme-accent) !important;
}

.page-heading p,
.cover-subtitle,
.cover-note,
.contact-sub,
.story-paragraph,
.dish-desc,
.dish-weight,
.unavailable{
  color:var(--bk-theme-muted) !important;
}

.dish{
  background:color-mix(in srgb,var(--bk-theme-surface) 88%,transparent) !important;
  border-color:rgba(222,175,107,.18) !important;
  box-shadow:0 8px 22px rgba(0,0,0,.13) !important;
}

.dish-price{
  color:var(--bk-theme-text) !important;
}

.add-to-order,
.primary-btn{
  background:var(--bk-theme-accent) !important;
  color:var(--bk-theme-bg) !important;
  border-color:color-mix(in srgb,var(--bk-theme-accent) 82%,white) !important;
}

.secondary-btn{
  background:color-mix(in srgb,var(--bk-theme-surface) 84%,white 16%) !important;
  color:var(--bk-theme-text) !important;
  border-color:rgba(225,183,122,.24) !important;
}

.story-copy,
.story-quote,
.contact-cards a{
  background:color-mix(in srgb,var(--bk-theme-surface) 88%,transparent) !important;
  color:var(--bk-theme-text) !important;
  border-color:rgba(225,183,122,.18) !important;
}

.story-quote{
  border-left-color:var(--bk-theme-accent) !important;
}

.page-footer{
  color:var(--bk-theme-muted) !important;
  background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--bk-theme-bg) 76%,transparent)) !important;
}

.page-footer b,
.graycape-credit a{
  color:var(--bk-theme-accent) !important;
}

.dynamic-placeholder,
.dish-thumb{
  background:color-mix(in srgb,var(--bk-theme-surface) 90%,black 10%) !important;
  color:var(--bk-theme-muted) !important;
}

/* Header stays readable and now follows the same palette. */
.topbar{
  background:color-mix(in srgb,var(--bk-theme-bg) 94%,black 6%) !important;
  border-bottom-color:rgba(224,181,120,.18) !important;
  color:var(--bk-theme-text) !important;
}

.brand-text small{
  color:var(--bk-theme-muted) !important;
}

.icon-btn,
.lang-btn{
  background:color-mix(in srgb,var(--bk-theme-surface) 88%,transparent) !important;
  border-color:rgba(224,181,120,.20) !important;
  color:var(--bk-theme-text) !important;
}

.lang-btn.active{
  background:var(--bk-theme-accent) !important;
  color:var(--bk-theme-bg) !important;
  border-color:var(--bk-theme-accent) !important;
}

/* Main navigation and panels follow the theme without changing geometry. */
.menu-ribbon{
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb,var(--bk-theme-surface) 92%,black 8%),
      var(--bk-theme-bg)
    ) !important;
  color:var(--bk-theme-text) !important;
  border-color:rgba(221,174,105,.30) !important;
}

.ribbon-copy strong{color:var(--bk-theme-heading) !important}
.ribbon-copy small{color:var(--bk-theme-muted) !important}
.ribbon-arrows{color:var(--bk-theme-accent) !important}

.drawer,
.search-panel,
.order-drawer{
  background:color-mix(in srgb,var(--bk-theme-bg) 96%,black 4%) !important;
  color:var(--bk-theme-text) !important;
  border-color:rgba(221,174,105,.18) !important;
}

.drawer-head button,
.search-input,
.order-close,
.waiter-close,
.qty button{
  background:var(--bk-theme-surface) !important;
  color:var(--bk-theme-text) !important;
  border-color:rgba(221,174,105,.20) !important;
}

.toc button,
.search-results button{
  color:var(--bk-theme-text) !important;
}

.toc button:hover,
.toc button.is-active,
.search-results button:hover{
  background:color-mix(in srgb,var(--bk-theme-accent) 13%,transparent) !important;
}

.order-fab,
.show-waiter{
  background:var(--bk-theme-surface) !important;
  color:var(--bk-theme-text) !important;
}

.order-fab b{
  background:var(--bk-theme-accent) !important;
  color:var(--bk-theme-bg) !important;
}

.order-foot,
.waiter-card{
  background:var(--bk-theme-bg) !important;
  color:var(--bk-theme-text) !important;
  border-color:rgba(221,174,105,.18) !important;
}

.clear-order{
  background:var(--bk-theme-surface) !important;
  color:var(--bk-theme-text) !important;
}

/* Preserve mobile navigation recovery from v2.4.1 while using theme colors. */
@media(max-width:900px){
  .topbar{
    background:color-mix(in srgb,var(--bk-theme-bg) 97%,black 3%) !important;
  }
}


/* =====================================================================
   v2.6.1 — PERFORMANCE ONLY
   ===================================================================== */

.page:not(.active){
  content-visibility:hidden;
  contain:layout paint style;
}

.page.active{
  content-visibility:visible;
  contain:layout paint style;
}

.page--menu.has-category-bg-pending:not(.has-category-bg){
  background-image:none !important;
}

@media(max-width:900px){
  .topbar,
  .menu-ribbon,
  .scrim,
  .history-lightbox{
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }

  .book-shell{
    filter:none !important;
  }
}


/* =====================================================================
   v2.7.0 — SITE WALLPAPER + EDITORIAL HISTORY
   ===================================================================== */

:root{
  --bk-site-bg-color:#160b07;
  --bk-site-bg-overlay:#120804;
  --bk-site-bg-opacity:.28;
  --bk-site-bg-x:50%;
  --bk-site-bg-y:50%;
  --bk-site-bg-size:cover;
  --bk-site-bg-image:none;
}

html,body{
  background:var(--bk-site-bg-color) !important;
}

body{
  position:relative;
  isolation:isolate;
}

.site-backdrop{
  position:fixed;
  z-index:-2;
  inset:0;
  background-color:var(--bk-site-bg-color);
  background-image:var(--bk-site-bg-image);
  background-position:var(--bk-site-bg-x) var(--bk-site-bg-y);
  background-size:var(--bk-site-bg-size);
  background-repeat:no-repeat;
}

.site-backdrop::after{
  content:"";
  position:absolute;
  inset:0;
  background:var(--bk-site-bg-overlay);
  opacity:var(--bk-site-bg-opacity);
  pointer-events:none;
}

body::before{
  z-index:-1 !important;
  opacity:.10 !important;
}

.app{
  position:relative;
  z-index:1;
  background:transparent !important;
}

/* History becomes a real archive page, not a grid of identical squares. */
.page--history .page-content{
  overflow-y:auto !important;
  overflow-x:hidden !important;
  padding-bottom:34px !important;
}

.history-editorial{
  width:min(100%,1040px);
  margin:0 auto;
}

.history-intro-grid{
  display:grid;
  grid-template-columns:minmax(280px,.88fr) minmax(0,1.12fr);
  gap:20px;
  align-items:start;
}

.history-hero-image{
  width:100%;
  min-height:420px;
  aspect-ratio:auto !important;
  border:1px solid rgba(225,183,122,.20) !important;
  border-radius:8px !important;
  overflow:hidden;
  background:var(--bk-theme-surface) !important;
  box-shadow:0 18px 38px rgba(0,0,0,.24) !important;
}

.history-hero-image img{
  width:100%;
  height:100%;
  min-height:420px;
  object-fit:cover;
  object-position:center;
  transition:none !important;
}

.history-intro-grid .story-copy{
  min-height:420px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(20px,3vw,34px) !important;
}

.history-intro-grid .story-quote{
  margin-top:14px;
}

.history-archive-head{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:5px 13px;
  align-items:end;
  margin:34px 0 15px;
  padding-top:22px;
  border-top:1px solid rgba(225,183,122,.18);
}

.history-archive-head span{
  grid-row:1/3;
  color:var(--bk-theme-accent);
  font:800 9px/1 Arial,sans-serif;
  letter-spacing:.18em;
  writing-mode:vertical-rl;
  transform:rotate(180deg);
}

.history-archive-head strong{
  font-family:'Izhitsa.kz','BK Izhitsa',Georgia,'Times New Roman',serif !important;
  color:var(--bk-theme-heading);
  font-size:clamp(28px,3.2vw,42px);
  line-height:1;
  font-weight:400;
}

.history-archive-head small{
  color:var(--bk-theme-muted);
  font:600 10px/1.4 Arial,sans-serif;
}

/* Natural image proportions: ideal for the supplied mix of old portrait/landscape photos. */
.history-masonry{
  columns:3 220px;
  column-gap:10px;
}

.history-archive-photo{
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:auto !important;
  margin:0 0 10px !important;
  break-inside:avoid;
  border:1px solid rgba(225,183,122,.17) !important;
  border-radius:7px !important;
  background:var(--bk-theme-surface) !important;
  overflow:hidden;
  box-shadow:0 8px 20px rgba(0,0,0,.18) !important;
}

.history-archive-photo img{
  display:block;
  width:100%;
  height:auto !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  transition:none !important;
}

.history-gallery-item:hover img{
  transform:none !important;
}

.history-gallery-caption{
  background:linear-gradient(180deg,transparent,rgba(18,9,5,.88)) !important;
}

.history-actions{
  display:flex;
  justify-content:center;
  gap:8px;
  margin:26px 0 4px;
}

@media(max-width:1100px){
  .history-intro-grid{
    grid-template-columns:minmax(250px,.8fr) minmax(0,1.2fr);
  }
  .history-masonry{
    columns:3 180px;
  }
}

@media(max-width:760px){
  .history-intro-grid{
    grid-template-columns:1fr;
  }

  .history-hero-image,
  .history-hero-image img{
    min-height:0;
  }

  .history-hero-image img{
    height:auto;
    max-height:62dvh;
    object-fit:contain;
    background:var(--bk-theme-surface);
  }

  .history-intro-grid .story-copy{
    min-height:0;
    padding:18px !important;
  }

  .history-masonry{
    columns:2 135px;
    column-gap:7px;
  }

  .history-archive-photo{
    margin-bottom:7px !important;
  }

  .history-archive-head{
    margin-top:24px;
  }
}

@media(max-width:390px){
  .history-masonry{
    columns:2 110px;
  }
}


/* =====================================================================
   v2.8.0 — REVIEW / SOCIAL / LOCATION FOOTER
   ===================================================================== */

/* Make the second site section reachable below the full-screen menu. */
html,body{
  height:auto !important;
  min-height:100% !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
}
body{
  min-height:100dvh !important;
}
.app{
  height:100dvh !important;
  min-height:100dvh !important;
  overflow:hidden !important;
}
.page-content{
  overscroll-behavior-y:auto !important;
}

.site-trust-section{
  position:relative;
  z-index:4;
  min-height:72vh;
  padding:clamp(52px,7vw,92px) max(18px,5vw) clamp(60px,8vw,100px);
  background:
    linear-gradient(180deg,rgba(12,6,4,.74),rgba(18,9,5,.94)),
    var(--bk-site-bg-image);
  background-color:var(--bk-site-bg-color);
  background-position:var(--bk-site-bg-x) var(--bk-site-bg-y);
  background-size:cover;
  color:var(--bk-theme-text);
  border-top:1px solid rgba(231,184,111,.20);
  box-shadow:0 -20px 50px rgba(0,0,0,.22);
}

.site-trust-inner{
  width:min(1180px,100%);
  margin:0 auto;
}

.trust-heading{
  max-width:720px;
  margin:0 auto 28px;
  text-align:center;
}
.trust-heading>span{
  display:block;
  margin-bottom:8px;
  color:var(--bk-theme-accent);
  font:800 9px/1 Arial,sans-serif;
  letter-spacing:.20em;
}
.trust-heading h2{
  margin:0;
  color:var(--bk-theme-heading);
  font-family:'Izhitsa.kz','BK Izhitsa',Georgia,'Times New Roman',serif !important;
  font-size:clamp(40px,5vw,68px);
  line-height:.95;
  font-weight:400;
}
.trust-heading p{
  margin:14px auto 0;
  color:var(--bk-theme-muted);
  font:500 13px/1.6 Arial,sans-serif;
}

.review-platform-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.review-platform-card{
  appearance:none;
  border:1px solid rgba(229,183,113,.19);
  border-radius:8px;
  padding:0;
  min-height:150px;
  overflow:hidden;
  background:rgba(24,12,7,.54);
  cursor:pointer;
  box-shadow:0 13px 28px rgba(0,0,0,.22);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.review-platform-card:hover{
  transform:translateY(-3px);
  border-color:rgba(229,183,113,.52);
  box-shadow:0 18px 35px rgba(0,0,0,.30);
}
.review-platform-card img{
  display:block;
  width:100%;
  height:100%;
  min-height:150px;
  max-height:190px;
  object-fit:cover;
}

.location-card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:15px;
  align-items:center;
  margin-top:18px;
  padding:18px;
  border:1px solid rgba(229,183,113,.22);
  border-radius:8px;
  background:color-mix(in srgb,var(--bk-theme-surface) 88%,transparent);
  box-shadow:0 14px 30px rgba(0,0,0,.20);
}
.location-pin{
  display:grid;
  place-items:center;
  width:52px;
  height:52px;
  border-radius:50%;
  border:1px solid rgba(229,183,113,.35);
  color:var(--bk-theme-accent);
  font-size:27px;
}
.location-copy{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.location-copy small{
  color:var(--bk-theme-accent);
  font:800 8px/1 Arial,sans-serif;
  letter-spacing:.16em;
}
.location-copy strong{
  color:var(--bk-theme-heading);
  font-family:'Izhitsa.kz','BK Izhitsa',Georgia,'Times New Roman',serif !important;
  font-size:clamp(23px,2.5vw,34px);
  line-height:1.05;
  font-weight:400;
}
.location-copy span{
  color:var(--bk-theme-muted);
  font:500 11px/1.4 Arial,sans-serif;
}
.navigate-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 18px;
  border-radius:7px;
  background:var(--bk-theme-accent);
  color:var(--bk-theme-bg);
  font:800 10px/1 Arial,sans-serif;
  text-transform:uppercase;
  letter-spacing:.08em;
  text-decoration:none;
}

/* Clean footer view: menu controls disappear only while this section is visible. */
.pager,
.order-fab,
.menu-ribbon{
  transition:opacity .18s ease !important;
}
body.trust-section-visible .pager,
body.trust-section-visible .order-fab,
body.trust-section-visible .menu-ribbon{
  opacity:0 !important;
  pointer-events:none !important;
}

/* Review modal */
.review-modal{
  position:fixed;
  z-index:10000;
  inset:0;
  display:none;
  place-items:center;
  padding:18px;
  background:rgba(8,4,2,.76);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.review-modal.open{display:grid}
body.review-modal-open{overflow:hidden !important}

.review-modal-card{
  position:relative;
  width:min(560px,100%);
  max-height:min(820px,92dvh);
  overflow:auto;
  padding:clamp(24px,4vw,38px);
  border:1px solid rgba(229,183,113,.26);
  border-radius:9px;
  background:
    radial-gradient(circle at 10% 0,rgba(185,111,49,.14),transparent 30%),
    var(--bk-theme-bg);
  color:var(--bk-theme-text);
  box-shadow:0 28px 70px rgba(0,0,0,.46);
  text-align:center;
}
.review-modal-close{
  position:absolute;
  top:10px;
  right:10px;
  width:38px;
  height:38px;
  border:1px solid rgba(229,183,113,.20);
  border-radius:7px;
  background:var(--bk-theme-surface);
  color:var(--bk-theme-text);
  font-size:22px;
  cursor:pointer;
}
.review-modal-kicker{
  display:block;
  margin-bottom:8px;
  color:var(--bk-theme-accent);
  font:800 8px/1 Arial,sans-serif;
  letter-spacing:.18em;
}
.review-modal-card h2{
  margin:0;
  color:var(--bk-theme-heading);
  font-family:'Izhitsa.kz','BK Izhitsa',Georgia,'Times New Roman',serif !important;
  font-size:clamp(31px,6vw,48px);
  line-height:1;
  font-weight:400;
}
.review-modal-card p{
  margin:12px auto 0;
  color:var(--bk-theme-muted);
  font:500 12px/1.55 Arial,sans-serif;
}
.review-stars{
  display:flex;
  justify-content:center;
  gap:7px;
  margin:24px 0 3px;
}
.review-stars button{
  appearance:none;
  border:0;
  background:transparent;
  padding:2px;
  color:#76604c;
  font-size:clamp(39px,8vw,55px);
  line-height:1;
  cursor:pointer;
  transition:transform .12s ease,color .12s ease;
}
.review-stars button:hover{transform:scale(1.08)}
.review-stars button.preview,
.review-stars button.selected{color:#f2b84b}

.review-private-form{
  display:grid;
  gap:11px;
  text-align:left;
}
.review-private-form[hidden],
.review-thanks[hidden]{display:none !important}
.review-private-form h2,
.review-private-form>p,
.review-private-form>.review-modal-kicker{text-align:center}
.review-private-form textarea,
.review-private-form input{
  width:100%;
  box-sizing:border-box;
  border:1px solid rgba(229,183,113,.22);
  border-radius:7px;
  background:var(--bk-theme-surface);
  color:var(--bk-theme-text);
  outline:0;
  font:500 13px/1.5 Arial,sans-serif;
}
.review-private-form textarea{
  resize:vertical;
  min-height:135px;
  padding:13px;
}
.review-private-form input{
  min-height:44px;
  padding:0 13px;
}
.review-private-form textarea:focus,
.review-private-form input:focus{border-color:var(--bk-theme-accent)}
.review-honeypot{
  position:absolute !important;
  left:-10000px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
}
.review-form-actions{
  display:grid;
  gap:10px;
  margin-top:2px;
}
.review-form-actions .primary-btn{width:100%}
.review-form-actions a{
  display:block;
  text-align:center;
  color:var(--bk-theme-muted);
  font:600 10px/1.4 Arial,sans-serif;
}
.review-form-status{
  min-height:18px;
  text-align:center;
  color:var(--bk-theme-accent);
  font:700 11px/1.4 Arial,sans-serif;
}
.review-thanks{
  padding:25px 5px;
  text-align:center;
}
.review-thanks>span{
  display:block;
  margin-bottom:12px;
  color:var(--bk-theme-accent);
  font-size:42px;
}

@media(max-width:760px){
  .site-trust-section{
    min-height:auto;
    padding:45px 12px calc(68px + env(safe-area-inset-bottom,0px));
  }
  .review-platform-grid{
    grid-template-columns:1fr;
  }
  .review-platform-card{
    min-height:112px;
  }
  .review-platform-card img{
    min-height:112px;
    max-height:145px;
    object-fit:cover;
  }
  .location-card{
    grid-template-columns:auto minmax(0,1fr);
  }
  .navigate-btn{
    grid-column:1/-1;
    width:100%;
    box-sizing:border-box;
  }
  .review-modal{
    padding:8px;
    align-items:end;
  }
  .review-modal-card{
    width:100%;
    max-height:88dvh;
    border-radius:10px 10px 0 0;
    padding:28px 17px max(22px,env(safe-area-inset-bottom,0px));
  }
  .review-stars{
    gap:1px;
  }
}


/* =====================================================================
   v2.8.1 — SCROLL FIX
   Reviews & Location must always be reachable below the menu.
   ===================================================================== */

html{
  height:auto !important;
  min-height:100% !important;
  overflow-y:auto !important;
}

body{
  height:auto !important;
  min-height:100dvh !important;
  overflow-y:auto !important;
}

.app{
  position:relative !important;
  height:100dvh !important;
  min-height:100dvh !important;
  max-height:100dvh !important;
  overflow:hidden !important;
}

/* These belong to the menu viewport, not to the whole document. */
.pager{
  position:absolute !important;
  z-index:125 !important;
  bottom:max(12px,env(safe-area-inset-bottom,0px)) !important;
  left:50% !important;
  transform:translateX(-50%) !important;
}

.menu-ribbon{
  position:absolute !important;
}

/* An explicit way to reach the content below, while normal scrolling also works. */
.trust-scroll-cue{
  position:absolute;
  z-index:124;
  left:50%;
  bottom:max(67px,calc(env(safe-area-inset-bottom,0px) + 62px));
  transform:translateX(-50%);
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  padding:0 12px;
  border:1px solid rgba(229,183,113,.22);
  border-radius:7px;
  background:color-mix(in srgb,var(--bk-theme-surface) 90%,transparent);
  color:var(--bk-theme-muted);
  box-shadow:0 7px 18px rgba(0,0,0,.12);
  font:700 9px/1 Arial,sans-serif;
  letter-spacing:.07em;
  text-transform:uppercase;
  cursor:pointer;
}
.trust-scroll-cue b{
  color:var(--bk-theme-accent);
  font-size:15px;
  line-height:1;
}

.site-trust-section{
  display:block !important;
  position:relative !important;
  width:100% !important;
  min-height:72vh !important;
  scroll-margin-top:0 !important;
}

/* The global order button is outside .app in the DOM.
   Hide it as soon as the visitor leaves the menu viewport. */
body.site-scrolled .order-fab{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

/* Existing intersection behavior still applies as a secondary safeguard. */
body.trust-section-visible .trust-scroll-cue{
  opacity:0 !important;
  pointer-events:none !important;
}

/* Mobile header must stay attached to the menu viewport, not the document. */
@media(max-width:900px){
  .topbar{
    position:absolute !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
  }

  .pager{
    bottom:max(10px,env(safe-area-inset-bottom,0px)) !important;
  }

  .menu-ribbon{
    position:absolute !important;
  }

  .trust-scroll-cue{
    bottom:max(62px,calc(env(safe-area-inset-bottom,0px) + 57px));
    max-width:52vw;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  body.site-scrolled .topbar{
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }
}

/* Very short laptop screens: keep cue above the pager without covering the book. */
@media(max-height:720px) and (min-width:901px){
  .trust-scroll-cue{
    bottom:62px;
    min-height:32px;
  }
}


/* =====================================================================
   v2.8.2 — TRUE SITE FOOTER
   ===================================================================== */

.site-footer{
  position:relative;
  z-index:4;
  width:100%;
  border-top:1px solid rgba(229,183,113,.16);
  background:
    linear-gradient(180deg,
      color-mix(in srgb,var(--bk-theme-bg) 96%,black 4%),
      color-mix(in srgb,var(--bk-theme-bg) 88%,black 12%)
    );
  color:var(--bk-theme-muted);
}

.site-footer-inner{
  min-height:70px;
  width:min(1180px,calc(100% - 36px));
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  text-align:center;
  font:600 11px/1.4 Arial,sans-serif;
  letter-spacing:.02em;
}

.site-footer-heart{
  color:#d74b43;
  font-size:15px;
  line-height:1;
}

.site-footer a{
  color:var(--bk-theme-accent);
  font-weight:800;
  text-decoration:none;
}

.site-footer a:hover{
  text-decoration:underline;
}

@media(max-width:760px){
  .site-footer-inner{
    min-height:64px;
    width:calc(100% - 24px);
    padding-bottom:env(safe-area-inset-bottom,0px);
    font-size:10px;
  }
}


/* =====================================================================
   v2.8.3 — MOBILE POLISH / SAFE VIEWPORT
   Desktop >= 901px remains unchanged.
   ===================================================================== */

@media(max-width:900px){
  :root{
    --bk-mobile-safe-top:env(safe-area-inset-top,0px);
    --bk-mobile-safe-bottom:env(safe-area-inset-bottom,0px);
    --bk-mobile-header-h:58px;
    --bk-mobile-pager-h:48px;
  }

  html,
  body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
    -webkit-text-size-adjust:100%;
  }

  /* Critical: height now INCLUDES header padding. No 100dvh + padding overflow. */
  .app{
    box-sizing:border-box !important;
    width:100% !important;
    height:100dvh !important;
    min-height:100dvh !important;
    max-height:100dvh !important;
    padding:
      calc(var(--bk-mobile-header-h) + var(--bk-mobile-safe-top))
      0
      0 !important;
    overflow:hidden !important;
  }

  .topbar{
    box-sizing:border-box !important;
    position:absolute !important;
    z-index:1000 !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    height:calc(var(--bk-mobile-header-h) + var(--bk-mobile-safe-top)) !important;
    min-height:calc(var(--bk-mobile-header-h) + var(--bk-mobile-safe-top)) !important;
    padding:
      var(--bk-mobile-safe-top)
      max(7px,var(--bk-mobile-safe-right,env(safe-area-inset-right,0px)))
      0
      max(7px,var(--bk-mobile-safe-left,env(safe-area-inset-left,0px))) !important;
    gap:4px !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
  }

  .brand-mark,
  .brand-logo{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    min-height:42px !important;
    flex-basis:42px !important;
  }

  .top-actions{
    gap:3px !important;
  }

  .history-btn{
    height:34px !important;
    min-height:34px !important;
    max-width:74px !important;
    padding:0 7px !important;
    font-size:9px !important;
  }

  #searchBtn{
    width:34px !important;
    min-width:34px !important;
    height:34px !important;
    min-height:34px !important;
  }

  #searchBtn::before{
    font-size:18px !important;
  }

  .lang-btn{
    width:31px !important;
    min-width:31px !important;
    height:34px !important;
    min-height:34px !important;
    font-size:8px !important;
  }

  /* Stage uses exactly the remaining screen below the header. */
  .stage{
    box-sizing:border-box !important;
    width:100% !important;
    height:calc(100dvh - var(--bk-mobile-header-h) - var(--bk-mobile-safe-top)) !important;
    min-height:0 !important;
    padding:
      7px
      5px
      calc(150px + var(--bk-mobile-safe-bottom)) !important;
    place-items:stretch !important;
  }

  .book-shell{
    box-sizing:border-box !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    filter:none !important;
  }

  .page{
    border-radius:9px !important;
  }

  .page-content{
    padding:18px 11px 14px !important;
    overscroll-behavior-y:contain !important;
    -webkit-overflow-scrolling:touch;
  }

  .page-footer{
    margin:0 12px 8px !important;
  }

  /* Bottom controls get three distinct rows: no overlap. */
  .pager{
    position:absolute !important;
    z-index:130 !important;
    left:50% !important;
    right:auto !important;
    bottom:max(7px,var(--bk-mobile-safe-bottom)) !important;
    transform:translateX(-50%) !important;
    min-height:44px !important;
    padding:4px 6px !important;
    gap:5px !important;
  }

  .pager button{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
  }

  .page-count{
    min-width:62px !important;
    font-size:9px !important;
  }

  .menu-ribbon{
    position:absolute !important;
    z-index:132 !important;
    top:auto !important;
    left:7px !important;
    bottom:calc(57px + var(--bk-mobile-safe-bottom)) !important;
    width:calc(50% - 11px) !important;
    max-width:none !important;
    height:42px !important;
    padding:0 10px !important;
    border-radius:7px !important;
    justify-content:center !important;
    box-sizing:border-box !important;
  }

  .ribbon-copy strong{
    font-size:8px !important;
  }

  .ribbon-arrows i{
    font-size:13px !important;
  }

  .order-fab{
    position:absolute !important;
    z-index:132 !important;
    right:7px !important;
    left:auto !important;
    bottom:calc(57px + var(--bk-mobile-safe-bottom)) !important;
    width:calc(50% - 11px) !important;
    max-width:none !important;
    height:42px !important;
    padding:0 9px !important;
    justify-content:center !important;
    box-sizing:border-box !important;
    font-size:8px !important;
  }

  .order-fab b{
    min-width:20px !important;
    height:20px !important;
  }

  .order-fab #orderFabTotal{
    font-size:8px !important;
  }

  .trust-scroll-cue{
    position:absolute !important;
    z-index:131 !important;
    left:50% !important;
    bottom:calc(106px + var(--bk-mobile-safe-bottom)) !important;
    transform:translateX(-50%) !important;
    width:calc(100% - 14px) !important;
    max-width:none !important;
    min-height:34px !important;
    height:34px !important;
    justify-content:center !important;
    box-sizing:border-box !important;
    padding:0 10px !important;
    overflow:visible !important;
    text-overflow:clip !important;
    font-size:8px !important;
    letter-spacing:.06em !important;
  }

  /* Panels fit the safe mobile viewport. */
  .drawer{
    top:calc(var(--bk-mobile-header-h) + var(--bk-mobile-safe-top)) !important;
    bottom:0 !important;
    width:min(340px,94vw) !important;
    padding:17px 14px calc(18px + var(--bk-mobile-safe-bottom)) !important;
  }

  .scrim{
    inset:
      calc(var(--bk-mobile-header-h) + var(--bk-mobile-safe-top))
      0
      0
      0 !important;
  }

  .search-panel{
    top:calc(var(--bk-mobile-header-h) + var(--bk-mobile-safe-top) + 6px) !important;
    width:calc(100vw - 12px) !important;
    padding:7px !important;
  }

  .search-results{
    max-height:min(48dvh,370px) !important;
  }

  .order-drawer{
    width:100vw !important;
    max-width:100vw !important;
    height:100dvh !important;
    padding-bottom:var(--bk-mobile-safe-bottom) !important;
  }

  .order-head{
    padding:calc(12px + var(--bk-mobile-safe-top)) 13px 12px !important;
  }

  .order-items{
    padding:8px 13px !important;
  }

  .order-foot{
    padding:12px 13px calc(12px + var(--bk-mobile-safe-bottom)) !important;
  }

  /* Reviews section: clean one-column mobile layout. */
  .site-trust-section{
    min-height:auto !important;
    padding:
      40px
      10px
      44px !important;
  }

  .site-trust-inner{
    width:100% !important;
  }

  .trust-heading{
    margin-bottom:19px !important;
    padding:0 8px;
  }

  .trust-heading h2{
    font-size:clamp(38px,12vw,52px) !important;
  }

  .trust-heading p{
    max-width:330px;
    font-size:11px !important;
  }

  .review-platform-grid{
    grid-template-columns:1fr !important;
    gap:8px !important;
  }

  .review-platform-card{
    width:100% !important;
    min-height:0 !important;
    aspect-ratio:2.55/1 !important;
    border-radius:7px !important;
  }

  .review-platform-card img{
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center !important;
  }

  .location-card{
    grid-template-columns:44px minmax(0,1fr) !important;
    gap:10px !important;
    margin-top:10px !important;
    padding:13px !important;
  }

  .location-pin{
    width:42px !important;
    height:42px !important;
    font-size:22px !important;
  }

  .location-copy strong{
    font-size:clamp(22px,7.5vw,30px) !important;
  }

  .location-copy span{
    font-size:10px !important;
  }

  .navigate-btn{
    grid-column:1/-1 !important;
    width:100% !important;
    min-height:44px !important;
    box-sizing:border-box !important;
  }

  /* Mobile review modal behaves like a stable bottom sheet. */
  .review-modal{
    align-items:end !important;
    padding:0 !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }

  .review-modal-card{
    box-sizing:border-box !important;
    width:100% !important;
    max-width:none !important;
    max-height:92dvh !important;
    margin:0 !important;
    padding:
      27px
      15px
      calc(18px + var(--bk-mobile-safe-bottom)) !important;
    border-left:0 !important;
    border-right:0 !important;
    border-bottom:0 !important;
    border-radius:11px 11px 0 0 !important;
    overscroll-behavior:contain !important;
    -webkit-overflow-scrolling:touch;
  }

  .review-modal-close{
    top:8px !important;
    right:8px !important;
    width:36px !important;
    height:36px !important;
  }

  .review-modal-card h2{
    padding:0 22px;
    font-size:clamp(30px,9vw,42px) !important;
  }

  .review-stars{
    gap:0 !important;
    justify-content:space-between !important;
    width:min(100%,330px);
    margin:21px auto 4px !important;
  }

  .review-stars button{
    min-width:54px;
    min-height:54px;
    font-size:45px !important;
    touch-action:manipulation;
  }

  .review-private-form textarea{
    min-height:120px !important;
    font-size:16px !important; /* prevents iOS input zoom */
  }

  .review-private-form input{
    font-size:16px !important;
  }

  /* True footer: compact and safe-area aware. */
  .site-footer-inner{
    min-height:58px !important;
    width:calc(100% - 20px) !important;
    padding:
      4px
      0
      max(5px,var(--bk-mobile-safe-bottom)) !important;
    gap:5px !important;
    font-size:10px !important;
  }

  /* Header naturally leaves with the menu viewport; don't hide it on tiny scroll bounce. */
  body.site-scrolled .topbar{
    opacity:1 !important;
    visibility:visible !important;
  }
}

/* Small iPhones / narrow Android phones. */
@media(max-width:380px){
  :root{
    --bk-mobile-header-h:54px;
  }

  .brand-mark,
  .brand-logo{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
    flex-basis:38px !important;
  }

  .history-btn{
    max-width:64px !important;
    padding:0 6px !important;
    font-size:8px !important;
  }

  #searchBtn{
    width:31px !important;
    min-width:31px !important;
  }

  .lang-btn{
    width:29px !important;
    min-width:29px !important;
  }

  .stage{
    padding-left:4px !important;
    padding-right:4px !important;
  }

  .page-content{
    padding-left:9px !important;
    padding-right:9px !important;
  }

  .dish{
    grid-template-columns:76px minmax(0,1fr) !important;
  }

  .dish-line h3{
    font-size:14px !important;
  }

  .menu-ribbon,
  .order-fab{
    width:calc(50% - 9px) !important;
  }

  .review-stars button{
    min-width:48px;
    font-size:40px !important;
  }
}

/* Landscape phone: prioritize usable content height. */
@media(max-width:900px) and (orientation:landscape) and (max-height:520px){
  :root{
    --bk-mobile-header-h:48px;
  }

  .brand-mark,
  .brand-logo{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
    flex-basis:34px !important;
  }

  .history-btn,
  #searchBtn,
  .lang-btn{
    height:30px !important;
    min-height:30px !important;
  }

  .stage{
    padding-bottom:105px !important;
  }

  .trust-scroll-cue{
    display:none !important;
  }

  .menu-ribbon,
  .order-fab{
    bottom:calc(51px + var(--bk-mobile-safe-bottom)) !important;
    height:36px !important;
  }

  .pager{
    bottom:max(5px,var(--bk-mobile-safe-bottom)) !important;
  }
}


/* =====================================================================
   v2.8.4 — BILINGUAL TRUST SECTION + PUBLIC MAP
   ===================================================================== */

.public-map-block{
  margin-top:18px;
}

.public-map-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:10px;
}

.public-map-head>div{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.public-map-head span{
  color:var(--bk-theme-accent);
  font:800 8px/1 Arial,sans-serif;
  letter-spacing:.18em;
}

.public-map-head strong{
  color:var(--bk-theme-heading);
  font-family:'Izhitsa.kz','BK Izhitsa',Georgia,'Times New Roman',serif !important;
  font-size:clamp(26px,3vw,40px);
  line-height:1;
  font-weight:400;
}

.public-map-head a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 12px;
  border:1px solid rgba(229,183,113,.24);
  border-radius:7px;
  background:var(--bk-theme-surface);
  color:var(--bk-theme-text);
  text-decoration:none;
  font:800 9px/1 Arial,sans-serif;
  text-transform:uppercase;
  letter-spacing:.07em;
}

.public-map-frame{
  width:100%;
  height:420px;
  overflow:hidden;
  border:1px solid rgba(229,183,113,.20);
  border-radius:8px;
  background:#1a0d08;
  box-shadow:0 14px 32px rgba(0,0,0,.22);
}

.public-map-frame iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
}

/* Mobile: the actual map reaches the full viewport width. */
@media(max-width:900px){
  .public-map-block{
    margin-top:14px !important;
  }

  .public-map-head{
    align-items:stretch !important;
    flex-direction:column !important;
    gap:9px !important;
    padding:0 2px;
  }

  .public-map-head strong{
    font-size:clamp(28px,9vw,38px) !important;
  }

  .public-map-head a{
    width:100% !important;
    min-height:42px !important;
    box-sizing:border-box !important;
  }

  .public-map-frame{
    width:calc(100% + 20px) !important;
    height:330px !important;
    margin-left:-10px !important;
    border-left:0 !important;
    border-right:0 !important;
    border-radius:0 !important;
  }
}

@media(max-width:390px){
  .public-map-frame{
    height:300px !important;
  }
}


/* =====================================================================
   v2.8.5 — REVIEW CARD IMAGE FIT
   Keep the full artwork visible inside each card.
   ===================================================================== */

.review-platform-card{
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

.review-platform-card img{
  display:block;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  padding:18px !important;
  box-sizing:border-box !important;
  background:transparent !important;
}

@media(max-width:900px){
  .review-platform-card img{
    padding:12px !important;
  }
}

@media(min-width:901px){
  .review-platform-grid{
    align-items:stretch;
  }
  .review-platform-card{
    min-height:214px;
  }
}


/* =====================================================================
   v2.8.6 — AMINOS AI BUTTON / MOBILE AI MODE
   ===================================================================== */

.bk-ai-btn{
  position:relative;
  gap:5px;
  min-width:58px;
  color:var(--bk-theme-text) !important;
}

.bk-ai-spark{
  color:var(--bk-theme-accent);
  font-size:13px;
  line-height:1;
}

.bk-ai-label{
  font:800 10px/1 Arial,sans-serif;
  letter-spacing:.08em;
}

.bk-ai-btn.active{
  border-color:var(--bk-theme-accent) !important;
  background:color-mix(in srgb,var(--bk-theme-accent) 18%,var(--bk-theme-surface)) !important;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--bk-theme-accent) 18%,transparent);
}

.bk-ai-btn.active .bk-ai-spark{
  animation:bkAiPulse 1.4s ease-in-out infinite;
}

.bk-ai-btn.is-loading .bk-ai-spark{
  animation:bkAiSpin .85s linear infinite;
}

.bk-ai-btn.has-error{
  border-color:#b84c43 !important;
}

@keyframes bkAiPulse{
  0%,100%{opacity:.55;transform:scale(.88)}
  50%{opacity:1;transform:scale(1.12)}
}

@keyframes bkAiSpin{
  to{transform:rotate(360deg)}
}

/* Roots discovered after Aminos boots can be hidden again by our own AI toggle. */
.bk-ai-widget-hidden{
  display:none !important;
}

/* Keep third-party UI above the site when AI mode is active. */
body.bk-ai-active .bk-ai-widget-root{
  z-index:15000 !important;
}

/* Mobile solution:
   when AI mode is on, free the lower screen completely for the chatbot. */
@media(max-width:900px){
  .bk-ai-btn{
    width:34px !important;
    min-width:34px !important;
    max-width:34px !important;
    height:34px !important;
    min-height:34px !important;
    padding:0 !important;
    gap:0 !important;
  }

  .bk-ai-label{
    display:none !important;
  }

  .bk-ai-spark{
    font-size:16px !important;
  }

  body.bk-ai-active .menu-ribbon,
  body.bk-ai-active .order-fab,
  body.bk-ai-active .pager,
  body.bk-ai-active .trust-scroll-cue{
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }

  /* Reserve the lower screen for Aminos instead of fighting its own fixed position. */
  body.bk-ai-active .bk-ai-widget-root{
    max-width:100vw !important;
    max-height:100dvh !important;
  }

  body.bk-ai-active .bk-ai-widget-root iframe{
    max-width:100vw !important;
    max-height:calc(100dvh - var(--bk-mobile-safe-top)) !important;
  }

  /* AI remains reachable from the top bar even after the chatbot has been closed
     using its own close control; tapping AI again restores Categories/Order/Pager. */
  body.bk-ai-active .topbar{
    z-index:16000 !important;
  }
}

@media(max-width:380px){
  .bk-ai-btn{
    width:30px !important;
    min-width:30px !important;
    max-width:30px !important;
  }

  .bk-ai-spark{
    font-size:14px !important;
  }

  .top-actions{
    gap:2px !important;
  }
}

/* Very narrow phones: preserve all controls by making History slightly tighter. */
@media(max-width:350px){
  .history-btn{
    max-width:54px !important;
    padding-left:5px !important;
    padding-right:5px !important;
  }

  .lang-btn{
    width:27px !important;
    min-width:27px !important;
  }
}


/* =====================================================================
   v2.8.7 — FULL-HEIGHT CATEGORY DRAWER
   ===================================================================== */

/* The drawer is a real overlay from the very top of the viewport. */
.drawer{
  position:fixed !important;
  z-index:17020 !important;
  top:0 !important;
  bottom:0 !important;
  left:0 !important;
  height:100dvh !important;
  max-height:100dvh !important;
  box-sizing:border-box !important;
  padding:
    max(22px,env(safe-area-inset-top,0px))
    22px
    max(22px,env(safe-area-inset-bottom,0px))
    22px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior:contain !important;
  scrollbar-width:none !important;
  -ms-overflow-style:none !important;
}

.drawer::-webkit-scrollbar{
  width:0 !important;
  height:0 !important;
  display:none !important;
}

/* Scrim also starts at the real viewport top; no exposed header strip. */
.scrim{
  position:fixed !important;
  z-index:17010 !important;
  inset:0 !important;
}

/* Freeze the underlying page while Categories is open. */
body.nav-open{
  overflow:hidden !important;
}

/* Brand belongs to the drawer itself now, so covering the header feels intentional. */
.drawer-brand{
  display:flex;
  align-items:center;
  gap:11px;
  margin:0 0 18px;
  padding:0 0 16px;
  border-bottom:1px solid rgba(225,183,122,.16);
}

.drawer-brand-logo{
  width:52px;
  height:52px;
  min-width:52px;
  overflow:hidden;
  border-radius:50%;
  border:1px solid rgba(225,183,122,.24);
  background:var(--bk-theme-surface);
  cursor:pointer;
}

.drawer-brand-logo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.drawer-brand-copy{
  display:flex;
  flex-direction:column;
  min-width:0;
  gap:3px;
}

.drawer-brand-copy strong{
  color:var(--bk-theme-heading);
  font-family:'Izhitsa.kz','BK Izhitsa',Georgia,'Times New Roman',serif !important;
  font-size:20px;
  line-height:1.05;
  font-weight:400;
}

.drawer-brand-copy small{
  color:var(--bk-theme-muted);
  font:600 9px/1.35 Arial,sans-serif;
}

/* Keep Menu/X aligned and visually separate from the brand. */
.drawer-head{
  position:relative !important;
  z-index:2 !important;
  align-items:center !important;
}

.drawer-head button{
  flex:0 0 auto !important;
}

/* Search remains below the header because it is not a full-screen navigation panel. */
.search-panel{
  z-index:16990 !important;
}

/* Full-screen mobile Categories. */
@media(max-width:900px){
  .drawer{
    width:100vw !important;
    max-width:100vw !important;
    height:100dvh !important;
    max-height:100dvh !important;
    top:0 !important;
    bottom:0 !important;
    border-right:0 !important;
    padding:
      calc(max(14px,env(safe-area-inset-top,0px)) + 6px)
      14px
      calc(max(16px,env(safe-area-inset-bottom,0px)) + 4px)
      14px !important;
  }

  .scrim{
    inset:0 !important;
  }

  .drawer-brand{
    margin-bottom:14px !important;
    padding-bottom:13px !important;
  }

  .drawer-brand-logo{
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
  }

  .drawer-brand-copy strong{
    font-size:18px !important;
  }

  .drawer-head{
    padding-bottom:12px !important;
  }

  .drawer-head strong{
    font-size:30px !important;
  }

  .drawer-head button{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
  }

  /* While the drawer is open, it owns the whole screen. */
  body.nav-open .topbar,
  body.nav-open .pager,
  body.nav-open .order-fab,
  body.nav-open .trust-scroll-cue{
    pointer-events:none !important;
  }
}

@media(max-width:380px){
  .drawer{
    padding-left:12px !important;
    padding-right:12px !important;
  }

  .drawer-brand-logo{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
  }

  .drawer-brand-copy strong{
    font-size:17px !important;
  }

  .drawer-head strong{
    font-size:28px !important;
  }
}


/* =====================================================================
   v2.8.8 — VIEWPORT-FIT COVER + DASHBOARD FONT MAPPING
   ===================================================================== */

.brand-text strong,
.page-heading h2,
.cover-inner h1,
.contact-inner h2,
.drawer-head strong,
.drawer-brand-copy strong,
.history-archive-head strong,
.trust-heading h2,
.location-copy strong,
.public-map-head strong,
.review-modal-card h2,
.waiter-top h2{
  font-family:var(--bk-font-heading) !important;
  font-weight:400 !important;
}
.dish-line h3{
  font-family:var(--bk-font-item) !important;
  font-weight:400 !important;
}

.page--cover .page-content{
  box-sizing:border-box !important;
  height:100% !important;
  min-height:0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  scrollbar-width:none !important;
  -ms-overflow-style:none !important;
}
.page--cover .page-content::-webkit-scrollbar{display:none !important}

.page--cover .cover-inner{
  box-sizing:border-box !important;
  min-height:100% !important;
  height:auto !important;
  padding:clamp(8px,2.2dvh,22px) clamp(12px,2.3vw,26px) !important;
  justify-content:center !important;
}
.page--cover .cover-logo{
  width:clamp(56px,min(9.6vw,13dvh),106px) !important;
  height:clamp(56px,min(9.6vw,13dvh),106px) !important;
  margin-bottom:clamp(5px,1.35dvh,13px) !important;
  flex:0 0 auto !important;
}
.page--cover .cover-eyebrow{
  font-size:clamp(8px,min(1vw,1.5dvh),11px) !important;
  line-height:1.08 !important;
  letter-spacing:clamp(.13em,.20vw,.21em) !important;
}
.page--cover .cover-inner h1{
  max-width:min(780px,94%) !important;
  margin:clamp(4px,1dvh,9px) 0 clamp(2px,.65dvh,6px) !important;
  font-size:clamp(36px,min(5.2vw,8.6dvh),78px) !important;
  line-height:.88 !important;
}
.page--cover .ornament{
  width:min(205px,52%) !important;
  margin:clamp(0px,.35dvh,3px) auto !important;
}
.page--cover .cover-subtitle{
  margin:clamp(4px,.9dvh,9px) 0 0 !important;
  font-family:var(--bk-font-heading) !important;
  font-size:clamp(17px,min(2.1vw,3.9dvh),29px) !important;
  line-height:1.05 !important;
}
.page--cover .cover-note{
  max-width:min(720px,95%) !important;
  margin:clamp(6px,1.2dvh,12px) 0 0 !important;
  font-size:clamp(7px,min(.82vw,1.4dvh),10px) !important;
  line-height:1.32 !important;
  letter-spacing:clamp(.08em,.13vw,.14em) !important;
}
.page--cover .cover-actions{
  margin-top:clamp(7px,1.55dvh,16px) !important;
  gap:8px !important;
}
.page--cover .primary-btn,
.page--cover .secondary-btn{
  min-height:clamp(35px,5.8dvh,45px) !important;
  padding:0 clamp(12px,1.55vw,18px) !important;
  font-size:clamp(8px,min(.85vw,1.4dvh),11px) !important;
}

@media(min-width:901px) and (max-height:700px){
  .page--cover .cover-inner{padding:5px 18px !important}
  .page--cover .cover-logo{width:60px !important;height:60px !important;margin-bottom:4px !important}
  .page--cover .cover-inner h1{font-size:clamp(36px,7.6dvh,54px) !important;margin:4px 0 2px !important}
  .page--cover .cover-subtitle{font-size:18px !important;margin-top:3px !important}
  .page--cover .cover-note{font-size:7px !important;margin-top:4px !important}
  .page--cover .cover-actions{margin-top:6px !important}
  .page--cover .primary-btn,.page--cover .secondary-btn{min-height:34px !important;font-size:8px !important}
}
@media(min-width:901px) and (max-height:610px){
  .page--cover .cover-logo{width:48px !important;height:48px !important}
  .page--cover .cover-eyebrow{font-size:7px !important}
  .page--cover .cover-inner h1{font-size:clamp(32px,7.4dvh,44px) !important}
  .page--cover .ornament{width:130px !important}
  .page--cover .cover-subtitle{font-size:15px !important}
  .page--cover .cover-note{font-size:6px !important}
  .page--cover .primary-btn,.page--cover .secondary-btn{min-height:31px !important}
}

@media(max-width:900px){
  .page--cover .cover-inner{padding:clamp(5px,1.25dvh,10px) 9px !important}
  .page--cover .cover-logo{width:clamp(48px,8.5dvh,70px) !important;height:clamp(48px,8.5dvh,70px) !important;margin-bottom:4px !important}
  .page--cover .cover-eyebrow{font-size:clamp(7px,1.15dvh,9px) !important}
  .page--cover .cover-inner h1{max-width:98% !important;font-size:clamp(32px,min(10.6vw,6.8dvh),52px) !important;margin:4px 0 2px !important}
  .page--cover .ornament{width:min(145px,45%) !important}
  .page--cover .cover-subtitle{font-size:clamp(16px,min(5vw,3.1dvh),22px) !important;margin-top:3px !important}
  .page--cover .cover-note{max-width:97% !important;margin-top:5px !important;font-size:clamp(7px,1.05dvh,8px) !important}
  .page--cover .cover-actions{width:min(100%,400px) !important;margin-top:6px !important}
  .page--cover .primary-btn,.page--cover .secondary-btn{min-height:34px !important;font-size:8px !important}
}
@media(max-width:390px){
  .page--cover .cover-actions{grid-template-columns:1fr 1fr !important}
}
@media(max-width:900px) and (max-height:690px){
  .page--cover .cover-logo{width:42px !important;height:42px !important}
  .page--cover .cover-inner h1{font-size:clamp(28px,6.5dvh,40px) !important}
  .page--cover .cover-subtitle{font-size:14px !important}
  .page--cover .cover-note{font-size:6px !important;margin-top:3px !important}
  .page--cover .cover-actions{margin-top:4px !important}
  .page--cover .primary-btn,.page--cover .secondary-btn{min-height:30px !important}
}
@media(max-width:900px) and (orientation:landscape) and (max-height:520px){
  .page--cover .cover-inner{padding:2px 7px !important}
  .page--cover .cover-logo{width:32px !important;height:32px !important;margin-bottom:1px !important}
  .page--cover .cover-eyebrow{font-size:6px !important}
  .page--cover .cover-inner h1{font-size:clamp(27px,8.2dvh,35px) !important;margin:1px 0 !important}
  .page--cover .ornament{width:100px !important}
  .page--cover .cover-subtitle{font-size:12px !important;margin-top:1px !important}
  .page--cover .cover-note{font-size:5px !important;margin-top:1px !important}
  .page--cover .cover-actions{margin-top:3px !important}
  .page--cover .primary-btn,.page--cover .secondary-btn{min-height:27px !important;font-size:7px !important}
}


/* ===== bundled mobile.css v2.8.9 ===== */
/* Bai Kotse Mobile v2.8.9 — authoritative mobile layer only */
@media(max-width:900px){
  :root{
    --bk-m-safe-top:env(safe-area-inset-top,0px);
    --bk-m-safe-right:env(safe-area-inset-right,0px);
    --bk-m-safe-bottom:env(safe-area-inset-bottom,0px);
    --bk-m-safe-left:env(safe-area-inset-left,0px);
    --bk-m-head:56px;
    --bk-m-bottom-row:50px;
    --bk-m-cue-row:34px;
  }

  *,*::before,*::after{box-sizing:border-box}
  html{width:100%;max-width:100%;overflow-x:hidden!important;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
  body{width:100%;max-width:100%;min-height:100%;margin:0!important;overflow-x:hidden!important}
  button,a,input,textarea{touch-action:manipulation}

  /* Stable first viewport: header + stage, no grid conflicts from older mobile rules. */
  .app{
    position:relative!important;
    display:block!important;
    isolation:isolate;
    width:100%!important;
    height:100dvh!important;
    min-height:100svh!important;
    max-height:100dvh!important;
    padding:0!important;
    overflow:hidden!important;
  }

  .topbar{
    position:absolute!important;
    z-index:9000!important;
    inset:0 0 auto 0!important;
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    height:calc(var(--bk-m-head) + var(--bk-m-safe-top))!important;
    min-height:calc(var(--bk-m-head) + var(--bk-m-safe-top))!important;
    padding:var(--bk-m-safe-top) max(6px,var(--bk-m-safe-right)) 0 max(6px,var(--bk-m-safe-left))!important;
    gap:4px!important;
    background:color-mix(in srgb,var(--bk-theme-bg) 98%,black 2%)!important;
    border-bottom:1px solid rgba(229,183,113,.14)!important;
    box-shadow:0 4px 14px rgba(0,0,0,.10)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }
  .brand{display:flex!important;align-items:center!important;min-width:0!important;flex:0 0 auto!important}
  .brand-text{display:none!important}
  .brand-mark,.brand-logo{
    width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;flex:0 0 40px!important;
    border-radius:50%!important;
  }
  .top-actions{
    display:flex!important;align-items:center!important;justify-content:flex-end!important;
    flex:1 1 auto!important;min-width:0!important;width:auto!important;margin-left:auto!important;gap:3px!important;
    overflow:visible!important;opacity:1!important;visibility:visible!important;
  }
  .top-actions>*{flex:0 0 auto!important}
  .icon-btn,.lang-btn,.bk-ai-btn{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    height:34px!important;min-height:34px!important;border-radius:7px!important;white-space:nowrap!important;
    opacity:1!important;visibility:visible!important;
  }
  .history-btn{max-width:66px!important;min-width:55px!important;padding:0 7px!important;font-size:9px!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .bk-ai-btn{width:42px!important;min-width:42px!important;max-width:42px!important;padding:0 5px!important;gap:3px!important}
  .bk-ai-btn .bk-ai-spark{display:inline!important;font-size:11px!important}
  .bk-ai-btn .bk-ai-label{display:inline!important;font-size:8px!important;line-height:1!important;letter-spacing:.04em!important}
  #searchBtn{width:34px!important;min-width:34px!important;max-width:34px!important;padding:0!important;font-size:0!important}
  #searchBtn::before{content:'⌕'!important;font-size:19px!important;line-height:1!important}
  .lang-btn{width:29px!important;min-width:29px!important;max-width:29px!important;padding:0!important;font-size:8px!important}
  .progress{position:absolute!important;left:0!important;right:0!important;bottom:0!important;height:2px!important}

  /* Stage owns only the area below header; controls have reserved space. */
  .stage{
    position:absolute!important;
    z-index:20!important;
    inset:calc(var(--bk-m-head) + var(--bk-m-safe-top)) 0 0 0!important;
    display:block!important;
    width:auto!important;height:auto!important;min-height:0!important;
    padding:6px 5px calc(140px + var(--bk-m-safe-bottom))!important;
    perspective:none!important;
    overflow:hidden!important;
  }
  .book-shell{
    position:relative!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;
    margin:0!important;filter:none!important;perspective:none!important;box-shadow:none!important;
  }
  .book-shell::before,.book-shell::after{display:none!important}
  .page{inset:0!important;border-radius:8px!important;box-shadow:0 8px 18px rgba(0,0,0,.12)!important;transform:none!important}
  .page.active{display:flex!important;visibility:visible!important;opacity:1!important}
  .page:not(.active){pointer-events:none!important}
  .page-content{
    min-height:0!important;padding:15px 10px 12px!important;overflow-y:auto!important;overflow-x:hidden!important;
    scrollbar-width:none!important;-ms-overflow-style:none!important;-webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;touch-action:pan-y!important;
  }
  .page-content::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
  .page-footer{margin:0 10px 7px!important;padding-top:7px!important;min-height:20px!important}
  .paper-grain{opacity:.18!important}
  .page-corner,.page-turn-fold{display:none!important}

  /* Cover fits normal phones; hidden scroll remains fallback for extreme heights. */
  .page--cover .page-content{padding:6px 8px 8px!important}
  .page--cover .cover-inner{min-height:100%!important;padding:3px 7px!important;justify-content:center!important}
  .page--cover .cover-logo{width:clamp(44px,7.8dvh,64px)!important;height:clamp(44px,7.8dvh,64px)!important;margin-bottom:3px!important}
  .page--cover .cover-eyebrow{font-size:clamp(7px,1.05dvh,8px)!important}
  .page--cover .cover-inner h1{max-width:98%!important;font-size:clamp(29px,min(10vw,6.2dvh),48px)!important;line-height:.9!important;margin:3px 0 1px!important}
  .page--cover .ornament{width:min(132px,43%)!important;margin:0 auto!important}
  .page--cover .cover-subtitle{font-size:clamp(15px,min(4.8vw,2.9dvh),21px)!important;margin-top:2px!important}
  .page--cover .cover-note{max-width:98%!important;font-size:clamp(6px,1dvh,8px)!important;line-height:1.28!important;margin-top:4px!important}
  .page--cover .cover-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:min(100%,390px)!important;gap:6px!important;margin-top:5px!important}
  .page--cover .primary-btn,.page--cover .secondary-btn{min-height:32px!important;padding:0 8px!important;font-size:8px!important}

  /* Menu content */
  .page-heading{margin-bottom:12px!important}
  .page-heading h2{font-size:clamp(28px,9vw,40px)!important;line-height:.94!important}
  .page-heading p{font-size:11px!important;line-height:1.35!important}
  .dish-list{grid-template-columns:1fr!important;gap:7px!important}
  .dish{grid-template-columns:78px minmax(0,1fr)!important;min-height:88px!important;border-radius:7px!important}
  .dish-thumb{min-height:88px!important}
  .dish-copy{padding:8px!important;min-width:0!important}
  .dish-line{gap:7px!important}
  .dish-line h3{font-size:14px!important;line-height:1.05!important;overflow-wrap:anywhere!important}
  .dish-price{font-size:12px!important}
  .dish-desc{font-size:8px!important;line-height:1.35!important;-webkit-line-clamp:3!important}
  .add-to-order{min-height:28px!important;margin-top:6px!important;font-size:8px!important}

  /* Bottom controls: cue / categories+cart / pager never overlap. */
  .pager{
    position:absolute!important;z-index:220!important;left:50%!important;right:auto!important;
    bottom:max(5px,var(--bk-m-safe-bottom))!important;transform:translateX(-50%)!important;
    display:flex!important;min-height:42px!important;padding:3px 5px!important;gap:4px!important;
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:0 5px 12px rgba(0,0,0,.12)!important;
  }
  .pager button{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important}
  .page-count{min-width:58px!important;font-size:8px!important}
  .menu-ribbon{
    position:absolute!important;z-index:230!important;left:6px!important;top:auto!important;
    bottom:calc(52px + var(--bk-m-safe-bottom))!important;transform:none!important;
    width:calc(50% - 9px)!important;max-width:none!important;height:40px!important;
    padding:0 8px!important;border:1px solid rgba(229,183,113,.20)!important;border-radius:7px!important;
    flex-direction:row!important;gap:6px!important;justify-content:center!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  }
  .ribbon-copy{writing-mode:horizontal-tb!important;transform:none!important;gap:4px!important}
  .ribbon-copy small{display:none!important}.ribbon-copy strong{font-size:8px!important;white-space:nowrap!important}.ribbon-arrows i{font-size:12px!important}
  .order-fab{
    position:fixed!important;z-index:230!important;right:6px!important;left:auto!important;
    bottom:calc(52px + var(--bk-m-safe-bottom))!important;width:calc(50% - 9px)!important;max-width:none!important;height:40px!important;
    padding:0 7px!important;justify-content:center!important;gap:5px!important;border-radius:7px!important;
    font-size:8px!important;white-space:nowrap!important;overflow:hidden!important;box-shadow:0 6px 14px rgba(0,0,0,.14)!important;
  }
  .order-fab span:first-child{overflow:hidden!important;text-overflow:ellipsis!important}.order-fab b{min-width:19px!important;height:19px!important;font-size:8px!important}.order-fab #orderFabTotal{font-size:8px!important}
  .trust-scroll-cue{
    position:absolute!important;z-index:225!important;left:50%!important;right:auto!important;
    bottom:calc(98px + var(--bk-m-safe-bottom))!important;transform:translateX(-50%)!important;
    width:calc(100% - 12px)!important;max-width:none!important;height:31px!important;min-height:31px!important;
    padding:0 8px!important;justify-content:center!important;font-size:7px!important;letter-spacing:.05em!important;
    overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  }

  /* Overlay stacking. Search must sit ABOVE scrim; drawer above both. */
  .scrim{position:fixed!important;z-index:16000!important;inset:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:rgba(13,7,4,.60)!important}
  .search-panel{
    position:fixed!important;z-index:16020!important;top:calc(var(--bk-m-head) + var(--bk-m-safe-top) + 6px)!important;left:6px!important;right:6px!important;
    width:auto!important;max-width:none!important;padding:7px!important;transform:translateY(-6px)!important;border-radius:8px!important;
    box-shadow:0 14px 34px rgba(0,0,0,.28)!important;
  }
  .search-panel.open{transform:none!important}.search-input{height:44px!important;min-height:44px!important;font-size:16px!important}.search-results{max-height:min(52dvh,390px)!important}
  .drawer{
    position:fixed!important;z-index:17020!important;inset:0!important;width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;
    padding:calc(max(12px,var(--bk-m-safe-top)) + 5px) 12px calc(max(14px,var(--bk-m-safe-bottom)) + 4px)!important;
    border:0!important;border-radius:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;
    scrollbar-width:none!important;-ms-overflow-style:none!important;box-shadow:none!important;transition:transform .16s ease-out!important;
  }
  .drawer.open{transform:none!important}
  .drawer::-webkit-scrollbar{display:none!important}.drawer-brand{margin-bottom:10px!important;padding-bottom:10px!important}.drawer-brand-logo{width:42px!important;height:42px!important;min-width:42px!important}.drawer-brand-copy strong{font-size:17px!important}.drawer-head{padding-bottom:9px!important}.drawer-head strong{font-size:27px!important}.drawer-head button{width:38px!important;height:38px!important}.drawer-history-card{margin:9px 0!important;padding:10px!important}.toc{gap:2px!important}.toc button{min-height:40px!important}.drawer-note{margin-top:12px!important;padding-top:10px!important}
  body.nav-open{overflow:hidden!important}

  /* Order and waiter: true mobile panels. */
  .order-drawer{position:fixed!important;z-index:18020!important;inset:0 0 0 auto!important;width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;border:0!important}
  .order-head{padding:calc(10px + var(--bk-m-safe-top)) 12px 10px!important}.order-head strong{font-size:17px!important}.order-items{padding:7px 12px!important}.order-line{grid-template-columns:48px minmax(0,1fr) auto!important;gap:8px!important;padding:8px 0!important}.order-line img{width:48px!important;height:46px!important}.order-foot{padding:10px 12px calc(10px + var(--bk-m-safe-bottom))!important}.order-actions{grid-template-columns:1fr 1fr!important}
  body.order-open{overflow:hidden!important}
  .waiter-modal{z-index:19020!important;padding:0!important;background:var(--bk-theme-bg)!important}.waiter-card{width:100%!important;min-height:100dvh!important;margin:0!important;padding:calc(14px + var(--bk-m-safe-top)) 12px calc(14px + var(--bk-m-safe-bottom))!important;border:0!important}.waiter-top h2{font-size:25px!important}.waiter-row{font-size:14px!important}.waiter-grand strong{font-size:25px!important}

  /* History */
  .history-intro-grid{grid-template-columns:1fr!important;gap:10px!important}.history-hero-image{max-height:44dvh!important}.story-copy{padding:12px!important}.story-paragraph{font-size:12px!important}.story-quote{font-size:18px!important}.history-masonry{columns:2!important;column-gap:6px!important}.history-archive-photo{margin-bottom:6px!important}.history-lightbox{z-index:19040!important;padding:8px!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.history-lightbox-figure{max-width:96vw!important}.history-lightbox-figure img{max-height:77dvh!important}.history-lightbox-prev{left:4px!important}.history-lightbox-next{right:4px!important}

  /* Reviews / location / map: one column, edge-to-edge map. */
  .site-trust-section{
    min-height:auto!important;padding:38px 10px 38px!important;content-visibility:auto;contain-intrinsic-size:900px;
    box-shadow:none!important;background-attachment:scroll!important;
  }
  .site-trust-inner{width:100%!important}.trust-heading{margin-bottom:16px!important;padding:0 5px!important}.trust-heading h2{font-size:clamp(34px,11vw,48px)!important}.trust-heading p{font-size:11px!important}
  .review-platform-grid{grid-template-columns:1fr!important;gap:7px!important}.review-platform-card{width:100%!important;min-height:0!important;aspect-ratio:2.45/1!important;border-radius:7px!important;box-shadow:none!important}.review-platform-card img{width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;object-fit:contain!important;padding:10px!important}
  .location-card{grid-template-columns:40px minmax(0,1fr)!important;gap:9px!important;margin-top:10px!important;padding:11px!important}.location-pin{width:40px!important;height:40px!important}.location-copy strong{font-size:clamp(21px,7vw,28px)!important}.navigate-btn{grid-column:1/-1!important;width:100%!important;min-height:42px!important}
  .public-map-head{flex-direction:column!important;align-items:stretch!important;gap:8px!important}.public-map-head strong{font-size:clamp(26px,8vw,36px)!important}.public-map-head a{width:100%!important;min-height:42px!important}
  .public-map-frame{width:calc(100% + 20px)!important;height:min(340px,45dvh)!important;margin-left:-10px!important;border-left:0!important;border-right:0!important;border-radius:0!important;box-shadow:none!important}.public-map-frame iframe{width:100%!important;height:100%!important}
  .site-footer{content-visibility:auto;contain-intrinsic-size:64px}.site-footer-inner{min-height:58px!important;width:calc(100% - 18px)!important;padding-bottom:max(4px,var(--bk-m-safe-bottom))!important;font-size:10px!important}

  /* Review dialog bottom sheet */
  .review-modal{z-index:19050!important;align-items:end!important;padding:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.review-modal-card{width:100%!important;max-width:none!important;max-height:91dvh!important;margin:0!important;padding:25px 14px calc(16px + var(--bk-m-safe-bottom))!important;border-left:0!important;border-right:0!important;border-bottom:0!important;border-radius:10px 10px 0 0!important}.review-modal-card h2{font-size:clamp(29px,9vw,40px)!important}.review-stars{width:min(100%,325px)!important;gap:0!important;justify-content:space-between!important}.review-stars button{min-width:50px!important;min-height:50px!important;font-size:41px!important}.review-private-form textarea,.review-private-form input{font-size:16px!important}

  /* AI mode. AI button stays visible with text; site controls free the widget area. */
  body.bk-ai-active .menu-ribbon,body.bk-ai-active .order-fab,body.bk-ai-active .pager,body.bk-ai-active .trust-scroll-cue{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
  body.bk-ai-active .stage{pointer-events:none!important}
  body.bk-ai-active .bk-ai-widget-root{z-index:20000!important;max-width:100vw!important;max-height:100dvh!important}
  body.bk-ai-active .bk-ai-widget-root iframe{max-width:100vw!important;max-height:calc(100dvh - var(--bk-m-safe-top))!important}
  body.bk-ai-active .topbar{z-index:20020!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  body.bk-ai-active .bk-ai-btn{pointer-events:auto!important}

  /* When the document moves to Reviews, fixed cart disappears; header naturally belongs to .app. */
  body.site-scrolled .order-fab,body.trust-section-visible .order-fab{opacity:0!important;visibility:hidden!important;pointer-events:none!important}

  /* Mobile performance: avoid decorative GPU work. */
  .topbar,.pager,.menu-ribbon,.review-modal,.history-lightbox{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .book-shell,.page,.review-platform-card,.public-map-frame{filter:none!important}
  .site-backdrop{background-attachment:scroll!important}
}

@media(max-width:360px){
  :root{--bk-m-head:54px}
  .brand-mark,.brand-logo{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;flex-basis:36px!important}
  .topbar{gap:2px!important;padding-left:max(4px,var(--bk-m-safe-left))!important;padding-right:max(4px,var(--bk-m-safe-right))!important}
  .top-actions{gap:2px!important}.history-btn{min-width:50px!important;max-width:57px!important;padding:0 5px!important;font-size:8px!important}.bk-ai-btn{width:39px!important;min-width:39px!important;max-width:39px!important}.lang-btn{width:27px!important;min-width:27px!important;max-width:27px!important}#searchBtn{width:31px!important;min-width:31px!important;max-width:31px!important}
  .stage{padding-left:4px!important;padding-right:4px!important}.dish{grid-template-columns:72px minmax(0,1fr)!important}.dish-line h3{font-size:13px!important}
}

@media(max-width:900px) and (orientation:landscape) and (max-height:520px){
  :root{--bk-m-head:46px}
  .brand-mark,.brand-logo{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;flex-basis:32px!important}.icon-btn,.lang-btn,.bk-ai-btn{height:30px!important;min-height:30px!important}.history-btn{min-width:50px!important}.stage{padding-top:3px!important;padding-bottom:94px!important}.trust-scroll-cue{display:none!important}.menu-ribbon,.order-fab{bottom:calc(47px + var(--bk-m-safe-bottom))!important;height:35px!important}.pager{bottom:max(4px,var(--bk-m-safe-bottom))!important}.page--cover .cover-logo{width:30px!important;height:30px!important}.page--cover .cover-inner h1{font-size:clamp(26px,8dvh,34px)!important}.page--cover .cover-subtitle{font-size:12px!important}.page--cover .cover-note{font-size:5px!important}.page--cover .primary-btn,.page--cover .secondary-btn{min-height:26px!important}
}


/* =====================================================================
   v2.9.0 — MOBILE HARD FIX
   The mobile layer is bundled into menu.css to avoid stale/missed mobile.css.
   ===================================================================== */

/* This credit belongs only in the true site footer. */
.page-footer .graycape-credit{display:none!important}

@media(max-width:900px){
  html{
    height:auto!important;
    min-height:100%!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
  }
  body{
    height:auto!important;
    min-height:100svh!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    touch-action:pan-y!important;
  }
  body:not(.nav-open):not(.order-open):not(.gallery-open):not(.review-modal-open){
    overflow-y:auto!important;
  }

  /* First screen is one real mobile viewport. The sections after it remain in document flow. */
  .app{
    position:relative!important;
    display:block!important;
    width:100%!important;
    height:100svh!important;
    min-height:100svh!important;
    max-height:100svh!important;
    overflow:hidden!important;
  }

  /* Header must always exist visually on mobile; AI stays reachable. */
  .topbar{
    display:flex!important;
    position:absolute!important;
    top:0!important;
    left:0!important;
    right:0!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    pointer-events:auto!important;
  }
  .top-actions,
  #historyBtn,
  #bkAiBtn,
  #searchBtn,
  #bgBtn,
  #enBtn{
    display:flex!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  #bkAiBtn{
    flex:0 0 42px!important;
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
  }
  #bkAiBtn .bk-ai-label{display:inline!important}

  .stage{
    position:absolute!important;
    top:calc(var(--bk-m-head,56px) + var(--bk-m-safe-top,env(safe-area-inset-top,0px)))!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:auto!important;
    height:auto!important;
    overflow:hidden!important;
    touch-action:pan-y!important;
  }
  .book-shell,
  .page,
  .page-content{
    min-height:0!important;
  }
  .page-content{
    touch-action:pan-y!important;
    overscroll-behavior-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }

  /* Cover normally fits without scrolling; hidden scroll remains available if text grows. */
  .page--cover .page-content{
    overflow-y:auto!important;
    scrollbar-width:none!important;
  }
  .page--cover .page-content::-webkit-scrollbar{display:none!important}

  /* Keep all first-screen controls visible and separate. */
  .trust-scroll-cue{
    display:inline-flex!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  .menu-ribbon,
  .order-fab,
  .pager{
    display:flex!important;
    opacity:1!important;
    visibility:visible!important;
  }

  /* Reviews/location are actual content after the viewport, not trapped inside .app. */
  .site-trust-section,
  .site-footer{
    display:block!important;
    position:relative!important;
    visibility:visible!important;
  }

  /* Once the document reaches the section below, controls belonging to the book disappear. */
  body.site-scrolled .menu-ribbon,
  body.site-scrolled .order-fab,
  body.site-scrolled .pager,
  body.site-scrolled .trust-scroll-cue,
  body.trust-section-visible .menu-ribbon,
  body.trust-section-visible .order-fab,
  body.trust-section-visible .pager,
  body.trust-section-visible .trust-scroll-cue{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  /* Overlay modes still own the viewport. */
  body.nav-open,
  body.order-open,
  body.gallery-open,
  body.review-modal-open{
    overflow:hidden!important;
  }

  /* AI mode keeps its toggle available while freeing space for the widget. */
  body.bk-ai-active #bkAiBtn{
    display:flex!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}


/* =====================================================================
   v2.9.1 — MOBILE DESKTOP-THEME PARITY / COMPLETE FRONTEND
   Mobile geometry stays responsive, but ALL visual colors come from the
   exact same dashboard variables used on desktop.
   ===================================================================== */

/* There must never again be a Graycape credit inside an individual book page. */
.graycape-credit{display:none !important}

@media(max-width:900px){
  html,
  body{
    background:var(--bk-site-bg-color,var(--bk-theme-bg)) !important;
    color:var(--bk-theme-text) !important;
  }

  .site-backdrop{
    background-color:var(--bk-site-bg-color,var(--bk-theme-bg)) !important;
    background-image:var(--bk-site-bg-image) !important;
    background-position:var(--bk-site-bg-x,50%) var(--bk-site-bg-y,50%) !important;
    background-size:var(--bk-site-bg-size,cover) !important;
  }

  .app,
  .stage,
  .book-shell{
    background:transparent !important;
  }

  /* Same configurable book palette as desktop. */
  .page,
  .page--cover,
  .page--history,
  .page--contact,
  .page--menu{
    background:
      radial-gradient(circle at 13% 15%,color-mix(in srgb,var(--bk-theme-accent) 15%,transparent),transparent 29%),
      radial-gradient(circle at 86% 80%,color-mix(in srgb,var(--bk-theme-accent) 8%,transparent),transparent 27%),
      linear-gradient(135deg,var(--bk-theme-bg),var(--bk-theme-surface) 54%,var(--bk-theme-bg)) !important;
    color:var(--bk-theme-text) !important;
    border-color:color-mix(in srgb,var(--bk-theme-accent) 23%,transparent) !important;
    box-shadow:0 10px 24px color-mix(in srgb,var(--bk-theme-bg) 52%,transparent) !important;
  }

  /* Category wallpaper remains authoritative when one is configured. */
  .page--menu.has-category-bg{
    background-image:
      linear-gradient(rgba(13,7,4,var(--bk-category-overlay,.58)),rgba(13,7,4,var(--bk-category-overlay,.58))),
      var(--bk-category-bg) !important;
    background-position:center,var(--bk-category-x,50%) var(--bk-category-y,50%) !important;
    background-size:cover,var(--bk-category-size,cover) !important;
    background-repeat:no-repeat !important;
  }

  .cover-eyebrow,
  .page-kicker,
  .group-title,
  .trust-heading>span,
  .location-copy small,
  .public-map-head span,
  .review-modal-kicker{
    color:var(--bk-theme-accent) !important;
  }

  .cover-inner h1,
  .page-heading h2,
  .contact-inner h2,
  .history-archive-head strong,
  .trust-heading h2,
  .location-copy strong,
  .public-map-head strong,
  .review-modal-card h2,
  .drawer-head strong,
  .drawer-brand-copy strong{
    color:var(--bk-theme-heading) !important;
  }

  .cover-subtitle,
  .cover-note,
  .page-heading p,
  .story-paragraph,
  .history-archive-head small,
  .dish-desc,
  .dish-weight,
  .location-copy span,
  .trust-heading p,
  .review-modal-card p,
  .site-footer,
  .drawer-brand-copy small{
    color:var(--bk-theme-muted) !important;
  }

  .dish-line h3{color:var(--bk-theme-item) !important}
  .dish-price{color:var(--bk-theme-text) !important}

  .dish,
  .story-copy,
  .story-quote,
  .history-archive-photo,
  .history-hero-image,
  .contact-cards a,
  .location-card,
  .review-platform-card{
    background:color-mix(in srgb,var(--bk-theme-surface) 88%,transparent) !important;
    color:var(--bk-theme-text) !important;
    border-color:color-mix(in srgb,var(--bk-theme-accent) 20%,transparent) !important;
  }

  .dish-thumb,
  .dynamic-placeholder{
    background:color-mix(in srgb,var(--bk-theme-surface) 90%,black 10%) !important;
    color:var(--bk-theme-muted) !important;
  }

  .primary-btn,
  .add-to-order,
  .navigate-btn{
    background:var(--bk-theme-accent) !important;
    color:var(--bk-theme-bg) !important;
    border-color:color-mix(in srgb,var(--bk-theme-accent) 82%,white) !important;
  }

  .secondary-btn,
  .public-map-head a{
    background:color-mix(in srgb,var(--bk-theme-surface) 88%,white 12%) !important;
    color:var(--bk-theme-text) !important;
    border-color:color-mix(in srgb,var(--bk-theme-accent) 23%,transparent) !important;
  }

  /* Header is the desktop palette, only compacted for a phone. */
  .topbar{
    background:color-mix(in srgb,var(--bk-theme-bg) 95%,black 5%) !important;
    color:var(--bk-theme-text) !important;
    border-bottom-color:color-mix(in srgb,var(--bk-theme-accent) 18%,transparent) !important;
  }

  .icon-btn,
  .lang-btn,
  .bk-ai-btn{
    background:color-mix(in srgb,var(--bk-theme-surface) 88%,transparent) !important;
    color:var(--bk-theme-text) !important;
    border-color:color-mix(in srgb,var(--bk-theme-accent) 20%,transparent) !important;
  }

  .lang-btn.active,
  .bk-ai-btn.active{
    background:var(--bk-theme-accent) !important;
    color:var(--bk-theme-bg) !important;
    border-color:var(--bk-theme-accent) !important;
  }

  .bk-ai-btn.active .bk-ai-spark{color:var(--bk-theme-bg) !important}
  .bk-ai-spark{color:var(--bk-theme-accent) !important}

  .menu-ribbon,
  .trust-scroll-cue{
    background:linear-gradient(180deg,color-mix(in srgb,var(--bk-theme-surface) 94%,black 6%),var(--bk-theme-bg)) !important;
    color:var(--bk-theme-text) !important;
    border-color:color-mix(in srgb,var(--bk-theme-accent) 28%,transparent) !important;
  }

  .ribbon-copy strong{color:var(--bk-theme-heading) !important}
  .ribbon-copy small{color:var(--bk-theme-muted) !important}
  .ribbon-arrows,
  .trust-scroll-cue b{color:var(--bk-theme-accent) !important}

  .order-fab{
    background:var(--bk-theme-surface) !important;
    color:var(--bk-theme-text) !important;
    border:1px solid color-mix(in srgb,var(--bk-theme-accent) 20%,transparent) !important;
  }
  .order-fab b{
    background:var(--bk-theme-accent) !important;
    color:var(--bk-theme-bg) !important;
  }

  .pager{
    background:color-mix(in srgb,var(--bk-theme-bg) 94%,transparent) !important;
    border-color:color-mix(in srgb,var(--bk-theme-accent) 18%,transparent) !important;
  }
  .pager button{
    background:var(--bk-theme-surface) !important;
    color:var(--bk-theme-text) !important;
    border-color:color-mix(in srgb,var(--bk-theme-accent) 20%,transparent) !important;
  }
  .page-count{color:var(--bk-theme-text) !important}

  .drawer,
  .search-panel,
  .order-drawer,
  .waiter-card,
  .review-modal-card{
    background:color-mix(in srgb,var(--bk-theme-bg) 97%,black 3%) !important;
    color:var(--bk-theme-text) !important;
    border-color:color-mix(in srgb,var(--bk-theme-accent) 20%,transparent) !important;
  }

  .drawer-head button,
  .search-input,
  .order-close,
  .waiter-close,
  .qty button,
  .review-modal-close,
  .review-private-form textarea,
  .review-private-form input{
    background:var(--bk-theme-surface) !important;
    color:var(--bk-theme-text) !important;
    border-color:color-mix(in srgb,var(--bk-theme-accent) 22%,transparent) !important;
  }

  .toc button,
  .search-results button{color:var(--bk-theme-text) !important}
  .toc button:hover,
  .toc button.is-active,
  .search-results button:hover{
    background:color-mix(in srgb,var(--bk-theme-accent) 13%,transparent) !important;
  }

  /* History: all Core gallery images stay visible on mobile when History is opened. */
  .page--history .page-content{
    display:block !important;
    overflow-y:auto !important;
    content-visibility:visible !important;
  }
  .history-editorial,
  .history-intro-grid,
  .history-masonry{
    visibility:visible !important;
    opacity:1 !important;
  }
  .history-gallery-item{visibility:visible !important}

  /* Reviews/location/footer are real document sections and share desktop colors. */
  .site-trust-section{
    display:block !important;
    visibility:visible !important;
    background:
      linear-gradient(180deg,
        color-mix(in srgb,var(--bk-theme-bg) 72%,transparent),
        color-mix(in srgb,var(--bk-theme-bg) 94%,black 6%)
      ),
      var(--bk-site-bg-image) !important;
    background-color:var(--bk-site-bg-color,var(--bk-theme-bg)) !important;
    background-position:var(--bk-site-bg-x,50%) var(--bk-site-bg-y,50%) !important;
    background-size:cover !important;
    color:var(--bk-theme-text) !important;
    border-top-color:color-mix(in srgb,var(--bk-theme-accent) 20%,transparent) !important;
  }

  .public-map-frame{
    border-color:color-mix(in srgb,var(--bk-theme-accent) 20%,transparent) !important;
    background:var(--bk-theme-surface) !important;
  }

  .site-footer{
    display:block !important;
    visibility:visible !important;
    background:linear-gradient(180deg,color-mix(in srgb,var(--bk-theme-bg) 96%,black 4%),color-mix(in srgb,var(--bk-theme-bg) 86%,black 14%)) !important;
    color:var(--bk-theme-muted) !important;
    border-top-color:color-mix(in srgb,var(--bk-theme-accent) 17%,transparent) !important;
  }
  .site-footer a{color:var(--bk-theme-accent) !important}

  /* Preserve document scrolling to Reviews/Location/Footer. */
  body:not(.nav-open):not(.order-open):not(.gallery-open):not(.review-modal-open){
    overflow-y:auto !important;
    touch-action:pan-y !important;
  }
  .page-content{
    overscroll-behavior-y:auto !important;
  }
}


/* v2.9.1 drawer final-state guard */
@media(max-width:900px){
  .drawer:not(.open){transform:translate3d(-103%,0,0) !important}
  .drawer.open{left:0 !important;right:0 !important;transform:translate3d(0,0,0) !important}
}

.dish-thumb{border:0;cursor:pointer}.dish-title-btn{display:block;max-width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.dish-title-btn span{font-family:var(--bk-font-item)!important;color:var(--bk-theme-item)}.dish-actions{display:flex;flex-wrap:wrap;gap:6px}.dish-more{min-height:31px;padding:0 9px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 28%,transparent);border-radius:6px;background:transparent;color:var(--bk-theme-muted);font:800 8px/1 Arial,sans-serif}.dish-mini-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.dish-mini-tags span,.dish-detail-tags span{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border-radius:999px;background:color-mix(in srgb,var(--bk-theme-accent) 12%,var(--bk-theme-surface));color:var(--bk-theme-muted);font:700 8px/1 Arial,sans-serif}.drawer-smart-card{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;margin:0 0 11px;padding:11px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 25%,transparent);border-radius:8px;background:color-mix(in srgb,var(--bk-theme-accent) 8%,var(--bk-theme-surface));color:var(--bk-theme-text);text-align:left}.drawer-smart-card span{display:flex;flex-direction:column;gap:3px}.drawer-smart-card strong{font-family:var(--bk-font-heading);font-size:17px;font-weight:400}.drawer-smart-card small{color:var(--bk-theme-muted);font-size:8px}.drawer-smart-card b{color:var(--bk-theme-accent);font-size:20px}.smart-modal{position:fixed;z-index:24000;inset:0;display:none;align-items:center;justify-content:center;padding:14px;background:rgba(6,3,2,.78)}.smart-modal.open{display:flex}.smart-modal-card{position:relative;width:min(720px,100%);max-height:92dvh;overflow-y:auto;padding:24px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 28%,transparent);border-radius:10px;background:var(--bk-theme-bg);color:var(--bk-theme-text);box-shadow:0 28px 80px rgba(0,0,0,.5)}.smart-modal-close{position:absolute;z-index:3;top:9px;right:9px;width:38px;height:38px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 25%,transparent);border-radius:7px;background:var(--bk-theme-surface);color:var(--bk-theme-text);font-size:20px}body.smart-modal-open{overflow:hidden!important}.dish-detail-card{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:20px}.dish-detail-image-wrap{min-height:280px;overflow:hidden;border-radius:8px;background:var(--bk-theme-surface)}.dish-detail-image-wrap img{display:block;width:100%;height:100%;min-height:280px;object-fit:cover}.dish-detail-copy{display:flex;flex-direction:column;align-items:flex-start}.dish-detail-category{color:var(--bk-theme-accent);font:800 8px/1 Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase}.dish-detail-copy h2,.chooser-card h2{margin:8px 0;color:var(--bk-theme-heading);font-family:var(--bk-font-heading)!important;font-size:clamp(34px,4vw,52px);font-weight:400;line-height:.95}.dish-detail-meta{display:flex;justify-content:space-between;width:100%;color:var(--bk-theme-muted);font-size:11px}.dish-detail-meta strong{color:var(--bk-theme-text);font-size:18px}#dishDetailDescription{color:var(--bk-theme-muted);font:500 12px/1.55 Arial,sans-serif}.dish-detail-tags{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0 12px}.dish-allergens{width:100%;margin-top:6px;padding:12px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 18%,transparent);border-radius:8px;background:color-mix(in srgb,var(--bk-theme-surface) 86%,transparent)}.dish-allergens>strong{display:block;margin-bottom:7px}.dish-allergens>div{display:grid;gap:5px}.dish-allergens span{display:flex;align-items:center;gap:7px;color:var(--bk-theme-muted);font-size:10px}.dish-allergens span b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--bk-theme-accent);color:var(--bk-theme-bg);font-size:8px}.dish-allergens small{display:block;margin-top:8px;color:var(--bk-theme-muted);font-size:9px}.dish-detail-actions{width:100%;margin-top:14px}.dish-detail-actions .primary-btn{width:100%}.chooser-card{width:min(650px,100%);text-align:center}.chooser-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:18px 0}.chooser-tags button{min-height:34px;padding:0 10px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 22%,transparent);border-radius:999px;background:var(--bk-theme-surface);color:var(--bk-theme-text);font:700 9px/1 Arial,sans-serif}.chooser-tags button.active{background:var(--bk-theme-accent);color:var(--bk-theme-bg)}.chooser-results{display:grid;gap:7px;text-align:left}.chooser-result{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;width:100%;padding:11px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 18%,transparent);border-radius:8px;background:color-mix(in srgb,var(--bk-theme-surface) 88%,transparent);color:var(--bk-theme-text);text-align:left}.chooser-result strong{font-family:var(--bk-font-item);font-size:15px;font-weight:400;color:var(--bk-theme-item)}.chooser-result span{grid-column:1;color:var(--bk-theme-muted);font-size:9px}.chooser-result b{grid-column:2;grid-row:1/3;align-self:center;color:var(--bk-theme-accent)}.order-note{display:block;width:100%;max-width:310px;height:32px;margin-top:7px;padding:0 8px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 18%,transparent);border-radius:6px;background:var(--bk-theme-surface);color:var(--bk-theme-text);font-size:10px}.order-line-main{min-width:0}.waiter-row small{display:block;margin-top:4px;color:var(--bk-theme-muted);font-size:10px}.waiter-table{margin:6px 0 12px;padding:10px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 22%,transparent);border-radius:7px;color:var(--bk-theme-accent);font-weight:800;text-align:center}.order-table-label{display:block;margin-top:3px;color:var(--bk-theme-accent);font-size:9px}.history-chapter-head{display:flex;flex-direction:column;gap:3px;margin:20px 0 8px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--bk-theme-accent) 18%,transparent)}.history-chapter-head span{color:var(--bk-theme-accent);font:800 8px/1 Arial,sans-serif;letter-spacing:.14em}.history-chapter-head strong{font-family:var(--bk-font-heading);font-size:30px;font-weight:400;color:var(--bk-theme-heading)}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* =====================================================================
   v3.1.3 — CART VISIBILITY / AI MODE FIX
   ===================================================================== */
.order-fab{
  z-index:520!important;
  min-height:56px!important;
  height:56px!important;
  padding:0 18px!important;
  gap:10px!important;
  border:2px solid color-mix(in srgb,var(--bk-theme-accent) 62%,transparent)!important;
  border-radius:11px!important;
  background:color-mix(in srgb,var(--bk-theme-surface) 90%,black 10%)!important;
  color:var(--bk-theme-heading)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.30),0 0 0 1px color-mix(in srgb,var(--bk-theme-accent) 18%,transparent)!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.05em!important;
}
.order-fab b{
  min-width:28px!important;
  height:28px!important;
  padding:0 7px!important;
  border-radius:7px!important;
  font-size:12px!important;
  font-weight:900!important;
}
.order-fab #orderFabTotal{font-size:11px!important;font-weight:900!important}

body.bk-ai-active .order-fab{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  display:flex!important;
  z-index:23020!important;
}
body.bk-ai-active .order-drawer{z-index:24000!important}
body.bk-ai-active .waiter-modal{z-index:24100!important}

/* =====================================================================
   v3.1.4 — DESKTOP CART DRAWER / LANGUAGE QA FIX
   ===================================================================== */
.order-drawer{
  z-index:24000!important;
}
.waiter-modal{
  z-index:24100!important;
}
.order-foot{
  position:sticky!important;
  bottom:0!important;
  z-index:4!important;
  flex:0 0 auto!important;
  box-shadow:0 -12px 28px rgba(0,0,0,.18)!important;
}
.order-items{
  min-height:0!important;
}
body.order-open .order-fab{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(12px)!important;
}
.order-actions{
  grid-template-columns:minmax(120px,.8fr) minmax(190px,1.2fr)!important;
  gap:10px!important;
}
.order-actions button{
  min-height:50px!important;
  font-size:11px!important;
}
.show-waiter{
  border-color:color-mix(in srgb,var(--bk-theme-accent) 72%,transparent)!important;
  background:var(--bk-theme-accent)!important;
  color:var(--bk-theme-bg)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.18)!important;
  font-weight:900!important;
}
.show-waiter:hover{
  filter:brightness(1.06)!important;
}
@media(max-width:1120px) and (min-width:901px){
  .order-drawer{width:min(460px,46vw)!important}
  .order-actions{grid-template-columns:1fr!important}
}

/* v3.1.5 — static translated Google review showcase */
.google-review-showcase{
  margin-top:22px;
  padding:22px;
  border:1px solid rgba(229,183,113,.20);
  border-radius:10px;
  background:color-mix(in srgb,var(--bk-theme-surface) 88%,transparent);
  box-shadow:0 14px 32px rgba(0,0,0,.20);
}
.google-review-summary{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  padding-bottom:16px;
  border-bottom:1px solid rgba(229,183,113,.14);
}
.google-review-summary-copy{display:flex;flex-direction:column;gap:4px}
.google-review-label{
  width:max-content;
  padding:5px 9px;
  border-radius:999px;
  background:#fff;
  color:#272727;
  font:800 10px/1 Arial,sans-serif;
  letter-spacing:.04em;
}
.google-review-summary strong{
  color:var(--bk-theme-heading);
  font-family:'Izhitsa.kz','BK Izhitsa',Georgia,'Times New Roman',serif !important;
  font-size:clamp(29px,3.2vw,44px);
  line-height:1;
  font-weight:400;
}
.google-review-summary small{color:var(--bk-theme-muted);font:700 11px/1.4 Arial,sans-serif}
.google-review-stars{display:flex;gap:3px;color:var(--bk-theme-accent);font-size:22px;line-height:1;white-space:nowrap}
.google-review-stars .half{opacity:.58}
.google-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}
.google-review-card{
  min-width:0;
  padding:17px;
  border:1px solid rgba(229,183,113,.15);
  border-radius:8px;
  background:rgba(17,8,5,.32);
  cursor:default;
}
.google-review-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.google-review-card-head strong{color:var(--bk-theme-heading);font:800 13px/1.2 Arial,sans-serif}
.google-review-card-head span{color:var(--bk-theme-accent);font-size:12px;letter-spacing:.05em;white-space:nowrap}
.google-review-card p{margin:0;color:var(--bk-theme-text);font:500 12px/1.62 Arial,sans-serif}
.google-review-card>small{display:block;margin-top:12px;color:var(--bk-theme-muted);font:700 9px/1.3 Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em}
.google-review-note{margin:12px 0 0;color:var(--bk-theme-muted);font:500 9px/1.45 Arial,sans-serif;text-align:center;opacity:.78}
@media(max-width:980px){
  .google-review-grid{grid-template-columns:1fr}
  .google-review-summary{align-items:flex-start;flex-direction:column}
}

/* =====================================================================
   v3.2.0 Premium redesign overrides
   ===================================================================== */
body.bk-premium-v320{
  --bk-premium-panel:linear-gradient(180deg,color-mix(in srgb,var(--bk-theme-surface) 94%,#0f0704 6%),color-mix(in srgb,var(--bk-theme-bg) 94%,#0b0604 6%));
  --bk-premium-glass:color-mix(in srgb,var(--bk-theme-surface) 74%,rgba(255,255,255,.08));
  --bk-premium-line:color-mix(in srgb,var(--bk-theme-accent) 22%,transparent);
  --bk-premium-strong-line:color-mix(in srgb,var(--bk-theme-accent) 38%,transparent);
  --bk-premium-text:var(--bk-theme-heading);
  --bk-premium-muted:color-mix(in srgb,var(--bk-theme-text) 70%,transparent);
  --bk-premium-shadow:0 18px 48px rgba(0,0,0,.24);
}
body.bk-premium-v320 .app{grid-template-rows:var(--bk-toolbar) 68px minmax(0,1fr)}
body.bk-premium-v320 .topbar{
  background:linear-gradient(180deg,rgba(29,14,9,.94),rgba(41,20,12,.90));
  border-bottom:1px solid var(--bk-premium-strong-line);
  box-shadow:0 10px 26px rgba(0,0,0,.24);
  backdrop-filter:blur(18px);
}
body.bk-premium-v320 .brand-mark{width:60px;height:60px;flex-basis:60px;background:rgba(255,248,236,.92);border-color:rgba(255,220,176,.18)}
body.bk-premium-v320 .brand-text strong{font-size:20px;color:#f7ead5}
body.bk-premium-v320 .brand-text small{font-size:10px;color:#e0bb86;letter-spacing:.20em}
body.bk-premium-v320 .icon-btn,
body.bk-premium-v320 .lang-btn{
  height:44px;padding:0 18px;border-radius:14px;
  border:1px solid color-mix(in srgb,var(--bk-theme-accent) 18%,transparent);
  background:rgba(255,255,255,.05);color:#f8eddc;box-shadow:none;
}
body.bk-premium-v320 .icon-btn:hover,
body.bk-premium-v320 .lang-btn:hover{background:rgba(255,255,255,.09);border-color:color-mix(in srgb,var(--bk-theme-accent) 30%,transparent)}
body.bk-premium-v320 .lang-btn.active{background:linear-gradient(180deg,color-mix(in srgb,var(--bk-theme-accent) 90%,#f0c17a),color-mix(in srgb,var(--bk-theme-accent) 82%,#966126));color:#1c100a;border-color:transparent}
body.bk-premium-v320 .progress{background:rgba(255,255,255,.06)}
body.bk-premium-v320 .progress span{background:linear-gradient(90deg,#b87833,#f3cd89,#b87833)}

body.bk-premium-v320 .category-strip{
  position:relative;z-index:118;
  padding:10px clamp(16px,2vw,26px) 12px;
  background:linear-gradient(180deg,rgba(22,10,7,.86),rgba(20,10,8,.42));
  border-bottom:1px solid var(--bk-premium-line);
}
body.bk-premium-v320 .category-strip-inner{
  display:flex;gap:10px;overflow:auto;padding-bottom:4px;
  scrollbar-width:none;-ms-overflow-style:none;
}
body.bk-premium-v320 .category-strip-inner::-webkit-scrollbar{display:none}
body.bk-premium-v320 .category-chip{
  flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
  min-height:42px;padding:0 18px;border-radius:999px;
  border:1px solid var(--bk-premium-line);
  background:rgba(255,255,255,.05);color:#ecd8bd;font:700 13px/1 Arial,sans-serif;
  letter-spacing:.03em;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease;
}
body.bk-premium-v320 .category-chip:hover{transform:translateY(-1px);background:rgba(255,255,255,.09);border-color:var(--bk-premium-strong-line)}
body.bk-premium-v320 .category-chip.active{background:linear-gradient(180deg,color-mix(in srgb,var(--bk-theme-accent) 88%,#f0c17a),color-mix(in srgb,var(--bk-theme-accent) 80%,#91602b));color:#1b1009;border-color:transparent;box-shadow:0 12px 24px rgba(0,0,0,.16)}

body.bk-premium-v320 .stage{padding:30px clamp(44px,5vw,76px) 104px}
body.bk-premium-v320 .book-shell{
  width:min(1280px,calc(100vw - 160px));
  height:min(760px,calc(100dvh - var(--bk-toolbar) - 196px));
  filter:drop-shadow(0 32px 60px rgba(0,0,0,.24));
}
body.bk-premium-v320 .book-shell::before{
  inset:16px -14px -14px 14px;border-radius:30px;
  background:linear-gradient(135deg,#d0a56e 0%,#7f5634 40%,#b8864e 100%);
  opacity:.92;
}
body.bk-premium-v320 .page{
  border-radius:26px;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 16%,transparent);
  background:
    linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,0)),
    radial-gradient(circle at top left,rgba(255,255,255,.11),transparent 34%),
    linear-gradient(120deg,color-mix(in srgb,var(--bk-theme-surface) 93%,#1a0d08 7%),color-mix(in srgb,var(--bk-theme-bg) 96%,#140905 4%));
  color:#f7ebdc;box-shadow:0 24px 60px rgba(0,0,0,.22),inset 0 0 0 1px rgba(255,255,255,.05);
}
body.bk-premium-v320 .page::before{opacity:.08}
body.bk-premium-v320 .page::after{width:0}
body.bk-premium-v320 .page-content{padding:38px 42px 26px}
body.bk-premium-v320 .page-footer{margin:0 42px 16px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--bk-theme-accent) 18%,transparent);color:#c8af90}
body.bk-premium-v320 .page-footer b{color:#f0c17e}
body.bk-premium-v320 .graycape-credit{color:#bda78f}
body.bk-premium-v320 .graycape-credit a{color:#eed9be}
body.bk-premium-v320 .page-kicker,
body.bk-premium-v320 .group-title,
body.bk-premium-v320 .cover-eyebrow{color:#d8a761}
body.bk-premium-v320 .page-heading h2,
body.bk-premium-v320 .contact-inner h2,
body.bk-premium-v320 .cover-inner h1{color:#fff5e6}
body.bk-premium-v320 .page-heading p,
body.bk-premium-v320 .cover-subtitle,
body.bk-premium-v320 .cover-note,
body.bk-premium-v320 .contact-sub,
body.bk-premium-v320 .contact-thanks{color:#dcc3a6}
body.bk-premium-v320 .page--cover .cover-inner{padding:26px 32px}
body.bk-premium-v320 .page--cover .cover-logo{width:136px;height:136px;background:rgba(255,248,236,.96);box-shadow:0 18px 30px rgba(0,0,0,.20)}
body.bk-premium-v320 .page--cover .cover-note{max-width:780px;letter-spacing:.12em}
body.bk-premium-v320 .ornament span{background:linear-gradient(90deg,transparent,#dfb173)}
body.bk-premium-v320 .ornament span:last-child{background:linear-gradient(90deg,#dfb173,transparent)}

body.bk-premium-v320 .primary-btn,
body.bk-premium-v320 .secondary-btn,
body.bk-premium-v320 .add-to-order,
body.bk-premium-v320 .dish-more{
  min-height:44px;padding:0 18px;border-radius:14px;border:1px solid var(--bk-premium-line);
}
body.bk-premium-v320 .primary-btn,
body.bk-premium-v320 .add-to-order{
  background:linear-gradient(180deg,color-mix(in srgb,var(--bk-theme-accent) 92%,#f0c17a),color-mix(in srgb,var(--bk-theme-accent) 78%,#8f5a28));
  color:#1d120b;border-color:transparent;font-weight:800;box-shadow:0 12px 22px rgba(0,0,0,.16)
}
body.bk-premium-v320 .secondary-btn,
body.bk-premium-v320 .dish-more{background:rgba(255,255,255,.04);color:#f7e8d3}
body.bk-premium-v320 .secondary-btn:hover,
body.bk-premium-v320 .dish-more:hover{background:rgba(255,255,255,.08)}

body.bk-premium-v320 .dish-group{margin:0 0 22px}
body.bk-premium-v320 .group-title{margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid color-mix(in srgb,var(--bk-theme-accent) 18%,transparent)}
body.bk-premium-v320 .dish-list{gap:18px}
body.bk-premium-v320 .page--menu .dish{
  align-items:stretch;min-height:170px;border-radius:24px;overflow:hidden;
  border:1px solid color-mix(in srgb,var(--bk-theme-accent) 16%,transparent);
  background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
  box-shadow:0 16px 36px rgba(0,0,0,.16);
}
body.bk-premium-v320 .page--menu .dish:hover{transform:translateY(-2px);box-shadow:0 22px 42px rgba(0,0,0,.22)}
body.bk-premium-v320 .page--menu .dish-thumb{min-height:170px;border-right:1px solid color-mix(in srgb,var(--bk-theme-accent) 14%,transparent);background:#21120b}
body.bk-premium-v320 .page--menu .dish-thumb img{filter:saturate(1.02) contrast(1.02) brightness(.98)}
body.bk-premium-v320 .page--menu .dish-copy{padding:16px 18px 16px}
body.bk-premium-v320 .page--menu .dish-line{gap:14px}
body.bk-premium-v320 .page--menu .dish-title-btn{padding:0;text-align:left;background:none;border:0}
body.bk-premium-v320 .page--menu .dish-line span[data-bg],
body.bk-premium-v320 .page--menu .dish-line span[data-en],
body.bk-premium-v320 .page--menu .dish-line .dish-title-btn span{font-family:var(--bk-font-item)!important;font-size:40px;line-height:.86;color:#fff0d5}
body.bk-premium-v320 .page--menu .dish-desc{margin-top:8px;font-size:13px;line-height:1.58;color:#d7c1a7;-webkit-line-clamp:3}
body.bk-premium-v320 .page--menu .dish-mini-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
body.bk-premium-v320 .page--menu .dish-mini-tags span{padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid color-mix(in srgb,var(--bk-theme-accent) 14%,transparent);color:#f0dfc9;font:700 11px/1 Arial,sans-serif}
body.bk-premium-v320 .page--menu .dish-actions{gap:10px;padding-top:14px}
body.bk-premium-v320 .page--menu .dish-meta{gap:6px}
body.bk-premium-v320 .page--menu .dish-weight{font-size:11px;color:#d6bf9f}
body.bk-premium-v320 .page--menu .dish-price{font-size:24px;color:#fff5e6}

body.bk-premium-v320 .history-editorial,
body.bk-premium-v320 .contact-inner,
body.bk-premium-v320 .location-card,
body.bk-premium-v320 .public-map-card,
body.bk-premium-v320 .review-showcase{border-radius:24px;background:rgba(255,255,255,.04);border:1px solid var(--bk-premium-line);box-shadow:0 18px 34px rgba(0,0,0,.12)}
body.bk-premium-v320 .history-editorial,
body.bk-premium-v320 .contact-inner{padding:18px}
body.bk-premium-v320 .review-platform-card{border-radius:18px;background:rgba(255,255,255,.04);border:1px solid var(--bk-premium-line);padding:12px;box-shadow:none}
body.bk-premium-v320 .review-platform-card:hover{transform:translateY(-2px);border-color:var(--bk-premium-strong-line)}
body.bk-premium-v320 .review-showcase-rating strong,
body.bk-premium-v320 .trust-heading h2,
body.bk-premium-v320 .location-copy strong,
body.bk-premium-v320 .public-map-head strong{color:#fff2de}
body.bk-premium-v320 .site-trust-section{padding:34px clamp(20px,4vw,34px) 120px;background:linear-gradient(180deg,rgba(18,8,6,.92),rgba(27,13,9,.98))}
body.bk-premium-v320 .site-trust-inner{max-width:1280px}

body.bk-premium-v320 .pager{
  gap:16px;padding:14px 18px;border-radius:22px;background:rgba(30,15,10,.86);
  border:1px solid var(--bk-premium-line);box-shadow:0 20px 36px rgba(0,0,0,.22);
}
body.bk-premium-v320 .pager button{width:52px;height:52px;border-radius:16px;background:rgba(255,255,255,.08);color:#fff1dc;border:1px solid color-mix(in srgb,var(--bk-theme-accent) 18%,transparent)}
body.bk-premium-v320 .page-count{min-width:110px;color:#f5ead6;font:800 15px/1 Arial,sans-serif;letter-spacing:.08em}
body.bk-premium-v320 .trust-scroll-cue{
  padding:0 18px;height:54px;border-radius:18px;background:rgba(30,15,10,.86);
  border:1px solid var(--bk-premium-line);color:#f2e4d0;box-shadow:0 18px 36px rgba(0,0,0,.18)
}
body.bk-premium-v320 .menu-ribbon{
  left:22px;bottom:106px;top:auto;transform:none !important;
  height:58px;max-width:none;border-radius:18px;background:rgba(30,15,10,.92);border:1px solid var(--bk-premium-line);box-shadow:0 16px 32px rgba(0,0,0,.22)
}
body.bk-premium-v320 .menu-ribbon .ribbon-copy strong,
body.bk-premium-v320 .menu-ribbon .ribbon-copy small{color:#f5e7d0}

body.bk-premium-v320 .order-fab{
  right:22px;bottom:22px;height:64px;padding:0 20px;border-radius:22px;
  background:linear-gradient(180deg,rgba(29,14,9,.96),rgba(44,20,11,.94));
  border:1px solid color-mix(in srgb,var(--bk-theme-accent) 28%,transparent);
  color:#fff0da;box-shadow:0 22px 40px rgba(0,0,0,.24);font-size:14px;gap:12px
}
body.bk-premium-v320 .order-fab b{min-width:28px;height:28px;border-radius:10px;background:linear-gradient(180deg,#d8a252,#b7762f);color:#1c110b;font-size:13px}
body.bk-premium-v320 .order-drawer,
body.bk-premium-v320 .drawer,
body.bk-premium-v320 .search-panel{background:linear-gradient(180deg,#1d100b,#2a160e);color:#f8ead5}
body.bk-premium-v320 .drawer,
body.bk-premium-v320 .order-drawer{border-left:1px solid var(--bk-premium-line);box-shadow:-20px 0 44px rgba(0,0,0,.30)}
body.bk-premium-v320 .drawer-head,
body.bk-premium-v320 .order-head{border-bottom:1px solid var(--bk-premium-line)}
body.bk-premium-v320 .drawer-head strong,
body.bk-premium-v320 .drawer-brand-copy strong,
body.bk-premium-v320 .order-head strong{color:#fff1dd}
body.bk-premium-v320 .drawer-head button,
body.bk-premium-v320 .order-close,
body.bk-premium-v320 .waiter-close{background:rgba(255,255,255,.08);color:#fff1db;border:1px solid var(--bk-premium-line);border-radius:12px}
body.bk-premium-v320 .toc button{min-height:48px;border-radius:12px;color:#f1dfc8}
body.bk-premium-v320 .toc button:hover,
body.bk-premium-v320 .toc button.is-active{background:rgba(255,255,255,.07);border-color:var(--bk-premium-line)}
body.bk-premium-v320 .drawer-history-card,
body.bk-premium-v320 .drawer-smart-card{border-radius:18px;background:rgba(255,255,255,.05);border:1px solid var(--bk-premium-line)}
body.bk-premium-v320 .order-items{padding:14px 18px}
body.bk-premium-v320 .order-line{padding:14px 0;gap:12px;border-bottom:1px solid color-mix(in srgb,var(--bk-theme-accent) 12%,transparent)}
body.bk-premium-v320 .order-line img{width:72px;height:68px;border-radius:14px}
body.bk-premium-v320 .order-line h4{font-size:16px;color:#fff0da}
body.bk-premium-v320 .order-note{border-radius:12px;background:rgba(255,255,255,.05);border:1px solid var(--bk-premium-line);color:#f5e9d8}
body.bk-premium-v320 .qty button{border-radius:10px;background:rgba(255,255,255,.08);border:1px solid var(--bk-premium-line);color:#fff0da}
body.bk-premium-v320 .order-foot{background:rgba(255,255,255,.04);border-top:1px solid var(--bk-premium-line)}
body.bk-premium-v320 .order-total strong{color:#fff1de}
body.bk-premium-v320 .show-waiter{background:linear-gradient(180deg,color-mix(in srgb,var(--bk-theme-accent) 88%,#f0c17a),color-mix(in srgb,var(--bk-theme-accent) 80%,#8f5a28));color:#1f120a;border-color:transparent}
body.bk-premium-v320 .clear-order{background:rgba(255,255,255,.06);color:#fff0da}

@media (max-width:1200px){
  body.bk-premium-v320 .book-shell{width:min(1180px,calc(100vw - 120px))}
  body.bk-premium-v320 .page-content{padding:30px 30px 22px}
  body.bk-premium-v320 .page-footer{margin:0 30px 15px}
  body.bk-premium-v320 .page--menu .dish-line .dish-title-btn span{font-size:34px}
  body.bk-premium-v320 .page--menu .dish{min-height:156px}
  body.bk-premium-v320 .page--menu .dish-thumb{min-height:156px}
}
@media (max-width:1024px){
  body.bk-premium-v320 .app{grid-template-rows:var(--bk-toolbar) 62px minmax(0,1fr)}
  body.bk-premium-v320 .category-chip{min-height:38px;padding:0 15px;font-size:12px}
  body.bk-premium-v320 .book-shell{width:min(1100px,calc(100vw - 90px));height:min(710px,calc(100dvh - var(--bk-toolbar) - 186px))}
  body.bk-premium-v320 .page--menu .dish{grid-template-columns:132px minmax(0,1fr)}
  body.bk-premium-v320 .page--menu .dish-line .dish-title-btn span{font-size:30px}
}

/* =====================================================================
   v3.2.1 — FINAL POLISH
   ===================================================================== */
body.bk-premium-v320 .category-strip-inner{
  max-width:1320px;
  margin:0 auto;
  padding-inline:2px;
}
body.bk-premium-v320 .category-chip{
  position:relative;
  isolation:isolate;
}
body.bk-premium-v320 .category-chip::before{
  content:"";
  width:5px;height:5px;border-radius:50%;
  margin-right:9px;
  background:color-mix(in srgb,var(--bk-theme-accent) 58%,transparent);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--bk-theme-accent) 8%,transparent);
}
body.bk-premium-v320 .category-chip.active::before{background:#2b170c;box-shadow:0 0 0 3px rgba(43,23,12,.10)}
body.bk-premium-v320 .stage{
  background:
    radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--bk-theme-accent) 8%,transparent),transparent 38%),
    linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.12));
}
body.bk-premium-v320 .book-shell{
  height:min(720px,100%);
  max-height:100%;
}
body.bk-premium-v320 .book-shell::before{
  inset:10px -8px -8px 8px;
  border-radius:28px;
  opacity:.58;
  filter:saturate(.82);
}
body.bk-premium-v320 .book-shell::after{opacity:.35}
body.bk-premium-v320 .page{
  transition:box-shadow .22s ease,border-color .22s ease;
}
body.bk-premium-v320 .page.active{
  border-color:color-mix(in srgb,var(--bk-theme-accent) 22%,transparent);
  box-shadow:0 28px 64px rgba(0,0,0,.26),inset 0 0 0 1px rgba(255,255,255,.035);
}
body.bk-premium-v320 .page-content{
  scroll-padding-top:16px;
}
body.bk-premium-v320 .page-heading{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  column-gap:20px;
  margin-bottom:24px;
  padding-bottom:18px;
  border-bottom:1px solid color-mix(in srgb,var(--bk-theme-accent) 14%,transparent);
}
body.bk-premium-v320 .page-heading .page-kicker,
body.bk-premium-v320 .page-heading h2{grid-column:1}
body.bk-premium-v320 .page-heading p{
  grid-column:2;
  grid-row:1 / span 2;
  max-width:370px;
  margin:0;
  text-align:right;
  font-size:14px;
  line-height:1.45;
}
body.bk-premium-v320 .page-heading h2{
  max-width:760px;
  text-wrap:balance;
}
body.bk-premium-v320 .dish-list{
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
}
body.bk-premium-v320 .page--menu .dish{
  grid-template-columns:minmax(156px,34%) minmax(0,1fr);
  transform:translateZ(0);
  transition:transform .20s ease,box-shadow .20s ease,border-color .20s ease;
}
body.bk-premium-v320 .page--menu .dish:hover{
  border-color:color-mix(in srgb,var(--bk-theme-accent) 30%,transparent);
}
body.bk-premium-v320 .page--menu .dish-thumb::after{
  content:"";
  position:absolute;inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,transparent 68%,rgba(18,8,5,.16));
}
body.bk-premium-v320 .page--menu .dish-title-btn{
  max-width:100%;
  overflow:hidden;
}
body.bk-premium-v320 .page--menu .dish-title-btn span{
  display:block;
  overflow-wrap:anywhere;
  text-wrap:balance;
}
body.bk-premium-v320 .page--menu .dish-price{
  padding:6px 9px;
  border-radius:10px;
  background:rgba(0,0,0,.16);
  border:1px solid color-mix(in srgb,var(--bk-theme-accent) 12%,transparent);
}
body.bk-premium-v320 .page--menu .dish-actions button{
  transition:transform .16s ease,filter .16s ease,background .16s ease;
}
body.bk-premium-v320 .page--menu .dish-actions button:hover{transform:translateY(-1px)}
body.bk-premium-v320 .add-to-order.is-added{
  animation:bkPremiumAdded .62s ease;
}
@keyframes bkPremiumAdded{
  0%{transform:scale(1)}
  35%{transform:scale(1.055);filter:brightness(1.12)}
  100%{transform:scale(1);filter:brightness(1)}
}
body.bk-premium-v320 :is(button,a,input,textarea):focus-visible{
  outline:2px solid color-mix(in srgb,var(--bk-theme-accent) 76%,#fff 24%);
  outline-offset:3px;
}
body.bk-premium-v320 .google-review-showcase{
  border-radius:24px;
  border-color:var(--bk-premium-line);
  background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
  box-shadow:0 18px 36px rgba(0,0,0,.13);
}
body.bk-premium-v320 .google-review-card{
  border-radius:18px;
  background:rgba(255,255,255,.035);
  border-color:color-mix(in srgb,var(--bk-theme-accent) 14%,transparent);
  transition:transform .18s ease,border-color .18s ease;
}
body.bk-premium-v320 .google-review-card:hover{
  transform:translateY(-2px);
  border-color:color-mix(in srgb,var(--bk-theme-accent) 27%,transparent);
}
body.bk-premium-v320 .location-card,
body.bk-premium-v320 .public-map-card{
  overflow:hidden;
}
body.bk-premium-v320 .order-fab{
  max-width:360px;
  white-space:nowrap;
}
body.bk-premium-v320 .order-drawer{
  width:min(520px,44vw);
}
body.bk-premium-v320 .order-actions button{
  min-height:48px;
  border-radius:14px;
}
body.bk-premium-v320 .show-waiter{
  box-shadow:0 12px 24px rgba(0,0,0,.14);
}
body.bk-premium-v320 .search-panel input{
  border-radius:14px;
}

@media (max-width:1180px){
  body.bk-premium-v320 .page-heading{grid-template-columns:1fr}
  body.bk-premium-v320 .page-heading p{grid-column:1;grid-row:auto;max-width:640px;text-align:left;margin-top:8px}
  body.bk-premium-v320 .dish-list{grid-template-columns:1fr}
  body.bk-premium-v320 .page--menu .dish{grid-template-columns:190px minmax(0,1fr)}
  body.bk-premium-v320 .page--menu .dish-thumb{min-height:162px}
}
@media (max-width:980px){
  body.bk-premium-v320 .brand-text strong{font-size:17px}
  body.bk-premium-v320 .brand-text small{font-size:8px}
  body.bk-premium-v320 .icon-btn,body.bk-premium-v320 .lang-btn{padding:0 12px}
}
@media (prefers-reduced-motion:reduce){
  body.bk-premium-v320 .page--menu .dish,
  body.bk-premium-v320 .category-chip,
  body.bk-premium-v320 .google-review-card{transition:none!important}
  body.bk-premium-v320 .add-to-order.is-added{animation:none!important}
}


/* v3.4.0 shared icon compatibility for desktop markup */
.bk-star-row{display:inline-flex;align-items:center;gap:3px;line-height:1}
.bk-star-row i{display:block;width:17px;height:17px;background:#edb24d;-webkit-clip-path:polygon(50% 0,61% 35%,98% 35%,68% 56%,79% 92%,50% 70%,21% 92%,32% 56%,2% 35%,39% 35%);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 56%,79% 92%,50% 70%,21% 92%,32% 56%,2% 35%,39% 35%)}
.bk-star-row i.half{background:linear-gradient(90deg,#edb24d 0 50%,#695341 50% 100%)}
.bk-star-row--small i{width:13px;height:13px}
.google-review-card-head .bk-star-row{margin-left:auto}
.review-stars button{font-size:0!important;display:grid;place-items:center}
.review-stars button::before{content:"";width:38px;height:38px;background:currentColor;-webkit-clip-path:polygon(50% 0,61% 35%,98% 35%,68% 56%,79% 92%,50% 70%,21% 92%,32% 56%,2% 35%,39% 35%);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 56%,79% 92%,50% 70%,21% 92%,32% 56%,2% 35%,39% 35%)}
.site-footer-heart{display:none!important}


/* v3.4.0 desktop deterministic icon system */
body.bk-reference-v340 .bk-ui-icon{display:inline-block;width:18px;height:18px;flex:0 0 auto;background:currentColor;-webkit-mask:var(--bk-icon-image) center/contain no-repeat;mask:var(--bk-icon-image) center/contain no-repeat}
body.bk-reference-v340 .bk-icon-home{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M3%2011.5%2012%204l9%207.5M5.5%2010v10h13V10M9.5%2020v-6h5v6%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-history{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M3%2012a9%209%200%201%200%202.64-6.36L3%208.3M3%204v4.3h4.3M12%207v5l3.5%202%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-salad{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M4%2011h16c0%205-3.2%208-8%208s-8-3-8-8ZM8%208c-1.5-2%20.2-4%202.8-3.3.6%202.1-.5%203.6-2.8%203.3Zm8%200c1.5-2-.2-4-2.8-3.3-.6%202.1.5%203.6%202.8%203.3ZM12%209V5%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-appetizer{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M4%2014h16M6%2014c.7%203.4%202.8%205%206%205s5.3-1.6%206-5M8%2010h.01M12%208h.01M16%2010h.01%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-soup{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M5%2012h14c0%204.5-2.8%207-7%207s-7-2.5-7-7Zm3-3c-1.5-1.6%201.2-2.4%200-4m4%204c-1.5-1.6%201.2-2.4%200-4m4%204c-1.5-1.6%201.2-2.4%200-4%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-grill{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%2021c4%200%207-2.7%207-6.4%200-4-2.4-6.2-4.4-8.6.2%203-1.4%204.1-2.5%205.3-.4-2.5-1.8-4.1-3.2-5.8.2%203.5-3.9%205.4-3.9%209.2C5%2018.4%208%2021%2012%2021Z%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-main{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M5%2010h14v8H5v-8Zm2-3h10M9%204h6M3%2012h2m14%200h2%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-chef{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M7%2018v-6.2A4%204%200%200%201%208%204.2%204.5%204.5%200%200%201%2012%202a4.5%204.5%200%200%201%204%202.2%204%204%200%200%201%201%207.6V18M7%2018h10M8%2022h8v-4H8v4Z%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-dessert{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M5%2010h14v9H5v-9Zm0%204h14M8%2010V7m4%203V6m4%204V7M8%206c0-1%20.7-2%201.7-2M12%205c0-1%20.7-2%201.7-2M16%206c0-1%20.7-2%201.7-2%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-drink{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M7%203h10l-1%2017H8L7%203Zm1%205h8M14%203l3-2%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-wine{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M7%203h10c0%206-1.8%209-5%209S7%209%207%203Zm5%209v7m-4%202h8%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-beer{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M5%205h11v15H5V5Zm11%203h2.5A2.5%202.5%200%200%201%2021%2010.5v4A2.5%202.5%200%200%201%2018.5%2017H16M8%208v8m4-8v8%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-cutlery{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M6%203v7m-2-7v4c0%202%201%203%203%203s3-1%203-3V3M7%2010v11M16%203v18M16%203c3%202%204%205%204%208h-4%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-location{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%2021s7-6.1%207-12a7%207%200%201%200-14%200c0%205.9%207%2012%207%2012Z%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linejoin%3D%22round%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%229%22%20r%3D%222.3%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-more{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M5%207h14M5%2012h14M5%2017h14%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-ai{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%202c.7%204.6%203.4%207.3%208%208-4.6.7-7.3%203.4-8%208-.7-4.6-3.4-7.3-8-8%204.6-.7%207.3-3.4%208-8Zm7%2013c.3%202.1%201.5%203.3%203.6%203.6-2.1.3-3.3%201.5-3.6%203.6-.3-2.1-1.5-3.3-3.6-3.6%202.1-.3%203.3-1.5%203.6-3.6Z%22%20fill%3D%22black%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-cart{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M3%204h2l2.3%2010.2h9.8l2-7H6.1M9%2019a1.3%201.3%200%201%200%200%20.01M17%2019a1.3%201.3%200%201%200%200%20.01%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-icon-plus{--bk-icon-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%205v14M5%2012h14%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.4%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E")}
body.bk-reference-v340 .bk-ai-spark{width:14px;height:14px}
body.bk-reference-v340 .category-chip .bk-cat-icon{width:16px;height:16px;margin-right:7px;color:var(--bk-theme-accent)}
body.bk-reference-v340 .category-chip.active .bk-cat-icon{color:#1b1009}
body.bk-reference-v340 .drawer-smart-icon .bk-ui-icon{width:18px;height:18px}

/* =====================================================================
   v3.4.1 — owner photo & brand asset integration
   ===================================================================== */
body.bk-assets-v341 .site-backdrop::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:var(--bk-brand-bg-image);
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center top;
  opacity:.18;
  mix-blend-mode:soft-light;
}
body.bk-assets-v341 .cover-inner{position:relative;isolation:isolate}
body.bk-assets-v341 .bk-cover-frame{
  position:absolute;z-index:-1;inset:50% auto auto 50%;transform:translate(-50%,-50%);
  width:min(430px,72%);max-height:90%;object-fit:contain;opacity:.14;pointer-events:none;
}
body.bk-assets-v341 .bk-cover-lockup{
  width:min(260px,40%);height:auto;object-fit:contain;margin:0 auto 8px;opacity:.92;filter:drop-shadow(0 8px 18px rgba(0,0,0,.18));
}
body.bk-assets-v341 .bk-brand-ornament{display:block;width:110px;height:auto;margin:8px auto 0;opacity:.76}
body.bk-assets-v341 .bk-history-e1{display:block;width:94px;height:auto;object-fit:contain;margin:0 0 8px;opacity:.72}
body.bk-assets-v341 .bk-thank-you-art{display:block;width:min(360px,76%);height:auto;object-fit:contain;margin:8px auto 14px;opacity:.94}
body.bk-assets-v341 .bk-social-strip{display:block;width:min(420px,72%);height:auto;object-fit:contain;margin:2px auto 16px;opacity:.9}
body.bk-assets-v341 .bk-category-heading{
  position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;min-height:112px;
}
body.bk-assets-v341 .bk-category-heading-copy{min-width:0;position:relative;z-index:2}
body.bk-assets-v341 .bk-category-art{
  position:relative;display:flex;align-items:flex-end;justify-content:flex-end;gap:0;width:250px;height:112px;overflow:visible;pointer-events:none;
}
body.bk-assets-v341 .bk-category-art img{
  position:relative;max-width:190px;max-height:112px;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 12px 18px rgba(0,0,0,.22));
}
body.bk-assets-v341 .bk-category-art img+img{margin-left:-74px;transform:translateY(10px) scale(.88);opacity:.94}
body.bk-assets-v341 .bk-category-art img:nth-child(3){margin-left:-84px;transform:translateY(16px) scale(.78)}
body.bk-assets-v341 .bk-category-art img:nth-child(4){margin-left:-88px;transform:translateY(18px) scale(.7)}
body.bk-assets-v341 .bk-best-seller-badge{display:flex;align-items:center;margin-top:8px;min-height:44px}
body.bk-assets-v341 .bk-best-seller-badge img{display:block;width:100px;height:auto;object-fit:contain;filter:drop-shadow(0 6px 12px rgba(0,0,0,.18))}
html[lang="bg"] body.bk-assets-v341 .bk-best-seller-badge .bk-badge-en{display:none}
html[lang="en"] body.bk-assets-v341 .bk-best-seller-badge .bk-badge-bg{display:none}
body.bk-assets-v341 .dish-thumb img{transition:transform .4s ease,filter .25s ease}
body.bk-assets-v341 .dish:hover .dish-thumb img{transform:scale(1.025)}
body.bk-assets-v341 .page--menu[data-slug="specials"] .bk-category-art{width:290px}
body.bk-assets-v341 .page--menu[data-slug="desserts"] .bk-category-art img{max-width:150px}
@media (max-width:1150px){
  body.bk-assets-v341 .bk-category-art{width:190px}
  body.bk-assets-v341 .bk-category-art img{max-width:150px}
}


/* v3.4.2 — desktop safeguard: mobile navigation must never leak into desktop */
.mobile-bottom-nav{display:none!important;}


/* =====================================================================
   v3.4.4 — lighter glass surfaces / owner background visibility
   ===================================================================== */
@media (min-width:901px){
  body.bk-glass-v344 .page--cover .bk-cover-title-text{
    position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
    overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
  }
  body.bk-glass-v344 .site-backdrop::before{opacity:.30!important;mix-blend-mode:normal!important}
  body.bk-glass-v344 .site-backdrop::after{opacity:.13!important}
  body.bk-glass-v344 .topbar{
    background:linear-gradient(180deg,rgba(32,16,10,.88),rgba(39,19,11,.82))!important;
    -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)
  }
  body.bk-glass-v344 .category-strip{
    background:linear-gradient(180deg,rgba(24,11,7,.84),rgba(25,12,8,.70))!important;
    -webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)
  }
  body.bk-glass-v344 .page,
  body.bk-glass-v344 .page--cover,
  body.bk-glass-v344 .page--history,
  body.bk-glass-v344 .page--contact,
  body.bk-glass-v344 .page--menu{
    background:radial-gradient(circle at 16% 12%,rgba(189,112,50,.11),transparent 34%),linear-gradient(135deg,rgba(41,20,12,.83),rgba(51,26,15,.79) 54%,rgba(35,17,10,.82))!important;
    -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)
  }
  body.bk-glass-v344 .page--menu.has-category-bg{
    background-image:linear-gradient(rgba(16,8,5,.63),rgba(16,8,5,.66)),var(--bk-category-bg)!important
  }
  body.bk-glass-v344 .page--menu .dish{
    background:linear-gradient(135deg,rgba(55,29,18,.76),rgba(36,18,11,.72))!important;border-color:rgba(217,163,93,.20)!important
  }
  body.bk-glass-v344 .site-trust-section{background:linear-gradient(180deg,rgba(21,10,6,.84),rgba(29,14,8,.90))!important}
  body.bk-glass-v344 .review-platform-card,
  body.bk-glass-v344 .google-review-showcase,
  body.bk-glass-v344 .google-review-card,
  body.bk-glass-v344 .location-card,
  body.bk-glass-v344 .public-map-card{
    background:rgba(55,29,17,.70)!important;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)
  }
  body.bk-glass-v344 .mobile-bottom-nav{display:none!important}
}

/* =====================================================================
   v3.4.5 — History editorial refresh
   ===================================================================== */
@media (min-width:901px){
  body.bk-glass-v344 .history-page-content{padding:34px 40px 34px}
  body.bk-glass-v344 .history-story-head{
    max-width:1040px;margin:0 auto 28px;padding:26px 28px 24px;
    border:1px solid rgba(221,167,99,.18);border-radius:24px;
    background:linear-gradient(135deg,rgba(72,38,23,.58),rgba(43,22,14,.46));
    -webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);
    box-shadow:0 18px 42px rgba(0,0,0,.14);text-align:left;
  }
  body.bk-glass-v344 .history-story-head .bk-history-e1{width:104px;margin:0 0 12px;opacity:.8}
  body.bk-glass-v344 .history-story-head .page-kicker{margin-bottom:9px;color:#e3aa63}
  body.bk-glass-v344 .history-story-head h2{
    margin:0;color:#fff3df;font-family:var(--bk-font-heading)!important;font-size:clamp(48px,5vw,72px);font-weight:400;line-height:.92;
  }
  body.bk-glass-v344 .history-story-head p{max-width:720px;margin:14px 0 0;color:#dec3a4;font:600 14px/1.6 Arial,sans-serif}

  body.bk-glass-v344 .history-owner-story{max-width:1120px;margin:0 auto}
  body.bk-glass-v344 .history-story-section{
    display:grid;grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);gap:30px;align-items:start;
    margin:0 0 24px;padding:28px;border:1px solid rgba(220,165,96,.16);border-radius:26px;
    background:linear-gradient(135deg,rgba(57,29,18,.66),rgba(38,19,12,.53));
    -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
    box-shadow:0 18px 40px rgba(0,0,0,.13);
  }
  body.bk-glass-v344 .history-story-section.is-reverse{grid-template-columns:minmax(280px,.88fr) minmax(0,1.12fr)}
  body.bk-glass-v344 .history-story-section.is-reverse .history-story-copy{grid-column:2}
  body.bk-glass-v344 .history-story-section.is-reverse .history-story-visual{grid-column:1;grid-row:1}
  body.bk-glass-v344 .history-story-section.no-visual{grid-template-columns:1fr}
  body.bk-glass-v344 .history-story-copy{min-width:0;padding:2px 2px 0}
  body.bk-glass-v344 .history-story-meta{display:flex;align-items:center;gap:12px;margin:0 0 10px}
  body.bk-glass-v344 .history-story-meta span{color:#dfa85f;font:800 10px/1.2 Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase}
  body.bk-glass-v344 .history-story-meta b{margin-left:auto;color:#f2c57e;font:900 22px/1 Arial,sans-serif;letter-spacing:.04em}
  body.bk-glass-v344 .history-story-copy h3{
    margin:0 0 18px;color:#fff0d9;font-family:var(--bk-font-heading)!important;font-size:clamp(34px,3.4vw,50px);font-weight:400;line-height:.95;
  }
  body.bk-glass-v344 .history-story-paragraph{margin:0 0 13px;color:#e7d3b9;font:500 14px/1.72 Arial,sans-serif}
  body.bk-glass-v344 .history-story-paragraph.is-pullquote{
    margin:18px 0;padding:16px 18px;border-left:3px solid #dca45c;border-radius:0 14px 14px 0;
    background:rgba(223,164,88,.08);color:#fff1dd;font:italic 600 17px/1.55 Georgia,serif;
  }
  body.bk-glass-v344 .history-story-visual{
    position:sticky;top:8px;display:block;width:100%;min-height:360px;max-height:520px;padding:0;overflow:hidden;
    border:1px solid rgba(223,168,98,.20);border-radius:22px;background:#241109;box-shadow:0 14px 34px rgba(0,0,0,.16);
  }
  body.bk-glass-v344 .history-story-visual img{width:100%;height:100%;min-height:360px;max-height:520px;object-fit:cover}
  body.bk-glass-v344 .history-story-visual .history-gallery-caption{font-size:11px;padding:13px 14px;background:linear-gradient(180deg,transparent,rgba(17,8,5,.84))}

  body.bk-glass-v344 .history-signature-card{
    margin:28px 0 30px;padding:28px 30px;border-radius:24px;border:1px solid rgba(222,168,99,.20);
    background:linear-gradient(135deg,rgba(100,53,28,.38),rgba(47,24,14,.52));text-align:center;
    -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  }
  body.bk-glass-v344 .history-signature-card span{display:block;color:#d9ad76;font:800 10px/1 Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
  body.bk-glass-v344 .history-signature-card strong{display:block;margin:9px 0 3px;color:#fff1dc;font-family:var(--bk-font-heading)!important;font-size:42px;font-weight:400;line-height:1}
  body.bk-glass-v344 .history-signature-card small{color:#d9c0a2;font:600 13px/1.4 Arial,sans-serif}

  body.bk-glass-v344 .history-archive-head{margin:30px 0 15px;padding:18px 4px 12px;border-top:1px solid rgba(220,164,94,.18)}
  body.bk-glass-v344 .history-archive-head span{color:#dda55e}
  body.bk-glass-v344 .history-archive-head strong{color:#fff0da;font-size:38px}
  body.bk-glass-v344 .history-archive-head small{color:#d3b99a}
  body.bk-glass-v344 .history-masonry{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  body.bk-glass-v344 .history-archive-photo{aspect-ratio:4/3;border-radius:18px;border:1px solid rgba(221,166,96,.16)}
  body.bk-glass-v344 .history-actions{margin-top:28px}
}


/* =====================================================================
   v3.4.6 — history/cover cleanup
   ===================================================================== */
@media (min-width:901px){
  /* Welcome line is already embedded in the owner artwork */
  body.bk-glass-v344 .cover-subtitle{display:none!important}

  /* Tone down desktop heading sizes for a cleaner editorial feel */
  body.bk-glass-v344 .history-story-head h2{
    font-size:clamp(52px,4.6vw,80px)!important;
    line-height:.94!important;
  }
  body.bk-glass-v344 .history-story-copy h3{
    font-size:clamp(30px,2.4vw,42px)!important;
    line-height:1.02!important;
  }
  body.bk-glass-v344 .history-story-meta b{
    font-size:18px!important;
  }
  body.bk-glass-v344 .history-signature-card strong{
    font-size:34px!important;
    line-height:1.02!important;
  }
  body.bk-glass-v344 .history-archive-head strong{
    font-size:28px!important;
    line-height:1.04!important;
  }
  body.bk-glass-v344 .contact-inner h2,
  body.bk-glass-v344 .page-heading h2{
    font-size:clamp(42px,3.4vw,58px)!important;
    line-height:.96!important;
  }
  body.bk-glass-v344 .history-page-content{padding:32px 38px 32px!important}
}


/* =====================================================================
   v3.4.7 — Desktop card typography & premium polish
   Scope: desktop only. Mobile layout/scroll behavior intentionally untouched.
   ===================================================================== */
@media (min-width:901px){
  /* Give copy slightly more room without changing the two-card desktop rhythm. */
  body.bk-glass-v344 .dish-list{
    gap:20px!important;
  }
  body.bk-glass-v344 .page--menu .dish{
    grid-template-columns:minmax(160px,31%) minmax(0,1fr)!important;
    border-radius:22px!important;
    border-color:rgba(220,166,96,.17)!important;
    background:linear-gradient(135deg,rgba(61,32,19,.72),rgba(37,18,11,.67))!important;
    box-shadow:0 13px 30px rgba(0,0,0,.13)!important;
    overflow:hidden;
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important;
  }
  body.bk-glass-v344 .page--menu .dish:hover{
    transform:translateY(-2px)!important;
    border-color:rgba(225,173,103,.27)!important;
    box-shadow:0 18px 38px rgba(0,0,0,.18)!important;
  }
  body.bk-glass-v344 .page--menu .dish-thumb{
    min-height:176px!important;
    border-right:1px solid rgba(220,166,96,.12)!important;
  }
  body.bk-glass-v344 .page--menu .dish-thumb::after{
    background:linear-gradient(90deg,transparent 74%,rgba(18,8,5,.10))!important;
  }
  body.bk-glass-v344 .page--menu .dish-thumb img{
    transition:transform .45s ease,filter .45s ease!important;
  }
  body.bk-glass-v344 .page--menu .dish:hover .dish-thumb img{
    transform:scale(1.018);
    filter:saturate(1.035) contrast(1.025) brightness(1.01)!important;
  }

  body.bk-glass-v344 .page--menu .dish-copy{
    padding:18px 20px 17px!important;
  }
  body.bk-glass-v344 .page--menu .dish-line{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:12px!important;
    align-items:start!important;
  }

  /* Critical fix: never split Bulgarian/English words in the middle. */
  body.bk-glass-v344 .page--menu .dish-title-btn{
    max-width:100%!important;
    overflow:visible!important;
    min-width:0;
  }
  body.bk-glass-v344 .page--menu .dish-title-btn span{
    display:block!important;
    font-size:clamp(27px,1.72vw,33px)!important;
    line-height:1.01!important;
    letter-spacing:-.012em;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
    text-wrap:pretty;
    color:#f6e7cf!important;
    text-shadow:0 1px 10px rgba(0,0,0,.16);
  }

  body.bk-glass-v344 .page--menu .dish-meta{
    gap:7px!important;
    align-items:flex-end!important;
  }
  body.bk-glass-v344 .page--menu .dish-price{
    flex:0 0 auto;
    padding:7px 10px!important;
    border-radius:12px!important;
    background:rgba(23,10,6,.38)!important;
    border:1px solid rgba(218,160,89,.16)!important;
    box-shadow:inset 0 1px rgba(255,255,255,.025);
    font-size:20px!important;
    line-height:1!important;
    letter-spacing:-.015em;
  }
  body.bk-glass-v344 .page--menu .dish-weight{
    font-size:10px!important;
    color:#cfb492!important;
  }
  body.bk-glass-v344 .page--menu .dish-desc{
    margin-top:9px!important;
    color:#d9c3a7!important;
    font-size:12.5px!important;
    line-height:1.55!important;
  }

  body.bk-glass-v344 .page--menu .dish-mini-tags{
    gap:6px!important;
    margin-top:11px!important;
  }
  body.bk-glass-v344 .page--menu .dish-mini-tags span{
    min-height:27px!important;
    padding:0 10px!important;
    border-radius:999px!important;
    background:rgba(93,53,31,.40)!important;
    border:1px solid rgba(222,169,99,.14)!important;
    color:#e5cfb2!important;
    font-size:9.5px!important;
    line-height:1!important;
    white-space:nowrap;
  }

  body.bk-glass-v344 .page--menu .dish-actions{
    display:grid!important;
    grid-template-columns:minmax(104px,1.12fr) minmax(88px,.88fr)!important;
    gap:9px!important;
    width:min(100%,280px);
    margin-top:auto!important;
    padding-top:14px!important;
  }
  body.bk-glass-v344 .page--menu .dish-actions button{
    width:100%;
    min-height:42px!important;
    padding:0 14px!important;
    border-radius:12px!important;
    font-size:10px!important;
    letter-spacing:.035em;
  }
  body.bk-glass-v344 .page--menu .add-to-order{
    box-shadow:0 8px 18px rgba(137,82,30,.16)!important;
  }
  body.bk-glass-v344 .page--menu .dish-more{
    background:rgba(75,39,23,.30)!important;
    border-color:rgba(220,164,93,.18)!important;
    color:#ead7bc!important;
  }

  /* Keep the category/page title hierarchy quieter than the food photography. */
  body.bk-glass-v344 .page--menu .page-heading h2{
    font-size:clamp(38px,3vw,52px)!important;
    line-height:.98!important;
  }
}

@media (min-width:901px) and (max-width:1180px){
  body.bk-glass-v344 .page--menu .dish{
    grid-template-columns:minmax(142px,29%) minmax(0,1fr)!important;
  }
  body.bk-glass-v344 .page--menu .dish-copy{padding:15px 16px!important}
  body.bk-glass-v344 .page--menu .dish-title-btn span{
    font-size:clamp(24px,2.35vw,29px)!important;
  }
  body.bk-glass-v344 .page--menu .dish-price{font-size:18px!important}
  body.bk-glass-v344 .page--menu .dish-actions{width:100%!important}
}


/* =====================================================================
   v3.4.9 — Desktop bottom-control collision hotfix
   Keeps the pager, review/location cue and page content in separate zones.
   Mobile intentionally untouched.
   ===================================================================== */
@media (min-width:901px){
  /* Reserve a real control zone below the book instead of floating controls
     on top of the active page/card content. */
  body.bk-glass-v344 .stage{
    padding-bottom:154px!important;
  }
  body.bk-glass-v344 .book-shell{
    height:min(720px,calc(100% - 8px))!important;
    max-height:100%!important;
    transform:translateY(-10px);
  }

  /* Pager owns the lowest centered row. */
  body.bk-glass-v344 .pager{
    bottom:18px!important;
    min-height:72px!important;
    padding:10px 14px!important;
    gap:14px!important;
    border-radius:20px!important;
    z-index:140!important;
  }
  body.bk-glass-v344 .pager button{
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    min-height:50px!important;
    border-radius:14px!important;
  }
  body.bk-glass-v344 .page-count{
    min-width:112px!important;
    font-size:14px!important;
  }

  /* The reviews/location cue gets a completely separate row above pager. */
  body.bk-glass-v344 .trust-scroll-cue{
    bottom:104px!important;
    min-height:42px!important;
    height:42px!important;
    padding:0 16px!important;
    border-radius:14px!important;
    z-index:136!important;
    white-space:nowrap!important;
  }

  /* Side actions align with the pager row and never sit behind its center. */
  body.bk-glass-v344 .menu-ribbon{
    left:22px!important;
    bottom:25px!important;
    height:58px!important;
    z-index:138!important;
  }
  body.bk-glass-v344 .order-fab{
    right:22px!important;
    bottom:25px!important;
    height:58px!important;
    z-index:138!important;
  }

  /* Content itself must never visually disappear underneath the control dock. */
  body.bk-glass-v344 .page-content{
    padding-bottom:34px!important;
  }
  body.bk-glass-v344 .page-footer{
    margin-bottom:18px!important;
  }
}

/* Short desktop/laptop screens: compact controls while preserving separation. */
@media (min-width:901px) and (max-height:760px){
  body.bk-glass-v344 .stage{padding-bottom:132px!important}
  body.bk-glass-v344 .book-shell{transform:translateY(-6px)}
  body.bk-glass-v344 .pager{
    bottom:12px!important;
    min-height:62px!important;
    padding:7px 11px!important;
  }
  body.bk-glass-v344 .pager button{
    width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important
  }
  body.bk-glass-v344 .trust-scroll-cue{
    bottom:84px!important;
    height:36px!important;
    min-height:36px!important;
  }
  body.bk-glass-v344 .menu-ribbon,
  body.bk-glass-v344 .order-fab{
    bottom:18px!important;
    height:50px!important;
  }
}


/* =====================================================================
   v3.4.10 — Taller desktop book / compact bottom control dock
   Restores vertical content space lost in 3.4.9 while keeping controls clear.
   Mobile intentionally untouched.
   ===================================================================== */
@media (min-width:1200px){
  body.bk-glass-v344 .stage{
    padding-top:16px!important;
    padding-bottom:78px!important;
  }

  body.bk-glass-v344 .book-shell{
    height:min(820px,calc(100% - 4px))!important;
    max-height:none!important;
    transform:translateY(-3px)!important;
  }

  /* Pager and review/location cue share one dock row instead of stacking. */
  body.bk-glass-v344 .pager{
    bottom:12px!important;
    min-height:58px!important;
    padding:7px 11px!important;
    gap:11px!important;
    border-radius:18px!important;
  }
  body.bk-glass-v344 .pager button{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    border-radius:13px!important;
  }
  body.bk-glass-v344 .page-count{
    min-width:104px!important;
    font-size:13px!important;
  }

  body.bk-glass-v344 .trust-scroll-cue{
    left:50%!important;
    right:auto!important;
    bottom:20px!important;
    transform:translateX(-250px)!important;
    min-height:40px!important;
    height:40px!important;
    padding:0 15px!important;
    border-radius:13px!important;
  }

  body.bk-glass-v344 .menu-ribbon{
    bottom:14px!important;
    height:54px!important;
  }
  body.bk-glass-v344 .order-fab{
    bottom:14px!important;
    height:54px!important;
  }

  body.bk-glass-v344 .page-content{
    padding-bottom:28px!important;
  }
  body.bk-glass-v344 .page-footer{
    margin-bottom:14px!important;
  }
}

/* Medium desktop/laptops: still taller than 3.4.9, but keep controls stacked
   to avoid horizontal collisions at narrower widths. */
@media (min-width:901px) and (max-width:1199px){
  body.bk-glass-v344 .stage{
    padding-top:14px!important;
    padding-bottom:116px!important;
  }
  body.bk-glass-v344 .book-shell{
    height:min(760px,calc(100% - 2px))!important;
    max-height:none!important;
    transform:translateY(-4px)!important;
  }
  body.bk-glass-v344 .pager{
    bottom:10px!important;
    min-height:56px!important;
    padding:6px 10px!important;
  }
  body.bk-glass-v344 .pager button{
    width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important
  }
  body.bk-glass-v344 .trust-scroll-cue{
    left:50%!important;
    right:auto!important;
    bottom:72px!important;
    transform:translateX(-50%)!important;
    height:34px!important;
    min-height:34px!important;
  }
}

/* Short but wide screens: prioritize content height while maintaining a safe dock. */
@media (min-width:1200px) and (max-height:760px){
  body.bk-glass-v344 .stage{
    padding-top:10px!important;
    padding-bottom:70px!important;
  }
  body.bk-glass-v344 .book-shell{
    height:calc(100% - 2px)!important;
    transform:translateY(-2px)!important;
  }
  body.bk-glass-v344 .pager{
    bottom:8px!important;
    min-height:52px!important;
  }
  body.bk-glass-v344 .pager button{
    width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important
  }
  body.bk-glass-v344 .trust-scroll-cue{
    bottom:14px!important;
    height:36px!important;
    min-height:36px!important;
    transform:translateX(-238px)!important;
  }
  body.bk-glass-v344 .menu-ribbon,
  body.bk-glass-v344 .order-fab{
    bottom:10px!important;
    height:48px!important;
  }
}


/* =====================================================================
   v3.4.11 — restore desktop side category ribbon
   3.4.10 accidentally inherited dock height on the vertical ribbon.
   ===================================================================== */
@media (min-width:901px){
  body.bk-glass-v344 .menu-ribbon{
    position:fixed!important;
    left:14px!important;
    right:auto!important;
    top:50%!important;
    bottom:auto!important;
    transform:translateY(-50%)!important;
    width:64px!important;
    height:236px!important;
    min-height:236px!important;
    max-height:236px!important;
    padding:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:15px!important;
    overflow:hidden!important;
    border-radius:0 30px 30px 0!important;
    z-index:180!important;
  }
  body.bk-glass-v344 .menu-ribbon:hover{
    width:72px!important;
  }
  body.bk-glass-v344 .menu-ribbon .ribbon-copy{
    writing-mode:vertical-rl!important;
    transform:rotate(180deg)!important;
    gap:7px!important;
  }
  body.bk-glass-v344 .menu-ribbon .ribbon-copy small{display:inline!important}
  body.bk-glass-v344 .menu-ribbon .ribbon-arrows{display:flex!important}
}

@media (min-width:901px) and (max-height:720px){
  body.bk-glass-v344 .menu-ribbon{
    height:196px!important;
    min-height:196px!important;
    max-height:196px!important;
  }
}


/* =====================================================================
   v3.4.16 — desktop cart visibility guard
   ===================================================================== */
@media (min-width:901px){
  body:not(.order-open) .order-fab:not(.is-drawer-open){
    display:flex!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}

/* =====================================================================
   v3.5.0 — final UX polish: recommendations, state badges, preview
   ===================================================================== */
@media (min-width:901px){
  .bk-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
  .bk-preview-banner{position:fixed;z-index:25000;top:8px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:9px;padding:8px 13px;border:1px solid rgba(245,191,112,.35);border-radius:999px;background:rgba(27,14,9,.94);color:#f8e6ca;box-shadow:0 10px 28px rgba(0,0,0,.25);font:700 11px/1 Arial,sans-serif;backdrop-filter:blur(10px)}
  .bk-preview-banner strong{color:#efb765;letter-spacing:.12em}.bk-preview-banner span{color:#d8c1a2}
  body.bk-glass-v344 .page--cover .cover-inner{max-width:980px!important;padding-bottom:18px!important}
  .bk-featured-strip{width:min(920px,92%);margin:20px auto 0;padding-top:13px;border-top:1px solid rgba(225,171,99,.14)}
  .bk-featured-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:9px;text-align:left}
  .bk-featured-head span{color:#e0a65f;font:900 9px/1 Arial,sans-serif;letter-spacing:.17em}.bk-featured-head small{color:#cbb293;font:600 10px/1 Arial,sans-serif}
  .bk-featured-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
  .bk-featured-card{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:9px;min-height:70px;padding:7px;border:1px solid rgba(222,165,95,.16);border-radius:14px;background:linear-gradient(135deg,rgba(69,36,22,.58),rgba(40,20,12,.48));color:#f8e8d1;text-align:left;cursor:pointer;box-shadow:0 10px 24px rgba(0,0,0,.10);transition:transform .18s ease,border-color .18s ease,background .18s ease}
  .bk-featured-card:hover{transform:translateY(-2px);border-color:rgba(230,180,110,.28);background:linear-gradient(135deg,rgba(78,41,24,.68),rgba(46,22,13,.58))}
  .bk-featured-card img{width:58px;height:54px;object-fit:cover;border-radius:10px}.bk-featured-card span{min-width:0}.bk-featured-card strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:#fff1dd;font-family:var(--bk-font-item)!important;font-size:16px;font-weight:400;line-height:1.05}.bk-featured-card small{display:block;margin-top:5px;color:#efba73;font:900 12px/1 Arial,sans-serif}
  .bk-dish-state{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0 0}.bk-dish-state span{display:inline-flex;align-items:center;min-height:23px;padding:0 8px;border-radius:999px;font:800 9px/1 Arial,sans-serif;letter-spacing:.02em}.bk-dish-state .featured{background:rgba(138,100,181,.18);color:#dfc4ff;border:1px solid rgba(177,135,223,.22)}.bk-dish-state .special{background:rgba(182,109,65,.18);color:#f1bf8d;border:1px solid rgba(220,149,91,.24)}.bk-dish-state .unavailable{background:rgba(146,78,69,.18);color:#e9aaa1;border:1px solid rgba(202,114,103,.22)}
  body.bk-glass-v344 .dish.unavailable{opacity:.72!important}.dish.unavailable .dish-thumb img{filter:saturate(.58) brightness(.78)}
  .chooser-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:13px 0 8px}.chooser-presets button{min-height:38px;padding:0 10px;border:1px solid rgba(222,166,96,.24);border-radius:10px;background:rgba(76,40,23,.54);color:#f4dfc2;font:800 10px/1 Arial,sans-serif;cursor:pointer}.chooser-presets button.active{background:linear-gradient(180deg,#eab366,#c98435);color:#24120b}
  .dish-detail-actions .primary-btn:disabled{opacity:.45;cursor:not-allowed;filter:saturate(.45)}
}
@media (min-width:901px){
  body.bk-glass-v344 .page--menu .dish.no-image{grid-template-columns:1fr!important}
  body.bk-glass-v344 .page--menu .dish.no-image .dish-thumb{display:none!important}
  body.bk-glass-v344 .page--menu .dish.no-image .dish-copy{padding:18px 18px 16px!important}
}


/* =====================================================================
   v3.7.3 — edge-to-edge page footer + visible Graycape referral
   ===================================================================== */
@media (min-width:901px){
  body[data-bk-theme] .page-footer{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:10px clamp(20px,2.2vw,34px) 11px!important;
    min-height:36px!important;
    box-sizing:border-box!important;
    align-self:stretch!important;
    border-top:1px solid color-mix(in srgb,var(--bk-theme-border) 88%,var(--bk-theme-accent) 12%)!important;
    background:linear-gradient(180deg,color-mix(in srgb,var(--bk-theme-surface) 78%,transparent),color-mix(in srgb,var(--bk-theme-bg) 90%,transparent))!important;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
    box-shadow:inset 0 1px 0 color-mix(in srgb,var(--bk-theme-heading) 5%,transparent)!important;
  }
  body[data-bk-theme] .page-footer>span:first-child{
    grid-column:1!important;
    justify-self:start!important;
    padding:0!important;
    margin:0!important;
    background:none!important;
    border:0!important;
    box-shadow:none!important;
    color:var(--bk-theme-muted)!important;
    opacity:.9!important;
  }
  body[data-bk-theme] .page-footer>b{
    grid-column:2!important;
    justify-self:center!important;
    color:var(--bk-theme-accent)!important;
    opacity:1!important;
  }

  body[data-bk-theme] .site-footer{
    background:linear-gradient(180deg,color-mix(in srgb,var(--bk-theme-header-bg) 94%,black 6%),color-mix(in srgb,var(--bk-theme-header-bg) 86%,black 14%))!important;
    color:var(--bk-theme-header-text)!important;
    border-top:1px solid color-mix(in srgb,var(--bk-theme-accent) 34%,transparent)!important;
  }
  body[data-bk-theme] .site-footer-inner{
    width:min(1220px,calc(100% - 40px))!important;
    min-height:84px!important;
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px 18px!important;
    padding:14px 0!important;
    font-size:12px!important;
  }
  body[data-bk-theme] .site-footer-credit{
    display:inline-flex!important;
    align-items:baseline!important;
    gap:6px!important;
    color:color-mix(in srgb,var(--bk-theme-header-text) 78%,transparent)!important;
  }
  body[data-bk-theme] .site-footer-graycape{
    color:var(--bk-theme-accent)!important;
    font-weight:900!important;
    font-size:15px!important;
    letter-spacing:.035em!important;
    text-decoration:none!important;
    text-shadow:0 1px 10px color-mix(in srgb,var(--bk-theme-accent) 18%,transparent)!important;
  }
}


/* =====================================================================
   v3.7.4 — clean Graycape credit, no referral question CTA
   ===================================================================== */
@media (min-width:901px){
  body[data-bk-theme] .site-footer-inner{
    min-height:58px!important;
    gap:0!important;
    padding:12px 0!important;
  }
  body[data-bk-theme] .site-footer-credit{
    display:inline-flex!important;
    align-items:baseline!important;
    justify-content:center!important;
    gap:7px!important;
    font-size:12px!important;
  }
  body[data-bk-theme] .site-footer-graycape{
    color:var(--bk-theme-accent)!important;
    font-size:16px!important;
    font-weight:900!important;
    letter-spacing:.045em!important;
    text-decoration:none!important;
  }
  body[data-bk-theme] .site-footer-graycape:hover{
    text-decoration:underline!important;
    text-underline-offset:3px!important;
  }
}


/* =====================================================================
   v3.7.6 — desktop search overlay stacking hotfix
   Search must render above the blur/scrim layer, matching mobile behavior.
   ===================================================================== */
@media (min-width:901px){
  body .search-panel{
    z-index:17150!important;
    isolation:isolate!important;
    filter:none!important;
  }
  body .search-panel.open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  body .scrim{
    z-index:17010!important;
  }
  body .search-panel .search-input,
  body .search-panel .search-results{
    position:relative!important;
    z-index:2!important;
  }
}

/* =====================================================================
   v4.2.3 — desktop Quick Recommendation readability
   Only the chooser popup is enlarged; dish cards and menu layout are untouched.
   ===================================================================== */
@media (min-width:901px){
  body.bk-reference-v340 #smartChooserModal{
    padding:28px!important;
  }
  body.bk-reference-v340 #smartChooserModal .chooser-card{
    width:min(900px,calc(100vw - 80px))!important;
    max-height:min(88dvh,760px)!important;
    padding:38px 42px 36px!important;
    border-radius:16px!important;
  }
  body.bk-reference-v340 #smartChooserModal .smart-modal-close{
    top:14px!important;
    right:14px!important;
    width:46px!important;
    height:46px!important;
    border-radius:10px!important;
    font-size:24px!important;
  }
  body.bk-reference-v340 #smartChooserModal .review-modal-kicker{
    font-size:10px!important;
    letter-spacing:.18em!important;
  }
  body.bk-reference-v340 #smartChooserModal .chooser-card h2{
    margin:10px 56px 20px 0!important;
    font-size:clamp(50px,4.5vw,68px)!important;
    line-height:.98!important;
  }
  body.bk-reference-v340 #smartChooserModal .chooser-presets{
    gap:10px!important;
    margin:16px 0 14px!important;
  }
  body.bk-reference-v340 #smartChooserModal .chooser-presets button{
    min-height:52px!important;
    padding:0 16px!important;
    border-radius:12px!important;
    font-size:14px!important;
    line-height:1.15!important;
  }
  body.bk-reference-v340 #smartChooserModal .chooser-tags{
    gap:9px!important;
    margin:14px 0 22px!important;
  }
  body.bk-reference-v340 #smartChooserModal .chooser-tags button{
    min-height:42px!important;
    padding:0 14px!important;
    font-size:12px!important;
    line-height:1!important;
  }
  body.bk-reference-v340 #smartChooserModal .chooser-results{
    gap:10px!important;
  }
  body.bk-reference-v340 #smartChooserModal .chooser-results>p{
    margin:10px 0 0!important;
    font-size:17px!important;
    line-height:1.5!important;
    text-align:left!important;
  }
  body.bk-reference-v340 #smartChooserModal .chooser-result{
    min-height:74px!important;
    padding:14px 16px!important;
    border-radius:11px!important;
  }
  body.bk-reference-v340 #smartChooserModal .chooser-result strong{
    font-size:23px!important;
    line-height:1.08!important;
  }
  body.bk-reference-v340 #smartChooserModal .chooser-result span{
    margin-top:4px!important;
    font-size:12px!important;
    line-height:1.25!important;
  }
  body.bk-reference-v340 #smartChooserModal .chooser-result b{
    font-size:24px!important;
  }
}
\n\n/* =====================================================================\n   v4.2.6 — premium Graycape Marketing signature\n   Brand-only footer refinement. No menu/content layout changes.\n   ===================================================================== */\n@media (min-width:901px){\n  body[data-bk-theme] .site-footer{\n    padding:0!important;\n    border-top:1px solid color-mix(in srgb,var(--bk-theme-accent) 42%,transparent)!important;\n    background:\n      radial-gradient(circle at 50% 0,color-mix(in srgb,var(--bk-theme-accent) 10%,transparent),transparent 46%),\n      linear-gradient(180deg,color-mix(in srgb,var(--bk-theme-header-bg) 96%,black 4%),color-mix(in srgb,var(--bk-theme-header-bg) 84%,black 16%))!important;\n  }\n  body[data-bk-theme] .site-footer-inner{\n    width:min(1220px,calc(100% - 40px))!important;\n    min-height:112px!important;\n    padding:18px 0 20px!important;\n    display:flex!important;\n    align-items:center!important;\n    justify-content:center!important;\n  }\n  body[data-bk-theme] .site-footer-signature{\n    position:relative!important;\n    display:flex!important;\n    flex-direction:column!important;\n    align-items:center!important;\n    justify-content:center!important;\n    min-width:min(560px,90vw)!important;\n    padding:15px 34px 14px!important;\n    border:1px solid color-mix(in srgb,var(--bk-theme-accent) 30%,transparent)!important;\n    border-radius:16px!important;\n    background:linear-gradient(180deg,color-mix(in srgb,var(--bk-theme-header-text) 4%,transparent),transparent)!important;\n    box-shadow:inset 0 1px 0 color-mix(in srgb,var(--bk-theme-header-text) 8%,transparent),0 16px 34px rgba(0,0,0,.10)!important;\n    text-align:center!important;\n  }\n  body[data-bk-theme] .site-footer-signature::before,\n  body[data-bk-theme] .site-footer-signature::after{\n    content:"";\n    position:absolute;\n    top:50%;\n    width:46px;\n    height:1px;\n    background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--bk-theme-accent) 60%,transparent));\n  }\n  body[data-bk-theme] .site-footer-signature::before{right:calc(100% + 18px)}\n  body[data-bk-theme] .site-footer-signature::after{left:calc(100% + 18px);transform:scaleX(-1)}\n  body[data-bk-theme] .site-footer-kicker{\n    margin-bottom:7px!important;\n    color:color-mix(in srgb,var(--bk-theme-header-text) 58%,transparent)!important;\n    font:800 9px/1 Arial,sans-serif!important;\n    letter-spacing:.22em!important;\n  }\n  body[data-bk-theme] .site-footer-mainline{\n    display:flex!important;\n    align-items:center!important;\n    justify-content:center!important;\n    gap:8px!important;\n    min-height:32px!important;\n    color:color-mix(in srgb,var(--bk-theme-header-text) 86%,transparent)!important;\n    font:600 14px/1.2 Arial,sans-serif!important;\n  }\n  body[data-bk-theme] .site-footer-heartmark{\n    display:inline-flex!important;\n    align-items:center!important;\n    justify-content:center!important;\n    width:18px!important;\n    height:18px!important;\n    color:#c95b4c!important;\n    filter:drop-shadow(0 2px 8px rgba(201,91,76,.25));\n  }\n  body[data-bk-theme] .site-footer-heartmark svg{width:100%!important;height:100%!important;fill:currentColor!important;display:block!important}\n  body[data-bk-theme] .site-footer-graycape{\n    display:inline-flex!important;\n    align-items:center!important;\n    min-height:32px!important;\n    color:var(--bk-theme-accent)!important;\n    font:900 20px/1 Arial,sans-serif!important;\n    letter-spacing:.035em!important;\n    text-decoration:none!important;\n    text-shadow:0 2px 18px color-mix(in srgb,var(--bk-theme-accent) 22%,transparent)!important;\n    transition:transform .18s ease,color .18s ease,text-shadow .18s ease!important;\n  }\n  body[data-bk-theme] .site-footer-graycape:hover{\n    transform:translateY(-1px)!important;\n    color:color-mix(in srgb,var(--bk-theme-accent) 82%,white 18%)!important;\n    text-decoration:none!important;\n    text-shadow:0 3px 22px color-mix(in srgb,var(--bk-theme-accent) 34%,transparent)!important;\n  }\n  body[data-bk-theme] .site-footer-expertise{\n    margin-top:8px!important;\n    color:color-mix(in srgb,var(--bk-theme-header-text) 66%,transparent)!important;\n    font:700 10px/1.25 Arial,sans-serif!important;\n    letter-spacing:.08em!important;\n  }\n}\n
/* =====================================================================
   v4.2.7 — Graycape signature footer correction
   Compact agency-style signature. No SVG heart; avoids inherited SVG sizing.
   ===================================================================== */
@media (min-width:901px){
  body[data-bk-theme] .site-footer{
    min-height:0!important;
    padding:0!important;
    overflow:hidden!important;
    border-top:1px solid color-mix(in srgb,var(--bk-theme-accent) 30%,transparent)!important;
    background:
      linear-gradient(180deg,color-mix(in srgb,var(--bk-theme-header-bg) 97%,black 3%),color-mix(in srgb,var(--bk-theme-header-bg) 88%,black 12%))!important;
  }
  body[data-bk-theme] .site-footer-inner{
    width:min(1180px,calc(100% - 48px))!important;
    min-height:118px!important;
    padding:23px 0 25px!important;
    margin:0 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
  }
  body[data-bk-theme] .bk-gc-signature{
    position:relative!important;
    width:min(620px,100%)!important;
    display:grid!important;
    justify-items:center!important;
    gap:7px!important;
    padding:0 72px!important;
    box-sizing:border-box!important;
    text-align:center!important;
  }
  body[data-bk-theme] .bk-gc-signature::before,
  body[data-bk-theme] .bk-gc-signature::after{
    content:""!important;
    position:absolute!important;
    top:29px!important;
    width:54px!important;
    height:1px!important;
    background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--bk-theme-accent) 54%,transparent))!important;
  }
  body[data-bk-theme] .bk-gc-signature::before{left:0!important}
  body[data-bk-theme] .bk-gc-signature::after{right:0!important;transform:scaleX(-1)!important}
  body[data-bk-theme] .bk-gc-made{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    color:color-mix(in srgb,var(--bk-theme-header-text) 70%,transparent)!important;
    font:800 10px/1 Arial,sans-serif!important;
    letter-spacing:.14em!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
  }
  body[data-bk-theme] .bk-gc-heart{
    display:inline!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
    padding:0!important;
    margin:0 1px!important;
    color:#d46757!important;
    font:900 13px/1 Arial,sans-serif!important;
    line-height:1!important;
    text-shadow:0 1px 8px rgba(212,103,87,.24)!important;
    transform:none!important;
  }
  body[data-bk-theme] .bk-gc-brand{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:34px!important;
    padding:0!important;
    border:0!important;
    background:none!important;
    color:var(--bk-theme-accent)!important;
    font:900 25px/1 Arial,sans-serif!important;
    letter-spacing:.045em!important;
    text-decoration:none!important;
    text-shadow:0 2px 18px color-mix(in srgb,var(--bk-theme-accent) 20%,transparent)!important;
    transition:transform .18s ease,color .18s ease!important;
  }
  body[data-bk-theme] .bk-gc-brand:hover{
    transform:translateY(-1px)!important;
    color:color-mix(in srgb,var(--bk-theme-accent) 84%,white 16%)!important;
    text-decoration:none!important;
  }
  body[data-bk-theme] .bk-gc-meta{
    color:color-mix(in srgb,var(--bk-theme-header-text) 56%,transparent)!important;
    font:700 9px/1.2 Arial,sans-serif!important;
    letter-spacing:.16em!important;
    text-transform:uppercase!important;
  }
}


/* v4.3.0 — Details button tactile feedback */
.dish-detail-trigger{transition:transform .14s ease,filter .14s ease,background-color .14s ease,border-color .14s ease!important;will-change:transform}
.dish-detail-trigger:active,.dish-detail-trigger.bk-detail-tap{transform:scale(.955)!important;filter:brightness(1.18)!important}
.dish-more.bk-detail-tap,.dish-more:active{background:color-mix(in srgb,var(--bk-theme-accent) 16%,transparent)!important;border-color:color-mix(in srgb,var(--bk-theme-accent) 58%,transparent)!important}
@keyframes bkDetailTapPulse{0%{transform:scale(1)}45%{transform:scale(.95)}100%{transform:scale(1)}}
.dish-detail-trigger.bk-detail-tap{animation:bkDetailTapPulse .24s ease-out}

/* v4.3.1 — explicit visual transitions between meat subgroups */
@media (min-width:901px){
  body.bk-reference-v340 .page--menu .dish-group{
    margin-bottom:26px!important;
  }
  body.bk-reference-v340 .page--menu .dish-group + .dish-group{
    margin-top:40px!important;
    padding-top:20px!important;
    border-top:1px solid color-mix(in srgb,var(--bk-theme-accent) 38%,transparent)!important;
  }
  body.bk-reference-v340 .page--menu .dish-group > .group-title{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
    margin:12px 0 20px!important;
    padding:16px 20px!important;
    border:1px solid color-mix(in srgb,var(--bk-theme-accent) 72%,var(--bk-theme-border))!important;
    border-left:6px solid var(--bk-theme-accent)!important;
    border-radius:11px!important;
    background:color-mix(in srgb,var(--bk-theme-surface) 81%,var(--bk-theme-accent) 19%)!important;
    box-shadow:0 8px 24px rgba(0,0,0,.12)!important;
    color:var(--bk-theme-heading)!important;
    font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif!important;
    font-size:clamp(21px,2.2vw,27px)!important;
    font-weight:850!important;
    line-height:1.3!important;
    letter-spacing:.035em!important;
    text-align:left!important;
    text-transform:uppercase!important;
  }
}


/* v4.3.2 — restrained, monochrome meat-type pictograms */
body.bk-reference-v340 .page--menu .dish-group > .group-title.bk-meat-group-title{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  justify-content:flex-start!important;
}
body.bk-reference-v340 .page--menu .bk-meat-group-icon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 43px;
  width:43px;
  height:43px;
  border-radius:10px;
  color:color-mix(in srgb,var(--bk-theme-accent) 55%,var(--bk-theme-heading) 45%);
  background:color-mix(in srgb,var(--bk-theme-accent) 11%,transparent);
  border:1px solid color-mix(in srgb,var(--bk-theme-accent) 30%,transparent);
  box-sizing:border-box;
}
body.bk-reference-v340 .page--menu .bk-meat-group-icon svg{
  width:27px;
  height:27px;
  display:block;
  overflow:visible;
  flex:none;
}
body.bk-reference-v340 .page--menu .bk-meat-group-label{
  flex:1 1 auto;
  min-width:0;
  overflow-wrap:break-word;
}
