@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap";:root{color:#20201c;background:#f3eee2;font-family:DM Sans,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--cream: #f3eee2;--paper: #fbf8f0;--ink: #20201c;--red: #8d241d;--olive: #505341}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--cream)}body,button,a{font-family:inherit}img{display:block;max-width:100%}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}.site-shell{overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}h1,h2,h3{font-family:inherit;font-weight:500;margin:0;line-height:1.12}h1{font-size:clamp(2.4rem,4.4vw,4.4rem);letter-spacing:-.045em}h2{font-size:clamp(1.7rem,2.35vw,2.65rem);letter-spacing:-.03em}h3{font-size:1.4rem;letter-spacing:-.015em}p{line-height:1.7}.eyebrow{margin:0 0 1rem;font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.eyebrow.light,.text-link.light{color:#fff8eb}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:.8rem 1.35rem;border:1px solid currentColor;text-decoration:none;font-size:.78rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;transition:background .2s ease,color .2s ease,transform .2s ease}.button:hover{transform:translateY(-2px)}.button-light{color:#fff}.button-light:hover{background:#fff;color:var(--ink)}.button-dark{color:var(--ink)}.button-dark:hover,.button-dark:focus-visible{background:var(--ink);color:#fff}.text-link{font-size:.82rem;font-weight:600;letter-spacing:.05em;text-underline-offset:.35em}.site-header{position:relative;z-index:20;background:#fbf8f0f7;border-bottom:1px solid rgba(32,32,28,.12)}.header-inner{max-width:1440px;min-height:88px;margin:0 auto;padding:0 3vw;display:flex;align-items:center;justify-content:space-between;gap:3rem}.header-brand{display:block;flex:0 0 auto;width:clamp(125px,11vw,155px)}.primary-nav{width:auto;display:flex;align-items:center;justify-content:flex-end;gap:clamp(.8rem,1.6vw,1.8rem)}.nav-item{display:flex;align-items:center;justify-content:center;position:relative}.nav-item>a{text-decoration:none;text-transform:uppercase;font-size:clamp(.58rem,.72vw,.72rem);font-weight:600;letter-spacing:.09em;white-space:nowrap}.nav-item>a:after{content:"";display:block;width:0;height:1px;margin:.25rem auto 0;background:currentColor;transition:width .2s ease}.nav-item>a:hover:after,.nav-item>a.active:after{width:100%}.menu-toggle{display:none}.cart-button{flex:0 0 auto;min-width:86px;height:42px;padding:0 .8rem;display:inline-flex;align-items:center;justify-content:space-between;gap:.65rem;border:1px solid rgba(32,32,28,.35);background:transparent;color:var(--ink);cursor:pointer;text-transform:uppercase;font-size:.63rem;font-weight:600;letter-spacing:.09em}.cart-button strong{min-width:21px;height:21px;display:grid;place-items:center;border-radius:50%;background:var(--red);color:#fff;font-size:.65rem}.hero{position:relative;min-height:min(760px,calc(100vh - 88px));background:#4e4237;color:#fff;display:grid;align-items:center}.hero picture,.hero-image,.hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.hero-image{object-fit:cover;object-position:center}.hero-shade{background:linear-gradient(90deg,#18120ec2,#18120e47,#18120e0d)}.hero-content{position:relative;z-index:2;width:min(780px,86vw);margin-left:max(7vw,calc((100vw - 1440px)/2 + 4rem));padding:7rem 0}.hero-content>p:not(.eyebrow){max-width:560px;font-size:1rem;color:#ffffffe0}.hero-actions{display:flex;align-items:center;gap:1.8rem;margin-top:2rem}.hero-signature{position:absolute;z-index:2;right:4vw;bottom:3rem;display:flex;flex-direction:column;align-items:flex-end;gap:.3rem;font-size:.62rem;letter-spacing:.12em;text-transform:uppercase}.hero-signature img{width:135px}.welcome{min-height:700px;display:grid;grid-template-columns:minmax(210px,1fr) minmax(440px,1.5fr) minmax(190px,.8fr);align-items:end;max-width:1440px;margin:0 auto;padding:7rem 4vw 0}.welcome-copy{align-self:center;max-width:660px;padding:3rem clamp(2rem,5vw,5.5rem)}.welcome-copy .lead{font-family:inherit;font-size:1.1rem;font-weight:500;line-height:1.65}.welcome-copy ul{padding:0;margin:2rem 0 2.4rem;list-style:none}.welcome-copy li{position:relative;padding:.75rem 0 .75rem 1.8rem;border-bottom:1px solid rgba(32,32,28,.14);font-size:.9rem;line-height:1.5}.welcome-copy li:before{content:"—";position:absolute;left:0;color:var(--red)}.portrait img{width:100%;object-fit:contain;object-position:bottom}.portrait-paolo img{max-height:610px}.portrait-damian img{max-height:500px}.collections{background:var(--paper);padding:8rem max(5vw,calc((100vw - 1320px)/2))}.section-heading{max-width:760px;margin-bottom:4rem}.section-heading.centered{margin-left:auto;margin-right:auto;text-align:center}.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.collection-card{min-height:350px;padding:2rem;display:flex;flex-direction:column;border-right:1px solid rgba(32,32,28,.35)}.collection-card:last-child{border-right:0}.collection-card>span{font-size:.7rem;letter-spacing:.16em}.collection-card h3{margin-top:auto}.collection-card p{max-width:360px;color:#57564f}.collection-card a{margin-top:1rem;font-size:.78rem;font-weight:600;text-underline-offset:.4em}.wholesale{min-height:740px;display:grid;grid-template-columns:1.1fr .9fr;background:var(--red);color:#fff}.wholesale-image{max-height:740px;overflow:hidden}.wholesale-image img{width:100%;height:100%;object-fit:cover;object-position:50% 55%}.wholesale-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:6rem 8vw}.wholesale-copy p:not(.eyebrow){max-width:520px;color:#ffffffd1;margin:2rem 0}.testimonials{padding:8rem 5vw;text-align:center}.testimonial-card{max-width:940px;min-height:240px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center}.testimonial-card blockquote{margin:0;font-family:inherit;font-size:clamp(1.35rem,2vw,2.1rem);font-style:italic;font-weight:400;letter-spacing:-.02em;line-height:1.45}.testimonial-card figcaption{margin-top:2rem;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase}.testimonial-controls{display:flex;justify-content:center;gap:.65rem;margin-top:2rem}.testimonial-controls button{width:30px;height:2px;padding:0;border:0;background:#20201c40;cursor:pointer}.testimonial-controls button.is-active{background:var(--ink)}.stockists{display:flex;align-items:end;justify-content:space-between;gap:3rem;padding:7rem max(5vw,calc((100vw - 1320px)/2));background:#c8b98f}.stockists h2{max-width:840px}.stockists .button{flex:none}.site-footer{background:var(--ink);color:#f7f0df;padding:5rem 6vw 1.5rem}.footer-inner{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:5rem}.footer-inner p{max-width:380px;color:#ffffffa6;font-size:.84rem}.footer-logo{width:170px}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;font-size:.8rem}.footer-bottom{max-width:1320px;margin:4rem auto 0;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.16);font-size:.68rem;color:#ffffff80}.ravioli-hero{min-height:680px;padding:7rem max(7vw,calc((100vw - 1320px)/2));color:#fff;display:flex;align-items:center;background:linear-gradient(90deg,#1e1611c7,#1e16110f),url(/assets/header-pasta.png) center/cover}.ravioli-hero>div{max-width:780px}.ravioli-hero p:not(.eyebrow){max-width:580px;font-size:1.05rem;color:#ffffffd6}.ravioli-intro{max-width:900px;padding:8rem 5vw;margin:0 auto;text-align:center}.ravioli-intro>p:last-child{max-width:620px;margin:2rem auto 0}.flavour-grid{display:grid;grid-template-columns:repeat(3,1fr);margin:0 max(5vw,calc((100vw - 1320px)/2)) 8rem;border-top:1px solid;border-bottom:1px solid}.flavour-grid article{min-height:290px;padding:2rem;border-right:1px solid rgba(32,32,28,.35)}.flavour-grid article:last-child{border-right:0}.flavour-grid span{font-size:.7rem;letter-spacing:.15em}.flavour-grid h3{margin-top:6rem}.flavour-grid p{color:#5e5c54;font-size:.9rem}.ravioli-cta{padding:8rem 6vw;background:var(--olive);color:#fff;text-align:center}.ravioli-cta .button{margin-top:2.5rem}.contact-hero{min-height:440px;padding:6rem max(7vw,calc((100vw - 1320px)/2));color:#fff;display:flex;align-items:center;background:linear-gradient(90deg,#1e1611d1,#1e16112e),url(/assets/header-pasta.png) center/cover}.contact-hero>div{max-width:720px}.contact-hero p:not(.eyebrow){max-width:560px;color:#ffffffd6}.contact-content{max-width:1320px;margin:0 auto;padding:8rem 5vw;display:grid;grid-template-columns:1fr 1fr;gap:clamp(4rem,8vw,9rem)}.contact-details .section-heading{margin-bottom:3rem}.contact-list{margin:0 0 3rem}.contact-list>div{display:grid;grid-template-columns:120px 1fr;gap:1rem;padding:1.25rem 0;border-top:1px solid rgba(32,32,28,.18)}.contact-list>div:last-child{border-bottom:1px solid rgba(32,32,28,.18)}.contact-list dt{font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.contact-list dd{margin:0;line-height:1.65}.contact-list a{text-underline-offset:.3em}.opening-hours{margin:0 0 2rem;padding:2rem;background:#e8dfca}.opening-hours>div{display:flex;justify-content:space-between;gap:2rem;padding:.7rem 0;border-top:1px solid rgba(32,32,28,.15);font-size:.9rem}.opening-hours>div:last-child{border-bottom:1px solid rgba(32,32,28,.15)}.contact-form-panel{align-self:start;padding:clamp(2rem,5vw,4.5rem);background:var(--paper);border-top:4px solid var(--red)}.contact-form-panel h2{margin-bottom:2.5rem}.contact-form{display:flex;flex-direction:column}.contact-form label{margin:0 0 .45rem;font-size:.7rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.contact-form input,.contact-form textarea{width:100%;margin:0 0 1.5rem;padding:.9rem 0;border:0;border-bottom:1px solid rgba(32,32,28,.4);border-radius:0;background:transparent;color:var(--ink);font:inherit;outline:none}.contact-form textarea{resize:vertical;min-height:130px}.contact-form input:focus,.contact-form textarea:focus{border-bottom-color:var(--red);box-shadow:0 1px 0 var(--red)}.contact-form .button{align-self:flex-start;cursor:pointer}.contact-form .button:disabled{cursor:wait;opacity:.55;transform:none}.bot-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-status{margin:1.2rem 0 0;padding:1rem 1.1rem;font-size:.84rem;line-height:1.5}.form-status.sent{background:#dfe7d5;color:#27351d}.form-status.error{background:#f1dcd6;color:#72251e}.wholesale-contact-hero{min-height:470px;padding:6rem max(7vw,calc((100vw - 1320px)/2));color:#fff;display:flex;align-items:center;background:linear-gradient(90deg,#1b140fd6,#1b140f33),url(/assets/wholesale-hero.png) center/cover}.wholesale-contact-hero>div{max-width:760px}.wholesale-contact-hero p:not(.eyebrow){max-width:640px;color:#ffffffd6}.wholesale-contact-content{max-width:1240px;margin:0 auto;padding:8rem 5vw;display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(4rem,8vw,8rem);align-items:start}.wholesale-enquiry-intro>p:not(.eyebrow){color:#5d5b53}.enquiry-steps{margin:3rem 0;padding:0;list-style:none;border-top:1px solid rgba(32,32,28,.2)}.enquiry-steps li{display:grid;grid-template-columns:42px 1fr;gap:1rem;padding:1.25rem 0;border-bottom:1px solid rgba(32,32,28,.2)}.enquiry-steps li>span{padding-top:.15rem;font-size:.65rem;letter-spacing:.14em}.enquiry-steps strong{font-size:.9rem}.enquiry-steps p{margin:.3rem 0 0;color:#6a685f;font-size:.82rem;line-height:1.5}.wholesale-enquiry-form-panel{width:100%}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-row>div{display:flex;flex-direction:column}.wholesale-hero{position:relative;min-height:660px;padding:7rem max(7vw,calc((100vw - 1320px)/2));color:#fff;display:flex;align-items:center;background:linear-gradient(90deg,#1b140fd4,#1b140f61 57%,#1b140f14),url(/assets/wholesale-hero.png) center/cover}.wholesale-hero-content{position:relative;z-index:1;max-width:760px}.wholesale-hero-content>p:not(.eyebrow){max-width:650px;color:#ffffffdb;font-size:1rem}.wholesale-hero-note{position:absolute;right:4vw;bottom:2.5rem;display:flex;gap:1.5rem;color:#ffffffbf;font-size:.65rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.wholesale-intro{max-width:1220px;margin:0 auto;padding:8rem 5vw;display:grid;grid-template-columns:1fr 1fr;gap:clamp(4rem,9vw,9rem);align-items:start}.wholesale-intro p{margin-top:0;color:#5e5c54}.wholesale-intro .wholesale-lead{color:var(--ink);font-size:1.12rem;font-weight:500}.wholesale-highlights{display:grid;grid-template-columns:repeat(4,1fr);background:var(--olive);color:#fff}.wholesale-highlights>div{min-height:190px;padding:2.5rem;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid rgba(255,255,255,.2)}.wholesale-highlights>div:last-child{border-right:0}.wholesale-highlights strong{font-size:clamp(2rem,3.5vw,3.4rem);font-weight:500;letter-spacing:-.05em}.wholesale-highlights span{color:#ffffffb8;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}.chef-tools{padding:8rem max(5vw,calc((100vw - 1320px)/2));background:var(--cream)}.chef-tools .section-heading>p:last-child{max-width:560px;color:#5d5b53}.chef-tool-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.chef-tool-tabs button{min-height:68px;padding:1rem;border:0;border-right:1px solid rgba(32,32,28,.35);background:transparent;color:var(--ink);cursor:pointer;font-size:.72rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;transition:background .2s ease,color .2s ease}.chef-tool-tabs button:last-child{border-right:0}.chef-tool-tabs button:hover,.chef-tool-tabs button.is-active{background:var(--ink);color:#fff}.chef-tool-panel{min-height:520px;padding-top:3rem}.menu-ideas{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(32,32,28,.28);border-left:1px solid rgba(32,32,28,.28)}.menu-ideas article{min-height:250px;padding:2rem;display:flex;flex-direction:column;border-right:1px solid rgba(32,32,28,.28);border-bottom:1px solid rgba(32,32,28,.28)}.menu-ideas span{font-size:.66rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--red)}.menu-ideas h3{margin-top:auto}.menu-ideas p{margin-bottom:0;color:#5d5b53;font-size:.86rem}.selection-guide{display:grid;grid-template-columns:minmax(280px,.75fr) 1.25fr;gap:clamp(3rem,8vw,8rem);align-items:center;padding:3.5rem;background:var(--paper)}.selection-image{display:flex;justify-content:center;min-height:480px}.selection-image img{width:100%;max-height:520px;object-fit:contain}.selection-copy>p:not(.eyebrow){max-width:650px;color:#5d5b53}.selection-copy>ul,.selection-columns ul{padding:0;margin:2rem 0;list-style:none}.selection-copy>ul{display:grid;grid-template-columns:1fr 1fr}.selection-copy li{padding:.7rem 0;border-top:1px solid rgba(32,32,28,.18);font-size:.86rem}.selection-copy>ul li:nth-child(odd){padding-right:1.5rem}.selection-copy>ul li:nth-child(2n){padding-left:1.5rem;border-left:1px solid rgba(32,32,28,.18)}.selection-columns{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}.selection-columns h3{margin-top:2rem}.wholesale-range{padding:8rem max(5vw,calc((100vw - 1320px)/2));background:var(--paper)}.wholesale-product{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem);padding:4rem 0;border-top:1px solid var(--ink)}.wholesale-product:last-child{border-bottom:1px solid var(--ink)}.product-heading{display:grid;grid-template-columns:45px 1fr;gap:1rem;align-items:start}.product-heading>span{padding-top:.2rem;font-size:.68rem;letter-spacing:.15em}.product-intro{max-width:680px;margin:0 0 2rem;color:#54534d}.product-list{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0;margin:0;list-style:none}.product-list li,.ravioli-lists li{padding:.8rem 0;border-top:1px solid rgba(32,32,28,.16);font-size:.88rem}.product-list li:nth-child(odd){padding-right:2rem}.product-list li:nth-child(2n){padding-left:2rem;border-left:1px solid rgba(32,32,28,.16)}.ravioli-lists{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.ravioli-lists h3{min-height:3.3rem}.ravioli-lists ul{margin:1.5rem 0 0;padding:0;list-style:none}.wholesale-values{padding:8rem max(5vw,calc((100vw - 1320px)/2))}.wholesale-value-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.wholesale-value-grid article{min-height:320px;padding:2rem;display:flex;flex-direction:column;border-right:1px solid rgba(32,32,28,.28)}.wholesale-value-grid article:last-child{border-right:0}.wholesale-value-grid span{font-size:.68rem;letter-spacing:.15em}.wholesale-value-grid h3{margin-top:auto}.wholesale-value-grid p{margin-bottom:0;color:#5d5b53;font-size:.84rem}.wholesale-partner{padding:7rem max(7vw,calc((100vw - 1220px)/2));display:grid;grid-template-columns:1.1fr .9fr;gap:6rem;align-items:end;background:var(--red);color:#fff}.wholesale-partner p:not(.eyebrow){max-width:520px;margin:0 0 2rem;color:#fffc}.shop-hero{position:relative;min-height:610px;padding:7rem max(7vw,calc((100vw - 1320px)/2));display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,#1a120ddb,#1a120d61 52%,#1a120d0a),url(/assets/shop-table-v3.jpg) center/cover}.shop-hero-copy{max-width:720px}.shop-hero-copy>p:not(.eyebrow){max-width:570px;color:#ffffffd6}.shop-hero-note{position:absolute;right:4vw;bottom:2.5rem;display:flex;gap:1.5rem;color:#ffffffc2;font-size:.64rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.delivery-strip{min-height:72px;padding:1rem max(5vw,calc((100vw - 1320px)/2));display:grid;grid-template-columns:1fr 1fr 1.5fr;align-items:center;gap:2rem;background:var(--red);color:#fff;font-size:.72rem;letter-spacing:.04em}.delivery-strip strong{text-transform:uppercase;letter-spacing:.1em}.delivery-strip span{padding-left:2rem;border-left:1px solid rgba(255,255,255,.3)}.shop-catalogue{padding:7rem max(4vw,calc((100vw - 1400px)/2));background:var(--paper)}.shop-heading{margin-bottom:3.5rem;display:grid;grid-template-columns:1.1fr .9fr;gap:5rem;align-items:end}.shop-heading>p{max-width:520px;margin:0 0 .3rem;color:#5d5b53}.shop-category-stories{margin-bottom:4rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.shop-category-stories button{position:relative;min-height:380px;padding:0;overflow:hidden;border:0;background:#3a3129;color:#fff;cursor:pointer;text-align:left}.shop-category-stories button:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(0deg,#140f0bc2,#140f0b0a 70%);transition:background .3s ease}.shop-category-stories button:hover:after{background:linear-gradient(0deg,#140f0bd6,#140f0b05 75%)}.shop-category-stories img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.shop-category-stories button:hover img{transform:scale(1.035)}.shop-category-stories button>span{position:absolute;z-index:1;left:1.6rem;right:1.6rem;bottom:1.6rem;display:flex;flex-direction:column;align-items:flex-start}.shop-category-stories small{margin-bottom:.55rem;font-size:.61rem;font-style:normal;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.shop-category-stories strong{font-size:1.45rem;font-weight:500;letter-spacing:-.025em}.shop-category-stories em{margin-top:.8rem;padding-bottom:.2rem;border-bottom:1px solid rgba(255,255,255,.65);font-size:.66rem;font-style:normal;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.shop-toolbar{position:sticky;z-index:10;top:0;margin-bottom:3rem;display:flex;align-items:stretch;justify-content:space-between;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);background:var(--paper)}.category-tabs{display:flex;overflow-x:auto;scrollbar-width:none}.category-tabs::-webkit-scrollbar{display:none}.category-tabs button{min-height:62px;padding:0 1.15rem;border:0;border-right:1px solid rgba(32,32,28,.18);background:transparent;color:#605e56;cursor:pointer;white-space:nowrap;font:inherit;font-size:.69rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase}.category-tabs button span{margin-left:.35rem;color:#8b887e;font-size:.6rem}.category-tabs button:hover,.category-tabs button.is-active{background:var(--ink);color:#fff}.category-tabs button:hover span,.category-tabs button.is-active span{color:#ffffffa6}.shop-search{min-width:240px;display:flex;align-items:center;border-left:1px solid var(--ink)}.shop-search input{width:100%;height:100%;padding:0 1rem;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:.82rem}.shop-search>span:not(.sr-only){padding-right:1.2rem;font-size:1.3rem}.shop-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#20201c38;border:1px solid rgba(32,32,28,.22)}.shop-product-card{min-width:0;display:flex;flex-direction:column;background:var(--paper)}.shop-product-image{position:relative;aspect-ratio:1.15;overflow:hidden;background:#e9e1cf}.shop-product-image img{width:100%;height:100%;object-fit:contain;padding:1rem}.product-placeholder{width:100%;height:100%;display:grid;place-items:center;color:#20201c38;font-size:3rem;font-weight:600}.sold-out-badge{position:absolute;left:1rem;top:1rem;padding:.55rem .7rem;background:var(--ink);color:#fff;font-size:.6rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.shop-product-card.is-sold-out .shop-product-image img{filter:grayscale(.7);opacity:.72}.shop-product-copy{flex:1;padding:1.6rem;display:flex;flex-direction:column}.shop-product-meta{display:flex;justify-content:space-between;gap:1rem;color:#77746b;font-size:.62rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.shop-product-copy h2{min-height:2.5em;margin:.8rem 0 .65rem;font-size:1.3rem;line-height:1.22;letter-spacing:-.02em}.shop-product-description{margin:0;color:#615f57;font-size:.82rem;line-height:1.55}.product-details-toggle{width:100%;margin-top:1rem;padding:.75rem 0;display:flex;align-items:center;justify-content:space-between;border:0;border-top:1px solid rgba(32,32,28,.15);border-bottom:1px solid rgba(32,32,28,.15);background:transparent;color:var(--ink);cursor:pointer;text-align:left;font:inherit;font-size:.67rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase}.product-details-toggle span{font-size:1rem}.product-details{padding:1rem 0;color:#5d5b53}.product-details strong{display:block;font-size:.63rem;letter-spacing:.09em;text-transform:uppercase}.product-details p{margin:.4rem 0 0;font-size:.78rem;line-height:1.55}.shop-product-buy{margin-top:auto;padding-top:1.4rem;display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:.8rem}.shop-product-price{font-size:1.12rem;font-weight:600}.quantity-control{height:40px;display:inline-grid;grid-template-columns:34px 30px 34px;align-items:center;border:1px solid rgba(32,32,28,.3)}.quantity-control button{height:100%;padding:0;border:0;background:transparent;color:var(--ink);cursor:pointer;font-size:1rem}.quantity-control button:hover{background:#e7dfcd}.quantity-control span{text-align:center;font-size:.75rem}.add-to-cart{height:40px;padding:0 .8rem;border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;font:inherit;font-size:.65rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;transition:background .2s,color .2s}.add-to-cart:hover{background:transparent;color:var(--ink)}.shop-state{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#65635b}.shop-state.error{color:var(--red)}.loading-mark{width:26px;height:26px;border:1px solid rgba(32,32,28,.25);border-top-color:var(--ink);border-radius:50%;animation:shop-spin .8s linear infinite}@keyframes shop-spin{to{transform:rotate(360deg)}}.shop-promise{display:grid;grid-template-columns:repeat(3,1fr);padding:6rem max(5vw,calc((100vw - 1320px)/2));background:var(--cream)}.shop-promise>div{min-height:220px;padding:2rem;display:flex;flex-direction:column;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);border-right:1px solid rgba(32,32,28,.25)}.shop-promise>div:last-child{border-right:0}.shop-promise span{font-size:.64rem;letter-spacing:.15em}.shop-promise h3{margin-top:auto}.shop-promise p{margin-bottom:0;color:#5d5b53;font-size:.82rem}body.cart-is-open{overflow:hidden}.cart-layer{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;visibility:hidden;pointer-events:none}.cart-layer.is-open{visibility:visible;pointer-events:auto}.cart-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#1814107a;opacity:0;transition:opacity .25s ease}.cart-layer.is-open .cart-backdrop{opacity:1}.cart-drawer{position:absolute;inset:0 0 0 auto;width:min(480px,100vw);display:flex;flex-direction:column;background:var(--paper);transform:translate(100%);transition:transform .28s ease;box-shadow:-20px 0 60px #14110e26}.cart-layer.is-open .cart-drawer{transform:translate(0)}.cart-drawer-header{min-height:110px;padding:1.5rem 1.8rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(32,32,28,.18)}.cart-drawer-header .eyebrow{margin-bottom:.35rem}.cart-drawer-header h2{font-size:1.8rem}.cart-close{width:44px;height:44px;border:1px solid rgba(32,32,28,.25);background:transparent;color:var(--ink);cursor:pointer;font-size:1.7rem;font-weight:300}.empty-cart{flex:1;padding:3rem 1.8rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.empty-cart p{max-width:280px;color:#615f57}.cart-lines{flex:1;padding:0 1.8rem;overflow-y:auto}.cart-line{padding:1.35rem 0;display:grid;grid-template-columns:95px 1fr;gap:1.1rem;border-bottom:1px solid rgba(32,32,28,.16)}.cart-line-image{height:95px;background:#e9e1cf}.cart-line-image img{width:100%;height:100%;object-fit:cover}.cart-line-copy h3{margin:0 0 .25rem;font-size:.98rem}.cart-line-copy>p{margin:0 0 .8rem;color:#747168;font-size:.7rem}.cart-line-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem}.quantity-control.compact{height:32px;grid-template-columns:28px 25px 28px}.cart-line-actions strong{font-size:.88rem}.remove-line{margin-top:.7rem;padding:0;border:0;border-bottom:1px solid;background:transparent;color:#6d6a62;cursor:pointer;font:inherit;font-size:.64rem}.cart-summary{padding:1.5rem 1.8rem 1.8rem;border-top:1px solid var(--ink);background:var(--cream);text-align:center}.cart-summary>div{display:flex;justify-content:space-between;font-size:1.05rem}.cart-summary p{margin:.8rem 0 1rem;color:#6a675f;font-size:.72rem;line-height:1.5;text-align:left}.cart-checkout{width:100%;cursor:not-allowed;opacity:.55}.cart-summary>a{display:inline-block;margin-top:1rem;font-size:.7rem;text-underline-offset:.3em}@media(max-width:980px){.header-inner{min-height:74px;justify-content:space-between}.header-brand{width:125px}.menu-toggle{display:grid;width:44px;height:44px;padding:12px 8px;border:0;background:transparent;cursor:pointer}.menu-toggle span:not(.sr-only){display:block;width:100%;height:1px;background:var(--ink)}.primary-nav{display:none;position:absolute;top:74px;left:0;right:0;padding:1.5rem 4vw 2rem;background:var(--paper);grid-template-columns:1fr 1fr;box-shadow:0 16px 28px #20201c1f}.primary-nav.is-open{display:grid}.nav-item{justify-content:flex-start;min-height:46px;border-bottom:1px solid rgba(32,32,28,.1)}.hero{min-height:700px}.hero-content{margin-left:7vw}.hero-signature{display:none}.welcome{grid-template-columns:.8fr 1.3fr;padding-left:2vw;padding-right:2vw}.portrait-damian{display:none}.welcome-copy{padding-right:2rem}.collection-card{min-height:310px}.wholesale{grid-template-columns:1fr 1fr;min-height:650px}.wholesale-copy{padding:4rem}.stockists{align-items:flex-start;flex-direction:column}.contact-content,.wholesale-contact-content{gap:4rem}.wholesale-product{grid-template-columns:1fr 1.4fr;gap:3rem}.selection-guide{grid-template-columns:minmax(220px,.65fr) 1.35fr;gap:3rem;padding:2.5rem}.header-inner{gap:1rem}.menu-toggle{margin-left:auto}.shop-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-category-stories button{min-height:310px}.shop-toolbar{position:static;flex-direction:column}.shop-search{min-height:58px;border-top:1px solid rgba(32,32,28,.3);border-left:0}.wholesale-value-grid{grid-template-columns:1fr 1fr}.wholesale-value-grid article:nth-child(2){border-right:0}.wholesale-value-grid article:nth-child(-n+2){border-bottom:1px solid rgba(32,32,28,.28)}}@media(max-width:700px){h1{font-size:clamp(2.3rem,10vw,3rem)}h2{font-size:clamp(1.65rem,7vw,2.1rem)}.hero{min-height:calc(100svh - 74px);align-items:end}.hero-shade{background:linear-gradient(0deg,#18120ed1,#18120e14)}.hero-content{width:auto;margin:0;padding:4rem 6vw}.hero-content>p:not(.eyebrow){font-size:.93rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:1.25rem}.welcome{display:flex;flex-direction:column;padding:5rem 6vw 0}.welcome-copy{order:1;padding:0}.portrait-paolo{order:2;width:75%;margin:3rem auto 0}.collections{padding:6rem 6vw}.collection-grid,.flavour-grid{grid-template-columns:1fr}.collection-card{min-height:280px;border-right:0;border-bottom:1px solid rgba(32,32,28,.35)}.collection-card:last-child{border-bottom:0}.wholesale{display:flex;flex-direction:column}.wholesale-image{height:430px}.wholesale-copy{padding:5rem 6vw}.testimonials,.stockists{padding:6rem 6vw}.footer-inner{grid-template-columns:1fr;gap:2.5rem}.ravioli-hero{min-height:600px;padding:5rem 6vw}.ravioli-intro{padding:6rem 6vw}.flavour-grid{margin:0 6vw 6rem}.flavour-grid article{min-height:240px;border-right:0;border-bottom:1px solid rgba(32,32,28,.35)}.flavour-grid article:last-child{border-bottom:0}.flavour-grid h3{margin-top:4rem}.contact-hero{min-height:400px;padding:5rem 6vw}.contact-content{grid-template-columns:1fr;padding:5rem 6vw}.contact-list>div{grid-template-columns:95px 1fr}.opening-hours>div{align-items:flex-start;flex-direction:column;gap:.2rem}.wholesale-contact-hero{min-height:420px;padding:5rem 6vw}.wholesale-contact-content{grid-template-columns:1fr;padding:5rem 6vw}.form-row{grid-template-columns:1fr;gap:0}.wholesale-hero{min-height:620px;padding:5rem 6vw;align-items:end}.wholesale-hero-note{display:none}.wholesale-intro{grid-template-columns:1fr;gap:2.5rem;padding:6rem 6vw}.wholesale-highlights{grid-template-columns:1fr 1fr}.wholesale-highlights>div{min-height:150px;padding:1.5rem}.wholesale-highlights>div:nth-child(2){border-right:0}.wholesale-highlights>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.2)}.chef-tools{padding:6rem 6vw}.chef-tool-tabs{grid-template-columns:1fr}.chef-tool-tabs button{min-height:56px;border-right:0;border-bottom:1px solid rgba(32,32,28,.25)}.chef-tool-tabs button:last-child{border-bottom:0}.chef-tool-panel{min-height:0;padding-top:2rem}.menu-ideas{grid-template-columns:1fr}.menu-ideas article{min-height:220px}.selection-guide{grid-template-columns:1fr;padding:2rem}.selection-image{min-height:0;max-height:480px}.selection-copy>ul,.selection-columns{grid-template-columns:1fr}.selection-copy>ul li:nth-child(odd),.selection-copy>ul li:nth-child(2n){padding-left:0;padding-right:0;border-left:0}.selection-columns{gap:0}.wholesale-range,.wholesale-values{padding:6rem 6vw}.wholesale-product{grid-template-columns:1fr;gap:2.5rem;padding:3rem 0}.product-list,.ravioli-lists{grid-template-columns:1fr}.product-list li:nth-child(odd),.product-list li:nth-child(2n){padding-left:0;padding-right:0;border-left:0}.ravioli-lists{gap:2.5rem}.ravioli-lists h3{min-height:0}.wholesale-value-grid{grid-template-columns:1fr}.wholesale-value-grid article{min-height:250px;border-right:0;border-bottom:1px solid rgba(32,32,28,.28)}.wholesale-value-grid article:nth-child(2){border-right:0}.wholesale-value-grid article:last-child{border-bottom:0}.wholesale-partner{grid-template-columns:1fr;gap:2.5rem;padding:6rem 6vw}.cart-button{min-width:44px;width:44px;padding:0;justify-content:center}.cart-button span{display:none}.shop-hero{min-height:550px;padding:5rem 6vw;align-items:end;background-position:58% center}.shop-hero-note{display:none}.delivery-strip{grid-template-columns:1fr;gap:.55rem;padding:1.2rem 6vw}.delivery-strip span{padding:0;border:0}.shop-catalogue{padding:5rem 0}.shop-heading{grid-template-columns:1fr;gap:1.5rem;padding:0 6vw;margin-bottom:2.5rem}.shop-category-stories{grid-template-columns:1fr;margin:0 6vw 3rem}.shop-category-stories button{min-height:330px}.shop-toolbar{margin:0 6vw 2rem}.category-tabs button{min-height:54px;padding:0 .85rem}.shop-product-grid{grid-template-columns:1fr;border-left:0;border-right:0}.shop-product-image{aspect-ratio:1.28}.shop-product-copy{padding:1.4rem 6vw 1.8rem}.shop-product-copy h2{min-height:0}.shop-product-buy{grid-template-columns:auto auto 1fr}.shop-promise{grid-template-columns:1fr;padding:5rem 6vw}.shop-promise>div{min-height:190px;border-right:0;border-bottom:0}.shop-promise>div:last-child{border-bottom:1px solid var(--ink)}.cart-drawer-header{min-height:90px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important}}.about-intro{max-width:940px;margin:0 auto;padding:7rem 6vw 5rem;text-align:center}.about-intro>p:last-child{margin:2rem auto 0;max-width:710px;color:#57564f}.about-story,.about-people{max-width:1320px;margin:0 auto;padding:0 6vw 7rem;display:grid;align-items:center;gap:clamp(3rem,7vw,7rem)}.about-story{grid-template-columns:.8fr 1.2fr}.about-heart{width:100%;max-height:560px;object-fit:cover}.about-copy>p:not(.eyebrow){color:#57564f}.about-copy h3{margin-top:2.5rem;font-size:1.15rem}.about-people{grid-template-columns:1.2fr .8fr;align-items:start}.about-portrait{margin:0}.about-portrait img{width:100%;height:auto}.about-portrait figcaption{margin-top:1rem;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.about-cta{padding:6rem 6vw;background:var(--olive);color:#fff;text-align:center}.about-cta .button{margin-top:2rem}@media(max-width:700px){.about-intro{padding:4rem 6vw 3rem}.about-story,.about-people{grid-template-columns:1fr;padding-bottom:4rem;gap:2.5rem}.about-heart{max-height:420px;object-position:center}.about-portrait{max-width:420px;width:100%;margin:0 auto}.about-cta{padding:4rem 6vw}}.stockists-intro{padding:6rem 6vw 4rem;max-width:1000px;margin:0 auto;text-align:center}.stockists-intro>p:not(.eyebrow){margin:1.5rem auto;color:#57564f}.stockists-jump-links{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem 2rem}.stockists-jump-links a{padding:.75rem 0}.stockists-directory{max-width:1320px;margin:0 auto;padding:1rem 6vw 7rem;display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,7vw,7rem)}.stockists-directory section{min-width:0;scroll-margin-top:2rem}.market-list,.stockist-list{list-style:none;padding:0;margin:2rem 0 0;border-top:1px solid var(--ink)}.market-list li,.stockist-list li{border-bottom:1px solid rgba(32,32,28,.18);padding:1.4rem 0}.stockists-directory h3{font-size:1.1rem;line-height:1.4}.stockists-directory li p{margin:.4rem 0 0;color:#57564f;font-size:.9rem}.market-list .market-schedule{display:flex;flex-direction:column;gap:.2rem;margin-top:1rem;color:var(--red);font-size:.8rem}.stockists-help{padding:5rem max(6vw,calc((100vw - 1160px)/2));background:#c8b98f;display:flex;align-items:center;justify-content:space-between;gap:3rem}.stockists-help h2{max-width:720px}.stockists-help .button{flex-shrink:0}.stockists-help p:last-child{margin-bottom:0}@media(max-width:700px){.stockists-intro{padding:4rem 6vw 3rem}.stockists-directory{grid-template-columns:1fr;gap:4rem;padding-bottom:4rem}.stockists-help{padding:4rem 6vw;flex-direction:column;align-items:flex-start;gap:2rem}}.range-ravioli .ravioli-hero{background-color:#14262b;background-image:linear-gradient(90deg,#14262b,#14262bf2 38%,#14262b33 70%,#14262b0f),url(/assets/making-ravioli.png);background-size:100% 100%,auto 100%;background-position:center,right center;background-repeat:no-repeat}.range-pasta .ravioli-hero{background-image:linear-gradient(90deg,#1e1611d1,#1e161126),url(/assets/shop-fresh-pasta-v2.jpg)}.range-bakes .ravioli-hero{background-image:linear-gradient(90deg,#1e1611d1,#1e161126),url(/assets/lasagna-on-table.png);background-position:center 68%}.shop-category-stories .bakes-category-image{object-position:center 70%}.range-products{grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:0}.range-products article{min-width:0;display:flex;flex-direction:column;border-bottom:1px solid rgba(32,32,28,.35)}.range-products article:nth-child(3n){border-right:0}.range-products article:last-child{border-right:1px solid rgba(32,32,28,.35);border-bottom:1px solid rgba(32,32,28,.35)}.range-product-overview{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,3fr);align-items:start}.range-product-text{min-width:0;padding-right:1rem}.range-product-box{width:100%;height:auto;max-height:160px;object-fit:contain;object-position:center top}.range-products h3{margin:1rem 0;overflow-wrap:anywhere}.range-description,.range-serving p{white-space:pre-line}.range-serving{margin:.8rem 0 1rem}.range-serving h4{margin:0;font-size:.67rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.range-serving p{margin-top:.5rem}.range-products .nutrition-panel{margin-top:auto}.nutrition-panel .product-details-toggle{gap:1rem;line-height:1.5}.nutrition-panel button:focus-visible{outline:2px solid var(--olive);outline-offset:4px}.nutrition-table{width:100%;border-collapse:collapse;font-size:.78rem}.nutrition-table caption{text-align:left;padding-bottom:.8rem;font-size:.75rem}.nutrition-table th,.nutrition-table td{padding:.55rem .2rem;border-bottom:1px solid rgba(32,32,28,.15);text-align:left}.nutrition-table tbody th{font-weight:400}.nutrition-table td,.nutrition-table thead th:last-child{text-align:right}@media(max-width:1000px)and (min-width:641px){.range-products{grid-template-columns:repeat(2,minmax(0,1fr))}.range-products article:nth-child(3n){border-right:1px solid rgba(32,32,28,.35)}.range-products article:nth-child(2n){border-right:0}}@media(max-width:640px){.range-products{grid-template-columns:1fr}.range-products article,.range-products article:last-child{padding:2rem 0;border-right:0}.range-page .ravioli-hero{background-position:60% center}.range-bakes .ravioli-hero{background-position:center 68%}.range-ravioli .ravioli-hero{background-image:linear-gradient(90deg,#14262bc7,#14262b33),url(/assets/making-ravioli.png);background-position:center}}.checkout-page{max-width:1240px;margin:0 auto;padding:5rem 5vw 7rem}.checkout-page>header{margin-bottom:3rem}.checkout-layout{display:grid;grid-template-columns:1.25fr 1fr;align-items:start;gap:3rem}.checkout-panel,.checkout-summary{padding:clamp(1.4rem,3vw,3rem);background:var(--paper);border-top:3px solid var(--red)}.checkout-panel h2,.checkout-summary h2{margin:0 0 1.8rem;font-size:clamp(1.6rem,3vw,2.3rem)}.checkout-fields{border:0;padding:0;margin:0;min-width:0;display:flex;flex-direction:column}.checkout-fields select{width:100%;padding:1rem .5rem;margin:.4rem 0 1rem;font:inherit;color:var(--ink);background:#fff;border:1px solid #aaa}.checkout-methods{margin:.8rem 0 1.5rem;padding:1rem;border:1px solid #bbb}.checkout-methods legend{font-weight:600}.checkout-methods label,.checkout-check{display:flex;align-items:baseline;gap:.7rem;margin:.8rem 0;font:inherit;text-transform:none;letter-spacing:normal}.checkout-methods input,.checkout-check input{width:auto;margin:0;box-shadow:none}.checkout-check{margin:1.5rem 0}.checkout-panel .button{margin:1rem 0;cursor:pointer}.checkout-panel .button:disabled{opacity:.5;cursor:not-allowed}.checkout-text-button{display:block;margin:1rem 0;border:0;padding:.5rem 0;background:none;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}.checkout-summary ul{list-style:none;padding:0}.checkout-summary li,.checkout-summary dl>div{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid #ddd}.checkout-summary dd{margin:0;white-space:nowrap}.checkout-total{font-size:1.2rem;font-weight:700}.checkout-help,.checkout-summary>p{font-size:.88rem}.terms-page{max-width:900px}.terms-page h2{font-size:1.4rem;margin-top:2rem}@media(max-width:760px){.checkout-layout{grid-template-columns:1fr;gap:2rem}.checkout-page{padding-top:3rem}}.checkout-address-suggestions{list-style:none;padding:0;margin:0 0 1rem;border:1px solid #aaa}.checkout-address-suggestions button{width:100%;text-align:left;padding:.8rem;border:0;background:#fff;font:inherit;cursor:pointer}.checkout-address-suggestions button:hover,.checkout-address-suggestions button:focus-visible{background:#f1eee8}.checkout-fields input[readonly]{background:#f1eee8}
