@font-face{font-family:Sarchin;src:url('assets/font.woff2') format('woff2');font-display:swap;font-weight:100 900}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fbf8f1;color:#2b3027;font-family:Sarchin,Tahoma,sans-serif;font-size:16px;line-height:1.9}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #ac742c;outline-offset:5px}button{color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.5}h1{font-weight:850}h2{font-size:clamp(1.9rem,3.2vw,3.1rem);font-weight:800}h3{font-size:1.35rem}.topline{background:#a71e25;color:#fff;text-align:center;font-size:12px;padding:5px;letter-spacing:.2px}header{height:104px;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:0 5%;border-bottom:1px solid #e6e1d7;background:#fbf8f1;position:relative;z-index:20}.brand{font-weight:950;font-size:44px;line-height:1;color:#a71e25;display:inline-flex;flex-direction:column;align-items:center;letter-spacing:-3px}.brand span{font-family:Arial,sans-serif;font-size:10px;letter-spacing:4px;margin-top:10px;margin-left:4px}nav{display:flex;gap:32px;font-size:15px}nav a:hover,nav a.active{color:#a71e25}.head-actions{display:flex;align-items:center;gap:15px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:14px 25px;background:#a71e25;color:white;border:1px solid #a71e25;border-radius:4px;min-height:48px;transition:background .2s,transform .2s}.btn:hover{background:#85161d;transform:translateY(-2px)}.btn.small{font-size:14px;padding:9px 17px}.btn.light{background:#fbf8f1;color:#a71e25;border-color:#fbf8f1}.btn.outline{background:transparent;color:#a71e25}.icon{border:0;background:none;font-size:29px;min-width:44px;min-height:44px;padding:0}.menu{display:none}.hero{height:min(690px,calc(100svh - 138px));min-height:540px;position:relative;isolation:isolate;overflow:hidden;background:#242a23;color:#fff8eb}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 54%;z-index:-3}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(270deg,rgba(22,25,20,.96) 0%,rgba(22,25,20,.80) 30%,rgba(22,25,20,.04) 67%);z-index:-2}.hero-copy{width:51%;padding:65px 10% 60px 4%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.eyebrow{display:block;font-size:13px;letter-spacing:.4px;margin-bottom:21px}.eyebrow:before{content:'';display:inline-block;width:28px;height:1px;background:currentColor;vertical-align:middle;margin-left:12px}.hero h1{font-size:clamp(2.9rem,4.6vw,4.75rem);line-height:1.52;margin-bottom:20px;white-space:nowrap}.hero h1 em{font-style:normal;color:#ffb593}.hero p{max-width:365px;color:#e3dfd4;font-size:16px;margin-bottom:27px}.hero-actions{display:flex;align-items:center;gap:27px}.text-link{display:inline-flex;gap:24px;align-items:center;border-bottom:1px solid currentColor;padding:8px 0;font-size:15px}.hero-pack{position:absolute;bottom:28px;left:7%;width:116px;filter:drop-shadow(0 15px 18px #0008);transform:rotate(-5deg)}.hero-note{position:absolute;left:22px;bottom:30px;writing-mode:vertical-rl;font:11px Arial;letter-spacing:3px}.strip{display:flex;align-items:center;justify-content:space-around;gap:22px;padding:20px;background:#a71e25;color:#fff6e8;font-size:15px}.strip i{font-style:normal;color:#f2b68a}.section{padding:90px 7%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px}.section-head h2{margin-bottom:6px}.section-head p{margin:0;color:#717265}.kicker{color:#a71e25;font-size:13px;display:block;margin-bottom:14px}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.product{position:relative}.product-photo{height:320px;background:#f0eee6;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;border-radius:3px}.product:nth-child(3n+2) .product-photo{background:#eee4da}.product:nth-child(3n) .product-photo{background:#e6e9de}.product-photo img{height:75%;max-width:70%;object-fit:contain;filter:drop-shadow(0 16px 12px #45281822);transition:transform .35s}.product:hover img{transform:translateY(-8px) rotate(-3deg)}.product-info{display:flex;align-items:center;justify-content:space-between;padding:20px 0;border-bottom:1px solid #dbd8ce}.product-info h3{margin:0;font-size:19px}.product-info p{font-size:14px;color:#78786d;margin:5px 0 0}.round{width:42px;height:42px;border:1px solid #c9cabc;border-radius:50%;display:grid;place-items:center;font:22px Arial;flex-shrink:0}.tag{position:absolute;right:20px;top:17px;border:1px solid #b5b8a8;border-radius:30px;padding:2px 10px;font-size:12px;z-index:1}.story{display:grid;grid-template-columns:1fr 1fr;min-height:650px;background:#e9ecdf}.story-image{width:100%;height:650px;object-fit:cover;object-position:center 60%}.story-copy{padding:70px 13%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.story-copy p{color:#5c6254;max-width:400px}.story-copy h2{font-size:clamp(2.5rem,4vw,4rem)}.recipes{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:28px;align-items:start}.recipe-cover{height:310px;object-fit:cover;width:100%;border-radius:3px;transition:filter .2s}.recipe:first-child .recipe-cover{height:410px}.recipe:hover .recipe-cover{filter:brightness(.92)}.recipe h3{margin:17px 0 5px}.meta{color:#7d7d6e;font-size:13px}.recipe p{font-size:15px;color:#666a5c}.social-band{margin:0 7% 85px;display:grid;grid-template-columns:1fr 1fr;min-height:340px;background:#a71e25;color:#fff8eb}.social-band>div{padding:45px 12%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.social-band h2{font-size:2.4rem;margin-bottom:14px}.social-pics{display:grid!important;grid-template-columns:1fr 1fr;padding:0!important;gap:8px;background:#fbf8f1}.social-pics img{height:340px;width:100%;object-fit:cover}.buy-band{padding:45px 7%;border-top:1px solid #d8d9cb;display:flex;justify-content:space-between;align-items:center}.buy-band h2{font-size:2rem;margin:0}.buy-band p{margin:8px 0 0;color:#77796d}footer{background:#263e32;color:#f8f5e8;padding:60px 7% 24px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:50px}.footer-top .brand{color:#fff9ec;font-size:62px}.footer-top h2{font-size:1.8rem;font-weight:500}.social b{display:block;font:16px Arial;margin-top:12px}.footer-bottom{border-top:1px solid #ffffff30;padding-top:22px;display:flex;gap:28px;font-size:13px;flex-wrap:wrap}.footer-bottom>span:last-child{margin-right:auto;font-size:10px;letter-spacing:2px}.page-intro{padding:64px 7% 38px}.crumb{font-size:13px;color:#818373;margin-bottom:28px;display:block}.page-intro h1{font-size:3.5rem;margin:0 0 12px}.page-intro p{max-width:660px;color:#6a7061}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 32px}.filter{border:1px solid #cdd0bf;background:transparent;border-radius:30px;padding:8px 24px}.filter.active{background:#263e32;color:white;border-color:#263e32}.detail{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:10px 7% 70px}.detail-photo{background:#e9ecdf;min-height:490px;display:flex;align-items:center;justify-content:center}.detail-photo img{max-height:410px;width:auto;max-width:65%}.detail-copy{padding:30px 0}.detail-copy h1{font-size:2.5rem;margin-bottom:15px}.detail-copy .weight{font-size:1.5rem;color:#a71e25}.notice{font-size:14px;color:#777866;border-right:2px solid #b3b69b;padding:7px 15px;margin:26px 0}.spec{display:flex;justify-content:space-between;border-bottom:1px solid #d7dacd;padding:13px 0;gap:20px}.article{max-width:880px;margin:0 auto;padding:15px 35px 90px}.article>img{width:100%;max-height:500px;object-fit:cover;margin-bottom:35px}.article h2{font-size:1.8rem;margin-top:30px}.article li{margin-bottom:16px}.recipe-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:40px}.ingredients{padding:25px;background:#edf0e5;align-self:start}.ingredients label{display:block;margin:12px 0}.ingredients input{accent-color:#a71e25;min-width:20px;min-height:20px;vertical-align:middle;margin-left:10px}.ingredients label:has(input:checked){text-decoration:line-through;color:#888}.contact-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:7%;padding:0 7% 80px}.contact-box{background:#e9ecdf;padding:36px}.contact-box h2{font-size:1.8rem}label{font-size:14px}input,textarea,select{width:100%;background:#fffdf7;border:1px solid #ccd0be;padding:12px;margin:7px 0 20px;border-radius:3px}input[type=checkbox]{width:auto;margin-bottom:0}.feedback{border:1px solid #a71e25;color:#a71e25;padding:16px}details{border-bottom:1px solid #d4d8c7;padding:22px 0}summary{font-weight:650;cursor:pointer}details p{margin:18px 0 0;color:#69715c}dialog{border:0;padding:30px;background:#fbf8f1;border-radius:6px;max-width:650px;width:90%;max-height:85vh}dialog::backdrop{background:#15211999;backdrop-filter:blur(5px)}dialog form{float:left}#results a{display:block;border-bottom:1px solid #d4d8c7;padding:14px}main{min-height:60vh}.empty{padding:70px;text-align:center}.fade-in{animation:enter .5s ease both}@keyframes enter{from{opacity:.4;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1500px){.hero-copy{padding-right:13%}}@media(max-width:1050px){nav{gap:18px}header{padding:0 4%;gap:20px}.hero-copy{padding-right:7%;width:58%}.hero h1{font-size:3.5rem}.hero-actions{gap:18px}.products{gap:18px}.product-photo{height:280px}.story-copy{padding:45px 9%}.section{padding:65px 6%}.recipes{gap:20px}}@media(max-width:760px){header{height:84px;padding:0 5%}.brand{font-size:35px}.brand span{font-size:8px}.topline{font-size:11px}.head-actions{gap:6px}.head-actions .btn{font-size:12px;padding:7px 10px;gap:9px}.head-actions>.icon{font-size:25px}.menu{display:block}nav{display:none;position:absolute;top:84px;left:0;right:0;background:#fbf8f1;padding:25px;box-shadow:0 20px 30px #0002;flex-direction:column}nav.open{display:flex}.hero{height:750px;max-height:none;min-height:0}.hero-bg{height:65%;top:auto;bottom:0;object-position:25% 65%}.hero:after{background:linear-gradient(180deg,#20271f 0%,#20271f 37%,#20271f33 68%,#20271f11)}.hero-copy{width:100%;height:auto;padding:32px 7%;justify-content:start}.hero h1{font-size:2.7rem;line-height:1.4;margin-bottom:12px}.eyebrow{margin-bottom:12px;font-size:12px}.hero p{font-size:14px;margin-bottom:17px;max-width:320px}.hero-actions{gap:20px}.hero-actions .btn{padding:9px 16px;font-size:14px}.hero-actions .text-link{font-size:13px}.hero-pack{width:92px;bottom:22px;left:9%}.hero-note{display:none}.strip{font-size:12px;gap:8px;padding:15px 10px}.strip i:last-of-type,.strip span:last-child{display:none}.section{padding:50px 6%}.section-head{align-items:start;margin-bottom:25px;gap:15px}.section-head h2{font-size:1.9rem}.section-head p{font-size:14px}.section-head .text-link{font-size:12px;white-space:nowrap;gap:10px}.products{grid-template-columns:repeat(2,1fr);gap:16px}.home-products .product{display:flex}.product-photo{height:230px}.product-info{padding:14px 0}.product-info h3{font-size:16px}.product-info p{font-size:12px}.round{width:32px;height:32px;font-size:18px}.tag{font-size:10px;right:10px;top:10px}.story{grid-template-columns:1fr}.story-image{height:450px;object-position:center 55%}.story-copy{padding:42px 7%}.story-copy h2{font-size:2.6rem}.recipes{grid-template-columns:1fr 1fr;gap:20px}.recipe:first-child{grid-column:1/-1}.recipe:first-child .recipe-cover{height:290px}.recipe-cover{height:220px}.recipe h3{font-size:18px}.recipe p{font-size:13px}.social-band{grid-template-columns:1fr;margin:0 6% 50px}.social-band>div{padding:32px 8%}.social-band h2{font-size:2rem}.social-pics img{height:240px}.buy-band{padding:32px 6%;gap:20px;align-items:start}.buy-band h2{font-size:1.6rem}.buy-band p{font-size:13px}.buy-band .btn{font-size:13px;white-space:nowrap;padding:10px 13px;gap:12px}.footer-top{flex-wrap:wrap;gap:25px}.footer-top h2{font-size:1.3rem}.footer-top .brand{font-size:50px}.social{font-size:14px}.footer-bottom{gap:18px}.footer-bottom>span:last-child{width:100%;margin:0}.page-intro{padding:35px 6% 22px}.page-intro h1{font-size:2.4rem}.detail{grid-template-columns:1fr;padding:0 6% 40px;gap:20px}.detail-photo{min-height:350px}.detail-photo img{max-height:290px}.detail-copy{padding:10px 0}.detail-copy h1{font-size:2rem}.recipe-layout,.contact-layout{grid-template-columns:1fr}.article{padding:10px 6% 55px}.contact-layout{gap:25px}.filter{padding:7px 17px;font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}@media print{header,footer,.topline,.btn,.text-link{display:none}body{background:white}.article{padding:0;max-width:none}.article>img{max-height:250px}.ingredients{background:white}.recipe-layout{display:block}}

