/* Kebun Bistro structured menu brochure.
 * Site Core owns catalog data/markup. Theme owns brochure surface and internal layout.
 */
.kbn-menu-brochure,.kbn-menu-brochure *{box-sizing:border-box}
.kbn-menu-brochure{--kbn-menu-ink:#30291f;--kbn-menu-muted:#665b49;--kbn-menu-rule:rgba(69,52,31,.22);--kbn-menu-accent:#86642f;position:relative;isolation:isolate;width:100%;overflow:hidden;padding:clamp(38px,5vw,70px);color:var(--kbn-menu-ink);background-color:#e8d5aa;background-image:radial-gradient(circle at 14% 21%,rgba(82,60,31,.055) 0 .55px,transparent .75px),radial-gradient(circle at 78% 64%,rgba(255,255,255,.18) 0 .5px,transparent .72px),linear-gradient(90deg,rgba(63,44,22,.035),transparent 8%,transparent 47%,rgba(255,255,255,.065) 50%,transparent 53%,transparent 92%,rgba(63,44,22,.045)),radial-gradient(ellipse at center,rgba(255,247,218,.22) 0 48%,rgba(103,72,34,.06) 79%,rgba(54,35,18,.15) 100%),linear-gradient(180deg,#ead9b0 0%,#e5d0a1 52%,#dfc795 100%);background-size:5px 5px,7px 7px,100% 100%,100% 100%,100% 100%;box-shadow:0 26px 68px rgba(0,0,0,.27),inset 0 0 62px rgba(54,35,18,.12)}
.kbn-menu-brochure[data-collection="tapas"],.kbn-menu-brochure[data-collection="wine"],.kbn-menu-brochure[data-collection="cocktails"]{--kbn-menu-accent:#783f36}
.kbn-menu-brochure[data-collection="natural-wine"],.kbn-menu-brochure[data-collection="patissiere"]{--kbn-menu-accent:#63705a}
.kbn-menu-brochure[data-collection="brunch"],.kbn-menu-brochure[data-collection="brunch-cocktails"],.kbn-menu-brochure[data-collection="main-menu"]{--kbn-menu-accent:#86642f}
.kbn-menu-brochure:before,.kbn-menu-brochure:after{content:"";position:absolute;z-index:-1;width:84px;height:84px;opacity:.42;pointer-events:none;background:linear-gradient(var(--kbn-menu-accent),var(--kbn-menu-accent)) 0 0/32px 1px no-repeat,linear-gradient(var(--kbn-menu-accent),var(--kbn-menu-accent)) 0 0/1px 32px no-repeat,radial-gradient(circle at 0 0,transparent 0 17px,var(--kbn-menu-accent) 17.5px 18.5px,transparent 19px)}
.kbn-menu-brochure:before{left:18px;top:18px}.kbn-menu-brochure:after{right:18px;bottom:18px;transform:rotate(180deg)}
.kbn-menu-brochure__masthead{max-width:760px;margin:0 auto clamp(26px,4vw,44px);text-align:center}
.kbn-menu-brochure .kbn-menu-brochure__masthead h2{max-width:none;margin:4px 0 10px;font-size:clamp(42px,5vw,68px);line-height:.98;letter-spacing:-.025em;text-wrap:balance}
.kbn-menu-brochure__eyebrow{margin:0;color:var(--kbn-menu-accent);font-family:var(--font-ui);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.kbn-menu-brochure__note{margin:0;color:var(--kbn-menu-muted);font-size:13px;letter-spacing:.025em}
.kbn-menu-brochure__nav{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;margin:0 0 clamp(30px,4vw,46px);padding:13px 18px;border-block:1px solid var(--kbn-menu-rule);font-family:var(--font-ui);font-size:11px;font-weight:700;letter-spacing:.065em;text-transform:uppercase}
.kbn-menu-brochure__nav a{color:var(--kbn-menu-accent);text-decoration:none;text-underline-offset:4px}.kbn-menu-brochure__nav a:hover,.kbn-menu-brochure__nav a:focus-visible{text-decoration:underline}
.kbn-menu-brochure__categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(34px,4.2vw,60px) clamp(38px,5vw,72px);align-items:start}
.kbn-menu-brochure[data-category-count="1"] .kbn-menu-brochure__categories{grid-template-columns:minmax(0,min(740px,100%));justify-content:center}
.kbn-menu-brochure__category{min-width:0;margin:0;padding-top:8px;scroll-margin-top:120px;text-align:left}
.kbn-menu-brochure .kbn-menu-brochure__category h3{max-width:none;margin:0 0 20px;padding:0 0 10px;border-bottom:1px solid var(--kbn-menu-accent);font-size:clamp(28px,2.5vw,38px);line-height:1.05;letter-spacing:-.018em}
.kbn-menu-brochure__items{display:grid;gap:0}
.kbn-menu-brochure__item{min-width:0;padding:10px 0 11px;break-inside:avoid}.kbn-menu-brochure__item+.kbn-menu-brochure__item{margin-top:4px;padding-top:15px;border-top:1px solid rgba(69,52,31,.10)}
.kbn-menu-brochure__item-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;min-width:0}
.kbn-menu-brochure__item h4{min-width:0;margin:0;color:var(--kbn-menu-ink);font-family:var(--font-body);font-size:16px;font-weight:800;line-height:1.3;letter-spacing:.005em;overflow-wrap:anywhere}
.kbn-menu-brochure__price{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:3px 6px;max-width:220px;color:var(--kbn-menu-ink);font-family:var(--font-ui);font-size:14px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.3;white-space:nowrap;text-align:right}
.kbn-menu-brochure__price-variant{display:inline-flex;align-items:baseline;gap:3px}.kbn-menu-brochure__price-variant small{color:var(--kbn-menu-accent);font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.kbn-menu-brochure__price-sep{color:rgba(47,42,33,.38)}
.kbn-menu-brochure__description{max-width:58ch;margin:5px 0 0;color:var(--kbn-menu-muted);font-size:13px;line-height:1.52}
.kbn-menu-brochure__modifiers{display:flex;flex-wrap:wrap;gap:3px 13px;margin:6px 0 0;padding:0;list-style:none;color:#554b3d;font-size:11px;font-style:italic;line-height:1.45}.kbn-menu-brochure__modifiers li:before{content:"+";margin-right:4px;color:var(--kbn-menu-accent);font-style:normal}.kbn-menu-brochure__modifiers span{font-style:normal;font-weight:700}
.kbn-menu-brochure__dietary{display:flex;flex-wrap:wrap;gap:0;margin:7px 0 0;color:#52604a;font-family:var(--font-ui);font-size:9px;font-weight:700;letter-spacing:.045em;text-transform:uppercase}.kbn-menu-brochure__dietary span{padding:0;border:0}.kbn-menu-brochure__dietary span+span:before{content:"·";display:inline-block;margin:0 6px;color:var(--kbn-menu-accent)}
.kbn-menu-brochure-fallback{padding:28px 30px;border:1px solid rgba(240,223,184,.2);background:#11130f;color:#c9bda1;font-size:16px;line-height:1.65}.kbn-menu-brochure-fallback p{margin:0}
.kbn-menu-brochure__ornament{position:relative;height:1px;margin-inline:auto;background:linear-gradient(90deg,transparent,var(--kbn-menu-accent) 18%,var(--kbn-menu-accent) 82%,transparent);opacity:.52}.kbn-menu-brochure__ornament:after{content:"";position:absolute;left:50%;top:50%;width:7px;height:7px;border:1px solid var(--kbn-menu-accent);transform:translate(-50%,-50%) rotate(45deg);background:#e5d0a1}.kbn-menu-brochure__ornament--top{width:min(310px,55%);margin-bottom:22px}.kbn-menu-brochure__ornament--bottom{width:min(430px,66%);margin-top:42px}
@media (max-width:1024px){.kbn-menu-brochure{padding:clamp(32px,4.5vw,52px)}.kbn-menu-brochure__categories{gap:34px 42px}.kbn-menu-brochure__price{max-width:190px}}
@media (max-width:768px){.kbn-menu-brochure__categories,.kbn-menu-brochure[data-category-count="1"] .kbn-menu-brochure__categories{grid-template-columns:minmax(0,1fr);justify-content:stretch;gap:34px}.kbn-menu-brochure__category{scroll-margin-top:88px}.kbn-menu-brochure__nav{justify-content:flex-start;overflow-wrap:anywhere}.kbn-menu-brochure:before,.kbn-menu-brochure:after{width:64px;height:64px;opacity:.28}}
@media (max-width:430px){.kbn-menu-brochure{padding:30px 22px}.kbn-menu-brochure .kbn-menu-brochure__masthead h2{font-size:42px}.kbn-menu-brochure .kbn-menu-brochure__category h3{font-size:30px}.kbn-menu-brochure__nav{gap:7px 12px;margin-inline:-4px;padding-inline:4px;font-size:10px}.kbn-menu-brochure__item-head{gap:8px}.kbn-menu-brochure__item h4{font-size:15px}.kbn-menu-brochure__price{max-width:150px;font-size:13px}.kbn-menu-brochure__description{font-size:12px}}
@media (max-width:340px){.kbn-menu-brochure{padding:26px 17px}.kbn-menu-brochure__item-head{grid-template-columns:minmax(0,1fr) auto}.kbn-menu-brochure__price{max-width:128px;gap:2px 4px}.kbn-menu-brochure__price-variant{display:flex}.kbn-menu-brochure:before,.kbn-menu-brochure:after{display:none}}
