:root{--green:#172f25;--gold:#a68035;--ink:#202822;--muted:#5f675e;--paper:#fffdf7;--line:#d8d1bf;--preview-scale:1}
*{box-sizing:border-box}body{margin:0;background:#eae7df;color:var(--ink);font-family:Arial,Helvetica,sans-serif}button,a{touch-action:manipulation}button{cursor:pointer;font:inherit}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}[hidden]{display:none!important}
.top{background:var(--green);border-bottom:3px solid var(--gold);color:#fff;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:15px}.top strong{font-family:Georgia,serif;font-size:23px;letter-spacing:.12em}.top span{display:block;font-size:12px;margin-top:5px;color:#e4dbc4}.top a{color:#fff;border:1px solid #7d8d7e;padding:12px 16px;border-radius:8px;text-decoration:none;white-space:nowrap}
.wrap{max-width:1250px;margin:auto;padding:24px}.cards{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}.card{padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.eyebrow{font-size:11px;font-weight:bold;letter-spacing:.14em;color:#76602e}h1{font-family:Georgia,serif;font-weight:normal;font-size:30px;margin:10px 0}.card h2{font-size:17px;margin:0 0 12px}.catalogueSummary{font-size:16px;line-height:1.5}.muted{color:var(--muted);font-size:13px;line-height:1.5}.status{font-weight:bold;font-size:15px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.actions button,.changes button{border:1px solid #bdc5b9;padding:12px;border-radius:8px;background:#fff;font-size:13px;font-weight:bold;min-height:44px}.printActions button{flex:1;min-width:180px;text-align:left;padding:16px;font-size:16px}.actions .primary{background:var(--green);border-color:var(--green);color:white}.actions .gold{background:#ebd9af;border-color:#c5a05e;color:#342b17}.actions small{display:block;font-size:11px;font-weight:normal;margin-top:7px;line-height:1.4}.notice{padding:12px;border:1px solid #c49d45;background:#fff2cf;font-size:13px;line-height:1.5;border-radius:8px;margin-top:12px}.changes{margin-top:18px;border-top:1px solid var(--line);padding-top:15px}.changes summary{font-size:13px;font-weight:bold;cursor:pointer;min-height:30px}.summary{font-size:12px;line-height:1.6;margin:10px 0}.pill{display:block}#message:empty{display:none}#message{font-size:14px;line-height:1.4}.previewHead{margin:26px 0 14px;display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.previewHead h2{font-size:18px;margin:0}.previewHead p{margin:0}
.pages{display:flex;gap:22px;flex-wrap:wrap;align-items:flex-start}.pageFrame{width:148mm;height:210mm;flex:none}.menuPage{width:148mm;height:210mm;background:var(--paper);padding:10mm 12mm 12mm 15mm;position:relative;color:var(--ink);font-family:Arial,Helvetica,sans-serif;box-shadow:0 3px 16px #172f2520;overflow:visible}.menuPage.verso{padding-left:12mm;padding-right:15mm}.menuHeader{height:21mm;border-bottom:.45mm solid var(--gold);margin-bottom:4mm;display:flex;align-items:center;justify-content:space-between;gap:5mm}.menuBrand{font-family:Georgia,'Times New Roman',serif;font-size:20pt;letter-spacing:.045em;color:var(--green);line-height:1}.menuSubtitle{font-size:7pt;letter-spacing:.18em;text-transform:uppercase;color:#756137;margin-top:2mm}.menuHeaderLabel{text-align:right;font-size:7pt;color:#596454;max-width:29mm;line-height:1.4}.menuContent{height:159mm;display:flow-root}.category{font-family:Georgia,'Times New Roman',serif;font-weight:normal;font-size:15pt;line-height:1.2;color:var(--green);margin:4mm 0 1.5mm;padding:0 0 1.5mm;border-bottom:.2mm solid var(--line);break-after:avoid}.category:first-child{margin-top:0}.category .continued{font:7pt Arial,sans-serif;color:var(--muted);margin-left:2mm}.product{padding:2mm 0;border-bottom:.15mm solid #e7e2d5;break-inside:avoid;page-break-inside:avoid;overflow-wrap:anywhere}.productTop{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:4mm;align-items:baseline}.productName{font-size:10.3pt;line-height:1.2;font-weight:bold}.price{font-size:10.3pt;font-weight:bold;white-space:nowrap;font-variant-numeric:tabular-nums}.details{display:flex;flex-wrap:wrap;gap:.7mm 2mm;margin-top:.8mm;font-size:7.5pt;line-height:1.25;color:#535c50}.producer{font-weight:bold}.desc{font-size:8pt;line-height:1.3;color:#485143;margin-top:.8mm}.menuFooter{position:absolute;left:15mm;right:12mm;bottom:7mm;border-top:.2mm solid var(--line);padding-top:2mm;display:flex;justify-content:space-between;gap:5mm;font-size:7pt;color:#66705e}.menuPage.verso .menuFooter{left:12mm;right:15mm}.blank .menuHeader,.blank .menuFooter{visibility:hidden}.blank .menuContent{display:flex;align-items:center;justify-content:center;color:#809077;font:italic 15pt Georgia,serif}.changeType{font-size:7pt;text-transform:uppercase;letter-spacing:.08em;font-weight:bold;color:#806326;margin-bottom:1mm}.bookletSheets,.insertPages{display:none}.sheet{width:297mm;height:210mm;display:grid;grid-template-columns:148.5mm 148.5mm}.sheet .menuPage{width:148.5mm;box-shadow:none}.menuMeasure{position:absolute;left:-10000px;top:0;visibility:hidden;pointer-events:none}.menuMeasure .menuPage{transform:none!important;box-shadow:none}
@media screen{.pageFrame{width:calc(148mm * var(--preview-scale));height:calc(210mm * var(--preview-scale))}.pageFrame>.menuPage{transform:scale(var(--preview-scale));transform-origin:top left}}
@media screen and (max-width:940px){.cards{grid-template-columns:1fr}.wrap{padding:16px}.card{padding:20px}.top{padding:15px 16px}.top strong{font-size:20px}.pages{justify-content:center}}
@media print{html,body{margin:0!important;padding:0!important;background:white}.top,.cards,.previewHead,.menuMeasure{display:none!important}.wrap{max-width:none;margin:0;padding:0}.pages{display:block}.pageFrame{width:148mm;height:210mm;margin:0;break-after:page;page-break-after:always;break-inside:avoid}.pageFrame:last-child{break-after:auto;page-break-after:auto}.menuPage{width:148mm;height:210mm;transform:none!important;box-shadow:none;margin:0;print-color-adjust:exact;-webkit-print-color-adjust:exact}.print-booklet .pages,.print-booklet .insertPages{display:none!important}.print-booklet .bookletSheets{display:block!important}.print-reading .bookletSheets,.print-reading .insertPages{display:none!important}.print-insert .pages,.print-insert .bookletSheets{display:none!important}.print-insert .insertPages{display:block!important}.sheet{break-after:page;page-break-after:always;break-inside:avoid}.sheet:last-child{break-after:auto;page-break-after:auto}}

/* Reference-inspired A5 theme sheets. No screen-only sizes enter print layout. */
.menuPage,.menuPage.verso{padding:8mm 9mm 10mm;background:#fffcf5;color:#25251f;font-family:Georgia,'Times New Roman',serif}
.menuPage::before{content:"";position:absolute;inset:3.5mm;border:.22mm solid #af8545;pointer-events:none}
.menuPage::after{content:"";position:absolute;inset:4.5mm;border:.12mm solid #ddc69e;pointer-events:none}
.menuHeader{height:30mm;display:block;text-align:center;margin:0 0 4mm;border:0}
.menuBrand{font:small-caps bold 13pt Georgia,serif;letter-spacing:.13em;color:#18382b}
.brandRule{display:flex;align-items:center;justify-content:center;gap:3mm;color:#ad7c31;margin:1.2mm 0}
.brandRule::before,.brandRule::after{content:"";height:.2mm;width:22mm;background:#ad7c31}
.brandRule span{font-size:6pt}
.themeTitle{font:normal 23pt/1.08 Georgia,'Times New Roman',serif;letter-spacing:.03em;color:#19382c;margin:0}
.menuSubtitle{font:6.5pt Georgia,serif;text-transform:uppercase;letter-spacing:.15em;margin:2mm 0 0;color:#8b652c}
.menuContent{height:157mm;display:grid;grid-template-columns:repeat(var(--menu-columns,2),minmax(0,1fr));gap:6mm}
.menuColumn{height:157mm;min-width:0;display:flow-root}
.menuColumn+.menuColumn{position:relative}
.menuColumn+.menuColumn::before{content:"";position:absolute;left:-3mm;top:0;bottom:0;border-left:.15mm solid #dac49d}
.category{font:small-caps normal 12pt/1.1 Georgia,serif;color:#976318;letter-spacing:.015em;border-bottom:.2mm solid #bc955c;padding:0 0 1.2mm;margin:3mm 0 1mm}
.category:first-child{margin-top:0}
.category .continued{font:italic 6pt Georgia,serif;letter-spacing:0;margin-left:1.5mm}
.product{padding:1.25mm 0;border-bottom:.15mm dotted #d8c8ac;overflow-wrap:break-word}
.productTop{gap:1.7mm;grid-template-columns:minmax(0,1fr) auto}
.productName{font:bold 8.7pt/1.16 Georgia,serif}
.price{font:normal 8.7pt/1.16 Georgia,serif;font-variant-numeric:tabular-nums}
.details{font:6.8pt/1.18 Georgia,serif;color:#655c4b;margin-top:.5mm;gap:.5mm 1.8mm}
.producer{font-weight:normal}
.desc{font:italic 7.2pt/1.2 Georgia,serif;color:#38382e;margin-top:.5mm}
.menuAwards{font:6.5pt/1.18 Georgia,serif;color:#8c5920;margin-top:.6mm}
.winePage .product{padding:1.5mm 0}
.winePage .productName,.winePage .price{font-size:10pt}
.winePage .desc{font-size:8pt}
.winePage .details{font-size:7.2pt}
.winePage .menuAwards{font-size:7pt}
.menuFooter,.menuPage.verso .menuFooter{left:9mm;right:9mm;bottom:6mm;font:6pt Georgia,serif;border-color:#b79055;padding-top:1.5mm;color:#846738}


.menuHeader{height:25mm}
.menuContent,.menuColumn{height:162mm}
.product{padding:1mm 0}
.winePage .product{position:relative;padding:1mm 0}
.winePage .details{display:inline-flex;max-width:65%;margin-right:2mm}
.winePage .menuAwards{display:inline;font-size:6.6pt}
.winePage .desc{margin-top:.5mm;font-size:7.7pt}
.pizzaPage .product{padding:.8mm 0}
.pizzaPage .productName,.pizzaPage .price{font-size:8.3pt}
.pizzaPage .desc{font-size:7.1pt;line-height:1.18}

.winePage .details{display:flex;max-width:none;margin-right:0;align-items:baseline;line-height:1.18}
.winePage .menuAwards{display:inline;font:6.8pt/1.18 Georgia,serif;margin-top:0;margin-left:auto}
.menuAwards{margin-top:0}
.menuColumn{line-height:1.15}