/* Sarchin: floating editorial navigation and scroll choreography */
:root{--ease-out:cubic-bezier(.22,1,.36,1);--red:#a71e25;--header-logo-color:var(--red,#a71e25);--footer-logo-color:#fff8e9;--btn-bg:var(--red,#a71e25);--box-bg:#f0eee6;--box-product-bg:#f0eee6;--box-story-bg:#263e32;--story-text-color:#fff8e9;--box-story-step-bg:transparent;--story-step-text-color:#ffffff;--story-step-highlight-color:#ff7b70;--box-contact-bg:#e9ecdf;--box-ingredients-bg:#edf0e5;--box-recipe-bg:#253b2d;--box-stage-bg:#e9eddf;--box-faq-bg:#263e32;--ink:#263e32;--cream:#fbf8f1;--text-color:#2b3027;--border-color:#e6e1d7;--header-bg:rgba(251,248,241,.95);--header-text-color:#2b3027;--footer-bg:#183a2e;--accent-color:#e8ba92}
.site-header { background: var(--header-bg, rgba(251,248,241,.95)) !important; color: var(--header-text-color, #2b3027) !important; }
.site-header.scrolled { background: var(--header-bg, rgba(251,248,241,.96)) !important; }
.site-header .nav-item, .site-header #nav a, .site-header .search-trigger, .site-header .menu-trigger { color: var(--header-text-color, #2b3027) !important; }
.site-header .nav-item:hover, .site-header .nav-item.active, .site-header .nav-item[aria-expanded=true] { color: var(--red, #a71e25) !important; }
.site-header .brand { color: var(--header-logo-color, var(--red, #a71e25)) !important; }
.site-footer .brand, .footer-identity .brand, .footer-signature>span { color: var(--footer-logo-color, #fff8e9) !important; }
.btn:not(.outline):not(.light), .head-actions .btn:not(.outline):not(.light), .footer-cta>span { background: var(--btn-bg, var(--red, #a71e25)) !important; border-color: var(--btn-bg, var(--red, #a71e25)) !important; }
.btn.outline { background: transparent !important; color: var(--btn-bg, var(--red, #a71e25)) !important; border-color: var(--btn-bg, var(--red, #a71e25)) !important; }
.btn.outline:hover { background: var(--btn-bg, var(--red, #a71e25)) !important; color: #ffffff !important; }
.btn.outline:hover .ui-arrow { filter: brightness(0) invert(1) !important; }
.btn.light { background: #fbf8f1 !important; color: var(--btn-bg, var(--red, #a71e25)) !important; border-color: #fbf8f1 !important; }
.btn.light:hover { background: #ffffff !important; color: var(--btn-bg, var(--red, #a71e25)) !important; }
.product-photo { background-color: var(--box-product-bg, #f0eee6) !important; }
.story { background-color: var(--box-story-bg, #263e32) !important; }
.story-copy * { color: var(--story-text-color, #fff8e9); }
.story-copy .eyebrow { color: #f6b69b !important; }
.story-step-card { background-color: var(--box-story-step-bg, transparent) !important; }
.story-step-card h2, .story-step-card p, .story-step-card .step-meta span { color: var(--story-step-text-color, #ffffff) !important; }
.story-step-card h2 em, .story-step-card em { color: var(--story-step-highlight-color, #ff7b70) !important; -webkit-text-stroke: 1.5px var(--story-step-highlight-color, #ff7b70) !important; text-shadow: 0 0 25px rgba(255, 90, 80, 0.6), 0 4px 20px rgba(0, 0, 0, 0.9) !important; }
.contact-box, .contact-form-card, .contact-visual { background-color: var(--box-contact-bg, #e9ecdf) !important; }
.ingredients, .ingredient-card { background-color: var(--box-ingredients-bg, #edf0e5) !important; }
.recipe-cover, .featured-recipe, .recipe-image-wrap, .recipe-detail-image { background-color: var(--box-recipe-bg, #253b2d); }
.product-stage, .detail-photo, .collection-photo, .where-showcase { background-color: var(--box-stage-bg, #e9eddf) !important; }
.faq-contact, .faq-list details { background-color: var(--box-faq-bg, #263e32); }
body, main:not(.story *):not(.site-footer *), .section-head p, .catalog-section p { color: var(--text-color, #2b3027); }
.brand-logo-img{max-height:68px;height:68px;width:auto;max-width:260px;object-fit:contain;display:block;transition:transform .25s cubic-bezier(.22,1,.36,1),filter .25s ease}
.site-header.scrolled .brand-logo-img{max-height:54px;height:54px}
.brand.has-custom-logo{flex-direction:row;letter-spacing:normal;align-items:center}
.brand.has-custom-logo span{display:none}
.brand:hover .brand-logo-img{transform:scale(1.05);filter:drop-shadow(0 4px 14px rgba(167,30,37,.35))}
.footer-identity .brand-logo-img{max-height:80px;height:80px;max-width:280px}
@media(max-width:760px){.brand-logo-img{max-height:56px;height:56px}}
body{margin:0;background:var(--cream,#fbf8f1);color:var(--text-color,#2b3027)}body{padding-top:126px}body.home-view{padding-top:0}body.modal-open{overflow:hidden}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}[hidden]{display:none!important}.skip-link{position:fixed;top:8px;right:10px;z-index:150;background:white;padding:10px;transform:translateY(-160%)}.skip-link:focus{transform:none}.scroll-progress{position:fixed;top:0;right:0;height:3px;background:var(--red);width:100%;transform:scaleX(0);transform-origin:right;z-index:110;pointer-events:none}.site-header{position:fixed;inset:22px 3.5% auto;height:90px;z-index:60;padding:0 30px;gap:25px;border-radius:20px;border:1px solid #ffffff88;background:rgba(251,248,241,.95);box-shadow:0 8px 36px #1b28121a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:inset .45s var(--ease-out),height .45s var(--ease-out),box-shadow .4s,background .4s}.site-header.scrolled{inset:12px 5% auto;height:74px;background:rgba(251,248,241,.96);box-shadow:0 8px 30px #1b281226}.site-header .brand{font-size:54px;line-height:0.92;letter-spacing:-2px;flex-shrink:0;color:#a71e25;filter:drop-shadow(0 2px 8px rgba(167,30,37,.2));transition:transform .25s cubic-bezier(.22,1,.36,1),filter .25s ease}.site-header .brand:hover{transform:scale(1.05);filter:drop-shadow(0 4px 14px rgba(167,30,37,.35))}.site-header .brand span{font-size:11.5px;font-weight:800;letter-spacing:4.5px;margin-top:4px;margin-inline-end:-4.5px}.site-header.scrolled .brand{font-size:45px;line-height:0.92}.site-header.scrolled .brand span{font-size:10px;letter-spacing:4px;margin-top:3px}.site-header #nav{display:flex;gap:5px;align-items:center;position:static;padding:5px;background:#eeece4;box-shadow:none;border-radius:100px}.nav-item{font-size:14px;white-space:nowrap;padding:10px 17px;border-radius:100px;border:0;background:transparent;display:flex;gap:6px;align-items:center;min-height:44px;transition:background .22s,color .22s}.nav-item svg{width:16px;height:16px;transition:transform .25s}.nav-item:hover,.nav-item.active,.nav-item[aria-expanded=true]{background:#fffdf8;color:var(--red);box-shadow:0 2px 8px #272f1910}.nav-item[aria-expanded=true] svg{transform:rotate(180deg)}.search-trigger{width:44px;height:44px;border:1px solid #d2d6c8;border-radius:50%;background:transparent;display:grid;place-items:center;transition:background .2s}.search-trigger:hover{background:#e8ebdf}.head-actions{gap:12px}.btn{border-radius:100px;padding:14px 25px;font-weight:550;transition:background .25s,transform .3s var(--ease-out),box-shadow .3s}.btn span{display:inline-block;transition:transform .3s var(--ease-out)}.btn:hover span{transform:translate(-3px,-3px)}.btn:hover{box-shadow:0 8px 20px #56110b18}.btn.small{font-size:14px;min-height:44px;padding:10px 18px}.menu-trigger{display:none;width:46px;height:46px;border:1px solid #d2d6c8;border-radius:50%;background:transparent;flex-direction:column;align-items:center;justify-content:center;gap:6px}.menu-trigger span{width:18px;height:1.5px;background:currentColor;display:block}.menu-trigger span:last-child{width:12px;align-self:flex-end;margin-left:13px}.mega-menu{position:absolute;top:calc(100% + 12px);left:0;right:0;padding:26px;display:grid;grid-template-columns:1fr 1fr 1fr 1.1fr;gap:18px;min-height:280px;background:var(--cream);border:1px solid #e6e3d6;border-radius:20px;box-shadow:0 24px 50px #0002;animation:menuIn .28s var(--ease-out)}.mega-intro{padding:12px}.mega-intro h2{font-size:28px;margin-bottom:18px}.mega-intro .text-link{font-size:14px;gap:0}.mega-product{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f0ede3;border-radius:13px;padding:18px;text-align:center;overflow:hidden}.mega-product:nth-child(3){background:#e8ecdf}.mega-product img{height:134px;max-width:90px;object-fit:contain;filter:drop-shadow(0 9px 7px #0002);transition:transform .35s var(--ease-out)}.mega-product:hover img{transform:translateY(-7px) rotate(-4deg)}.mega-product b{display:block;font-size:16px;margin-top:10px}.mega-product div>span{font-size:13px;color:#6d7565}.mega-arrow{position:absolute;left:15px;top:12px;font-size:22px;color:var(--red)}.mega-professional{background:var(--ink);border-radius:13px;color:var(--cream);padding:24px;display:flex;flex-direction:column;justify-content:space-between}.mega-professional span{font-size:13px}.mega-professional strong{font-size:24px;line-height:1.6;font-weight:600}.nav-scrim{position:fixed;inset:0;z-index:50;background:#16221844;backdrop-filter:blur(4px);animation:fadeScrim .2s ease}#mobile-menu{padding:28px;border:0;background:var(--cream);height:100dvh;max-height:100dvh;width:min(480px,100%);max-width:100%;margin:0 0 0 auto;border-radius:0;animation:mobileIn .35s var(--ease-out)}#mobile-menu::backdrop{background:#16221866;backdrop-filter:blur(5px)}.mobile-menu-head{display:flex;justify-content:space-between;align-items:center;color:var(--red);padding-bottom:25px;border-bottom:1px solid #d5d7ca}.mobile-menu-head span{font-size:17px}#mobile-menu nav{position:static;display:flex;flex-direction:column;gap:0;padding:20px 0 30px;background:none;box-shadow:none}#mobile-menu nav a{display:flex;gap:18px;align-items:center;font-size:27px;padding:16px 0;border-bottom:1px solid #e1e2d5}#mobile-menu nav a>span{font-size:12px;color:#7c8272}#mobile-menu nav i{font-size:20px;font-style:normal;margin-right:auto}#mobile-menu .btn{display:flex}.mobile-social{display:block;font:14px Arial;text-align:center;padding:27px;color:var(--red)}
.hero{height:min(850px,100svh);min-height:740px;border-radius:0 0 32px 32px}.hero-bg{transform:scale(1.06);will-change:transform}.hero:after{background:linear-gradient(270deg,#172319f2 0%,#182319bd 30%,#1823190a 70%),linear-gradient(0deg,#111b1477,transparent 30%)}.hero-copy{width:57%;padding:145px 8% 90px 4%;position:relative}.hero h1{font-size:clamp(3.2rem,5.2vw,5.2rem);line-height:1.42;letter-spacing:-1.5px;margin-bottom:22px}.hero h1>span{display:block}.hero h1 em{color:#ffb899;font-style:normal}.hero p{font-size:16px;line-height:2;max-width:400px;color:#e6e8db}.hero .eyebrow{font-size:14px;margin-bottom:22px;color:#e6e8db}.hero-pack{left:9%;bottom:75px;width:130px;transform:rotate(-5deg);filter:drop-shadow(0 20px 18px #0007)}.hero-note{left:27px;bottom:85px;font-size:12px;opacity:.7}.scroll-cue{position:absolute;bottom:29px;right:8%;display:flex;align-items:center;gap:15px;border:0;background:none;color:#faf5e6;font-size:12px;padding:0;min-height:44px}.scroll-cue-icon{border:1px solid #ffffff66;border-radius:50%;height:36px;width:36px;display:grid;place-items:center;font-size:20px;transition:transform .3s}.scroll-cue:hover .scroll-cue-icon{transform:translateY(4px)}.strip{background:transparent;color:var(--ink);padding:32px 7%;border-bottom:1px solid #d8dacb;font-size:16px}.strip i{color:var(--red);font-size:26px;display:inline-block;transform:rotate(var(--star-angle,0deg))}.section{padding:105px 7%}.section-head{margin-bottom:50px}.section-head h2{font-size:clamp(2rem,3.7vw,3.6rem);line-height:1.5;font-weight:750;letter-spacing:-.6px}.section-head h2 em{font-style:normal;color:var(--red)}.section-head p{margin-top:14px;font-size:16px}.kicker{font-size:14px;letter-spacing:0;display:flex;align-items:center;gap:10px}.kicker:before{content:'';width:22px;height:1px;background:var(--red);display:inline-block}.products{gap:30px}.product-photo{height:370px;border-radius:150px 150px 16px 16px;background:#eeede4;transition:background .3s}.product-photo img{height:70%;transition:transform .65s var(--ease-out),filter .4s}.product .tag{top:auto;bottom:20px;right:50%;transform:translateX(50%);font-size:12px;background:#ffffff66;border-color:#bfc3b4;padding:3px 13px}.product:hover .product-photo img{transform:translateY(-12px) rotate(-4deg);filter:drop-shadow(0 24px 17px #45281830)}.product-info{padding:23px 3px}.product-info h3{font-size:19px}.round{transition:background .25s,color .25s,transform .3s}.product:hover .round{background:var(--red);border-color:var(--red);color:white;transform:rotate(8deg)}.story{margin:0 3.5%;border-radius:24px;overflow:hidden;background:#263e32;color:var(--cream);grid-template-columns:1.04fr 1fr}.story-copy{padding:65px 13%}.story-copy h2{font-weight:650;font-size:clamp(2.6rem,4.2vw,4.2rem);line-height:1.6;letter-spacing:-1px}.story-copy p{color:#d3dccd;font-size:16px;line-height:2.1}.story-copy .text-link{margin-top:18px}.story-copy .kicker{color:#f6b69b}.story-copy .kicker:before{background:currentColor}.story-image-frame{overflow:hidden;min-height:650px}.story-image{height:100%;min-height:650px;will-change:transform;transform:scale(1.08)}.recipes{gap:30px;grid-template-columns:1.3fr 1fr 1fr}.recipe-image-wrap{position:relative;border-radius:18px;overflow:hidden}.recipe-cover{border-radius:0;transition:transform .8s var(--ease-out),filter .4s}.recipe:hover .recipe-cover{transform:scale(1.05);filter:brightness(.88)}.recipe-view{position:absolute;bottom:20px;left:20px;color:var(--cream);background:#23392fbd;backdrop-filter:blur(8px);padding:8px 17px;border-radius:30px;font-size:13px;opacity:0;transform:translateY(10px);transition:opacity .3s,transform .3s}.recipe:hover .recipe-view,.recipe:focus-visible .recipe-view{opacity:1;transform:none}.recipe:nth-child(2){margin-top:65px}.recipe:nth-child(3){margin-top:130px}.recipe h3{font-size:21px;margin-top:22px}.recipe .meta{font-size:13px}.social-band{border-radius:24px;overflow:hidden;margin-bottom:95px}.social-band h2{font-weight:700;font-size:2.7rem}.social-pics{gap:0}.social-pics img{height:430px;transition:transform 1s var(--ease-out)}.social-pics img:hover{transform:scale(1.04)}.buy-band{margin:0 7% 70px;padding:35px 0 0;border-top-color:#c3c9b6}.buy-band h2{font-weight:700}footer{border-radius:28px 28px 0 0;padding-top:75px}.footer-top h2{font-size:2.2rem}.text-link{position:relative;border-bottom-color:#aeb59f}.text-link:after{content:'';position:absolute;bottom:-1px;right:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease-out)}.text-link:hover:after{transform:scaleX(1)}.page-intro{padding-top:42px}.page-intro h1{font-size:clamp(2.5rem,4.7vw,4.5rem);letter-spacing:-1px}.detail-photo{border-radius:24px}.contact-box,.ingredients{border-radius:18px}.filters{margin-bottom:40px}.filter{transition:background .25s,color .25s}.article>img{border-radius:22px}.reveal-pending{opacity:0;transform:translate3d(0,34px,0);transition:opacity .8s var(--ease-out),transform .9s var(--ease-out);transition-delay:var(--reveal-delay,0ms)}.reveal-pending.revealed,.reveal-pending:focus-within{opacity:1;transform:none}.home-view .hero-copy>*,.home-view .hero-pack{animation:heroEnter .9s var(--ease-out) both}.home-view .hero-copy h1{animation-delay:.1s}.home-view .hero-copy p{animation-delay:.2s}.home-view .hero-copy .hero-actions{animation-delay:.3s}.home-view .hero-pack{animation-name:packEnter;animation-delay:.35s}.fade-in{animation:routeEnter .4s ease both}@keyframes heroEnter{from{opacity:0;translate:0 22px}to{opacity:1;translate:0 0}}@keyframes packEnter{from{opacity:0;translate:0 25px}to{opacity:1;translate:0 0}}@keyframes menuIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes mobileIn{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:none}}@keyframes fadeScrim{from{opacity:0}to{opacity:1}}@keyframes routeEnter{from{opacity:.65}to{opacity:1}}
@media(max-width:1150px){.site-header{padding:0 23px;gap:20px}.site-header .brand{font-size:48px}.nav-item{font-size:13px;padding:10px 12px}.head-actions{gap:9px}.btn.small{font-size:13px;padding:10px 14px}.product-photo{height:320px}.site-header #nav{gap:0}.hero h1{font-size:4.2rem}.hero-copy{width:61%}.mega-menu{gap:12px;padding:20px}.mega-professional{padding:20px}.mega-professional strong{font-size:21px}}
@media(max-width:1000px){.site-header #nav{display:none}.menu-trigger{display:flex}.site-header{height:80px}.site-header.scrolled{height:70px}.mega-menu,.nav-scrim{display:none!important}.hero-copy{width:66%}.hero h1{font-size:3.8rem}.hero{min-height:740px}.product-photo{height:290px}.story-copy{padding:40px 10%}.story-copy h2{font-size:2.8rem}.recipes{gap:20px}}
@media(max-width:760px){body{padding-top:100px}.site-header,.site-header.scrolled{inset:12px 4% auto;height:70px;border-radius:16px;padding:0 15px;gap:12px}.site-header .brand{font-size:42px;line-height:0.92}.site-header .brand span{font-size:10px;letter-spacing:3.5px;margin-top:3px;margin-inline-end:-3.5px}.head-actions{gap:8px}.search-trigger{border:0;width:40px;height:44px}.nav-buy{font-size:12px!important;padding:8px 12px!important;min-height:40px!important;gap:8px}.menu-trigger{width:40px;height:40px}.hero{height:830px;min-height:830px;border-radius:0 0 24px 24px}.hero-copy{width:100%;padding:120px 7% 0;height:auto}.hero h1{font-size:2.85rem;line-height:1.38;letter-spacing:-.7px;margin-bottom:15px}.hero .eyebrow{font-size:12px;margin-bottom:14px}.hero p{font-size:14px;line-height:1.8;max-width:340px;margin-bottom:20px}.hero-bg{height:52%;top:auto;bottom:0;object-position:18% 60%;transform:none;will-change:auto}.hero:after{background:linear-gradient(180deg,#172319 0%,#172319 42%,#172319b0 54%,#17231900 71%,#17231955)}.hero-actions .btn{font-size:14px;min-height:44px;padding:10px 18px}.hero-actions .text-link{font-size:14px}.hero-pack{width:94px;left:8%;bottom:58px}.scroll-cue{bottom:21px;right:7%;font-size:12px;gap:12px}.scroll-cue-icon{width:29px;height:29px;font-size:16px}.strip{padding:20px 5%;font-size:13px}.strip i{font-size:19px}.section{padding:65px 6%}.section-head{align-items:end;gap:12px;margin-bottom:30px}.section-head h2{font-size:2rem;letter-spacing:-.4px}.section-head p{font-size:14px;margin-top:12px}.section-head .text-link{font-size:13px}.kicker{font-size:12px}.products{gap:18px}.product-photo{height:255px;border-radius:90px 90px 12px 12px}.product-photo img{height:64%}.product .tag{font-size:11px;bottom:14px}.product-info h3{font-size:16px}.product-info{padding:16px 0}.product-info p{font-size:13px}.story{margin:0 4%;border-radius:20px;grid-template-columns:1fr}.story-image-frame{min-height:0;height:420px}.story-image{height:100%;min-height:0;transform:none;will-change:auto;object-position:center 50%}.story-copy{padding:36px 8% 45px}.story-copy h2{font-size:2.7rem}.story-copy p{font-size:15px}.story-copy .text-link{font-size:14px}.recipes{grid-template-columns:1fr 1fr;gap:24px 18px}.recipe:nth-child(2),.recipe:nth-child(3){margin-top:0}.recipe-image-wrap{border-radius:14px}.recipe:first-child .recipe-cover{height:320px}.recipe-cover{height:230px}.recipe h3{font-size:18px;margin-top:16px}.recipe-view{opacity:1;transform:none;font-size:12px;bottom:12px;left:12px;padding:5px 12px}.recipe:not(:first-child) .recipe-view{display:none}.social-band{margin:0 6% 55px;border-radius:20px}.social-band h2{font-size:2.3rem}.social-pics img{height:270px}.buy-band{margin:0 6% 50px;padding-top:25px}.buy-band h2{font-size:1.6rem}.buy-band .btn{min-height:44px}.footer-top h2{font-size:1.5rem}.footer-top .brand{font-size:48px}.page-intro{padding-top:27px}.page-intro h1{font-size:2.5rem}.footer-bottom{font-size:13px}.reveal-pending{transform:translate3d(0,22px,0)}}
@media(max-width:380px){.site-header{gap:8px;padding:0 12px}.nav-buy span{display:none}.head-actions{gap:3px}.hero h1{font-size:2.6rem}.product-photo{height:225px}.hero-actions{gap:15px}.section-head{align-items:start;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.reveal-pending{opacity:1!important;transform:none!important}.hero-bg,.story-image{transform:none!important;will-change:auto}.strip i{transform:none}.site-header{transition:none}.hero-copy>*,.hero-pack{animation:none!important}}
@media print{body{padding:0}.site-header,.scroll-progress,.scroll-cue,.skip-link,.nav-scrim,#mobile-menu{display:none!important}.reveal-pending{opacity:1!important;transform:none!important}.article>img{border-radius:0}}

/* Quiet moving geometry, with a spacious editorial footer. */
.ambient-backdrop{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;contain:strict;background:#fbf8f1}.ambient-grain{position:absolute;inset:0;background-image:radial-gradient(#65714d20 .65px,transparent .85px);background-size:25px 25px;opacity:.45}.ambient-glow{position:absolute;width:650px;height:650px;border-radius:50%;opacity:.7;animation:ambientDrift 24s ease-in-out infinite alternate;will-change:transform}.glow-red{top:12%;right:-420px;background:radial-gradient(circle,#b74b3c1f 0%,#c3794c0c 45%,transparent 69%)}.glow-green{bottom:-150px;left:-340px;background:radial-gradient(circle,#68865420 0%,#647c490a 45%,transparent 70%);animation-delay:-12s;animation-duration:30s}.ambient-orbit{position:absolute;width:480px;height:480px;border:1px solid #a7543020;border-radius:50%;animation:orbitTurn 80s linear infinite;will-change:transform}.ambient-orbit:before,.ambient-orbit:after{content:'';position:absolute;border:1px solid #a7543017;border-radius:50%;inset:29px}.ambient-orbit:after{inset:61px}.ambient-orbit>span{position:absolute;top:67px;left:66px;width:7px;height:7px;background:#a64d3155;border-radius:50%;box-shadow:0 0 0 9px #a64d3107}.orbit-one{top:29%;right:-345px}.orbit-two{bottom:-230px;left:-155px;width:540px;height:540px;border-color:#56724920;animation-direction:reverse;animation-duration:105s}.orbit-two:before,.orbit-two:after{border-color:#56724917}.orbit-two>span{top:78px;left:76px;background:#56724966;box-shadow:0 0 0 9px #56724908}.ambient-line{position:absolute;left:9%;top:9%;height:90px;width:1px;background:linear-gradient(transparent,#8e9b6a35,transparent);transform:rotate(25deg);animation:lineDrift 19s ease-in-out infinite alternate}.line-two{left:auto;right:6%;top:72%;height:140px;animation-delay:-9s}#app{position:relative;z-index:1}.site-footer{position:relative;isolation:isolate;z-index:1;margin:0 18px 18px;border-radius:28px;padding:65px 5.8% 25px;background:#183a2e;color:#fff8e9;overflow:hidden}.footer-orbits{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.footer-orbits>span{position:absolute;border:1px solid #d9e4bb13;border-radius:50%;width:640px;height:640px;left:-350px;top:-340px;animation:footerBreath 20s ease-in-out infinite alternate}.footer-orbits>span:nth-child(2){width:760px;height:760px;left:-410px;top:-400px;animation-delay:-7s}.footer-orbits>span:nth-child(3){width:880px;height:880px;left:-470px;top:-460px;animation-delay:-14s}.footer-invitation{display:flex;align-items:center;justify-content:space-between;gap:45px;padding:5px 0 58px;border-bottom:1px solid #d8e2bd30}.footer-eyebrow{display:block;font-size:14px;color:#c7d5b8;margin-bottom:22px}.footer-invitation h2{font-size:clamp(3.6rem,6.5vw,6.5rem);font-weight:650;line-height:1.4;letter-spacing:-2px;margin:0}.footer-invitation h2 em{font-style:normal;color:#e8ba92}.footer-invitation-action{min-width:280px;padding-left:5%;padding-top:35px}.footer-invitation-action p{font-size:18px;color:#d2ddca;line-height:1.9;margin-bottom:25px}.footer-cta{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:12px 20px 12px 10px;background:#f2ead4;color:#183a2e;border-radius:100px;font-size:18px;transition:background .3s,transform .3s var(--ease-out)}.footer-cta>span{width:49px;height:49px;border-radius:50%;display:grid;place-items:center;background:#183a2e;color:#fff8e9;font-size:25px;transition:transform .4s var(--ease-out)}.footer-cta:hover{background:#fff8e9;transform:translateY(-3px)}.footer-cta:hover>span{transform:rotate(-45deg)}.footer-grid{display:grid;grid-template-columns:1.3fr .85fr .85fr 1.25fr;gap:40px;padding:55px 0 45px}.footer-identity .brand{color:#fff8e9;font-size:54px;margin-bottom:25px}.footer-identity p{font-size:15px;color:#c9d5c1;line-height:2.1;margin-bottom:24px}.footer-contact{display:inline-flex;gap:15px;font-size:14px;color:#ecd1ad;padding:4px 0;border-bottom:1px solid #ecd1ad50}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;position:static;background:none;box-shadow:none;padding:0;font-size:15px}.footer-links h3{font-size:14px;font-weight:500;color:#aebbab;margin:0 0 18px}.footer-links a{display:inline-block;padding:7px 0;min-height:44px;color:#f4f2e3;transition:color .25s,transform .25s}.footer-links a:hover{color:#e8ba92;transform:translateX(-4px)}.footer-social-card{position:relative;isolation:isolate;min-height:270px;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:21px;color:#fffdf2;background:#304334;box-shadow:inset 0 0 0 1px #ffffff15}.footer-social-card>img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%;transition:transform .8s var(--ease-out)}.footer-social-card:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#112f2666 0%,#112f2611 27%,#102b24ed 90%)}.footer-social-card:hover>img{transform:scale(1.07)}.footer-social-top{display:flex;justify-content:space-between;align-items:center}.footer-social-top>span{width:35px;height:35px;border:1px solid #ffffff70;border-radius:50%;display:grid;place-items:center;font-size:21px}.footer-social-card>div:last-child>span{font-size:14px;display:block}.footer-social-card strong{display:block;font:22px Arial,sans-serif;text-align:right;margin:12px 0 10px}.footer-social-card .footer-social-label{font-size:12px!important;color:#d7e0d0}.footer-signature{padding-top:4px;padding-bottom:33px;user-select:none}.footer-signature>span{font:800 clamp(4rem,14vw,14rem)/.95 Arial,sans-serif;letter-spacing:-.06em;display:block;direction:ltr;text-align:center;color:#e5ecd913;-webkit-text-stroke:1px #cbd5b847;white-space:nowrap}.footer-signature>div{display:flex;align-items:center;justify-content:space-between;color:#b5c4ac;margin-top:22px;font-size:12px}.footer-signature>div>span:first-child{font:11px Arial;letter-spacing:4px}.footer-base{border-top:1px solid #d8e2bd30;display:flex;justify-content:space-between;align-items:center;gap:22px;padding-top:24px;color:#c7d4bc}.footer-base>p{font-size:12px;margin:0}.footer-utilities{display:flex;align-items:center;gap:28px}.back-to-top{border:0;background:transparent;color:#d6e0c9;display:flex;align-items:center;gap:9px;min-height:44px;padding:5px 0;font-size:12px}.back-to-top:hover{color:#fff8e9}.back-to-top>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid #aebd9b66;border-radius:50%;font-size:18px;transition:transform .3s}.back-to-top:hover>span{transform:translateY(-4px)}.ambient-paused .ambient-backdrop *,.ambient-paused .footer-orbits>span,.page-inactive .ambient-backdrop *,.page-inactive .footer-orbits>span{animation-play-state:paused!important}@keyframes ambientDrift{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(70px,-80px,0) scale(1.12)}}@keyframes orbitTurn{to{transform:rotate(360deg)}}@keyframes lineDrift{to{transform:translate3d(15px,75px,0) rotate(25deg)}}@keyframes footerBreath{to{transform:translate3d(20px,15px,0) scale(1.09)}}
@media(max-width:1050px){.footer-grid{gap:25px;grid-template-columns:1.1fr .8fr .8fr 1.2fr}.footer-social-card{padding:18px}.footer-social-card strong{font-size:18px}.footer-invitation-action{padding-left:0}.footer-identity .brand{font-size:48px}.footer-contact{font-size:13px;gap:8px}.footer-utilities{gap:18px}}
@media(max-width:760px){.ambient-glow{width:420px;height:420px;opacity:.6;animation-duration:32s}.glow-red{right:-290px}.glow-green{left:-280px;bottom:12%}.ambient-orbit{width:320px;height:320px}.orbit-one{right:-270px;top:38%}.orbit-two{width:390px;height:390px;left:-285px;bottom:2%}.ambient-line{display:none}.ambient-grain{background-size:24px 24px;opacity:.3}.site-footer{margin:0 10px 10px;padding:38px 6% 18px;border-radius:22px}.footer-invitation{display:block;padding-bottom:36px}.footer-eyebrow{font-size:12px;margin-bottom:18px}.footer-invitation h2{font-size:3.6rem;letter-spacing:-1px}.footer-invitation-action{padding-top:25px;min-width:0;max-width:340px}.footer-invitation-action p{font-size:15px;margin-bottom:20px}.footer-cta{font-size:16px;padding:8px 18px 8px 8px}.footer-cta>span{width:42px;height:42px;font-size:22px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 22px;padding:34px 0}.footer-identity{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;column-gap:30px;align-items:center}.footer-identity .brand{font-size:44px;margin:0;align-self:center}.footer-identity p{margin:0;font-size:14px}.footer-contact{grid-column:2;justify-self:start;margin-top:14px;font-size:12px}.footer-links{position:static;display:flex;background:transparent;box-shadow:none;padding:0;gap:3px;flex-direction:column;font-size:14px}.footer-links h3{font-size:13px;margin-bottom:10px}.footer-social-card{grid-column:1/-1;min-height:210px;padding:22px}.footer-social-card>img{object-position:50% 41%}.footer-social-card strong{font-size:22px}.footer-signature{padding-bottom:24px}.footer-signature>span{font-size:16vw;letter-spacing:-.065em}.footer-signature>div{margin-top:16px;gap:12px}.footer-signature>div>span{font-size:11px}.footer-signature>div>span:first-child{font-size:9px;letter-spacing:2px}.footer-base{display:block;padding-top:19px}.footer-base>p{font-size:11px}.footer-utilities{justify-content:space-between;gap:15px;margin-top:12px}.back-to-top{font-size:11px;gap:7px}.footer-orbits>span{opacity:.65}}
@media(prefers-reduced-motion:reduce){.ambient-backdrop *,.footer-orbits>span{animation:none!important;will-change:auto}.footer-social-card:hover>img,.footer-cta:hover,.footer-cta:hover>span{transform:none}}
@media print{.ambient-backdrop,.site-footer{display:none!important}}

/* Interior pages: editorial product, cooking and service layouts. */
.inner-shell{max-width:1440px;margin:0 auto;padding:15px 6% 70px}.inner-crumb{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:13px 0 32px;font-size:12px;color:#7b8270}.inner-crumb a{padding:5px 0;transition:color .2s}.inner-crumb a:hover{color:var(--red)}.inner-crumb>span:last-child{color:#3d4e3e}.inner-heading h1{font-size:clamp(2.6rem,4.5vw,4.7rem);font-weight:750;line-height:1.5;letter-spacing:-1.6px;margin:0 0 23px}.inner-heading h1 em{font-style:normal;color:var(--red)}.inner-heading p{font-size:17px;line-height:2.1;color:#66705e;max-width:510px;margin-bottom:24px}.inner-heading .kicker{margin-bottom:20px}.inner-section{padding:85px 0 0}.inner-section .section-head{margin-bottom:32px}.inner-section .section-head h2{font-size:clamp(2rem,3.3vw,3.1rem)}.inner-page .inner-heading{animation:innerEnter .65s var(--ease-out) both}.collection-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:8%;align-items:center;padding:6px 0 40px}.collection-photo{height:395px;border-radius:180px 180px 22px 22px;overflow:hidden;position:relative;background:#e2e0d6}.collection-photo>img{height:100%;width:100%;object-fit:cover;object-position:50% 48%;transition:transform 1s var(--ease-out)}.collection-photo:hover>img{transform:scale(1.04)}.image-caption{position:absolute;bottom:22px;right:22px;color:#fffaf0;background:#203d31c9;backdrop-filter:blur(8px);padding:8px 18px;border:1px solid #ffffff44;border-radius:50px;font-size:12px}.collection-facts{display:flex;gap:38px;margin-top:28px}.collection-facts>span{display:flex;gap:14px;align-items:center;color:#737c68;font-size:13px}.collection-facts b{font-size:33px;font-weight:550;color:#324b3c}.catalog-section{padding-top:28px}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #cad0bd;padding-bottom:23px;margin-bottom:35px;gap:20px}.catalog-toolbar .filters{margin:0}.catalog-count{font-size:13px;color:#7c8272;white-space:nowrap}.catalog-section .products{row-gap:42px}.catalog-section .product-photo{height:350px}.product-editorial{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}.product-stage{position:sticky;top:115px;min-height:630px;border-radius:240px 240px 24px 24px;background:#e9eddf;display:flex;align-items:center;justify-content:center;isolation:isolate;overflow:hidden}.stage-rings{position:absolute;width:420px;height:420px;border:1px solid #899b6d38;border-radius:50%;inset:auto;z-index:-1}.stage-rings:before,.stage-rings:after{content:'';position:absolute;inset:28px;border:1px solid #899b6d28;border-radius:50%}.stage-rings:after{inset:58px}.stage-pack{height:360px;max-width:60%;object-fit:contain;filter:drop-shadow(0 25px 16px #2d391c29);transition:transform .7s var(--ease-out)}.product-stage:hover .stage-pack{transform:translateY(-9px) rotate(-3deg)}.stage-type{position:absolute;top:55px;left:0;right:0;text-align:center;font:10px Arial;letter-spacing:3px;color:#6e7f5c}.stage-label{position:absolute;bottom:30px;left:35px;right:35px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #a7b69066;padding-top:18px;color:#4e6544}.stage-label>span{font-size:26px;font-weight:800}.stage-label strong{font-size:29px;font-weight:500;display:flex;gap:8px;align-items:baseline}.stage-label small{font-size:13px}.product-editorial-copy{padding:23px 0}.product-editorial-copy .inner-heading h1{font-size:clamp(2.8rem,4.3vw,4.4rem)}.product-editorial-copy .inner-heading p{font-size:16px}.product-spec-line{display:flex;gap:16px;padding:0 0 22px;border-bottom:1px solid #cfd4c2;color:#485c3f;font-size:14px}.product-spec-line>span+span{border-right:1px solid #bdc7ad;padding-right:16px}.pack-picker{border:0;padding:0;margin:28px 0}.pack-picker legend{font-size:13px;color:#707961;margin-bottom:14px}.pack-picker>div{display:flex;gap:12px}.pack-option{display:flex;align-items:baseline;gap:7px;border:1px solid #c3cab5;border-radius:12px;padding:10px 18px;color:#546546;min-height:48px;transition:background .2s,border .2s}.pack-option small{font-size:12px}.pack-option.selected{background:#263e32;color:#fff8e9;border-color:#263e32}.pack-option:hover{border-color:var(--red)}.product-buy{min-width:240px}.product-footnote{font-size:12px;color:#7b826f;margin:13px 0 21px}.product-facts details{padding:17px 0}.product-facts summary{font-size:14px}.product-facts p{font-size:14px}.compact-recipes .recipe,.recipe-pair .recipe{margin-top:0}.compact-recipes .recipe-cover,.compact-recipes .recipe:first-child .recipe-cover{height:270px}.compact-recipes{grid-template-columns:repeat(3,1fr)}.other-packs .product-photo{height:300px}.kitchen-intro,.service-intro,.where-intro{display:flex;justify-content:space-between;align-items:center;gap:40px;padding-bottom:28px}.editorial-index{font:800 56px/1.05 Arial,sans-serif;letter-spacing:-2px;color:#6c7c5530;text-align:left;direction:ltr;padding:0 15px}.featured-recipe{position:relative;isolation:isolate;border-radius:24px;overflow:hidden;min-height:510px;color:#fff8e9;display:flex;align-items:center;background:#253b2d}.featured-recipe>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out)}.featured-recipe:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(270deg,#10271ff2,#13271b99 38%,#17221a00 75%)}.featured-recipe:hover>img{transform:scale(1.04)}.featured-copy{padding:45px 6%;width:55%}.feature-label{font-size:12px;display:inline-block;border:1px solid #e7ebdb66;padding:5px 14px;border-radius:50px;margin-bottom:20px}.featured-copy h2{font-size:3.4rem;line-height:1.5;font-weight:650;margin-bottom:18px}.featured-copy p{font-size:17px}.featured-meta{display:block;font-size:13px;color:#ccd5c3;margin-bottom:23px}.featured-meta i{font-style:normal;padding:0 14px}.featured-copy .btn{font-size:14px;gap:35px}.recipe-pair{display:grid;grid-template-columns:1fr 1fr;gap:35px}.recipe-pair .recipe:first-child{grid-column:auto}.recipe-pair .recipe-cover,.recipe-pair .recipe:first-child .recipe-cover{height:380px}.recipe-pair .recipe-view{display:block!important}.editorial-note{font-size:14px!important;color:#7a816b;margin:0}.recipe-intro{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.recipe-intro .inner-heading h1{font-size:clamp(2.4rem,3.5vw,3.6rem)}.recipe-detail-image{height:520px;border-radius:24px 160px 24px 24px;position:relative;overflow:hidden;background:#d4d9c9}.recipe-detail-image>img{height:100%;width:100%;object-fit:cover;object-position:center 65%}.recipe-metrics{display:flex;gap:25px;padding:24px 0;margin:0 0 18px;border-top:1px solid #c9d1bc;border-bottom:1px solid #c9d1bc}.recipe-metrics>div{display:flex;flex-direction:column;gap:8px}.recipe-metrics span{font-size:12px;color:#7d846f}.recipe-metrics strong{font-size:16px;color:#344e35;font-weight:600}.recipe-print{font-size:14px;padding:10px 20px}.recipe-method{display:grid;grid-template-columns:.85fr 1.3fr;align-items:start;gap:8%;padding-top:75px}.ingredient-card{background:#e8eddf;border:1px solid #dce2cc;border-radius:22px;padding:32px;position:sticky;top:112px}.ingredient-card h2{font-size:1.9rem;margin-bottom:10px}.ingredient-card>p{font-size:13px;color:#6a755d;margin-bottom:18px}.ingredient-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #cbd5bb;font-size:15px;cursor:pointer}.ingredient-row input[type=checkbox]{margin:0;min-width:20px;min-height:20px;width:20px;height:20px;accent-color:#263e32;flex-shrink:0}.ingredient-row:has(input:checked)>span{text-decoration:line-through;color:#7e8a73}.ingredient-product{display:flex;gap:20px;align-items:center;margin-top:28px;padding-top:6px}.ingredient-product img{width:55px;height:95px;object-fit:contain}.ingredient-product>span{font-size:12px;color:#6e7d5e}.ingredient-product strong{display:block;font-size:14px;color:#284c34;margin:5px 0;font-weight:600}.ingredient-product small{font-size:12px;color:#a71e25}.method-copy>h2{font-size:2.6rem}.cooking-steps{list-style:none;padding:0;margin:0;counter-reset:step}.cooking-steps li{display:grid;grid-template-columns:50px 1fr;gap:20px;padding:23px 0;border-bottom:1px solid #d6dbc9;align-items:start}.step-number{font-size:27px;font-weight:400;color:#a71e25;line-height:1.9}.cooking-steps p{font-size:17px;line-height:2.1;margin:0}.kitchen-tip{padding:22px 25px;border-right:3px solid #a71e25;background:#efe8db;border-radius:10px;margin-top:28px}.kitchen-tip strong{font-size:15px;color:#86452f}.kitchen-tip p{font-size:14px;color:#746751;margin:7px 0 0}.about-intro{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:7%}.about-intro .inner-heading h1{font-size:clamp(2.5rem,4vw,4rem)}.about-image{height:600px;position:relative;overflow:hidden;border-radius:220px 220px 24px 24px}.about-image>img{width:100%;height:100%;object-fit:cover;object-position:center 40%}.about-signature{display:block;font-weight:900;font-size:62px;color:#a71e25;transform:rotate(-7deg);transform-origin:right;margin-top:25px}.about-statement{max-width:940px;padding:95px 30px;margin:0 auto;text-align:center}.about-statement .kicker{justify-content:center}.about-statement h2{font-size:clamp(1.7rem,2.8vw,2.8rem);line-height:1.8;font-weight:650}.about-statement em{font-style:normal;color:var(--red)}.about-statement p{max-width:690px;margin:25px auto 0;color:#69755d;font-size:17px;line-height:2.2}.about-duo{display:grid;grid-template-columns:.85fr 1fr;align-items:center;gap:8%;background:#e9eddf;border-radius:24px;overflow:hidden}.about-table-image{height:630px}.about-table-image img{height:100%;width:100%;object-fit:cover}.about-choice{padding:30px 0 30px 13%}.about-choice h2{font-size:2.4rem}.about-choice p{font-size:16px;color:#6b765f}.about-pack-options{margin:30px 0}.about-pack-options>a{display:grid;grid-template-columns:1fr auto;position:relative;border-top:1px solid #becbab;padding:15px 0}.about-pack-options span{font-size:13px;color:#6b7b58}.about-pack-options strong{grid-column:1;font-size:16px;font-weight:500}.about-pack-options i{grid-column:2;grid-row:1/3;align-self:center;font-size:26px;font-style:normal;color:#a71e25}.service-word{font:800 75px/1 Arial;letter-spacing:-4px;direction:ltr;color:#a71e251c;text-align:left}.where-intro .service-word{font-size:45px;letter-spacing:-2px}.contact-modern{display:grid;grid-template-columns:.8fr 1.2fr;gap:35px}.contact-visual{position:relative;isolation:isolate;min-height:410px;border-radius:22px;overflow:hidden;background:#253e2d;color:white;display:flex;align-items:end}.contact-visual>img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}.contact-visual:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#123729f5 0%,#14342666 60%,#14342605)}.contact-visual>div{padding:32px}.contact-visual h2{font-size:2.8rem;margin:12px 0 24px;line-height:1.6}.contact-visual>div>span{font-size:12px;color:#e0e8d5}.help-link{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 5px;border-bottom:1px solid #cdd4bf}.help-link b{font-size:14px;font-weight:500}.help-link div>span{display:block;font-size:13px;color:#838972;margin-top:5px}.help-link>span{font-size:26px;color:#a71e25}.contact-form-card{background:#fffdf6d9;border:1px solid #e0e2d2;border-radius:22px;padding:35px}.contact-form-card h2{font-size:2rem;margin-bottom:10px}.form-intro{font-size:14px;color:#7b826d;margin-bottom:30px}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form-card input,.contact-form-card select,.contact-form-card textarea,.where-form input,.where-form select{border-radius:10px;background:#f8f8ef;padding:13px 15px;min-height:50px;transition:border-color .2s}.contact-form-card input:focus,.contact-form-card textarea:focus,.where-form input:focus{border-color:#536e41}.form-disclosure{font-size:12px;color:#828776;margin:14px 0 0}.contact-form-card #form-status,.where-form #where-status{font-size:14px;color:#486438;line-height:1.9;margin-top:20px}.where-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:7%;align-items:start}.where-showcase{min-height:580px;position:sticky;top:115px;isolation:isolate;overflow:hidden;border-radius:24px;background:#e9e1d3;display:flex;flex-direction:column;align-items:center;justify-content:center}.where-showcase .stage-rings{border-color:#a865432d}.where-showcase .stage-type{top:40px;color:#987451}.where-showcase>img{height:300px;max-width:58%;object-fit:contain;filter:drop-shadow(0 24px 18px #5a3c2329);transition:transform .5s}.where-showcase:hover>img{transform:translateY(-8px)}.where-pack-name{font-size:18px;color:#7a432c;margin-top:30px}.where-showcase-note{font-size:13px;position:absolute;bottom:24px;color:#937557}.where-form{padding:20px 0}.where-form h2{font-size:2rem}.where-form label{display:block}.where-form .btn{margin-top:5px}.where-note{margin-top:30px;border-top:1px solid #c7d0b7;padding-top:24px}.where-note strong{font-size:15px;color:#627153}.where-note p{font-size:14px;line-height:2;color:#7a826e}.where-note .text-link{font-size:14px}.faq-layout{display:grid;grid-template-columns:.85fr 1.2fr;gap:8%;padding:28px 0 50px;align-items:start}.faq-intro{position:sticky;top:130px}.faq-intro .inner-heading h1{font-size:3.7rem}.faq-contact{background:#263e32;color:#fff8e9;padding:25px;border-radius:16px;margin-top:30px}.faq-contact>span{font-size:13px;color:#d2dcc8}.faq-contact>a{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:12px;font-size:16px}.faq-contact>a>span{font-size:22px}.faq-list{border-top:1px solid #bfcbb0}.faq-list details{padding:0;border-bottom:1px solid #bfcbb0}.faq-list summary{display:flex;align-items:center;gap:17px;list-style:none;padding:28px 0;font-size:17px;font-weight:500}.faq-list summary::-webkit-details-marker{display:none}.faq-number{font-size:13px;color:#8b967c;align-self:start;padding-top:5px}.faq-plus{margin-right:auto;color:#a71e25;font-size:25px;font-weight:400;transition:transform .25s}.faq-list details[open] .faq-plus{transform:rotate(45deg)}.faq-list details>div{padding:0 35px 28px}.faq-list details p{font-size:16px;line-height:2.1;margin:0;color:#717c63}.privacy-intro{padding:20px 0 25px}.privacy-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:9%;align-items:start}.privacy-layout>aside{position:sticky;top:130px;border-top:1px solid #bcc9ae;padding-top:20px;display:flex;flex-direction:column;align-items:start;gap:14px}.privacy-label{font-size:12px;color:#7a896b}.privacy-layout>aside>a{font-size:14px;min-height:44px;display:inline-flex;align-items:center}.privacy-layout>aside>a:hover{color:#a71e25}.privacy-content{background:#fffdf5bf;border:1px solid #e0e2d2;padding:35px 40px;border-radius:20px}.privacy-content section{padding:0 0 30px;margin-bottom:30px;border-bottom:1px solid #d8dfcb;scroll-margin-top:130px}.policy-index{color:#a71e25;font-size:13px}.privacy-content h2{font-size:1.7rem;margin:15px 0}.privacy-content p{font-size:16px;line-height:2.2;color:#707c61;margin:0}.privacy-footnote{font-size:13px;color:#848c74}.not-found{padding:45px 6% 90px;text-align:center;max-width:900px;margin:auto}.error-code{display:block;font-size:clamp(7rem,17vw,14rem);line-height:1.2;color:#a71e2522;letter-spacing:-10px;font-weight:700}.not-found .kicker{justify-content:center}.not-found h1{font-size:3rem;line-height:1.6}.not-found h1 em{font-style:normal;color:#a71e25}.not-found p{color:#7b856b}.not-found>div{display:flex;gap:15px;justify-content:center;flex-wrap:wrap;margin-top:30px}.inner-page .product,.inner-page .recipe{min-width:0}@keyframes innerEnter{from{opacity:.2;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(max-width:1050px){.inner-shell{padding-left:5%;padding-right:5%}.collection-intro{gap:5%}.inner-heading h1{font-size:3.3rem}.collection-photo{height:355px}.product-stage{min-height:570px}.stage-pack{height:320px}.product-editorial{gap:5%}.product-editorial-copy .inner-heading h1{font-size:3.1rem}.pack-option{padding:10px 13px}.featured-copy h2{font-size:2.9rem}.recipe-intro{gap:5%}.recipe-metrics{gap:17px}.recipe-metrics strong{font-size:14px}.recipe-detail-image{height:465px}.recipe-method{gap:5%;grid-template-columns:.9fr 1.2fr}.ingredient-card{padding:25px}.cooking-steps{gap:15px}.cooking-steps p{font-size:16px}.about-intro{gap:5%}.about-intro .inner-heading h1{font-size:3.1rem}.about-image{height:520px}.about-choice h2{font-size:2rem}.about-duo{gap:6%}.about-choice{padding-left:9%}.form-two{grid-template-columns:1fr;gap:0}.contact-modern{gap:25px}.contact-form-card{padding:25px}.faq-layout{gap:5%}.faq-intro .inner-heading h1{font-size:3rem}.faq-list summary{font-size:16px}}
@media(max-width:760px){.inner-shell{padding:8px 6% 50px}.inner-crumb{font-size:12px;margin:10px 0 22px;gap:9px}.inner-heading h1{font-size:2.6rem;letter-spacing:-.6px;line-height:1.55;margin-bottom:16px}.inner-heading p{font-size:15px;line-height:2}.inner-heading .kicker{font-size:12px;margin-bottom:15px}.collection-intro{grid-template-columns:1fr;gap:25px;padding-bottom:10px}.collection-photo{height:275px;border-radius:140px 140px 18px 18px;max-width:440px;width:100%;justify-self:center}.collection-photo>img{object-position:50% 38%}.collection-facts{gap:30px;margin-top:18px}.collection-facts>span{font-size:12px;gap:10px}.collection-facts b{font-size:27px}.catalog-toolbar{margin-bottom:25px;padding-bottom:17px;gap:10px;align-items:start;flex-wrap:wrap}.catalog-count{font-size:12px;padding-top:8px}.catalog-toolbar .filters{gap:7px}.catalog-toolbar .filter{font-size:12px;padding:7px 12px;min-height:40px}.catalog-section .product-photo{height:245px}.catalog-section .products{row-gap:27px}.product-editorial{grid-template-columns:1fr;gap:25px}.product-stage{position:relative;top:auto;min-height:440px;max-width:470px;width:100%;justify-self:center;border-radius:180px 180px 20px 20px}.stage-pack{height:250px;max-width:55%;margin-top:5px}.stage-rings{width:300px;height:300px}.stage-type{font-size:9px;letter-spacing:2px;top:35px}.stage-label{bottom:22px;left:25px;right:25px;padding-top:12px}.stage-label>span{font-size:22px}.stage-label strong{font-size:23px}.stage-label small{font-size:12px}.product-editorial-copy{padding:10px 0}.product-editorial-copy .inner-heading h1{font-size:2.8rem}.pack-picker{margin:24px 0}.pack-option{padding:10px 20px}.product-buy{min-width:230px}.product-facts summary{font-size:15px}.inner-section{padding-top:55px}.inner-section .section-head h2{font-size:2rem}.inner-section .section-head{gap:15px;align-items:end}.inner-section .section-head .text-link{font-size:12px}.compact-recipes{grid-template-columns:1fr 1fr;gap:22px 16px}.compact-recipes .recipe:first-child{grid-column:1/-1}.compact-recipes .recipe:first-child .recipe-cover{height:280px}.compact-recipes .recipe-cover{height:225px}.other-packs .product-photo{height:245px}.other-packs .products{grid-template-columns:repeat(2,1fr)}.other-packs .product:last-child{grid-column:1/-1;max-width:260px;width:100%;justify-self:center}.kitchen-intro,.service-intro,.where-intro{gap:15px;padding-bottom:15px;align-items:start}.editorial-index{display:none}.featured-recipe{min-height:540px;align-items:end;border-radius:20px}.featured-recipe>img{object-position:22% 50%}.featured-recipe:after{background:linear-gradient(0deg,#10271ff5 0%,#142d2499 40%,#162d1910 75%)}.featured-copy{padding:30px 7%;width:100%}.featured-copy h2{font-size:2.5rem;margin-bottom:12px}.featured-copy p{font-size:15px}.feature-label{font-size:12px;margin-bottom:15px}.featured-meta{margin-bottom:18px}.recipe-pair{grid-template-columns:1fr;gap:30px}.recipe-pair .recipe-cover,.recipe-pair .recipe:first-child .recipe-cover{height:340px}.recipe-pair .recipe h3{font-size:22px}.editorial-note{display:none}.recipe-intro{grid-template-columns:1fr;gap:26px}.recipe-intro .inner-heading h1{font-size:2.6rem}.recipe-detail-image{height:370px;border-radius:20px 115px 20px 20px}.recipe-metrics{gap:20px;justify-content:space-between;padding:20px 0;margin-bottom:16px}.recipe-metrics span{font-size:12px}.recipe-metrics strong{font-size:14px}.recipe-method{grid-template-columns:1fr;gap:35px;padding-top:40px}.ingredient-card{position:static;padding:26px;border-radius:18px}.ingredient-card h2{font-size:1.8rem}.ingredient-row{font-size:15px;padding:14px 0}.ingredient-product{margin-top:20px}.method-copy>h2{font-size:2.2rem}.cooking-steps li{grid-template-columns:35px 1fr;gap:15px;padding:23px 0}.step-number{font-size:23px}.cooking-steps p{font-size:16px}.about-intro{grid-template-columns:1fr;gap:30px}.about-intro .inner-heading h1{font-size:2.6rem}.about-image{height:440px;border-radius:160px 160px 20px 20px}.about-signature{font-size:46px;margin-top:20px}.about-statement{padding:55px 0}.about-statement h2{font-size:1.7rem;line-height:1.9}.about-statement p{font-size:15px;margin-top:20px}.about-duo{grid-template-columns:1fr;gap:0;border-radius:20px}.about-table-image{height:370px}.about-choice{padding:32px 8% 38px}.about-choice h2{font-size:2rem}.about-choice p{font-size:15px}.about-pack-options strong{font-size:15px}.service-word{display:none}.contact-modern{grid-template-columns:1fr;gap:28px}.contact-form-card{grid-row:1;padding:27px 7%;border-radius:18px}.contact-form-card h2{font-size:1.9rem}.form-two{grid-template-columns:1fr}.contact-visual{min-height:330px}.contact-visual>div{padding:27px}.contact-visual h2{font-size:2.4rem}.where-layout{grid-template-columns:1fr;gap:25px}.where-showcase{position:relative;top:auto;min-height:380px;border-radius:18px}.where-showcase>img{height:205px;max-width:50%}.where-showcase .stage-type{top:25px}.where-pack-name{font-size:16px;margin-top:20px}.where-showcase-note{bottom:18px;font-size:12px}.where-form{padding-top:0}.where-form h2{font-size:1.8rem}.faq-layout{grid-template-columns:1fr;gap:35px;padding:10px 0 10px}.faq-intro{position:static}.faq-intro .inner-heading h1{font-size:2.6rem}.faq-contact{margin-top:20px;padding:22px}.faq-list summary{padding:24px 0;gap:12px;font-size:16px}.faq-list details>div{padding:0 25px 23px}.faq-list details p{font-size:15px}.privacy-intro{padding:8px 0 10px}.privacy-layout{grid-template-columns:1fr;gap:30px}.privacy-layout>aside{position:static;gap:7px;display:flex;flex-direction:row;flex-wrap:wrap;column-gap:20px}.privacy-label{width:100%}.privacy-layout>aside>a{font-size:13px}.privacy-content{padding:27px 22px;border-radius:18px}.privacy-content h2{font-size:1.5rem}.privacy-content p{font-size:15px}.privacy-content section{margin-bottom:23px;padding-bottom:23px}.privacy-footnote{font-size:12px}.not-found{padding:25px 7% 55px}.not-found h1{font-size:2.4rem}.not-found .btn{font-size:13px;gap:10px}.image-caption{font-size:12px;bottom:18px;right:18px;padding:7px 14px}}
@media(prefers-reduced-motion:reduce){.inner-page .inner-heading{animation:none}.product-stage:hover .stage-pack,.where-showcase:hover>img,.featured-recipe:hover>img,.collection-photo:hover>img{transform:none}}
@media print{.inner-shell.recipe-page{padding:0;max-width:none}.recipe-page .inner-crumb,.recipe-print,.recipe-related,.ingredient-product{display:none!important}.recipe-page .recipe-intro{display:block}.recipe-page .inner-heading h1{font-size:26pt}.recipe-detail-image{height:220px;width:100%;border-radius:0}.recipe-metrics{padding:8px 0}.recipe-method{display:block;padding-top:20px}.ingredient-card{position:static;border:1px solid #ccc;background:white;padding:15px}.cooking-steps li{break-inside:avoid}.recipe-page .kitchen-tip{background:white}.recipe-page *{color:black!important}}
#search-dialog{border:1px solid #d9dfca;border-radius:22px;padding:34px;box-shadow:0 25px 100px #10261e40}#search-dialog h2{font-size:2rem;color:#263e32;margin-bottom:25px}#search-dialog>label{font-size:13px;color:#79866a}#search-dialog #search{border-radius:12px;background:#eff2e5;min-height:56px;padding:15px 18px}#search-dialog #results a{border-bottom:1px solid #d9dfca;padding:18px 10px;transition:background .2s,color .2s}#search-dialog #results a:hover{background:#ecf0e1;color:#a71e25}#search-dialog #results{font-size:15px;color:#526745}@media(max-width:760px){#search-dialog{padding:25px;border-radius:18px}#search-dialog h2{font-size:1.6rem}}

/* --- Sarchin Cinematic Scrollytelling Experience --- */
.story-scroll-experience {
  position: relative;
  height: 520vh;
  margin: 0;
  background: #101913;
  color: #fff8e9;
  contain: paint;
}
.story-scroll-sticky {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  height: 100svh;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.story-canvas-container {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.story-canvas {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transform: translateZ(0);
  will-change: transform;
}
.story-canvas-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at center, transparent 35%, rgba(14, 22, 17, 0.3) 70%, rgba(14, 22, 17, 0.75) 100%);
}
.story-canvas-vignette {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(10, 16, 12, 0.8) 0%, transparent 18%, transparent 80%, rgba(10, 16, 12, 0.9) 100%),
    linear-gradient(270deg, rgba(8, 14, 10, 0.88) 0%, rgba(8, 14, 10, 0.6) 38%, rgba(8, 14, 10, 0.15) 68%, transparent 100%);
}
.story-frame-badge {
  display: none;
}
.story-canvas-badge {
  position: absolute;
  top: 36px;
  left: 4.5%;
  z-index: 4;
  font: 11px Arial, sans-serif;
  letter-spacing: 3px;
  color: #ffc8b2;
  background: rgba(18, 30, 23, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 40px;
  padding: 8px 18px;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.35);
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.story-canvas-badge .badge-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #ff5c5c;
  box-shadow: 0 0 10px #ff5c5c;
  animation: badgePulse 2.4s ease-in-out infinite;
}
@keyframes badgePulse {
  0%, 100% { transform: scale(1); opacity: 0.85; }
  50% { transform: scale(1.4); opacity: 1; }
}
.story-steps-viewport {
  position: absolute;
  z-index: 3;
  right: 6%;
  top: 50%;
  transform: translateY(-50%);
  width: min(560px, 88vw);
  pointer-events: none;
}
.story-step-card {
  position: absolute;
  top: 50%;
  right: 0;
  width: 100%;
  transform: translateY(-50%) translate3d(0, 32px, 0);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  background: var(--box-story-step-bg, transparent) !important;
  border-radius: 18px;
  padding: 16px 20px;
  border: none !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  transition:
    opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.75s cubic-bezier(0.16, 1, 0.3, 1),
    filter 0.7s cubic-bezier(0.16, 1, 0.3, 1),
    visibility 0.7s;
  filter: blur(8px);
}
.story-step-card::before,
.story-step-card::after {
  display: none !important;
}
.story-step-card.active {
  opacity: 1;
  visibility: visible;
  transform: translateY(-50%) translate3d(0, 0, 0);
  filter: blur(0);
  pointer-events: auto;
}
.story-step-card.exit-up {
  opacity: 0;
  visibility: hidden;
  transform: translateY(-50%) translate3d(0, -32px, 0);
  filter: blur(8px);
}
.story-step-card.exit-down {
  opacity: 0;
  visibility: hidden;
  transform: translateY(-50%) translate3d(0, 32px, 0);
  filter: blur(8px);
}
.watermark-num {
  position: absolute;
  top: -15px;
  left: 10px;
  right: auto;
  font-size: clamp(140px, 17vw, 210px);
  font-weight: 900;
  line-height: 0.85;
  color: transparent;
  -webkit-text-stroke: 1.8px rgba(255, 255, 255, 0.18);
  user-select: none;
  pointer-events: none;
  z-index: 0;
  letter-spacing: -4px;
  opacity: 0.45;
  filter: drop-shadow(0 0 30px rgba(255, 80, 80, 0.25));
  transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
  font-family: Sarchin, sans-serif;
}
.story-step-card.active .watermark-num {
  opacity: 0.65;
  transform: translate3d(0, 0, 0);
}
.card-header-bar {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
  position: relative;
  z-index: 1;
}
.step-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12.5px;
  font-weight: 700;
  color: #ffe4d6;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 999px;
  padding: 6px 18px;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  letter-spacing: 0.3px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
}
.step-badge .badge-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #ff5252;
  box-shadow: 0 0 10px #ff5252;
}
.step-fraction {
  font-size: 12px;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.7);
  letter-spacing: 2px;
  font-variant-numeric: tabular-nums;
  direction: ltr;
  display: inline-block;
  padding: 4px 12px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 999px;
  backdrop-filter: blur(14px);
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.8);
}
.step-kicker {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 14.5px;
  font-weight: 700;
  color: #ff9d87;
  margin-bottom: 14px;
  position: relative;
  z-index: 1;
  text-shadow: 0 2px 14px rgba(0, 0, 0, 0.95);
  letter-spacing: 0.6px;
}
.step-kicker::before {
  content: '';
  width: 28px;
  height: 2px;
  background: linear-gradient(90deg, #ff5c5c, #ff9d87);
  border-radius: 2px;
  display: inline-block;
  box-shadow: 0 0 10px rgba(255, 92, 92, 0.7);
}
.story-step-card h2 {
  font-size: clamp(2.4rem, 3.8vw, 3.6rem);
  line-height: 1.35;
  font-weight: 900;
  color: var(--story-step-text-color, #ffffff) !important;
  margin-bottom: 20px;
  letter-spacing: -0.8px;
  position: relative;
  z-index: 1;
  text-shadow: 0 4px 30px rgba(0, 0, 0, 0.95), 0 2px 8px rgba(0, 0, 0, 0.9);
}
.story-step-card h2 em,
.story-step-card em {
  font-style: normal;
  display: inline-block;
  color: var(--story-step-highlight-color, #ff7b70) !important;
  -webkit-text-stroke: 1.5px var(--story-step-highlight-color, #ff7b70) !important;
  text-shadow:
    0 0 25px rgba(255, 90, 80, 0.6),
    0 4px 20px rgba(0, 0, 0, 0.9) !important;
  letter-spacing: 0.5px;
  transition: transform 0.3s ease;
}
.story-step-card p {
  font-size: 16.5px;
  line-height: 2.2;
  color: var(--story-step-text-color, rgba(245, 250, 245, 0.92)) !important;
  margin-bottom: 28px;
  font-weight: 400;
  position: relative;
  z-index: 1;
  max-width: 530px;
  text-shadow: 0 2px 16px rgba(0, 0, 0, 0.95), 0 1px 4px rgba(0, 0, 0, 0.9);
}
.step-meta {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  border: none !important;
  padding-top: 0 !important;
  margin-top: 6px;
  position: relative;
  z-index: 1;
}
.meta-pill {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 13.5px;
  font-weight: 600;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  padding: 8px 20px;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.8);
}
.meta-pill:hover {
  background: rgba(255, 255, 255, 0.14);
  border-color: rgba(255, 150, 120, 0.6);
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.4), 0 0 20px rgba(255, 92, 92, 0.35);
  color: #ffffff;
}
.meta-pill svg {
  color: #ff8a65;
  filter: drop-shadow(0 0 6px rgba(255, 138, 101, 0.7));
}
.step-actions {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 24px;
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
}
.step-actions .btn {
  min-height: 48px;
  padding: 12px 26px;
  font-size: 14.5px;
  border-radius: 999px;
  font-weight: 600;
}
.step-actions .btn.light {
  background: #ffffff;
  color: #1a2e23;
  border-color: #ffffff;
  box-shadow: 0 6px 25px rgba(0, 0, 0, 0.45);
}
.step-actions .btn.light:hover {
  background: #ffede3;
  transform: translateY(-2px);
}
.step-actions .btn.outline.light {
  background: rgba(0, 0, 0, 0.35);
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
.step-actions .btn.outline.light:hover {
  background: rgba(255, 255, 255, 0.2);
  border-color: #ffffff;
  transform: translateY(-2px);
}
.story-step-card.active h2 {
  animation: cardChildIn 0.65s cubic-bezier(0.16, 1, 0.3, 1) 0.05s both;
}
.story-step-card.active p {
  animation: cardChildIn 0.7s cubic-bezier(0.16, 1, 0.3, 1) 0.12s both;
}
.story-step-card.active .step-meta,
.story-step-card.active .step-actions {
  animation: cardChildIn 0.75s cubic-bezier(0.16, 1, 0.3, 1) 0.18s both;
}
@keyframes cardChildIn {
  from {
    opacity: 0;
    transform: translateY(14px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Timeline navigation */
.story-timeline {
  position: absolute;
  z-index: 4;
  left: 4.5%;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.timeline-line {
  position: absolute;
  right: 28px;
  top: 16px;
  bottom: 16px;
  width: 2px;
  background: rgba(255, 255, 255, 0.12);
  border-radius: 2px;
  overflow: hidden;
  pointer-events: none;
}
.timeline-fill {
  width: 100%;
  height: 0%;
  background: linear-gradient(180deg, #ff8a65, #a71e25);
  box-shadow: 0 0 10px rgba(255, 138, 101, 0.8);
  transition: height 0.2s ease-out;
}
.story-dot {
  display: flex;
  align-items: center;
  gap: 14px;
  border: 0;
  background: rgba(18, 30, 23, 0.45);
  color: rgba(255, 255, 255, 0.6);
  padding: 6px 14px 6px 8px;
  border-radius: 30px;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  position: relative;
  z-index: 1;
}
.story-dot:hover {
  color: #fff8e9;
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.2);
  transform: translateX(4px);
}
.dot-num {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.25);
  display: grid;
  place-items: center;
  font-size: 12px;
  font-weight: 700;
  transition: all 0.3s;
  background: rgba(18, 30, 23, 0.8);
  color: #ffffff;
}
.dot-label {
  font-size: 13px;
  font-weight: 500;
  opacity: 0.65;
  transform: translateX(-4px);
  transition: opacity 0.3s, transform 0.3s;
  pointer-events: none;
  white-space: nowrap;
}
.story-dot:hover .dot-label,
.story-dot.active .dot-label {
  opacity: 1;
  transform: translateX(0);
  font-weight: 650;
  color: #ffffff;
}
.story-dot.active {
  color: #fff8e9;
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 184, 153, 0.35);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}
.story-dot.active .dot-num {
  background: linear-gradient(135deg, #d62832, #a71e25);
  border-color: #ffb899;
  color: #ffffff;
  box-shadow: 0 0 20px rgba(214, 40, 50, 0.85);
  transform: scale(1.08);
}

/* Scroll cue indicator */
.story-scroll-prompt {
  position: absolute;
  bottom: 28px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 4;
  display: flex;
  align-items: center;
  gap: 12px;
  color: rgba(255, 255, 255, 0.8);
  font-size: 13px;
  pointer-events: none;
  transition: opacity 0.4s var(--ease-out), transform 0.4s var(--ease-out);
  background: rgba(20, 32, 24, 0.6);
  padding: 8px 18px;
  border-radius: 30px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  backdrop-filter: blur(10px);
}
.story-scroll-prompt.dismissed {
  opacity: 0;
  transform: translateX(-50%) translateY(14px);
}
.story-scroll-prompt .mouse-icon {
  width: 18px;
  height: 26px;
  border: 1.5px solid rgba(255, 255, 255, 0.7);
  border-radius: 10px;
  display: flex;
  justify-content: center;
  padding-top: 4px;
}
.story-scroll-prompt .mouse-wheel {
  width: 2.5px;
  height: 6px;
  background: #ffb899;
  border-radius: 2px;
  animation: wheelScroll 1.8s infinite;
}
@keyframes wheelScroll {
  0% { transform: translateY(0); opacity: 1; }
  70% { transform: translateY(8px); opacity: 0; }
  100% { transform: translateY(0); opacity: 0; }
}

@media(max-width: 950px) {
  .story-scroll-experience { height: 420vh; }
  .story-steps-viewport {
    right: 5%;
    left: 5%;
    width: auto;
    top: auto;
    bottom: 30px;
    transform: none;
  }
  .story-step-card {
    top: auto;
    bottom: 0;
    transform: translate3d(0, 24px, 0);
    padding: 0;
    border-radius: 0;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }
  .watermark-num {
    font-size: 90px;
    top: -30px;
    left: 5px;
    right: auto;
  }
  .story-step-card.active {
    transform: translate3d(0, 0, 0);
  }
  .story-step-card.exit-up {
    transform: translate3d(0, -24px, 0);
  }
  .story-step-card.exit-down {
    transform: translate3d(0, 24px, 0);
  }
  .story-step-card h2 {
    font-size: 1.65rem;
    margin-bottom: 10px;
  }
  .story-step-card p {
    font-size: 13.5px;
    line-height: 1.8;
    margin-bottom: 12px;
  }
  .card-header-bar {
    margin-bottom: 10px;
  }
  .step-badge {
    font-size: 11px;
    padding: 3px 10px;
  }
  .step-fraction {
    font-size: 11px;
    padding: 2px 8px;
  }
  .meta-pill {
    font-size: 11.5px;
    padding: 5px 12px;
    gap: 6px;
  }
  .story-timeline {
    top: 32px;
    left: auto;
    right: 5%;
    transform: none;
    flex-direction: row;
    gap: 6px;
    background: rgba(20, 32, 24, 0.7);
    padding: 4px 8px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(12px);
  }
  .story-timeline .dot-label { display: none; }
  .story-dot { padding: 3px; }
  .dot-num { width: 26px; height: 26px; font-size: 11px; }
  .story-canvas-badge {
    top: 32px;
    left: 5%;
    font-size: 10px;
    padding: 5px 12px;
  }
  .story-scroll-prompt {
    bottom: 18px;
    font-size: 11px;
    padding: 6px 14px;
  }
}

@media(prefers-reduced-motion: reduce) {
  .story-scroll-experience { height: auto; }
  .story-scroll-sticky { position: static; height: auto; padding: 40px 6%; display: block; }
  .story-canvas-container { position: relative; height: 400px; border-radius: 20px; overflow: hidden; margin-bottom: 30px; }
  .story-steps-viewport { position: static; transform: none; width: 100%; display: grid; gap: 20px; }
  .story-step-card { position: static; opacity: 1; visibility: visible; transform: none; pointer-events: auto; }
  .story-timeline, .story-scroll-prompt { display: none; }
}

/* --- Sarchin Luxury Home Page Polish & Micro-interactions --- */

/* Hero Modern Elements */
.hero {
  perspective: 1000px;
}
.hero-glow-ambient {
  position: absolute;
  top: 20%;
  left: 30%;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(167, 30, 37, 0.28) 0%, rgba(232, 186, 146, 0.08) 50%, transparent 75%);
  filter: blur(60px);
  pointer-events: none;
  z-index: -1;
  animation: heroGlowPulse 8s ease-in-out infinite alternate;
}
@keyframes heroGlowPulse {
  0% { transform: scale(1) translate3d(0, 0, 0); opacity: 0.7; }
  100% { transform: scale(1.15) translate3d(30px, -20px, 0); opacity: 1; }
}

.hero-tag-pill {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 184, 153, 0.35);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-radius: 100px;
  padding: 6px 18px;
  font-size: 12.5px;
  color: #ffecd9;
  margin-bottom: 20px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}
.pill-sparkle {
  color: #ffb899;
  font-size: 14px;
}

.hero-badges-row {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-bottom: 28px;
  flex-wrap: wrap;
}
.hero-feat {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: #d8ddcf;
  background: rgba(22, 35, 25, 0.55);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  padding: 4px 14px;
}
.feat-dot {
  width: 6px;
  height: 6px;
  background: #ff7d70;
  border-radius: 50%;
  box-shadow: 0 0 8px #ff7d70;
  display: inline-block;
}

.hero-pack-wrap {
  position: absolute;
  bottom: 80px;
  left: 9%;
  z-index: 2;
  transition: transform 0.2s ease-out;
  will-change: transform;
}
.pack-glow-plate {
  position: absolute;
  inset: -20px;
  background: radial-gradient(ellipse at center, rgba(167, 30, 37, 0.45) 0%, transparent 65%);
  filter: blur(25px);
  border-radius: 50%;
  z-index: -1;
}
.hero-pack-wrap .hero-pack {
  position: relative;
  left: auto;
  bottom: auto;
  width: 135px;
  filter: drop-shadow(0 25px 22px rgba(0,0,0,0.6));
  animation: packFloat 5s ease-in-out infinite alternate;
}
@keyframes packFloat {
  0% { transform: translateY(0) rotate(-4deg); }
  100% { transform: translateY(-14px) rotate(-1deg); }
}

.pack-floating-tag {
  position: absolute;
  top: 15%;
  right: -130px;
  background: rgba(24, 38, 30, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 12px;
  padding: 8px 14px;
  color: #fff9ec;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
  pointer-events: none;
  animation: tagDrift 4s ease-in-out infinite alternate;
}
@keyframes tagDrift {
  0% { transform: translateY(0); }
  100% { transform: translateY(-6px); }
}
.pack-floating-tag .tag-title {
  display: block;
  font-size: 12px;
  font-weight: 700;
  color: #ffb899;
}
.pack-floating-tag .tag-sub {
  display: block;
  font-size: 10.5px;
  color: #c7d2bf;
}

.hero-micro-stats {
  position: absolute;
  bottom: 24px;
  left: 28%;
  display: flex;
  align-items: center;
  gap: 20px;
  background: rgba(18, 28, 22, 0.65);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 100px;
  padding: 8px 24px;
  color: #fff8e9;
  z-index: 2;
}
.micro-stat {
  display: flex;
  align-items: baseline;
  gap: 8px;
}
.micro-stat b {
  font-size: 16px;
  color: #ffb899;
  font-weight: 750;
}
.micro-stat span {
  font-size: 12px;
  color: #cdd5c5;
}
.micro-stat-divider {
  width: 1px;
  height: 16px;
  background: rgba(255, 255, 255, 0.18);
}

/* Infinite Marquee Ticker */
.infinite-ticker {
  overflow: hidden;
  background: #111a13;
  color: #fff8eb;
  padding: 22px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  position: relative;
  user-select: none;
}
.ticker-track {
  display: flex;
  width: max-content;
  animation: marqueeLoop 32s linear infinite;
  will-change: transform;
}
.infinite-ticker:hover .ticker-track {
  animation-play-state: paused;
}
.ticker-group {
  display: flex;
  align-items: center;
  gap: 28px;
  padding-left: 28px;
}
.ticker-group span {
  font-size: 15.5px;
  font-weight: 550;
  letter-spacing: -0.2px;
}
.ticker-group i {
  font-style: normal;
  color: #a71e25;
  font-size: 20px;
  animation: starSpin 12s linear infinite;
}
@keyframes marqueeLoop {
  0% { transform: translate3d(0, 0, 0); }
  100% { transform: translate3d(-50%, 0, 0); }
}
@keyframes starSpin {
  to { transform: rotate(360deg); }
}

/* Timeline Track Line & Glowing Fill */
.story-timeline .timeline-line {
  position: absolute;
  right: 20px;
  top: 16px;
  bottom: 16px;
  width: 2px;
  background: rgba(255, 255, 255, 0.14);
  border-radius: 2px;
  z-index: 0;
}
.story-timeline .timeline-fill {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0%;
  background: linear-gradient(180deg, #ffb899 0%, #a71e25 100%);
  box-shadow: 0 0 10px rgba(167, 30, 37, 0.85);
  border-radius: 2px;
  transition: height 0.15s ease-out;
}

/* Quality Pillars Section */
.quality-section {
  padding: 100px 7%;
  background: #f4efe4;
  position: relative;
}
.quality-head {
  margin-bottom: 55px;
}
.quality-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}
.quality-card {
  background: #fbf8f1;
  border: 1px solid #d9decb;
  border-radius: 20px;
  padding: 34px 26px;
  position: relative;
  overflow: hidden;
  transition: transform 0.35s var(--ease-out), box-shadow 0.35s var(--ease-out), border-color 0.35s;
  will-change: transform;
}
.quality-card:hover {
  border-color: #a71e25;
  box-shadow: 0 18px 45px rgba(22, 38, 25, 0.12);
  transform: translateY(-8px);
}
.quality-icon {
  font-size: 32px;
  margin-bottom: 18px;
  display: inline-block;
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.1));
}
.quality-num {
  position: absolute;
  top: 20px;
  left: 22px;
  font: 800 28px/1 Sarchin, Tahoma;
  color: rgba(167, 30, 37, 0.12);
  user-select: none;
}
.quality-card h3 {
  font-size: 1.25rem;
  font-weight: 700;
  color: #1f3525;
  margin-bottom: 12px;
}
.quality-card p {
  font-size: 14px;
  line-height: 1.85;
  color: #636d59;
  margin-bottom: 18px;
}
.quality-tag {
  display: inline-block;
  font-size: 11.5px;
  color: #a71e25;
  background: rgba(167, 30, 37, 0.08);
  border: 1px solid rgba(167, 30, 37, 0.15);
  border-radius: 30px;
  padding: 3px 12px;
  font-weight: 600;
}

/* Home Filter Tabs */
.home-filter-tabs {
  display: inline-flex;
  gap: 6px;
  background: #eae5d7;
  padding: 5px;
  border-radius: 100px;
  margin-bottom: 35px;
}
.home-tab {
  border: 0;
  background: transparent;
  padding: 8px 20px;
  border-radius: 100px;
  font-size: 13.5px;
  font-weight: 550;
  color: #555e4b;
  cursor: pointer;
  transition: all 0.25s var(--ease-out);
}
.home-tab:hover {
  color: #1f3525;
}
.home-tab.active {
  background: #1f3525;
  color: #fff9ec;
  box-shadow: 0 4px 14px rgba(31, 53, 37, 0.25);
}

/* Product Card Upgrades & Precision Alignment */
.products {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
  align-items: stretch;
}

.product {
  display: flex !important;
  flex-direction: column !important;
  height: 100%;
  min-width: 0;
  position: relative;
  text-decoration: none;
  transition: transform 0.4s var(--ease-out), box-shadow 0.4s var(--ease-out);
}

.product:hover {
  transform: translateY(-6px);
}

.product-photo {
  flex: 0 0 370px;
  height: 370px;
  width: 100%;
  border-radius: 150px 150px 16px 16px;
  background: #eeede4;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  transition: background 0.3s;
}

.product-photo img {
  height: 70%;
  max-width: 70%;
  object-fit: contain;
  filter: drop-shadow(0 16px 14px rgba(69, 40, 24, 0.14));
  transition: transform 0.65s var(--ease-out), filter 0.4s;
}

.product:hover .product-photo img {
  transform: translateY(-12px) rotate(-4deg);
  filter: drop-shadow(0 24px 18px rgba(69, 40, 24, 0.22));
}

/* Weight Badge: Centered at top apex of the arch, guaranteed 100% visible with zero clipping */
.product-weight-badge {
  position: absolute;
  top: 22px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 13px;
  font-weight: 700;
  color: #a71e25;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(213, 217, 199, 0.95);
  border-radius: 30px;
  padding: 3px 14px;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.08);
  z-index: 3;
  white-space: nowrap;
  letter-spacing: 0.2px;
  display: inline-flex;
  align-items: baseline;
  gap: 4px;
  pointer-events: none;
}

.product-weight-badge small {
  font-size: 11px;
  font-weight: 600;
  color: #5c6254;
}

/* Tag at bottom of photo */
.product .tag {
  top: auto;
  bottom: 20px;
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  font-size: 12px;
  font-weight: 600;
  color: #3b4234;
  background: rgba(255, 255, 255, 0.82);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border: 1px solid #bfc3b4;
  border-radius: 30px;
  padding: 3px 14px;
  z-index: 2;
  white-space: nowrap;
  pointer-events: none;
}

/* Card Content Alignment */
.product-info {
  display: flex !important;
  align-items: flex-start;
  justify-content: space-between;
  flex: 1 1 auto;
  gap: 16px;
  padding: 22px 4px 18px;
  border-bottom: 1px solid #dbd8ce;
  min-width: 0;
}

.product-info > div {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.product-info h3 {
  margin: 0 0 6px 0;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.45;
  color: #2b3027;
  min-height: 54px;
  display: flex;
  align-items: flex-start;
}

.product-info p {
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: #78786d;
  min-height: 46px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.product-info .round {
  flex-shrink: 0;
  align-self: flex-start;
  margin-top: 4px;
}

/* Card Alignment Across Screen Sizes */
@media (max-width: 1150px) {
  .products {
    gap: 24px;
  }
  .product-photo {
    flex: 0 0 320px;
    height: 320px;
    border-radius: 130px 130px 16px 16px;
  }
  .product-weight-badge {
    top: 18px;
    font-size: 12.5px;
    padding: 2px 12px;
  }
  .product .tag {
    bottom: 16px;
    font-size: 11.5px;
  }
  .product-info h3 {
    font-size: 17px;
    min-height: 48px;
  }
  .product-info p {
    font-size: 13px;
    min-height: 42px;
  }
}

@media (max-width: 1000px) {
  .products {
    gap: 20px;
  }
  .product-photo {
    flex: 0 0 290px;
    height: 290px;
    border-radius: 115px 115px 14px 14px;
  }
  .product-weight-badge {
    top: 16px;
    font-size: 12px;
    padding: 2px 11px;
  }
  .product-info h3 {
    font-size: 16.5px;
    min-height: 46px;
  }
}

@media (max-width: 760px) {
  .products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    align-items: stretch !important;
  }
  .home-products .product,
  .products .product {
    display: flex !important;
  }
  .product-photo {
    flex: 0 0 240px;
    height: 240px;
    border-radius: 95px 95px 12px 12px;
  }
  .product-photo img {
    height: 65%;
  }
  .product-weight-badge {
    top: 13px;
    font-size: 11px;
    padding: 2px 9px;
  }
  .product-weight-badge small {
    font-size: 9.5px;
  }
  .product .tag {
    bottom: 12px;
    font-size: 10.5px;
    padding: 2px 9px;
  }
  .product-info {
    padding: 14px 2px 12px;
    gap: 8px;
  }
  .product-info h3 {
    font-size: 15px;
    min-height: 44px;
    line-height: 1.45;
  }
  .product-info p {
    font-size: 12px;
    min-height: 38px;
    line-height: 1.5;
  }
  .round {
    width: 34px;
    height: 34px;
    font-size: 16px;
    margin-top: 2px;
  }
  .round .ui-arrow {
    width: 14px;
    height: 14px;
  }
}

@media (max-width: 440px) {
  .products {
    gap: 12px !important;
  }
  .product-photo {
    flex: 0 0 195px;
    height: 195px;
    border-radius: 80px 80px 10px 10px;
  }
  .product-weight-badge {
    top: 10px;
    font-size: 10px;
    padding: 1px 7px;
  }
  .product .tag {
    bottom: 8px;
    font-size: 9.5px;
    padding: 1px 7px;
  }
  .product-info h3 {
    font-size: 13.5px;
    min-height: 38px;
    line-height: 1.4;
  }
  .product-info p {
    font-size: 11px;
    min-height: 34px;
    line-height: 1.45;
  }
  .round {
    width: 28px;
    height: 28px;
  }
  .round .ui-arrow {
    width: 12px;
    height: 12px;
  }
}

/* Recipe Card Badges */
.recipe-badges {
  position: absolute;
  top: 14px;
  right: 14px;
  display: flex;
  gap: 8px;
  z-index: 2;
}
.recipe-time-badge, .recipe-servings-badge {
  font-size: 11px;
  color: #fffaf0;
  background: rgba(22, 38, 28, 0.75);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 20px;
  padding: 3px 10px;
}

/* Story Section: 'بعضی طعم‌ها، ما را به خانه برمی‌گردانند' */
.story {
  position: relative;
  min-height: 650px;
  height: 650px;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1.04fr 1fr;
  margin: 0 3.5%;
  border-radius: 24px;
  background: var(--box-story-bg, #263e32) !important;
}
.story-image {
  width: 100%;
  height: 100%;
  min-height: 650px;
  max-height: 650px;
  object-fit: cover;
  object-position: center 55%;
  transform: scale(1.04);
  will-change: transform;
}
.story-copy {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  height: 100% !important;
  min-height: 650px !important;
  padding: 60px 10% !important;
  box-sizing: border-box !important;
  position: relative;
  z-index: 1;
}
.story-copy .eyebrow {
  font-size: 16.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.6px !important;
  color: #f6b69b !important;
  margin-bottom: 0 !important;
  display: flex;
  align-items: center;
  gap: 12px;
}
.story-copy .eyebrow:before {
  content: '';
  display: inline-block;
  width: 32px;
  height: 2px;
  background: currentColor;
  vertical-align: middle;
  margin-left: 12px;
}
.story-copy h2 {
  font-size: clamp(3rem, 4.5vw, 4.6rem) !important;
  font-weight: 850 !important;
  line-height: 1.42 !important;
  letter-spacing: -1.2px !important;
  margin: 0 !important;
  color: #fff8e9 !important;
}
.story-copy p {
  font-size: 19px !important;
  line-height: 2.2 !important;
  max-width: 530px !important;
  color: #e2e8dc !important;
  margin: 0 !important;
  font-weight: 400;
}
.story-quote-mark {
  position: absolute;
  top: 20px;
  right: 50%;
  transform: translateX(50%);
  font-size: 140px;
  line-height: 1;
  color: rgba(255, 255, 255, 0.07);
  pointer-events: none;
  font-family: Arial, serif;
}

/* Social Band Section: 'قاب‌هایی از آشپزی با سرچین' */
.social-band {
  position: relative;
  min-height: 480px;
  height: 480px;
  margin: 0 3.5% 95px;
  border-radius: 24px;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1fr 1fr;
  background: var(--red, #a71e25) !important;
  color: #fff8eb;
}
.social-pics {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  padding: 0 !important;
  gap: 0;
  height: 100%;
}
.social-pics img {
  height: 100%;
  min-height: 480px;
  max-height: 480px;
  width: 100%;
  object-fit: cover;
  transition: transform 1s var(--ease-out);
}
.social-pics img:hover {
  transform: scale(1.04);
}
.social-band > div:first-child {
  padding: 55px 10%;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  height: 100%;
  min-height: 480px;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}
.social-band .eyebrow {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #ffcfbe !important;
  letter-spacing: 0.5px;
  margin-bottom: 0 !important;
  display: flex;
  align-items: center;
  gap: 12px;
}
.social-band .eyebrow:before {
  content: '';
  display: inline-block;
  width: 30px;
  height: 2px;
  background: currentColor;
  margin-left: 12px;
}
.social-band h2 {
  font-size: clamp(2.8rem, 4vw, 3.8rem) !important;
  font-weight: 850 !important;
  line-height: 1.35 !important;
  letter-spacing: -1px;
  margin: 0 !important;
  color: #ffffff !important;
}
.social-band p {
  font-size: 18px !important;
  line-height: 2 !important;
  max-width: 480px;
  color: #f7ded6 !important;
  margin: 0 !important;
  font-weight: 400;
}
.social-band .text-link {
  font-size: 16.5px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  padding: 8px 0;
  border-bottom: 2px solid rgba(255, 255, 255, 0.75) !important;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  margin: 0 !important;
  transition: border-color 0.25s, transform 0.25s;
}
.social-band .text-link:hover {
  border-bottom-color: #ffffff !important;
  transform: translateY(-2px);
}

/* Responsive adjustments for new luxury elements */
@media(max-width: 1050px) {
  .quality-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
  .hero-micro-stats { left: 50%; transform: translateX(-50%); width: max-content; }
  .pack-floating-tag { display: none; }
  .story { min-height: 580px; height: 580px; }
  .story-image { min-height: 580px; max-height: 580px; }
  .story-copy { min-height: 580px !important; padding: 45px 8% !important; }
  .story-copy h2 { font-size: clamp(2.5rem, 3.8vw, 3.4rem) !important; }
  .story-copy p { font-size: 17px !important; line-height: 2 !important; }
  .social-band { min-height: 440px; height: 440px; }
  .social-pics img { height: 440px; min-height: 440px; max-height: 440px; }
  .social-band > div:first-child { min-height: 440px; padding: 45px 8%; }
  .social-band h2 { font-size: clamp(2.4rem, 3.5vw, 3.2rem) !important; }
  .social-band p { font-size: 16px !important; line-height: 1.9 !important; }
}

@media(max-width: 760px) {
  .quality-grid { grid-template-columns: 1fr; gap: 16px; }
  .quality-section { padding: 60px 6%; }
  .hero-tag-pill { font-size: 11px; padding: 5px 12px; }
  .hero-badges-row { gap: 8px; margin-bottom: 20px; }
  .hero-feat { font-size: 11.5px; padding: 3px 10px; }
  .hero-micro-stats { display: none; }
  .hero-pack-wrap { left: 6%; bottom: 45px; }
  .hero-pack-wrap .hero-pack { width: 95px; }
  .home-filter-tabs { width: 100%; justify-content: space-around; }
  .home-tab { padding: 6px 12px; font-size: 12px; }
  .story { grid-template-columns: 1fr !important; height: auto !important; min-height: 0 !important; margin: 0 4% !important; border-radius: 20px !important; }
  .story-image { height: 380px !important; min-height: 0 !important; max-height: none !important; transform: none !important; object-position: center 50% !important; }
  .story-copy { height: auto !important; min-height: 0 !important; padding: 38px 8% 45px !important; gap: 22px !important; justify-content: flex-start !important; }
  .story-copy .eyebrow { font-size: 14px !important; }
  .story-copy h2 { font-size: 2.4rem !important; line-height: 1.4 !important; }
  .story-copy p { font-size: 15.5px !important; line-height: 1.9 !important; max-width: none !important; }
  .social-band { grid-template-columns: 1fr !important; height: auto !important; min-height: 0 !important; margin: 0 4% 50px !important; border-radius: 20px !important; }
  .social-pics img { height: 250px !important; min-height: 0 !important; max-height: none !important; }
  .social-band > div:first-child { height: auto !important; min-height: 0 !important; padding: 36px 8% !important; gap: 20px !important; justify-content: flex-start !important; }
  .social-band .eyebrow { font-size: 14px !important; }
  .social-band h2 { font-size: 2.3rem !important; line-height: 1.35 !important; }
  .social-band p { font-size: 15.5px !important; line-height: 1.9 !important; max-width: none !important; }
  .social-band .text-link { font-size: 15px !important; }
}

/* Recipe display and download refinements */
.home-recipe-heading {
  white-space: nowrap;
  text-align: right;
}
.home-recipe-heading em {
  display: inline;
}
.home-recipes-section .recipes {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
}
.home-recipes-section .recipe,
.home-recipes-section .recipe:first-child {
  display: grid;
  grid-template-rows: 330px auto auto 1fr;
  align-self: stretch;
  grid-column: auto;
  margin-top: 0;
  min-width: 0;
}
.home-recipes-section .recipe-image-wrap {
  height: 330px;
}
.home-recipes-section .recipe-cover,
.home-recipes-section .recipe:first-child .recipe-cover {
  width: 100%;
  height: 100%;
}
.home-recipes-section .recipe h3 {
  min-height: 64px;
}
.home-recipes-section .recipe .meta {
  display: block;
  min-height: 28px;
}
.home-recipes-section .recipe p {
  margin-bottom: 0;
}
.ingredient-row {
  cursor: default;
}
.ingredient-row::before {
  content: '';
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: var(--red);
}
.recipe-save {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 10px 22px;
  font-size: 14.5px;
  font-weight: 600;
  border-radius: 100px;
  border: 1.5px solid var(--btn-bg, var(--red, #a71e25)) !important;
  background: transparent !important;
  color: var(--btn-bg, var(--red, #a71e25)) !important;
  cursor: pointer;
  transition: all .25s ease;
  line-height: 1.5;
  box-shadow: none;
}
.recipe-save:hover:not(:disabled) {
  background: var(--btn-bg, var(--red, #a71e25)) !important;
  color: #ffffff !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(167, 30, 37, 0.2);
}
.recipe-save .ui-arrow {
  width: 14px;
  height: 14px;
  margin-inline-start: 4px;
  transition: transform .25s ease, filter .25s ease;
}
.recipe-save:hover:not(:disabled) .ui-arrow {
  filter: brightness(0) invert(1) !important;
  transform: translateY(2px);
}
.recipe-save:active:not(:disabled) {
  transform: translateY(0);
}
.recipe-save:disabled {
  cursor: wait;
  opacity: .7;
}
.recipe-save-status {
  min-height: 24px;
  margin: 10px 0 0;
  color: #526745;
  font-size: 13px;
  font-weight: 500;
}
@media(max-width: 760px) {
  .home-recipe-heading {
    font-size: clamp(1.25rem, 5.6vw, 2rem);
  }
  .home-recipes-section .recipes {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: minmax(260px, 82vw);
    align-items: stretch;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    padding-bottom: 14px;
  }
  .home-recipes-section .recipe,
  .home-recipes-section .recipe:first-child {
    grid-template-rows: 260px auto auto 1fr;
    scroll-snap-align: start;
  }
  .home-recipes-section .recipe-image-wrap {
    height: 260px;
  }
  .home-recipes-section .recipe h3 {
    min-height: 56px;
  }
}

/* Recipe badges and ratings */
.recipe-badges {
  position: absolute;
  top: 14px;
  right: 14px;
  left: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  z-index: 3;
  pointer-events: none;
}
.recipe-badge {
  background: rgba(22, 34, 27, 0.82);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  color: #fff9ed;
  font-size: 11px;
  font-weight: 550;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  display: inline-flex;
  align-items: center;
  gap: 4px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  line-height: 1.4;
  white-space: nowrap;
}
.recipe-badge-rating {
  background: rgba(167, 30, 37, 0.9);
  border-color: rgba(255, 215, 0, 0.45);
  color: #fffbf2;
  font-weight: 700;
  box-shadow: 0 4px 14px rgba(167, 30, 37, 0.35);
}
.recipe-badge-rating i {
  color: #ffd166;
  font-style: normal;
  font-size: 12px;
}
.recipe-badge-difficulty {
  background: rgba(38, 62, 50, 0.88);
}
.rating-metric {
  color: #a71e25;
  display: inline-flex;
  align-items: baseline;
  gap: 4px;
}
.rating-metric .star-icon {
  color: #e09f1f;
  font-style: normal;
  font-size: 17px;
}
.rating-metric small {
  color: #7b856b;
  font-size: 12px;
  font-weight: 400;
}

/* All recipes catalog grid */
.all-recipes-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
  align-items: stretch;
}
.all-recipes-grid .recipe {
  display: flex;
  flex-direction: column;
  background: transparent;
  min-width: 0;
  margin-top: 0;
}
.all-recipes-grid .recipe-image-wrap {
  height: 290px;
  border-radius: 18px;
  overflow: hidden;
  position: relative;
}
.all-recipes-grid .recipe-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.all-recipes-grid .recipe h3 {
  margin: 16px 0 6px;
  font-size: 20px;
  line-height: 1.4;
}
.all-recipes-grid .recipe .meta {
  font-size: 13px;
  color: #7b856b;
  margin-bottom: 8px;
  display: block;
}
.all-recipes-grid .recipe p {
  color: #5c6753;
  font-size: 14px;
  line-height: 1.8;
  margin-top: auto;
}

@media(max-width: 1024px) {
  .all-recipes-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
}
@media(max-width: 640px) {
  .all-recipes-grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .all-recipes-grid .recipe-image-wrap {
    height: 240px;
  }
}

/* Compact 5-Star Rating Component (Placed Before Suggestions) */
.recipe-compact-rate-section {
  display: flex;
  align-items: center;
  margin: 36px 0 18px;
  padding: 10px 18px;
  background: #fbf8f4;
  border: 1px solid #ebdcd1;
  border-radius: 12px;
  width: fit-content;
  max-width: 100%;
}
.compact-rate-bar {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.compact-rate-title {
  font-size: 13.5px;
  font-weight: 700;
  color: #3f3129;
}
.compact-stars-group {
  display: inline-flex;
  gap: 3px;
  direction: ltr;
}
.compact-star {
  background: transparent;
  border: 0;
  padding: 0 3px;
  font-size: 20px;
  color: #d8cec5;
  cursor: pointer;
  line-height: 1;
  transition: transform 0.15s, color 0.15s;
}
.compact-star:hover {
  transform: scale(1.22);
}
.compact-star.active,
.compact-star.hovered {
  color: #eab308;
}
.compact-rate-submit-btn {
  background: #a71e25;
  color: #ffffff;
  border: 0;
  border-radius: 8px;
  padding: 5px 14px;
  font-size: 12.5px;
  font-weight: 700;
  cursor: pointer;
  min-height: 32px;
  transition: background 0.18s, transform 0.15s;
}
.compact-rate-submit-btn:hover {
  background: #8e2928;
  transform: translateY(-1px);
}
.compact-rate-submit-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.compact-rate-status {
  font-size: 12px;
  color: #1b5e20;
  font-weight: 600;
  white-space: nowrap;
}

/* Floating Preview Pill Bar */
.preview-mode-pill-bar {
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 9999;
  background: rgba(22, 34, 27, 0.94);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: #fff9ed;
  border: 1px solid rgba(255, 215, 0, 0.45);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.45);
  border-radius: 999px;
  padding: 10px 22px;
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 13.5px;
  font-weight: 550;
  animation: slideUpPreview .3s ease-out;
}
@keyframes slideUpPreview {
  from { transform: translate(-50%, 20px); opacity: 0; }
  to { transform: translate(-50%, 0); opacity: 1; }
}
.preview-pill-badge {
  background: #a71e25;
  color: #ffffff;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 11.5px;
  font-weight: 700;
}
.preview-pill-close {
  background: rgba(255, 255, 255, 0.16);
  border: 0;
  color: #fff;
  border-radius: 999px;
  padding: 3px 10px;
  cursor: pointer;
  font-size: 12px;
  transition: background 0.15s;
}
.preview-pill-close:hover {
  background: rgba(255, 255, 255, 0.3);
}

/* User Comments Section Under Rating (نظرات کاربران با جعبه نظر) */
.recipe-comments-section {
  margin: 44px 0 32px;
  padding-top: 28px;
  border-top: 1px solid #ebdcd1;
}
.comments-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 22px;
  flex-wrap: wrap;
}
.comments-intro-desc {
  margin: 6px 0 0;
  font-size: 13.5px;
  color: #6d5e55;
  line-height: 1.6;
}
.comments-count-badge {
  background: #f4ede5;
  color: #7a2b25;
  border: 1px solid #e5d5c8;
  padding: 5px 14px;
  border-radius: 999px;
  font-size: 12.5px;
  font-weight: 700;
  white-space: nowrap;
}

/* Comment Box Card */
.comment-box-card {
  background: #fdfbf8;
  border: 1px solid #e8dbd0;
  border-radius: 18px;
  padding: 22px 24px;
  margin-bottom: 28px;
  box-shadow: 0 4px 18px rgba(45, 25, 15, 0.03);
}
.comment-box-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
  padding-bottom: 14px;
  border-bottom: 1px solid #f0e4da;
}
.comment-box-icon {
  font-size: 20px;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  background: #f5ebe1;
  border-radius: 12px;
  flex-shrink: 0;
}
.comment-box-header strong {
  display: block;
  font-size: 14.5px;
  color: #2c211b;
  font-weight: 700;
}
.comment-box-header small {
  display: block;
  font-size: 12px;
  color: #7b6d65;
  margin-top: 2px;
}
.recipe-comment-form {
  display: grid;
  gap: 16px;
}
.comment-fields-row {
  display: grid;
  grid-template-columns: minmax(200px, 320px);
  gap: 16px;
}
.comment-field {
  display: grid;
  gap: 6px;
}
.comment-field label {
  font-size: 12.5px;
  font-weight: 700;
  color: #4a3c34;
  display: flex;
  align-items: center;
  gap: 6px;
}
.comment-field label small {
  font-weight: 400;
  font-size: 11.5px;
  color: #8c7d75;
}
.comment-input-name,
.comment-input-text {
  width: 100%;
  box-sizing: border-box;
  background: #ffffff;
  border: 1px solid #d9cbbe;
  border-radius: 12px;
  padding: 10px 14px;
  font-size: 13.5px;
  color: #2b201a;
  font-family: inherit;
  transition: border-color 0.18s, box-shadow 0.18s;
}
.comment-input-name:focus,
.comment-input-text:focus {
  outline: none;
  border-color: #a71e25;
  box-shadow: 0 0 0 3px rgba(167, 30, 37, 0.12);
}
.comment-input-text {
  resize: vertical;
  min-height: 85px;
  line-height: 1.6;
}
.comment-form-footer {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.comment-submit-btn {
  background: #a71e25;
  color: #ffffff;
  border: 0;
  border-radius: 10px;
  padding: 9px 20px;
  font-size: 13.5px;
  font-weight: 700;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: background 0.18s, transform 0.15s;
}
.comment-submit-btn:hover {
  background: #8e2928;
  transform: translateY(-1px);
}
.comment-submit-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}
.comment-form-status {
  font-size: 12.5px;
  font-weight: 600;
  color: #1b5e20;
}
.comment-form-status.error {
  color: #b91c1c;
}

/* Comments List */
.recipe-comments-list {
  display: grid;
  gap: 14px;
}
.comment-item-card {
  background: #ffffff;
  border: 1px solid #ebdfd5;
  border-radius: 14px;
  padding: 16px 18px;
  display: flex;
  gap: 14px;
  transition: transform 0.15s, box-shadow 0.15s;
}
.comment-item-card:hover {
  box-shadow: 0 4px 16px rgba(50, 30, 20, 0.04);
}
.comment-avatar {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: #f4ede5;
  color: #8e2928;
  font-size: 14px;
  font-weight: 800;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  border: 1px solid #e6d7cc;
}
.comment-body-wrap {
  flex: 1;
  min-width: 0;
}
.comment-meta-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 6px;
}
.comment-user-name {
  font-size: 13.5px;
  font-weight: 700;
  color: #2b2019;
}
.comment-date-tag {
  font-size: 11.5px;
  color: #8a7a70;
}
.comment-text-content {
  margin: 0;
  font-size: 13px;
  color: #4b3d35;
  line-height: 1.7;
  white-space: pre-wrap;
  word-break: break-word;
}
.comments-empty-state {
  text-align: center;
  padding: 34px 20px;
  background: #fbf8f4;
  border: 1px dashed #decbc0;
  border-radius: 14px;
  color: #7b6b62;
}
.comments-empty-state .empty-icon {
  font-size: 28px;
  margin-bottom: 6px;
}
.comments-empty-state p {
  margin: 0;
  font-size: 13px;
  line-height: 1.6;
}
.comments-loading-state {
  text-align: center;
  padding: 24px;
  font-size: 13px;
  color: #8a796f;
}

/* Story Frame Edit Badge in Public Site Editor */
.story-frame-edit-badge {
  display: none;
}
body.site-editor-mode .story-frame-edit-badge {
  display: inline-flex;
}
body.site-editor-browse-mode .story-frame-edit-badge {
  display: none !important;
}

/* UI Arrow Images (PNG replacement for text arrows) */
.ui-arrow {
  display: inline-block;
  vertical-align: middle;
  width: 1.05em;
  height: 1.05em;
  object-fit: contain;
  pointer-events: none;
  flex-shrink: 0;
  margin-inline-start: 4px;
}
.ui-arrow.no-margin {
  margin-inline-start: 0;
}
.btn .ui-arrow {
  width: 1.15em;
  height: 1.15em;
}
.btn:not(.light):not(.outline) .ui-arrow,
.btn.primary .ui-arrow,
.mega-professional .ui-arrow,
.footer-cta>span .ui-arrow,
.footer-social-top .ui-arrow {
  filter: brightness(0) invert(1);
}
.round .ui-arrow {
  width: 18px;
  height: 18px;
  margin-inline-start: 0;
}
.product:hover .round .ui-arrow {
  filter: brightness(0) invert(1);
}
.footer-cta .ui-arrow {
  width: 22px;
  height: 22px;
  margin-inline-start: 0;
}
.back-to-top .ui-arrow {
  width: 16px;
  height: 16px;
  margin-inline-start: 0;
}
.mega-arrow .ui-arrow {
  width: 20px;
  height: 20px;
  margin-inline-start: 0;
}
.footer-social-top .ui-arrow {
  width: 16px;
  height: 16px;
  margin-inline-start: 0;
}
#mobile-menu nav i .ui-arrow {
  width: 20px;
  height: 20px;
  margin-inline-start: 0;
}
.help-link>span .ui-arrow {
  width: 22px;
  height: 22px;
  margin-inline-start: 0;
}
.recipe-view .ui-arrow {
  width: 14px;
  height: 14px;
  margin-inline-start: 4px;
  filter: brightness(0) invert(1);
}
.blog-product-btn .ui-arrow {
  filter: brightness(0) invert(1);
}

/* --- FAQ Show More & Show Less --- */
.faq-content-area {
  display: flex;
  flex-direction: column;
}
.faq-more-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 36px;
  padding-bottom: 12px;
}
.faq-more-btn,
.faq-less-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 13px 32px;
  min-height: 48px;
  border-radius: 100px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: background .25s ease, border-color .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
}
.faq-more-btn {
  border: 1.5px solid #a71e25;
  background: transparent;
  color: #a71e25;
}
.faq-more-btn:hover {
  background: #a71e25;
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(167, 30, 37, 0.18);
}
.faq-more-btn:focus-visible {
  outline: 2px solid #a71e25;
  outline-offset: 3px;
}
.faq-less-btn {
  border: 1.5px solid #263e32;
  background: transparent;
  color: #263e32;
}
.faq-less-btn:hover {
  background: #263e32;
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(38, 62, 50, 0.18);
}
.faq-less-btn:focus-visible {
  outline: 2px solid #263e32;
  outline-offset: 3px;
}
.faq-more-btn:active,
.faq-less-btn:active {
  transform: translateY(0);
}
.faq-more-btn .ui-arrow,
.faq-less-btn .ui-arrow {
  width: 13px;
  height: 13px;
  transition: transform .25s ease, filter .25s ease;
}
.faq-more-btn:hover .ui-arrow {
  transform: translateY(2px);
  filter: brightness(0) invert(1);
}
.faq-less-btn:hover .ui-arrow {
  transform: translateY(-2px);
  filter: brightness(0) invert(1);
}
.faq-item-animate {
  animation: faqFadeSlideIn 0.35s ease forwards;
}
@keyframes faqFadeSlideIn {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 760px) {
  .faq-more-wrap {
    margin-top: 24px;
    gap: 12px;
  }
  .faq-more-btn,
  .faq-less-btn {
    width: 100%;
    max-width: 320px;
    font-size: 14px;
    padding: 11px 24px;
    min-height: 44px;
  }
}

/* --- Privacy Top Layout & In-Page Bar --- */
.privacy-layout {
  display: grid;
  grid-template-columns: .85fr 1.25fr;
  gap: 7%;
  padding: 24px 0 50px;
  align-items: start;
}
.privacy-sidebar {
  position: sticky;
  top: 120px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  border-top: none;
  padding-top: 0;
  align-items: stretch;
}
.privacy-sidebar .privacy-intro {
  padding: 0;
}
.privacy-sidebar .inner-heading {
  padding: 0;
}
.privacy-sidebar .inner-heading h1 {
  font-size: 3.4rem;
  line-height: 1.25;
  margin-bottom: 14px;
}
.privacy-sidebar .inner-heading p {
  font-size: 15px;
  line-height: 1.8;
  color: #717c63;
  margin: 0;
}
.privacy-in-page-box {
  background: #fffdf5bf;
  border: 1px solid #e0e2d2;
  border-radius: 18px;
  padding: 22px 24px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.02);
}
.privacy-in-page-box .privacy-label {
  font-size: 13px;
  font-weight: 700;
  color: #6a765d;
  letter-spacing: -0.2px;
  border-bottom: 1px solid #e2e6d6;
  padding-bottom: 10px;
}
.privacy-nav-links {
  display: flex;
  flex-direction: column;
  gap: 6px;
  max-height: 188px;
  overflow-y: auto;
  padding-inline-end: 6px;
  scrollbar-width: thin;
  scrollbar-color: #c9cfbe transparent;
  overscroll-behavior: contain;
}
.privacy-nav-links::-webkit-scrollbar {
  width: 5px;
}
.privacy-nav-links::-webkit-scrollbar-track {
  background: transparent;
}
.privacy-nav-links::-webkit-scrollbar-thumb {
  background: #c9cfbe;
  border-radius: 10px;
}
.privacy-nav-links::-webkit-scrollbar-thumb:hover {
  background: #a71e25;
}
.privacy-layout .privacy-in-page-box .privacy-nav-links a {
  font-size: 13.5px;
  color: #3b4e3c;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  border-radius: 10px;
  transition: all .2s ease;
  text-decoration: none;
  cursor: pointer;
  min-height: auto;
}
.privacy-layout .privacy-in-page-box .privacy-nav-links a:hover,
.privacy-layout .privacy-in-page-box .privacy-nav-links a.active {
  background: #eef3e5;
  color: #a71e25;
  font-weight: 600;
  transform: translateX(-4px);
  box-shadow: 0 2px 8px rgba(167, 30, 37, 0.06);
}
.privacy-nav-links .nav-idx {
  color: #a71e25;
  font-size: 12px;
  font-weight: 700;
  flex-shrink: 0;
}
.privacy-nav-links .nav-title {
  white-space: normal;
  line-height: 1.45;
  word-break: break-word;
}
.privacy-contact-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 13px;
  color: #66725a;
  border-top: 1px solid #e2e6d6;
  padding-top: 12px;
  margin-top: 4px;
  transition: color .2s ease;
  text-decoration: none;
}
.privacy-contact-link:hover {
  color: #a71e25;
}
.privacy-content-area {
  display: flex;
  flex-direction: column;
}
.privacy-content {
  width: 100%;
  background: #fffdf5bf;
  border: 1px solid #e0e2d2;
  padding: 35px 40px;
  border-radius: 20px;
}
.privacy-content section {
  scroll-margin-top: 140px;
  border-radius: 14px;
  padding: 14px 18px 24px;
  transition: background-color .35s ease, box-shadow .35s ease;
}
.privacy-item-animate {
  animation: faqFadeSlideIn 0.35s ease forwards;
}

/* Question scroll highlight pulse */
.section-highlight {
  animation: targetHighlightPulse 2.4s cubic-bezier(0.2, 0.8, 0.2, 1);
}
@keyframes targetHighlightPulse {
  0% {
    background-color: rgba(167, 30, 37, 0.15);
    box-shadow: 0 0 0 10px rgba(167, 30, 37, 0.12);
  }
  40% {
    background-color: rgba(167, 30, 37, 0.08);
    box-shadow: 0 0 0 5px rgba(167, 30, 37, 0.05);
  }
  100% {
    background-color: transparent;
    box-shadow: 0 0 0 0 transparent;
  }
}

/* Privacy show more & less buttons */
.privacy-more-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  margin: 30px 0 20px;
  padding-top: 10px;
}
.privacy-more-btn,
.privacy-less-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 13px 32px;
  min-height: 48px;
  border-radius: 100px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: background .25s ease, border-color .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
}
.privacy-more-btn {
  border: 1.5px solid #a71e25;
  background: transparent;
  color: #a71e25;
}
.privacy-more-btn:hover {
  background: #a71e25;
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(167, 30, 37, 0.18);
}
.privacy-more-btn:focus-visible {
  outline: 2px solid #a71e25;
  outline-offset: 3px;
}
.privacy-less-btn {
  border: 1.5px solid #263e32;
  background: transparent;
  color: #263e32;
}
.privacy-less-btn:hover {
  background: #263e32;
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(38, 62, 50, 0.18);
}
.privacy-less-btn:focus-visible {
  outline: 2px solid #263e32;
  outline-offset: 3px;
}
.privacy-more-btn:active,
.privacy-less-btn:active {
  transform: translateY(0);
}
.privacy-more-btn .ui-arrow,
.privacy-less-btn .ui-arrow {
  width: 13px;
  height: 13px;
  transition: transform .25s ease, filter .25s ease;
}
.privacy-more-btn:hover .ui-arrow {
  transform: translateY(2px);
  filter: brightness(0) invert(1);
}
.privacy-less-btn:hover .ui-arrow {
  transform: translateY(-2px);
  filter: brightness(0) invert(1);
}

@media (max-width: 900px) {
  .privacy-layout {
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 10px 0 35px;
  }
  .privacy-sidebar {
    position: static;
  }
  .privacy-nav-links {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px;
    max-height: none;
    overflow-y: visible;
    padding-inline-end: 0;
  }
  .privacy-nav-links a {
    font-size: 13px;
    padding: 6px 12px;
    background: #f1f4e8;
    border: 1px solid #dce2d0;
    border-radius: 100px;
  }
  .privacy-content {
    padding: 26px 20px;
    border-radius: 16px;
  }
  .privacy-more-wrap {
    margin: 20px 0 15px;
    gap: 12px;
  }
  .privacy-more-btn,
  .privacy-less-btn {
    width: 100%;
    max-width: 320px;
    font-size: 14px;
    padding: 11px 24px;
    min-height: 44px;
  }
}

