@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--ink:#234d38;--blue:#44744a;--cream:#f6f3e9;--gold:#e7ac4b;--muted:#596e5a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit}a:focus-visible{outline:3px solid #b47620;outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400}h1{font-size:clamp(70px,7.4vw,112px);line-height:.98;letter-spacing:-.05em}h2{font-size:clamp(52px,5vw,76px);line-height:1.03;letter-spacing:-.04em}em{font-weight:400;color:var(--blue)}.wrap{width:min(1280px,calc(100% - 100px));margin:auto}.study{padding:11px 28px;display:flex;justify-content:space-between;gap:20px;background:#e3e9d9;font-size:10px;letter-spacing:.1em}.study a{text-decoration:none}.announcement{text-align:center;padding:12px 20px;background:var(--ink);color:#fff9e9;font-size:11px;letter-spacing:.08em}.announcement span{margin-left:25px;color:#f3cf90}header{display:flex;align-items:center;justify-content:space-between;gap:30px;height:114px}.brand{display:flex;gap:13px;align-items:center;text-decoration:none}.brand img{border-radius:50%;width:62px;height:62px}.brand>span{font-family:Georgia,serif;font-size:23px}.brand small{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:8px;letter-spacing:.14em;margin-top:7px}nav{display:flex;gap:33px}nav a,.header-contact{font-size:12px;text-decoration:none}.header-contact{border-bottom:1px solid #234d38;padding:13px 0}.header-contact span{margin-left:35px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:25px 0 70px;align-items:center}.eyebrow{font-size:10px;letter-spacing:.15em;font-weight:600;line-height:1.8;margin-bottom:28px}.hero .eyebrow{display:flex;gap:12px;align-items:center}.eyebrow span{height:6px;width:6px;display:inline-block;border-radius:50%;background:var(--blue)}.intro{font-size:15px;line-height:1.9;max-width:380px;margin-top:28px;color:var(--muted)}.hero-links{display:flex;align-items:center;gap:25px;margin-top:31px}.button{display:inline-flex;gap:38px;justify-content:space-between;align-items:center;background:var(--ink);color:#fff;padding:19px 24px;text-decoration:none;font-size:12px;min-height:54px;transition:background .2s,transform .2s}.button:hover{background:#44744a;transform:translateY(-2px)}.text-link{font-size:11px;text-underline-offset:6px;line-height:2}.hero-bottom{display:flex;align-items:center;gap:12px;font-size:8px;letter-spacing:.11em;margin-top:43px}.hero-bottom i{font-size:16px;font-style:normal;color:#9a7238}.hero-photo{position:relative;background:#d7dfcc;min-width:0}.hero-photo>img{height:620px;width:100%;object-fit:cover}.photo-caption{display:flex;justify-content:space-between;gap:20px;position:absolute;bottom:0;width:100%;padding:20px;color:white;background:linear-gradient(transparent,#1b3e28b8);font-size:8px;letter-spacing:.09em}.roundel{position:absolute;left:-42px;bottom:65px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:132px;height:132px;border-radius:50%;background:var(--gold);color:var(--ink);font:22px/1.15 Georgia,serif;transform:rotate(-10deg);border:1px dashed var(--ink);outline:8px solid var(--gold)}.roundel em{color:inherit}.roundel span{font:7px Arial,sans-serif;letter-spacing:.13em;margin-top:12px}.ribbon{border-block:1px solid #bdc9ad;display:flex;justify-content:space-around;align-items:center;gap:20px;padding:22px 25px;font-size:10px;letter-spacing:.18em;background:#e8eddb}.ribbon b{font:30px Georgia,serif;color:#62804e}.menu,.social{padding-block:100px}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:45px}.section-head .eyebrow{margin-bottom:20px}.section-head>p{color:var(--muted);font-size:13px;line-height:1.9;max-width:320px;padding-bottom:5px}.food-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.food-image{height:420px;position:relative;overflow:hidden}.food-image img{width:100%;height:100%;object-fit:cover}.food-image .tag{position:absolute;left:20px;top:20px;background:var(--cream);padding:10px 15px;font-size:8px;letter-spacing:.13em}.food-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #bdc8c1;padding:24px 0 18px}.food-heading h3{font-size:38px;letter-spacing:-.03em}.food-heading span{font-size:10px}.food-grid article>p{font-size:13px;line-height:1.9;color:var(--muted);margin:17px 0 15px;max-width:440px}.story{background:#e2e8d5;padding:80px 0}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.pack-photo{position:relative;padding:22px;background:#f7f5eb;transform:rotate(-3deg)}.pack-photo img{height:470px;width:100%;object-fit:cover}.pack-photo>span{display:block;font-size:9px;letter-spacing:.13em;margin-top:20px;text-align:center}.story-copy>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.9;margin-top:24px;max-width:430px}.story-note{border-top:1px solid #b6c4bb;margin-top:32px;padding-top:25px;display:flex;align-items:center;gap:25px}.story-note>span{font:60px Georgia,serif;color:var(--blue)}.story-note p{font:24px/1.3 Georgia,serif}.social-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.social-grid>a{text-decoration:none}.social-grid img{height:310px;width:100%;object-fit:cover}.social-grid span{display:block;font-size:12px;padding:17px 0;border-bottom:1px solid #bdc8c1}.contact{background:var(--ink);color:var(--cream);text-align:center;padding:90px 0}.contact .eyebrow{color:#e5bf7e}.contact h2{font-size:clamp(65px,7vw,100px)}.contact em{color:#f0c985}.contact p:not(.eyebrow){font-size:14px;line-height:1.9;color:#dce5d5;margin:25px 0}.cream{background:var(--cream);color:var(--ink);margin:8px 0 22px}.cream:hover{background:#ead7b7}.phone{display:block;text-decoration:none;font-size:15px}.contact small{display:block;color:#c2d1b9;font-size:10px;margin-top:24px}footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:45px}footer .brand img{width:48px;height:48px}footer .brand>span{font-size:19px}footer .brand small{font-size:7px}footer>div{display:flex;gap:22px;font-size:11px}footer>div a{text-decoration:none}footer>small{font-size:9px;color:var(--muted)}
@media(min-width:1500px){.hero-photo>img{height:680px}}@media(max-width:1050px){.wrap{width:calc(100% - 54px)}nav{gap:20px}.brand>span{font-size:20px}.hero{gap:30px}h1{font-size:78px}.hero-links{gap:18px;flex-wrap:wrap}.hero-photo>img{height:580px}.hero-bottom{font-size:7px;gap:8px}.story-grid{gap:55px}.social-grid img{height:260px}footer{flex-wrap:wrap}.food-image{height:360px}}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}.study{padding:10px 18px;font-size:8px;letter-spacing:.04em}.announcement{font-size:9px;line-height:1.6}.announcement span{margin-left:10px}header{height:95px;gap:14px}.brand img{width:48px;height:48px}.brand>span{font-size:19px}.brand small{font-size:6px}nav{display:none}.header-contact{font-size:10px}.header-contact span{margin-left:15px}.hero{grid-template-columns:1fr;padding:25px 0 40px;gap:40px}h1{font-size:clamp(66px,15vw,90px)}.hero .eyebrow{font-size:8px;margin-bottom:22px}.intro{font-size:14px;margin-top:23px}.hero-links{margin-top:24px}.hero-bottom{font-size:7px;margin-top:30px;justify-content:space-between;gap:5px}.hero-photo{margin-left:16px}.hero-photo>img{height:470px}.roundel{width:100px;height:100px;left:-15px;bottom:50px;font-size:18px;outline-width:5px}.roundel span{font-size:6px}.photo-caption{font-size:6px;padding:15px}.ribbon{flex-wrap:wrap;gap:13px;padding:17px;font-size:8px}.ribbon span:last-child,.ribbon b:last-of-type{display:none}.ribbon b{font-size:22px}.menu,.social{padding-block:65px}.section-head{display:block;margin-bottom:30px}.section-head h2{font-size:52px}.section-head>p{margin-top:22px}.section-head>a{display:inline-block;margin-top:23px}.food-grid{grid-template-columns:1fr;gap:38px}.food-image{height:390px}.food-heading h3{font-size:34px}.food-grid article>p{font-size:14px}.text-link{font-size:12px}.story{padding:50px 0 60px}.story-grid{grid-template-columns:1fr;gap:50px}.pack-photo{margin:0 10px;padding:15px}.pack-photo img{height:380px}.story h2{font-size:53px}.social-grid{grid-template-columns:1fr;gap:28px}.social-grid img{height:350px}.contact{padding:65px 0}.contact h2{font-size:70px}.contact p:not(.eyebrow){font-size:13px}footer{gap:28px;padding-block:35px}footer>div{width:100%;justify-content:space-between}footer>small{width:100%}.button{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.order-section{background:#eef0e3;border-top:1px solid #c4cdb8;padding:90px 0}.order-layout{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:start}.order-product{display:grid;grid-template-columns:110px 1fr;gap:24px;padding:28px 0;border-top:1px solid #bdc8b5}.order-product img{width:110px;height:145px;object-fit:cover}.order-product h3,.order-panel h3{font-size:31px}.order-product p{font-size:12px;line-height:1.8;color:var(--muted);margin:10px 0 16px}.product-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.order-section label{display:block;font-size:11px;font-weight:600;line-height:1.7;margin-bottom:16px}.order-section input,.order-section select,.order-section textarea{display:block;width:100%;border:1px solid #b7c2aa;border-radius:0;background:#fcfbf5;color:var(--ink);padding:12px;font:14px 'DM Sans',Arial,sans-serif;margin-top:6px;min-height:46px}.order-section textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #5c7d42;outline-offset:2px}button{font-family:inherit;cursor:pointer}button:focus-visible{outline:3px solid #a37523;outline-offset:4px}.order-section .button,dialog .button{border:0;font:12px 'DM Sans',Arial,sans-serif}.add-item{width:100%}.order-product .price-note{font-size:11px}.order-info{padding:24px;background:#e0e7d3;font-size:12px;line-height:1.9}.order-info p{margin-top:9px;color:#4d624d}.order-panel{background:#fcfbf5;border:1px solid #c4cdb8;padding:30px}.order-panel>.eyebrow{display:flex;justify-content:space-between}.empty-cart{font:24px/1.4 Georgia,serif;color:#64735e;padding:15px 0 30px}.cart-line{display:flex;justify-content:space-between;gap:18px;padding:18px 0;border-bottom:1px solid #d4dbcb}.cart-line h4{font-size:13px;margin:0 0 7px}.cart-line small{font-size:11px;color:var(--muted)}.quantity{display:flex;align-items:center;gap:10px}.quantity button{width:44px;height:44px;background:#eef0e3;border:1px solid #bdc8b5;color:var(--ink);font-size:20px}.quantity span{font-size:13px;min-width:15px;text-align:center}.order-panel h3{margin:25px 0}.order-status{font-size:12px;line-height:1.7;color:#785421;margin:12px 0}.optional{font-weight:400;color:var(--muted)}.order-total{border-top:1px solid #c4cdb8;display:flex;justify-content:space-between;gap:20px;font-size:12px;padding:22px 0}.order-total b{text-align:right;font-size:11px}.review-button{width:100%}.privacy-note{font-size:10px;line-height:1.8;color:var(--muted);margin-top:15px}dialog{color:var(--ink);background:var(--cream);border:1px solid #b7c2aa;width:min(600px,calc(100% - 28px));max-height:90dvh;padding:32px}dialog::backdrop{background:#122b20a6;backdrop-filter:blur(4px)}dialog h2{font-size:45px}.review-head{display:flex;justify-content:space-between;align-items:start}.close-review{border:0;background:none;font-size:30px;min-width:44px;min-height:44px;color:var(--ink)}.review-note{font-size:12px;line-height:1.8;color:var(--muted);margin:18px 0}#review-message{font:12px/1.8 'DM Sans',Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;background:#e8eddb;padding:20px;max-height:32dvh;overflow:auto}#send-order{display:flex;width:100%;justify-content:center}#copy-order{display:block;width:100%;background:none;border:1px solid #b7c2aa;min-height:44px;margin-top:12px;color:var(--ink)}#copy-status{font-size:11px;margin-top:10px}[hidden]{display:none!important}@media(max-width:900px){.order-layout{gap:25px}.order-product{grid-template-columns:80px 1fr;gap:15px}.order-product img{width:80px;height:120px}.order-panel{padding:22px}}@media(max-width:700px){.order-section{padding:60px 0}.order-layout{grid-template-columns:1fr;gap:30px}.order-product{grid-template-columns:90px 1fr}.order-product img{width:90px;height:130px}.order-product h3{font-size:28px}.order-section .section-head h2{font-size:46px}.order-panel{padding:22px}.cart-line{gap:10px}.quantity{gap:6px}dialog{padding:22px}dialog h2{font-size:38px}}
.order-product .product-price{font-weight:700;color:var(--ink);font-size:17px;margin:12px 0}.line-price{font-size:11px;margin-top:9px;color:var(--ink)}.cost-breakdown{border-top:1px solid #c4cdb8;margin-top:22px;padding-top:15px}.cost-breakdown>div{display:flex;justify-content:space-between;gap:20px;padding:7px 0;font-size:12px}.cost-breakdown .order-total{font-size:17px;margin-top:10px;padding:18px 0;border-top:1px solid #c4cdb8}.cost-breakdown .order-total b{font-size:17px}.cost-breakdown>p{font-size:10px;line-height:1.7;color:var(--muted);margin-bottom:18px}#invoice-button{width:100%;min-height:44px;margin-top:12px;border:1px solid var(--ink);background:#e0e7d3;color:var(--ink)}#invoice-dialog{width:min(820px,calc(100% - 28px))}.invoice-actions{display:flex;justify-content:space-between;gap:16px;margin-bottom:30px}.invoice-actions button{min-height:44px;padding:10px 14px;color:var(--ink);background:#e8eddb;border:1px solid #b7c2aa}#invoice-content h2{font-size:43px}#invoice-content h3{font-size:24px;margin-top:24px}.invoice-meta{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.9;margin:16px 0}.invoice-badge{font-size:10px;letter-spacing:.1em;margin:15px 0;background:#e8eddb;padding:12px}.invoice-footnote{font-size:11px;line-height:1.8;margin-top:30px;color:var(--muted)}#invoice-content table{border-collapse:collapse;width:100%;font-size:12px;margin:24px 0}#invoice-content th,#invoice-content td{text-align:right;border-bottom:1px solid #c4cdb8;padding:13px 6px;vertical-align:top}#invoice-content th:first-child,#invoice-content td:first-child{text-align:left;width:44%;overflow-wrap:anywhere}.invoice-totals{margin-left:auto;width:min(100%,340px);font-size:13px}.invoice-totals>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0}.invoice-totals>div:last-child{border-top:1px solid #c4cdb8;font-size:16px;margin-top:8px}@media(max-width:700px){#invoice-dialog{padding:18px}#invoice-content table{font-size:10px}#invoice-content th,#invoice-content td{padding:10px 4px}.invoice-actions button{font-size:11px}}
@media print{@page{size:A4;margin:18mm}body{background:#fff!important;color:#183b26!important}body>*:not(#invoice-dialog){display:none!important}#invoice-dialog{position:static!important;display:block!important;width:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;overflow:visible!important;background:white!important;color:#183b26!important}#invoice-dialog::backdrop,.invoice-actions{display:none!important}#invoice-content{font-family:Arial,sans-serif}#invoice-content h2{font-family:Georgia,serif}#invoice-content tr{break-inside:avoid}.invoice-totals,.invoice-footnote{break-inside:avoid}}
#save-order{width:100%;min-height:46px;background:var(--ink);color:white;border:0;margin-top:14px}#save-order:disabled{background:#63745b;cursor:default}#save-status{font-size:11px;line-height:1.8;margin-top:12px}#connection-note{font-size:11px;margin:0 0 15px;font-weight:600}
.bank-details{border:1px solid #bdc8b5;background:#e8eddb;padding:20px;margin:25px 0;break-inside:avoid}.bank-details h3{font-size:25px;margin:0}.bank-details .invoice-meta{margin-bottom:0;white-space:pre-wrap;overflow-wrap:anywhere}.receipt-section{padding-block:60px}.receipt-section h2{font-size:48px}.receipt-section>p{line-height:1.9;font-size:13px;margin:20px 0}.receipt-section form{max-width:650px}.receipt-section label{display:block;font-size:13px;line-height:1.9}.receipt-section input{display:block;width:100%;padding:16px;border:1px solid #bdc8b5;margin:15px 0 20px;background:white}.receipt-section button:not(.button),#go-to-receipt{border:1px solid #bdc8b5;background:#e8eddb;color:var(--ink);min-height:44px;padding:12px 18px;margin:12px 12px 12px 0}#go-to-receipt{width:100%}.receipt-section>small{display:block;font-size:11px;color:var(--muted);line-height:1.8}.receipt-section .button:disabled{opacity:.5}.receipt-section #customer-receipts p{font-size:12px;padding:14px;background:#e8eddb;overflow-wrap:anywhere}
.shop-controls{border-top:1px solid #bdc8b5;margin-top:25px;padding-top:22px}.shop-controls label{display:block;font-size:12px;line-height:1.7}.shop-controls select{display:block;width:100%;min-height:46px;padding:10px;background:#fffdf6;border:1px solid #b7c2aa;color:var(--ink);font:14px 'DM Sans',Arial,sans-serif;margin-top:7px}.shop-buy{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px}.shop-buy strong{font-size:16px}.shop-buy button{border:0}.shop-option{font-size:13px;line-height:1.7;color:var(--muted);min-height:73px}#shop-feedback{font-size:13px;line-height:1.9;margin-top:28px;min-height:24px}.shop-checkout{margin-top:15px}.checkout-back{display:flex;justify-content:space-between;align-items:center;padding-block:20px;font-size:12px}.checkout-back>span{font-size:9px;letter-spacing:.13em}.header-contact [data-cart-count]{display:inline-grid;place-items:center;min-width:25px;height:25px;border-radius:50%;background:var(--ink);color:var(--cream);margin-left:13px}body:has(.checkout-back) .order-section{padding-top:50px}.shop-checkout [data-cart-count]{background:#e8eddb;color:var(--ink);border-radius:50%;min-width:25px;height:25px;display:grid;place-items:center}@media(max-width:700px){.shop-buy{align-items:stretch;flex-direction:column;gap:14px}.shop-buy button{justify-content:space-between}.shop-option{min-height:0}.checkout-back{gap:20px}.checkout-back>span{display:none}.shop-controls .product-fields{gap:12px}}
.checkout-title{font-size:clamp(52px,5vw,76px);line-height:1.03;letter-spacing:-.04em}@media(max-width:700px){.checkout-title{font-size:46px}}
.checkout-only{display:block;max-width:820px;margin:auto}.checkout-only .order-panel{padding:35px}.checkout-only+.order-info{max-width:820px;margin:25px auto 0}.checkout-only .cart-line{padding:24px 0}.checkout-only .order-total{font-size:20px}#begin-checkout{width:100%;border:0;justify-content:space-between}#begin-checkout:disabled{opacity:.5;cursor:default}#checkout-status{font-size:12px;line-height:1.8;margin-top:12px}.checkout-step{display:flex;align-items:center;justify-content:space-between;gap:20px}.checkout-step>button{background:none;border:0;color:var(--ink);min-height:44px;font-size:12px;padding:8px 0}#order-form{scroll-margin-top:20px}@media(max-width:700px){.checkout-only .order-panel{padding:22px}.checkout-step{display:block}.checkout-step>button{margin-bottom:20px}.checkout-step h3{margin-bottom:8px}}
/* Product collection */
button.button{appearance:none;-webkit-appearance:none;border:0;box-shadow:none;font-family:inherit;font-weight:600;cursor:pointer}
.menu .section-head h2{font-size:clamp(44px,4.5vw,64px)}
.food-grid{gap:28px;align-items:stretch}
.food-grid>article{display:flex;flex-direction:column;background:#fffef9;border:1px solid #e2e7db;border-radius:22px;overflow:hidden;box-shadow:0 8px 30px #173c2406}
.food-grid .food-image{height:320px;flex-shrink:0;background:#e6ecdf}
.food-image img{transition:transform .3s ease}
.food-image .tag{left:20px;top:20px;border-radius:30px;background:#fffef5ef;font-size:10px;letter-spacing:.09em;padding:10px 14px;backdrop-filter:blur(8px)}
.product-body{padding:28px;display:flex;flex-direction:column;flex:1}
.product-body .food-heading{border:0;padding:0;margin:0 0 12px;gap:20px}
.product-body .food-heading h3{font:600 27px/1.2 'DM Sans',Arial,sans-serif;letter-spacing:-.045em}
.product-body .food-heading>span{font-size:11px;color:#687963;background:#eff2e8;padding:8px 10px;border-radius:8px}
.product-body>p{font-size:14px;line-height:1.75;color:#60715c;margin:0 0 25px;max-width:440px;min-height:73px}
.product-body .shop-controls{margin-top:auto;padding-top:0;border-top:0}
.product-options{display:flex;flex-direction:column;gap:18px}
.product-options fieldset{margin:0;padding:0;border:0;min-width:0}
.product-options legend,.option-title{font:600 11px/1.5 'DM Sans',Arial,sans-serif;color:#62735b;padding:0;margin:0 0 9px;letter-spacing:.03em;display:block}
.option-chips{display:flex;gap:8px;flex-wrap:wrap}
.option-chips label{position:relative;cursor:pointer}
.option-chips input{position:absolute;opacity:0;width:1px;height:1px}
.option-chips label>span{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:75px;padding:10px 18px;border:1px solid #dce3d4;border-radius:10px;background:#fafbf6;color:#4e6348;font-size:13px;line-height:1.4;transition:background .15s,border-color .15s}
.option-chips input:checked+span{background:#e7efdc;border-color:#577846;color:#244830;box-shadow:inset 0 0 0 1px #577846;font-weight:600}
.option-chips label:hover>span{border-color:#789369}
.option-chips input:focus-visible+span{outline:3px solid #b0832e;outline-offset:3px}
.product-body .shop-buy{display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-top:1px solid #e7ebdf;margin-top:25px;padding-top:22px;gap:20px}
.product-body .shop-buy strong{font-size:17px;line-height:1.6;letter-spacing:-.03em;max-width:170px}
.product-body .shop-buy .button{padding:13px 19px;min-height:48px;font-size:13px;gap:24px;border-radius:11px;white-space:nowrap;background:#234d38}
.product-body .shop-buy .button:hover{background:#356547;transform:translateY(-1px)}
.product-body .shop-buy .button>span{font-size:20px;font-weight:400;line-height:1}
.paste-options{min-height:159px;padding:0}
.portion-pill{display:inline-flex;align-items:center;min-height:44px;border:1px solid #dce3d4;border-radius:10px;padding:10px 18px;font-size:13px;background:#f0f4e8;color:#345331;font-weight:600}
.paste-options>p{font-size:13px;color:#728069;line-height:1.7;margin:20px 0 0}
#shop-feedback{min-height:24px;margin-top:18px;font-size:12px;color:#49693c}
.basket-strip{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 24px;background:#e7ecde;border:1px solid #d4deca;border-radius:16px;margin-top:8px}
.basket-strip>div{display:flex;flex-direction:column;gap:6px}
.basket-strip>div>span{font-size:9px;font-weight:700;letter-spacing:.14em;color:#62735b}
.basket-strip strong{font-size:16px;font-weight:500;letter-spacing:-.02em}
.basket-strip .shop-checkout{margin:0;min-height:46px;padding:13px 22px;gap:40px;border-radius:10px;font-size:13px}
.header-contact{border:1px solid #d5dfca;border-radius:30px;padding:9px 12px 9px 20px;font-weight:600}
@media(max-width:1000px){.product-body{padding:23px}.product-body .shop-buy{gap:12px}.product-body .shop-buy .button{gap:16px;padding-inline:15px}.product-body .shop-buy strong{font-size:15px}.food-grid .food-image{height:285px}}
@media(max-width:700px){.food-grid{gap:22px}.food-grid .food-image{height:300px}.product-body{padding:24px}.product-body>p{min-height:0;margin-bottom:24px}.product-body .food-heading h3{font-size:25px}.product-body .shop-buy{flex-direction:row;align-items:center;gap:16px}.product-body .shop-buy strong{font-size:16px}.product-body .shop-buy .button{padding:13px 16px;gap:20px}.paste-options{min-height:0}.basket-strip{padding:18px;gap:14px}.basket-strip strong{font-size:14px}.basket-strip .shop-checkout{padding:12px 16px;gap:16px}.menu{padding-block:55px}.menu .section-head h2{font-size:43px}}
@media(max-width:370px){.product-body{padding:19px}.product-body .shop-buy{align-items:stretch;flex-direction:column}.product-body .shop-buy .button{justify-content:space-between}.option-chips label>span{min-width:65px;padding:10px 13px}}
@media(prefers-reduced-motion:reduce){.food-image img,.option-chips label>span{transition:none}}
/* Compact, minimal product controls */
.product-options{gap:15px}
.product-options legend,.option-title{font-size:11px;font-weight:500;color:#687365;margin-bottom:7px;letter-spacing:0}
.option-chips{gap:6px}
.option-chips label>span{min-width:0;min-height:36px;padding:8px 14px;border-radius:6px;border:1px solid #e1e5dc;background:transparent;color:#687365;font-size:12px;font-weight:400;box-shadow:none}
.option-chips input:checked+span{background:#eef2e9;border-color:#acbca3;color:#294c35;box-shadow:none;font-weight:500}
.option-chips label:hover>span{background:#f2f5ed;border-color:#c1cdb8}
.product-body .shop-buy{padding-top:18px;margin-top:21px;gap:14px}
.product-body .shop-buy strong{font-size:15px;font-weight:500;letter-spacing:-.02em}
.product-body .shop-buy .button{min-height:38px;padding:9px 14px;gap:16px;border:1px solid #d6dfd0;border-radius:6px;background:transparent;color:#294c35;font-size:12px;font-weight:500;line-height:1.5;transform:none;box-shadow:none}
.product-body .shop-buy .button:hover{background:#edf2e8;border-color:#acbca3;transform:none}
.product-body .shop-buy .button>span{font-size:16px;line-height:1;font-weight:400}
.portion-pill{min-height:36px;padding:8px 14px;border-radius:6px;background:transparent;border-color:#e1e5dc;font-size:12px;font-weight:400;color:#53664b}
.paste-options{min-height:137px}
.basket-strip{padding:16px 20px;border-radius:10px;background:#edf0e6;border-color:#e0e5d8}
.basket-strip strong{font-size:14px;font-weight:500}
.basket-strip .shop-checkout{min-height:38px;padding:9px 16px;gap:22px;border-radius:6px;font-size:12px;font-weight:500;line-height:1.5;box-shadow:none;transform:none}
.basket-strip .shop-checkout:hover{transform:none;background:#315e40}
.header-contact{border:0;background:transparent;padding:8px 0;font-size:12px;font-weight:500;border-radius:0}
.header-contact [data-cart-count]{min-width:21px;height:21px;border-radius:5px;background:#e9eee2;color:#345331;font-size:10px;margin-left:8px}
@media(max-width:700px){.product-body .shop-buy .button{min-height:40px;padding:10px 14px;gap:14px;font-size:12px}.option-chips label>span{min-height:40px;padding:10px 14px}.portion-pill{min-height:40px}.basket-strip{padding:15px 17px}.basket-strip .shop-checkout{min-height:40px;padding:10px 14px;gap:18px}.paste-options{min-height:0}}

.saved-order-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
  gap: 18px;
  padding: 22px;
  margin: 24px 0 16px;
  background: #fffef9;
  border: 1px solid #e0e5d8;
  border-radius: 12px;
}
.saved-order-summary dt { font-size: 12px; color: var(--muted); }
.saved-order-summary dd { margin: 6px 0 0; font-weight: 600; overflow-wrap: anywhere; }
.order-link-box { padding: 16px 20px; background: #edf0e6; border-radius: 10px; }
.order-link-box p { font-size: 13px; line-height: 1.6; }
.order-link-box input { margin: 0 0 10px; }

.page-title { font-size: clamp(48px, 7vw, 88px); }
.roots-page {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 36px;
  align-items: center;
  padding-block: 32px 72px;
}
.roots-intro .button { margin-top: 24px; border-radius: 8px; }
.roots-photo { width: 100%; height: clamp(300px, 45vw, 520px); object-fit: cover; border-radius: 16px; }
.roots-notes { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.roots-notes article { border: 1px solid #e0e5d8; border-radius: 12px; padding: 24px; background: #fffef9; }
.roots-notes .eyebrow { margin-bottom: 10px; }
.roots-notes h2 { font-size: 34px; margin-bottom: 12px; }
.roots-notes article > p:last-child { color: var(--muted); line-height: 1.7; }

@media (max-width: 700px) {
  header.wrap {
    height: auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0 12px;
    padding-block: 12px 0;
  }
  header.wrap .brand > span { font-size: clamp(16px, 4.8vw, 20px); }
  header.wrap nav {
    grid-column: 1 / -1;
    grid-row: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 4px 20px;
    border-bottom: 1px solid #dce3d4;
  }
  header.wrap nav a, header.wrap .header-contact {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    font-size: 12px;
  }
  .hero h1 { font-size: clamp(49px, 12vw, 72px); }
  .hero-photo > img { height: clamp(290px, 95vw, 420px); }
  .product-body .shop-buy .button,
  .option-chips label > span,
  .basket-strip .shop-checkout { min-height: 44px; }
  .basket-strip { flex-wrap: wrap; }
  #order-form input, #order-form select, #order-form textarea,
  #receipt-form input { font-size: 16px; max-width: 100%; }
  .order-section .product-fields { grid-template-columns: minmax(0, 1fr); }
  .cart-line { flex-wrap: wrap; row-gap: 12px; }
  .saved-order-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding: 16px; }
  .roots-page, .roots-notes { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .roots-page { padding-block: 24px 48px; }
  .roots-photo { height: 320px; }
}
