
:root{--bg:#F7F4EE;--text:#20251F;--green:#264E3B;--green2:#18392B;--accent:#D96B3B;--white:#fff;--muted:#6B716C;--line:#DCD8D0;--card:#FBFAF6;--radius:24px;--shadow:0 16px 45px rgba(32,37,31,.08);--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(var(--max),calc(100% - 48px));margin:auto}.narrow{max-width:860px}.section{padding:96px 0}.eyebrow{display:inline-block;margin-bottom:16px;font-size:12px;line-height:1.2;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--green)}.eyebrow.light{color:#D7E5DD}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(42px,5vw,76px);line-height:.98;letter-spacing:-.055em;margin-bottom:26px;font-weight:760}h2{font-size:clamp(34px,4vw,58px);line-height:1.02;letter-spacing:-.045em;margin-bottom:18px}h3{font-size:22px;line-height:1.15;letter-spacing:-.02em}.section-head{max-width:820px;margin-bottom:42px}.section-head p{color:var(--muted);font-size:18px}.section-head.split{max-width:none;display:flex;justify-content:space-between;gap:24px;align-items:end}.btn{display:inline-flex;min-height:52px;padding:0 24px;border-radius:14px;align-items:center;justify-content:center;background:var(--green);color:#fff;font-weight:750;border:1px solid var(--green);cursor:pointer;transition:.2s transform,.2s background}.btn:hover{background:var(--green2);transform:translateY(-1px)}.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(217,107,59,.4);outline-offset:2px}.btn-ghost{background:transparent;color:var(--green)}.btn-light{background:#fff;color:var(--green);border-color:#fff}.btn-small{min-height:44px;padding:0 18px;border-radius:12px;font-size:14px}.btn.full{width:100%}.text-link{font-weight:750;color:var(--green)}.site-header{position:sticky;top:0;z-index:50;background:rgba(247,244,238,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(38,78,59,.08)}.header-inner{height:82px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:10px;flex:0 0 auto}.brand-mark{width:42px;height:42px;border-radius:13px;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:900;font-size:22px}.brand-mark--img{background:transparent;border-radius:0;padding:0;display:block;object-fit:contain}.brand-name{font-size:19px;font-weight:900;letter-spacing:.08em}.custom-logo{max-height:52px;width:auto}.desktop-nav{margin-left:16px;flex:1}.desktop-nav ul,.mobile-nav ul,.site-footer ul{list-style:none;padding:0;margin:0}.desktop-nav ul{display:flex;gap:24px;align-items:center}.desktop-nav a{font-size:14px;font-weight:680}.header-actions{display:flex;gap:14px;align-items:center}.header-contact{display:grid;text-align:right;line-height:1.2}.header-contact a{font-weight:800;font-size:14px}.delivery-note{font-size:11px;color:var(--muted);margin-bottom:4px}.cart-link{display:flex;gap:7px;align-items:center;padding:9px 11px;border:1px solid var(--line);border-radius:12px;font-size:13px}.cart-link b{background:var(--accent);color:#fff;min-width:21px;height:21px;border-radius:11px;display:grid;place-items:center;font-size:11px}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{display:block;width:24px;height:2px;background:var(--text);margin:5px}.mobile-nav{padding:18px 24px 26px;border-top:1px solid var(--line);background:var(--bg)}.mobile-nav ul{display:grid;gap:16px;margin-bottom:22px}.mobile-nav li a{font-weight:760;font-size:18px}.mobile-phone{display:block;margin-top:16px;font-weight:800}.hero{padding:70px 0 86px}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:58px;align-items:center}.hero-lead{max-width:690px;font-size:20px;color:var(--muted);margin-bottom:30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.trust-row{display:flex;gap:22px;flex-wrap:wrap;margin-top:32px;color:var(--muted);font-size:13px}.trust-row span:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:8px}.hero-media{position:relative}.hero-media img{width:100%;height:610px;object-fit:cover;border-radius:34px;box-shadow:var(--shadow)}.hero-badge{position:absolute;left:-28px;bottom:34px;background:#fff;padding:20px 22px;border-radius:18px;box-shadow:var(--shadow);display:grid}.hero-badge strong{font-size:28px;line-height:1}.hero-badge span{font-size:12px;color:var(--muted);margin-top:5px}.audience{background:#fff}.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.aud-card{padding:28px;border:1px solid #ECE8E0;border-radius:20px;background:#fff;min-height:210px}.aud-card .num{display:block;font-size:11px;color:var(--accent);font-weight:900;margin-bottom:42px}.aud-card p{color:var(--muted);margin:0}.menu-preview{background:var(--bg)}.date-strip{display:flex;gap:8px;overflow:auto;padding-bottom:12px;margin-bottom:28px;scrollbar-width:thin}.date-pill{flex:0 0 auto;border:1px solid var(--line);background:transparent;border-radius:14px;padding:10px 14px;cursor:pointer;min-width:92px;text-align:left}.date-pill b{display:block;font-size:13px}.date-pill span{font-size:11px;color:var(--muted)}.date-pill.active{background:var(--green);color:#fff;border-color:var(--green)}.date-pill.active span{color:#DAE7DF}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{background:#fff;border-radius:20px;overflow:hidden;border:1px solid #ECE8E0;display:flex;flex-direction:column}.product-card-media{aspect-ratio:4/3;background:#eee;position:relative}.product-card-media img{width:100%;height:100%;object-fit:cover}.product-tags{position:absolute;left:12px;top:12px;display:flex;gap:6px;flex-wrap:wrap}.product-tags span{background:#fff;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:850}.product-card-body{padding:18px;display:flex;flex-direction:column;flex:1}.product-card h3{font-size:18px;margin-bottom:8px}.product-card p{font-size:13px;color:var(--muted);margin-bottom:14px}.product-meta{display:flex;gap:10px;color:var(--muted);font-size:11px;margin-bottom:16px}.product-bottom{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:auto}.product-price{font-size:20px;font-weight:850}.qty-control{display:flex;align-items:center;border:1px solid var(--line);border-radius:12px;overflow:hidden}.qty-control button{width:34px;height:34px;border:0;background:#fff;cursor:pointer}.qty-control span{min-width:28px;text-align:center;font-weight:800;font-size:13px}.add-btn{height:36px;border:0;border-radius:11px;padding:0 14px;background:var(--green);color:#fff;font-weight:750;cursor:pointer}.loading,.menu-state{grid-column:1/-1;color:var(--muted);padding:26px 0}.feature-complex{display:grid;grid-template-columns:1.15fr .85fr;background:var(--green);color:#fff;border-radius:30px;overflow:hidden}.feature-complex-media img{width:100%;height:100%;min-height:450px;object-fit:cover}.feature-complex-copy{padding:60px;display:flex;flex-direction:column;justify-content:center}.feature-complex-copy .tag{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#C9DDD1;margin-bottom:20px}.feature-complex-copy h3{font-size:42px;letter-spacing:-.04em}.feature-complex-copy p{color:#D9E4DE;font-size:18px}.price-row{display:flex;align-items:baseline;gap:10px;margin:12px 0 24px}.price-row strong{font-size:40px}.price-row span{color:#C9DDD1}.diet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.diet-grid a{border-radius:20px;border:1px solid var(--line);padding:28px;min-height:220px;transition:.2s}.diet-grid a:hover{background:#fff;transform:translateY(-3px)}.diet-grid span{color:var(--accent);font-size:11px;font-weight:900}.diet-grid h3{margin-top:54px}.diet-grid p{color:var(--muted);font-size:14px}.corporate{background:#E8EDE8}.corporate-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;align-items:start}.corporate-copy{position:sticky;top:120px}.corporate-copy p{font-size:18px;color:var(--muted)}.check-list{padding:0;list-style:none;display:grid;gap:12px}.check-list li:before{content:"✓";color:var(--accent);font-weight:900;margin-right:10px}.corp-form,.checkout-form .form-card{background:#fff;border-radius:24px;padding:32px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{display:grid;gap:7px;font-size:12px;font-weight:750}.form-grid .span-2{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #D9D8D2;background:#FBFBF8;border-radius:12px;padding:13px 14px;min-height:48px;color:var(--text)}.consent{display:flex;grid-template-columns:auto 1fr;align-items:start;gap:9px;font-size:12px;color:var(--muted);margin:18px 0}.consent input{min-height:auto;width:auto;margin-top:3px}.form-status{margin:14px 0 0;font-size:13px}.form-status.success{color:var(--green);font-weight:700}.form-status.error{color:#a13c2f;font-weight:700}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.steps>div{padding:26px 0;border-top:1px solid var(--line)}.steps b{font-size:12px;color:var(--accent)}.steps h3{margin-top:40px}.steps p{color:var(--muted);font-size:14px}.production{background:#fff}.production-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.production-grid>div:first-child p{font-size:18px;color:var(--muted)}.production-gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px}.production-gallery img{height:440px;width:100%;object-fit:cover;border-radius:22px}.production-gallery img:last-child{margin-top:60px}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}.accordion details{border-top:1px solid var(--line);padding:22px 0}.accordion details:last-child{border-bottom:1px solid var(--line)}.accordion summary{cursor:pointer;font-weight:800;font-size:18px;list-style:none;padding-right:30px;position:relative}.accordion summary:after{content:"+";position:absolute;right:0;font-size:25px;font-weight:400}.accordion details[open] summary:after{content:"–"}.accordion p{color:var(--muted);max-width:720px;margin:14px 0 0}.final-cta{padding:62px 0;background:var(--green);color:#fff}.final-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.final-cta h2{margin-bottom:0;max-width:800px}.site-footer{background:#1B241E;color:#DFE6E1;padding:70px 0 26px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr 1.2fr;gap:50px}.footer-grid h3{font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:#AEBDB4}.footer-brand{font-weight:900;font-size:20px;margin-bottom:16px}.footer-grid p{color:#AEBDB4;font-size:14px}.footer-grid a{display:block;margin:8px 0;font-size:14px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:50px;padding-top:24px;display:flex;justify-content:space-between;color:#98A79E;font-size:12px}.page-hero{padding:70px 0 30px}.page-hero.compact h1{font-size:clamp(44px,6vw,72px);margin-bottom:14px}.page-hero p{font-size:18px;color:var(--muted);max-width:720px}.menu-app{padding-top:40px}.menu-toolbar{position:relative}.date-strip.large{margin-bottom:22px}.filters{display:grid;grid-template-columns:1fr 1fr 1.4fr auto;gap:12px;align-items:end;margin-bottom:28px}.filters label{display:grid;gap:6px;font-size:11px;font-weight:800}.filters select,.filters input{height:48px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:0 12px}.view-switch{display:flex;border:1px solid var(--line);border-radius:12px;overflow:hidden;height:48px}.view-switch button{border:0;background:#fff;padding:0 14px;cursor:pointer}.view-switch .active{background:var(--green);color:#fff}.product-grid.list-view{grid-template-columns:1fr}.product-grid.list-view .product-card{display:grid;grid-template-columns:130px 1fr}.product-grid.list-view .product-card-media{aspect-ratio:auto;height:100%}.cart-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:40px;align-items:start}.cart-item{display:grid;grid-template-columns:92px 1fr auto auto;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.cart-item img{width:92px;height:74px;border-radius:12px;object-fit:cover}.cart-item h3{font-size:16px;margin:0 0 4px}.cart-item p{font-size:12px;color:var(--muted);margin:0}.cart-item-price{font-weight:800}.remove-item{border:0;background:none;color:#9E4B34;cursor:pointer;font-size:12px}.cart-summary{background:#fff;border-radius:22px;padding:26px;position:sticky;top:110px}.cart-summary h2{font-size:28px}.summary-row,.summary-total{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.summary-total{font-size:16px;border:0;padding:22px 0}.summary-total b{font-size:24px}.small-note,.field-hint{font-size:12px;color:var(--muted)}.min-order-note{font-size:12px;color:#9E4B34;margin-bottom:14px}.checkout-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:start}.checkout-form{display:grid;gap:18px}.checkout-form .form-card{padding:28px}.checkout-form .form-card h2{font-size:24px}.radio-row{display:flex;gap:20px;margin-bottom:20px}.checkout-summary{position:sticky;top:110px}.checkout-line{display:flex;justify-content:space-between;gap:16px;padding:9px 0;font-size:13px}.b2b-hero{padding:70px 0 80px}.b2b-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.b2b-hero-grid img{border-radius:30px;height:540px;width:100%;object-fit:cover}.content-section{padding-top:40px}.prose{font-size:18px}.prose h2{font-size:34px;margin-top:48px}.prose h3{margin-top:30px}.prose p,.prose li{color:#4E554F}.empty-state{text-align:center;max-width:700px;padding:80px 0}.mobile-cartbar{display:none;position:fixed;left:12px;right:12px;bottom:12px;z-index:60;background:var(--green);color:#fff;border-radius:15px;padding:13px 16px;align-items:center;justify-content:space-between;box-shadow:var(--shadow);font-size:13px}.mobile-cartbar a{font-weight:850}
@media(max-width:1120px){.desktop-nav{display:none}.menu-toggle{display:block}.header-actions{margin-left:auto}.header-contact{display:none}.product-grid{grid-template-columns:repeat(3,1fr)}.audience-grid{grid-template-columns:repeat(2,1fr)}.diet-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.section{padding:72px 0}.container{width:min(var(--max),calc(100% - 32px))}.hero-grid,.corporate-grid,.production-grid,.faq-grid,.checkout-grid,.cart-layout,.b2b-hero-grid{grid-template-columns:1fr}.hero{padding-top:38px}.hero-media img{height:480px}.hero-badge{left:18px}.corporate-copy,.cart-summary{position:static}.product-grid{grid-template-columns:repeat(2,1fr)}.feature-complex{grid-template-columns:1fr}.feature-complex-media img{min-height:340px;max-height:420px}.filters{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}.view-switch{display:none}.footer-grid{grid-template-columns:1fr 1fr}.b2b-hero-grid img{height:430px}}
@media(max-width:620px){.container{width:calc(100% - 28px)}.site-header .btn-small,.cart-link span{display:none}.header-inner{height:68px;gap:12px}.header-actions{margin-left:auto;gap:7px}.cart-link{padding:8px}.brand-mark{width:38px;height:38px}.brand-name{font-size:16px}h1{font-size:42px}.hero{padding:30px 0 56px}.hero-lead{font-size:17px}.hero-actions{display:grid}.hero-actions .btn{width:100%}.trust-row{display:grid;gap:10px}.hero-media img{height:380px;border-radius:22px}.hero-badge{bottom:14px;padding:14px 16px}.section{padding:58px 0}.section-head.split{display:block}.section-head.split .text-link{display:inline-block;margin-top:8px}.audience-grid,.product-grid,.diet-grid,.steps,.footer-grid{grid-template-columns:1fr}.aud-card{min-height:auto}.aud-card .num{margin-bottom:24px}.product-grid{gap:12px}.product-card{display:grid;grid-template-columns:122px 1fr;min-height:150px}.product-card-media{aspect-ratio:auto;height:100%}.product-card-body{padding:14px}.product-card p{display:none}.product-meta{margin-bottom:10px}.product-bottom{align-items:end}.add-btn{padding:0 10px}.feature-complex-copy{padding:30px 24px}.feature-complex-copy h3{font-size:34px}.diet-grid{gap:10px}.diet-grid a{min-height:auto}.diet-grid h3{margin-top:28px}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.corp-form{padding:22px}.production-gallery img{height:300px}.production-gallery img:last-child{margin-top:30px}.faq-grid{gap:20px}.final-cta-inner{display:block}.final-cta .btn{margin-top:20px;width:100%}.footer-grid{gap:28px}.footer-bottom{display:grid;gap:8px}.filters{grid-template-columns:1fr}.search-field{grid-column:auto}.cart-item{grid-template-columns:72px 1fr auto;gap:12px}.cart-item img{width:72px;height:64px}.cart-item-price{grid-column:2}.mobile-cartbar{display:flex}.page-hero{padding-top:44px}.page-hero.compact h1{font-size:44px}.b2b-hero-grid img{height:360px}.product-grid.list-view .product-card{grid-template-columns:122px 1fr}.footer-grid .btn{display:inline-flex}}
@media(max-width:360px){.container{width:calc(100% - 22px)}.brand-name{display:none}.hero-media img{height:330px}.product-card{grid-template-columns:108px 1fr}.product-card h3{font-size:16px}.product-meta{display:none}.qty-control button{width:30px}.section{padding:50px 0}}


/* WooCommerce integration */
.woocommerce-shell{max-width:1120px}
.woocommerce table.shop_table{border:1px solid rgba(32,37,31,.12);border-radius:18px;overflow:hidden;background:#fff}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:16px}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce #payment #place_order{
  background:#264E3B;color:#fff;border-radius:999px;padding:14px 22px;font-weight:700
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce #payment #place_order:hover{background:#1f3f31;color:#fff}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{
  border:1px solid rgba(32,37,31,.18);border-radius:12px;padding:12px 14px;background:#fff;min-height:48px
}
.woocommerce-checkout #payment{background:#f1eee7;border-radius:18px}
.woocommerce-checkout #payment ul.payment_methods{border-bottom:0}
.woocommerce .woocommerce-error,.woocommerce .woocommerce-info,.woocommerce .woocommerce-message{border-top-color:#264E3B;background:#fff;border-radius:12px}
.account-link{font-size:14px;font-weight:700;white-space:nowrap}
@media(max-width:1024px){.account-link{display:none}}


/* Obedomaniya 1.2.0 additions */
.brand{display:flex;align-items:center;gap:10px;min-width:0;text-decoration:none}
.brand-copy{display:flex;flex-direction:column;min-width:0}
.brand-name{font-size:20px;font-weight:800;line-height:1.05;letter-spacing:-.02em}
.brand-subtitle{font-size:10px;line-height:1.25;max-width:190px;color:rgba(32,37,31,.66);margin-top:3px}
.hero-minimum{margin-top:16px;font-size:14px}
.price-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.price-plan-card{position:relative;background:#fff;border:1px solid rgba(32,37,31,.1);border-radius:22px;padding:26px;box-shadow:0 14px 34px rgba(32,37,31,.05)}
.price-plan-card h3{margin:0 0 16px;font-size:26px}
.price-plan-card ul{margin:0 0 24px;padding:0;list-style:none;display:grid;gap:9px}
.price-plan-card li{position:relative;padding-left:19px}
.price-plan-card li:before{content:"";position:absolute;left:0;top:.63em;width:7px;height:7px;border-radius:50%;background:#264E3B}
.plan-price{display:flex;align-items:baseline;gap:8px;margin:22px 0 12px}
.plan-price strong{font-size:28px}
.plan-price span{font-size:13px;color:rgba(32,37,31,.62)}
.plan-badge{position:absolute;right:18px;top:18px;background:#264E3B;color:#fff;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:700}
.price-note{margin-top:20px;border-radius:20px;background:#EEE9DE;padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.price-note p{margin:0;max-width:680px}
.aud-card{display:block;color:inherit;text-decoration:none}
.aud-card .card-link{display:block;margin-top:16px;font-weight:700;color:#264E3B}
.bulk-add{display:flex;align-items:center;gap:8px}
.bulk-add select{height:44px;border:1px solid rgba(32,37,31,.18);border-radius:12px;background:#fff;padding:0 10px;min-width:72px}
.legal-entities{background:#264E3B;color:#fff}
.legal-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:54px;align-items:center}
.legal-grid .eyebrow{color:#dce8e0}
.legal-grid .btn{background:#fff;color:#264E3B}
.legal-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.legal-benefits li{border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:14px 16px;background:rgba(255,255,255,.06)}
.production-steps{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.production-steps span{padding:8px 11px;border-radius:999px;background:#EEE9DE;font-size:13px;font-weight:700}
.quality-docs{background:#F0ECE3}
.document-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.document-card{display:block;background:#fff;border-radius:18px;overflow:hidden;text-decoration:none;color:inherit;border:1px solid rgba(32,37,31,.1)}
.document-card img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.document-card span{display:block;padding:14px;font-weight:700}
.trial-card{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#fff;border:1px solid rgba(32,37,31,.1);padding:30px;border-radius:24px}
.trial-card h2{margin-top:5px}
.proposal{background:#EEE9DE}
.proposal-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:54px;align-items:start}
.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.review-card{background:#fff;border:1px solid rgba(32,37,31,.1);border-radius:20px;padding:24px}
.review-card p{font-size:17px;line-height:1.65}
.review-card div{display:flex;flex-direction:column;gap:3px;margin-top:20px}
.review-card span{font-size:13px;color:rgba(32,37,31,.6)}
.faq-answer p{margin:10px 0 0}
.benefit-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.benefit-card{background:#fff;border:1px solid rgba(32,37,31,.1);border-radius:16px;padding:18px;font-weight:700;min-height:92px}
.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.info-card,.contact-card{background:#fff;border:1px solid rgba(32,37,31,.1);border-radius:20px;padding:24px}
.info-card h2{font-size:22px;margin-top:0}
.alt-section{background:#EEE9DE}
.prose{max-width:850px}
.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.contact-card{display:flex;flex-direction:column;gap:8px}
.contact-card span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:rgba(32,37,31,.6)}
.contact-card a,.contact-card strong{font-size:20px;color:inherit}
.footer-legal{font-size:12px;opacity:.65}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.form-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.mobile-cartbar:not([hidden]){display:flex}
@media(max-width:1180px){
  .brand-subtitle{display:none}
  .benefit-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .price-plan-grid,.review-grid{grid-template-columns:1fr 1fr}
  .legal-grid,.proposal-grid{grid-template-columns:1fr}
  .document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .price-plan-grid,.review-grid,.info-grid,.contact-grid{grid-template-columns:1fr}
  .price-note,.trial-card{align-items:flex-start;flex-direction:column}
  .legal-benefits{grid-template-columns:1fr}
  .document-grid{grid-template-columns:1fr 1fr}
  .benefit-grid{grid-template-columns:1fr}
  .bulk-add{width:100%}
  .bulk-add select{flex:0 0 78px}
  .bulk-add .add-btn{flex:1}
  .price-plan-card{padding:22px}
}
@media(max-width:380px){
  .document-grid{grid-template-columns:1fr}
  .brand-name{font-size:18px}
}

.client-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.client-card{min-height:110px;background:#fff;border:1px solid rgba(32,37,31,.1);border-radius:16px;padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px}
.client-card img{max-width:100%;max-height:58px;width:auto;height:auto;object-fit:contain}
.doc-dialog{border:0;border-radius:18px;padding:18px;max-width:min(920px,92vw);max-height:92vh;background:#fff;box-shadow:0 24px 80px rgba(0,0,0,.26)}
.doc-dialog::backdrop{background:rgba(0,0,0,.72)}
.doc-dialog img{display:block;max-width:100%;max-height:82vh;object-fit:contain;margin:auto}
.doc-dialog-close{position:absolute;right:10px;top:10px;width:42px;height:42px;border:0;border-radius:50%;background:#20251f;color:#fff;font-size:26px;cursor:pointer}
@media(max-width:900px){.client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:520px){.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.review-logo img{width:52px;height:52px;object-fit:cover;border-radius:12px}.review-card .review-logo{margin-top:0}


/* ==========================================================
   Обедомания 1.3.0 — final responsive/WooCommerce pass
   ========================================================== */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-size:16px;line-height:1.55}
img{max-width:100%;height:auto}
.container{width:min(1240px,calc(100% - 40px));margin-inline:auto;min-width:0}
h1{font-size:clamp(44px,4.5vw,56px);line-height:1.08;letter-spacing:-.045em;overflow-wrap:anywhere}
h2{font-size:clamp(32px,3.4vw,40px);line-height:1.12;letter-spacing:-.035em;overflow-wrap:anywhere}
h3{font-size:clamp(22px,2vw,28px);line-height:1.15;overflow-wrap:anywhere}
p,li{overflow-wrap:anywhere}
.site-header .container,.site-footer .container{min-width:0}
.header-inner>*{min-width:0}
.desktop-nav{min-width:0}
.desktop-nav ul{flex-wrap:nowrap}
.desktop-nav li{min-width:0}
.header-actions{min-width:0}
.brand-name{letter-spacing:-.02em}
.site-footer,.site-footer *{overflow-wrap:anywhere}
button,.button,.btn,a,input,select,textarea{max-width:100%}
button:disabled,.button:disabled,.btn:disabled{opacity:.58;cursor:not-allowed;transform:none}
button:active,.button:active,.btn:active{transform:translateY(1px)}
button:focus-visible,.button:focus-visible,.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{
  outline:3px solid rgba(217,107,59,.48);outline-offset:2px
}

/* Header / mobile menu */
.mobile-nav[hidden]{display:none}
.mobile-nav{position:fixed;top:0;left:0;width:100%;height:100vh;height:100dvh;z-index:100;padding:0;background:transparent}
.mobile-nav-overlay{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(20,28,23,.55);cursor:pointer}
.mobile-nav-panel{position:absolute;right:0;top:0;bottom:0;width:min(390px,88vw);max-width:100%;background:var(--bg);padding:22px 20px 30px;overflow-y:auto;overscroll-behavior:contain;box-shadow:-20px 0 55px rgba(0,0,0,.16)}
.mobile-nav-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}
.mobile-nav-head strong{font-size:21px}
.mobile-nav-close{width:46px;height:46px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--green2);font-size:28px;line-height:1;cursor:pointer;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent}
.mobile-nav-panel ul{display:grid;gap:6px;margin:0 0 24px;padding:0;list-style:none}
.mobile-nav-panel li a{display:flex;align-items:center;min-height:48px;padding:8px 0;font-size:18px;font-weight:750}
html.menu-open{overflow:hidden}

/* Uniform cards */
.audience-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.aud-card,.price-plan-card,.review-card,.benefit-card{min-width:0;height:100%}
.aud-card{display:flex;flex-direction:column}
.aud-card .card-link{margin-top:auto;padding-top:18px}
.product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.product-card{min-width:0;height:100%}
.product-card-media{display:block;width:100%;aspect-ratio:4/3;overflow:hidden}
.product-card-media img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover}
.product-card-body{min-width:0}
.product-card h3{font-size:20px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:3.6em}
.product-card h3 a{display:block}
.product-card p{font-size:14px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.product-bottom{flex-wrap:wrap}
.bulk-add{min-width:0}
.bulk-add select{font-size:16px}
.add-btn{min-height:44px}
.date-pill:disabled,.date-pill.is-disabled{opacity:.42;cursor:not-allowed}

/* WooCommerce shell and notices */
.wc-main-shell{padding:46px 0 90px}
.wc-main-shell .woocommerce{min-width:0}
.woocommerce .woocommerce-error,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message{
  margin:0 0 24px;padding:18px 20px 18px 54px;border:1px solid rgba(38,78,59,.14);border-top:0;border-radius:16px;background:#fff;color:var(--text);line-height:1.5;overflow-wrap:anywhere
}
.woocommerce .woocommerce-error::before,
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-message::before{top:18px;left:20px;color:var(--green)}
.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-error .button,
.woocommerce .woocommerce-info .button{min-height:44px;margin-left:12px;border-radius:12px;background:var(--green);color:#fff}
.yf-added-message{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.yf-added-message>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.yf-added-message a{font-weight:700}

/* Breadcrumb */
.woocommerce .yf-breadcrumb{margin:0 0 28px;padding:0;color:var(--muted);font-size:14px;line-height:1.6;white-space:normal;overflow-wrap:anywhere}
.yf-breadcrumb-sep{display:inline-block;margin:0 8px;color:var(--accent)}

/* General single product */
.single-product .wc-main-shell{padding-top:30px}
.single-product div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:56px;row-gap:44px;align-items:start;min-width:0}
.single-product div.product .woocommerce-product-gallery{float:none;width:auto;margin:0;min-width:0}
.single-product div.product .summary{float:none;width:auto;margin:0;min-width:0}
.single-product .woocommerce-product-gallery__wrapper{margin:0}
.single-product .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery__image a{display:block;width:100%}
.single-product .woocommerce-product-gallery__image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:24px}
.single-product .summary .product_title{font-size:clamp(36px,3.6vw,50px);line-height:1.08;letter-spacing:-.04em;margin:0 0 18px;overflow-wrap:anywhere}
.single-product .summary .price{margin:0 0 18px;color:var(--text);font-size:30px;font-weight:850;line-height:1.1}
.single-product .summary .price del{font-size:17px;color:var(--muted);opacity:.65}
.single-product .summary .woocommerce-product-details__short-description{font-size:17px;color:#4f5650;line-height:1.6;margin-bottom:20px}
.single-product .summary .woocommerce-product-details__short-description:empty{display:none}
.yf-product-food-info{display:grid;gap:16px;margin:18px 0}
.yf-product-weight{display:flex;gap:12px;align-items:baseline;padding:12px 0;border-block:1px solid var(--line)}
.yf-product-weight span{font-size:14px;color:var(--muted)}
.yf-product-weight strong{font-size:18px}
.yf-product-composition h3{font-size:18px;margin:0 0 6px}
.yf-product-composition p{margin:0;color:#4f5650}
.yf-nutrition{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.yf-nutrition>div{padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff;min-width:0}
.yf-nutrition span{display:block;font-size:11px;color:var(--muted);margin-bottom:4px}
.yf-nutrition strong{display:block;font-size:15px;overflow-wrap:anywhere}
.yf-allergens{font-size:14px;margin:0}
.yf-diet-tags{display:flex;flex-wrap:wrap;gap:7px}
.yf-diet-tags span{padding:7px 10px;border-radius:999px;background:#e8ede8;color:var(--green);font-size:12px;font-weight:750}
.yf-product-date-picker{margin:22px 0 18px}
.yf-product-date-heading{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.yf-product-date-heading strong{font-size:16px}
.yf-product-date-heading span{font-size:13px;color:var(--muted)}
.yf-product-date-options{display:flex;gap:8px;flex-wrap:wrap}
.yf-product-date{min-width:84px;min-height:54px;padding:8px 10px;border:1px solid var(--line);border-radius:13px;background:#fff;text-align:left;cursor:pointer}
.yf-product-date b,.yf-product-date span{display:block}
.yf-product-date b{font-size:12px}
.yf-product-date span{font-size:11px;color:var(--muted)}
.yf-product-date.is-active{background:var(--green);border-color:var(--green);color:#fff}
.yf-product-date.is-active span{color:#d8e5dc}
.yf-product-date.is-disabled{opacity:.42;cursor:not-allowed}
.yf-date-loading,.yf-date-error{font-size:13px;color:var(--muted)}
.single-product form.cart{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0 0}
.woocommerce .quantity{display:inline-flex;align-items:center;min-width:132px;height:50px;border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.woocommerce .quantity .qty{width:52px;height:48px;border:0;background:transparent;text-align:center;font-size:16px;font-weight:750;padding:0;appearance:textfield;-moz-appearance:textfield}
.woocommerce .quantity .qty::-webkit-inner-spin-button,.woocommerce .quantity .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.yf-qty-btn{width:40px;height:48px;flex:0 0 40px;border:0;background:#fff;color:var(--text);font-size:23px;cursor:pointer}
.yf-qty-btn:hover{background:#f2efe8}
.single-product form.cart .single_add_to_cart_button{min-height:50px;padding:0 28px;border:0;border-radius:14px;background:var(--green);color:#fff;font-size:16px;font-weight:800}
.single-product form.cart .single_add_to_cart_button:hover{background:var(--green2)}
.single-product .yf-product-about{grid-column:1/-1;padding-top:12px;border-top:1px solid var(--line);max-width:920px}
.single-product .yf-product-about h2{font-size:30px}
.single-product .yf-product-about-text{font-size:17px;line-height:1.65;color:#4f5650}
.single-product .related.products{grid-column:1/-1;min-width:0}
.single-product .related.products>h2{font-size:32px;margin-bottom:26px}
.single-product .related ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.single-product .related ul.products::before,.single-product .related ul.products::after{display:none}
.single-product .related ul.products li.product{float:none;width:auto;margin:0;min-width:0}
.single-product .related ul.products li.product img{aspect-ratio:4/3;object-fit:cover;border-radius:18px;margin:0 0 12px}
.single-product .related ul.products li.product .woocommerce-loop-product__title{font-size:18px;line-height:1.25}
.single-product .related ul.products li.product .price{font-size:18px;color:var(--text);font-weight:800}
.single-product .related ul.products li.product .button{min-height:44px;border-radius:12px;background:var(--green);color:#fff}

/* Cart */
.woocommerce-cart .page-hero.compact{padding-bottom:12px}
.woocommerce-cart .woocommerce-shell{max-width:1240px}
.woocommerce-cart table.shop_table{border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff}
.woocommerce-cart table.shop_table th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:#faf8f3}
.woocommerce-cart table.shop_table td,.woocommerce-cart table.shop_table th{padding:16px;vertical-align:middle}
.woocommerce-cart .product-thumbnail img{width:86px;aspect-ratio:4/3;object-fit:cover;border-radius:12px}
.woocommerce-cart .product-name a{font-weight:750;line-height:1.35}
.woocommerce-cart .product-price,.woocommerce-cart .product-subtotal{font-weight:800;white-space:nowrap}
.woocommerce-cart .product-remove a.remove{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;color:#9e4b34;background:#fff4f0;font-size:22px}
.woocommerce-cart .cart-collaterals{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,440px);gap:30px;margin-top:32px}
.woocommerce-cart .cart-collaterals::before,.woocommerce-cart .cart-collaterals::after{display:none}
.woocommerce-cart .cart_totals{float:none;width:auto;margin-left:auto;max-width:440px;background:#fff;padding:26px;border-radius:20px;border:1px solid var(--line)}
.woocommerce-cart .cart_totals h2{font-size:28px}
.woocommerce-cart .cart_totals table{border:0}
.woocommerce-cart .cart_totals th,.woocommerce-cart .cart_totals td{padding:12px 0;border:0;border-bottom:1px solid var(--line)}
.woocommerce-cart .cart_totals .order-total th,.woocommerce-cart .cart_totals .order-total td{font-size:19px}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{display:flex;align-items:center;justify-content:center;min-height:52px;border-radius:14px;background:var(--green);color:#fff;font-size:17px;margin:18px 0 0}
.woocommerce-cart .actions .button{min-height:44px;border-radius:12px}
.yf-minimum-progress{padding:16px;border:1px solid var(--line);border-radius:16px;background:#faf8f3;margin-bottom:20px}
.yf-minimum-progress-head{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px}
.yf-progress-track{height:6px;margin:10px 0;background:#e3dfd6;border-radius:999px;overflow:hidden}
.yf-progress-track span{display:block;height:100%;background:var(--green);border-radius:999px}
.yf-minimum-progress p{font-size:13px;color:#7b4b3a;margin:8px 0 0}
.yf-empty-cart-copy{max-width:560px;margin:30px auto 10px;text-align:center}
.yf-empty-cart-copy h2{font-size:32px}
.woocommerce-cart .cart-empty.woocommerce-info{display:none}
.woocommerce-cart .return-to-shop{text-align:center}
.woocommerce-cart .return-to-shop .button{min-height:50px;border-radius:14px;background:var(--green);color:#fff}

/* Checkout */
.woocommerce-checkout .page-hero.compact{padding-bottom:10px}
.woocommerce-checkout .woocommerce-shell{max-width:1180px}
.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);gap:34px;align-items:start}
.woocommerce-checkout #customer_details{grid-column:1;min-width:0}
.woocommerce-checkout #order_review_heading{grid-column:2;grid-row:1;margin:0;font-size:28px}
.woocommerce-checkout #order_review{grid-column:2;grid-row:1;margin-top:48px;position:sticky;top:104px;min-width:0;background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px}
.woocommerce-checkout .col2-set{width:100%;float:none}
.woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2{float:none;width:100%}
.woocommerce-checkout .woocommerce-billing-fields>h3{font-size:28px;margin-bottom:18px}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{display:grid;grid-template-columns:1fr;gap:2px}
.woocommerce-checkout form .form-row{width:100%;float:none;margin:0 0 16px;padding:0}
.woocommerce-checkout form .form-row label{display:block;font-size:14px;font-weight:750;margin-bottom:7px}
.woocommerce-checkout form .form-row input.input-text,
.woocommerce-checkout form .form-row textarea,
.woocommerce-checkout form .form-row select{
  width:100%;max-width:100%;min-height:50px;border:1px solid #d5d2ca;border-radius:12px;background:#fff;padding:12px 14px;font-size:16px;color:var(--text)
}
.woocommerce-checkout form .form-row textarea{min-height:132px;resize:vertical}
.woocommerce-checkout .yf-checkout-delivery{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.woocommerce-checkout .yf-checkout-delivery h3{font-size:26px;margin-bottom:16px}
.yf-delivery-date-summary{display:grid;grid-template-columns:1fr auto;gap:5px 14px;align-items:center;padding:14px 16px;margin-bottom:16px;border:1px solid var(--line);border-radius:14px;background:#faf8f3}
.yf-delivery-date-summary span{font-size:12px;color:var(--muted)}
.yf-delivery-date-summary strong{grid-row:2;font-size:17px}
.yf-delivery-date-summary a{grid-column:2;grid-row:1/3;align-self:center;color:var(--green);font-weight:750}
.yf-checkout-note{font-size:13px;color:var(--muted);margin:8px 0 16px}
.yf-payment-note{display:flex;flex-direction:column;gap:3px;padding:14px 16px;border-radius:14px;background:#e8ede8}
.yf-payment-note strong{font-size:14px}
.yf-payment-note span{font-size:13px;color:#475048}
.woocommerce-checkout .woocommerce-additional-fields>h3{font-size:24px;margin-top:28px}
.woocommerce-checkout-review-order-table{font-size:14px}
.woocommerce-checkout-review-order-table th,.woocommerce-checkout-review-order-table td{padding:12px 0;border-color:var(--line)}
.woocommerce-checkout #payment{background:#f7f4ee;border-radius:16px}
.woocommerce-checkout #payment ul.payment_methods{padding:14px;border:0}
.woocommerce-checkout #payment .payment_box{font-size:13px;background:#fff}
.woocommerce-checkout #payment .payment_box::before{border-bottom-color:#fff}
.yf-checkout-consent{margin:16px 0}
.yf-checkout-consent .form-row{margin-bottom:6px}
.yf-checkout-consent label{font-size:13px;line-height:1.45;font-weight:600}
.yf-privacy-link{display:inline-block;font-size:13px;color:var(--green);text-decoration:underline}
.woocommerce-checkout #payment #place_order.yf-place-order{width:100%;min-height:52px;border:0;border-radius:14px;background:var(--green);color:#fff;font-size:17px;font-weight:800;position:relative}
.yf-button-loader{display:none;width:18px;height:18px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:yfspin .8s linear infinite}
.yf-place-order.is-loading .yf-button-loader{display:inline-block;margin-left:8px}
@keyframes yfspin{to{transform:rotate(360deg)}}
.yf-after-order-hint{font-size:12px;color:var(--muted);text-align:center;margin:10px 0 0}
.woocommerce-checkout .woocommerce-invalid input.input-text,
.woocommerce-checkout .woocommerce-invalid select,
.woocommerce-checkout .woocommerce-invalid textarea{border-color:#a13c2f;background:#fff9f7}
.woocommerce-checkout .woocommerce-invalid label{color:#8b3026}

/* Thank you */
.woocommerce-order-received .woocommerce-order{max-width:980px}
.yf-thankyou-message{margin-bottom:26px;padding:26px;border-radius:20px;background:#e8ede8}
.yf-thankyou-message h2{font-size:30px}
.yf-thankyou-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}
.yf-thankyou-grid>div{padding:12px;background:rgba(255,255,255,.65);border-radius:12px}
.yf-thankyou-grid span,.yf-thankyou-grid strong{display:block}
.yf-thankyou-grid span{font-size:11px;color:var(--muted);margin-bottom:3px}
.yf-thankyou-grid .wide{grid-column:1/-1}

/* Hide mobile cart bar where it would cover primary actions */
.woocommerce-cart .mobile-cartbar,.woocommerce-checkout .mobile-cartbar,.single-product .mobile-cartbar{display:none}

/* Tablet */
@media(max-width:1100px){
  .header-inner{gap:14px}
  .desktop-nav{display:none}
  .menu-toggle{display:block}
  .header-contact,.header-actions>.btn-small,.account-link{display:none}
  .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .single-product div.product{column-gap:34px}
  .single-product .related ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
  .woocommerce-checkout form.checkout{grid-template-columns:minmax(0,1fr) minmax(320px,.78fr)}
}

/* Tablet/mobile */
@media(max-width:820px){
  .container{width:min(100% - 32px,1240px)}
  .section{padding:68px 0}
  h1{font-size:clamp(34px,7vw,44px)}
  h2{font-size:clamp(28px,5.5vw,34px)}
  h3{font-size:22px}
  .hero-grid,.b2b-hero-grid,.production-grid,.faq-grid,.corporate-grid{grid-template-columns:1fr}
  .hero-media img{height:auto;aspect-ratio:4/3}
  .hero-badge{left:14px}
  .audience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .single-product div.product{grid-template-columns:1fr;row-gap:26px}
  .single-product .woocommerce-product-gallery__image img{border-radius:20px}
  .single-product .summary .product_title{font-size:36px}
  .single-product .related ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
  .woocommerce-cart .cart-collaterals{grid-template-columns:1fr}
  .woocommerce-cart .cart_totals{max-width:none;margin-left:0}
  .woocommerce-checkout form.checkout{display:block}
  .woocommerce-checkout #order_review_heading{margin-top:34px;font-size:28px}
  .woocommerce-checkout #order_review{position:static;margin-top:14px}
}

/* Mobile */
@media(max-width:600px){
  .container{width:calc(100% - 32px)}
  body{font-size:16px}
  h1{font-size:clamp(30px,9vw,36px);line-height:1.12}
  h2{font-size:clamp(26px,7.5vw,30px);line-height:1.15}
  h3{font-size:20px}
  .section{padding:54px 0}
  .header-inner{height:68px}
  .brand-mark{width:38px;height:38px}
  .brand-name{font-size:18px}
  .cart-link span{display:none}
  .cart-link{min-width:44px;min-height:44px;justify-content:center}
  .menu-toggle{width:44px;height:44px;padding:7px}
  .hero{padding:42px 0 54px}
  .hero-actions{display:grid;grid-template-columns:1fr}
  .hero-actions .btn{width:100%}
  .trust-row{gap:12px;margin-top:24px}
  .audience-grid,.price-plan-grid,.review-grid,.benefit-grid{grid-template-columns:1fr}
  .aud-card{min-height:0}
  .product-grid{grid-template-columns:1fr}
  .product-card h3{min-height:auto;font-size:21px}
  .filters{grid-template-columns:1fr}
  .view-switch{display:none}
  .date-strip{margin-inline:-16px;padding-inline:16px}
  .date-pill{min-height:52px}
  .single-product .summary .product_title{font-size:32px}
  .single-product .summary .price{font-size:27px}
  .yf-nutrition{grid-template-columns:repeat(2,minmax(0,1fr))}
  .yf-product-date-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .yf-product-date{width:100%}
  .single-product form.cart{display:grid;grid-template-columns:1fr;width:100%}
  .single-product form.cart .quantity{width:100%;justify-content:space-between}
  .single-product form.cart .quantity .qty{flex:1}
  .single-product form.cart .single_add_to_cart_button{width:100%;min-height:52px}
  .single-product .related ul.products{grid-template-columns:1fr 1fr;gap:14px}
  .woocommerce .woocommerce-error,
  .woocommerce .woocommerce-info,
  .woocommerce .woocommerce-message{padding:16px 16px 16px 46px;font-size:14px}
  .woocommerce .woocommerce-message .button,
  .woocommerce .woocommerce-error .button,
  .woocommerce .woocommerce-info .button{float:none;display:flex;margin:12px 0 0;width:100%}
  .yf-added-message{display:block}
  .yf-added-message>div{display:grid;grid-template-columns:1fr;margin-top:12px}
  .woocommerce-cart table.shop_table_responsive,
  .woocommerce-cart table.shop_table_responsive tbody,
  .woocommerce-cart table.shop_table_responsive tr,
  .woocommerce-cart table.shop_table_responsive td{display:block;width:100%}
  .woocommerce-cart table.shop_table_responsive thead{display:none}
  .woocommerce-cart table.shop_table_responsive tr.cart_item{position:relative;margin:0 0 16px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff}
  .woocommerce-cart table.shop_table_responsive td{border:0;padding:8px 0;text-align:left}
  .woocommerce-cart table.shop_table_responsive td::before{float:none;display:block;margin-bottom:3px;color:var(--muted);font-size:11px;text-transform:none;font-weight:600}
  .woocommerce-cart table.shop_table_responsive .product-thumbnail{display:block;text-align:left}
  .woocommerce-cart table.shop_table_responsive .product-thumbnail::before{display:none}
  .woocommerce-cart .product-thumbnail img{width:112px}
  .woocommerce-cart table.shop_table_responsive .product-remove{position:absolute;right:12px;top:12px;width:auto}
  .woocommerce-cart table.shop_table_responsive .product-remove::before{display:none}
  .woocommerce-cart table.shop_table_responsive .product-name{padding-right:52px}
  .woocommerce-cart .quantity{max-width:170px}
  .woocommerce-cart td.actions{padding:12px 0 0}
  .woocommerce-cart td.actions .button{width:100%;margin:6px 0}
  .woocommerce-cart .coupon{display:grid;grid-template-columns:1fr;gap:8px}
  .woocommerce-cart .coupon input{width:100%}
  .woocommerce-cart .cart_totals{padding:20px}
  .yf-minimum-progress-head{display:grid;gap:4px}
  .woocommerce-checkout .woocommerce-shell{padding-inline:0}
  .woocommerce-checkout form .form-row input.input-text,
  .woocommerce-checkout form .form-row textarea,
  .woocommerce-checkout form .form-row select{font-size:16px;min-height:50px}
  .woocommerce-checkout #order_review{padding:18px}
  .woocommerce-checkout #order_review_heading{font-size:26px}
  .yf-delivery-date-summary{grid-template-columns:1fr auto}
  .yf-thankyou-grid{grid-template-columns:1fr}
  .yf-thankyou-grid .wide{grid-column:auto}
}

/* 320–380 px stress protection */
@media(max-width:380px){
  .container{width:calc(100% - 32px)}
  .header-actions{gap:6px}
  .brand{gap:7px}
  .brand-name{font-size:17px}
  .cart-link{padding:6px}
  .product-bottom{display:grid;grid-template-columns:1fr}
  .bulk-add{width:100%;display:grid;grid-template-columns:80px 1fr}
  .bulk-add .add-btn{width:100%}
  .single-product .related ul.products{grid-template-columns:1fr}
  .yf-product-date-options{grid-template-columns:1fr}
}

.yf-cart-delivery{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#faf8f3;margin-bottom:10px}
.yf-cart-delivery>div{display:grid;gap:2px;min-width:0}
.yf-cart-delivery span,.yf-cart-delivery small{font-size:12px;color:var(--muted)}
.yf-cart-delivery strong{font-size:18px}
.yf-cart-delivery a{font-size:13px;color:var(--green);font-weight:750;white-space:nowrap}
.yf-cart-delivery-note{font-size:13px;color:var(--muted);margin:0 0 18px}
.yf-continue-shopping{margin:18px 0 0}
.yf-continue-shopping a{display:inline-flex;min-height:44px;align-items:center;font-weight:750;color:var(--green)}
.yf-inline-error{display:block;margin-top:6px;color:#8b3026;font-size:12px;line-height:1.35}
.form-status,.woocommerce-error,.woocommerce-info,.woocommerce-message{overflow-wrap:anywhere}
@media(max-width:600px){
  .date-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;margin-inline:0;padding-inline:0}
  .date-pill{width:100%;min-width:0}
  .site-footer{padding-top:52px}
  .footer-grid{grid-template-columns:1fr;gap:28px}
  .footer-bottom{display:grid;gap:10px}
  .yf-cart-delivery{align-items:flex-start}
}


/* ==========================================================
   Обедомания 1.4.0 — premium visual pass
   ========================================================== */
:root{
  --premium-shadow:0 18px 50px rgba(32,37,31,.085);
  --premium-shadow-soft:0 10px 32px rgba(32,37,31,.055);
  --premium-border:rgba(38,78,59,.10);
}
body{background:linear-gradient(180deg,#f8f5ef 0,#f7f4ee 48%,#f4f0e8 100%)}
.site-header{box-shadow:0 6px 28px rgba(32,37,31,.035)}
.hero-media img,.b2b-hero-grid img{box-shadow:0 28px 70px rgba(32,37,31,.14)}
.hero-badge{border:1px solid rgba(38,78,59,.08)}
.price-plan-card,.aud-card,.product-card,.review-card,.contact-card,.info-card,.benefit-card{
  border-color:var(--premium-border);
  box-shadow:var(--premium-shadow-soft);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.price-plan-card:hover,.aud-card:hover,.product-card:hover,.catalog-food-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--premium-shadow);
  border-color:rgba(38,78,59,.18)
}
.btn,.add-btn,.single_add_to_cart_button,.checkout-button{
  box-shadow:0 9px 24px rgba(38,78,59,.18)
}
.eyebrow{letter-spacing:.16em}
.section-head h2{max-width:900px}
.legal-entities,.final-cta{
  background:
    radial-gradient(circle at 15% 10%,rgba(255,255,255,.08),transparent 28%),
    linear-gradient(135deg,#284e3d,#18392b);
}

/* Larger, more premium product page */
.single-product div.product{
  grid-template-columns:minmax(0,1.28fr) minmax(360px,.72fr);
  column-gap:64px;
}
.single-product div.product .woocommerce-product-gallery{
  position:sticky;
  top:108px;
}
.single-product .woocommerce-product-gallery__image img{
  width:100%;
  aspect-ratio:4/3;
  min-height:520px;
  object-fit:cover;
  border-radius:28px;
  box-shadow:0 24px 68px rgba(32,37,31,.12)
}
.single-product .flex-control-thumbs{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  margin-top:12px
}
.single-product .flex-control-thumbs li{width:auto;float:none;margin:0}
.single-product .flex-control-thumbs img{
  width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;border:1px solid var(--line)
}
.single-product .summary{
  padding:28px 0;
}
.single-product .summary .product_title{
  max-width:680px;
}
.single-product .related.products{
  margin-top:20px;
  padding-top:42px;
  border-top:1px solid var(--line)
}
.single-product .related.products>h2{
  font-size:34px;
  letter-spacing:-.03em
}

/* Permanent menu after daily menu */
.permanent-menu{
  padding-top:78px;
  background:linear-gradient(180deg,#f0ece4 0,#f8f5ef 20%,#f8f5ef 100%);
  border-top:1px solid rgba(38,78,59,.08)
}
.catalog-diet-filter{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:0 0 42px;
  padding:10px;
  width:fit-content;
  max-width:100%;
  border:1px solid var(--premium-border);
  border-radius:18px;
  background:rgba(255,255,255,.76);
  box-shadow:var(--premium-shadow-soft)
}
.catalog-diet-filter button{
  min-height:42px;
  padding:0 16px;
  border:0;
  border-radius:12px;
  background:transparent;
  color:var(--text);
  font-weight:750;
  cursor:pointer
}
.catalog-diet-filter button:hover{background:#eef2ee}
.catalog-diet-filter button.active{background:var(--green);color:#fff}
.catalog-category{
  margin:0 0 64px;
  scroll-margin-top:100px
}
.catalog-category-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:22px;
  padding-bottom:14px;
  border-bottom:1px solid var(--line)
}
.catalog-category-head span{
  display:block;
  margin-bottom:5px;
  color:var(--muted);
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em
}
.catalog-category-head h3{
  margin:0;
  font-size:30px;
  letter-spacing:-.03em
}
.catalog-food-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px
}
.catalog-food-card{
  min-width:0;
  height:100%;
  overflow:hidden;
  border:1px solid var(--premium-border);
  border-radius:20px;
  background:#fff;
  box-shadow:var(--premium-shadow-soft);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease
}
.catalog-food-card[hidden],.catalog-category[hidden]{display:none}
.catalog-food-media{
  display:block;
  aspect-ratio:4/3;
  overflow:hidden;
  background:#ece8df
}
.catalog-food-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease
}
.catalog-food-card:hover .catalog-food-media img{transform:scale(1.025)}
.catalog-food-body{
  display:flex;
  flex-direction:column;
  min-height:250px;
  padding:18px
}
.catalog-food-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  min-height:26px;
  margin-bottom:10px
}
.catalog-food-tags span{
  padding:5px 8px;
  border-radius:999px;
  background:#e8ede8;
  color:var(--green);
  font-size:10px;
  font-weight:800
}
.catalog-food-body h4{
  margin:0 0 8px;
  font-size:19px;
  line-height:1.24;
  letter-spacing:-.02em;
  overflow-wrap:anywhere
}
.catalog-food-body p{
  margin:0 0 14px;
  color:var(--muted);
  font-size:14px;
  line-height:1.5
}
.catalog-food-meta{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  margin-top:auto;
  padding-top:12px;
  border-top:1px solid #efebe3
}
.catalog-food-meta span{font-size:12px;color:var(--muted)}
.catalog-food-meta strong{font-size:20px}
.catalog-food-link{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  margin-top:10px;
  color:var(--green);
  font-size:13px;
  font-weight:800
}

@media(max-width:1100px){
  .single-product div.product{
    grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr);
    column-gap:38px
  }
  .single-product .woocommerce-product-gallery__image img{min-height:440px}
  .catalog-food-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:820px){
  .single-product div.product{grid-template-columns:1fr}
  .single-product div.product .woocommerce-product-gallery{position:static}
  .single-product .woocommerce-product-gallery__image img{min-height:0}
  .catalog-food-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .single-product .summary{padding-top:6px}
  .catalog-diet-filter{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .catalog-diet-filter button{width:100%;padding-inline:10px}
  .catalog-food-grid{grid-template-columns:1fr}
  .catalog-food-body{min-height:0}
  .catalog-category{margin-bottom:48px}
  .catalog-category-head h3{font-size:27px}
}
@media(max-width:360px){
  .catalog-diet-filter{grid-template-columns:1fr}
}


/* TZ 1.4.1: кнопка «Открыть меню» в тёмном footer должна быть явно видимой. */
.site-footer .btn.btn-light{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 22px;
  background:#fff;
  color:var(--green);
  border:1px solid #fff;
  border-radius:14px;
  font-weight:800;
}
.site-footer .btn.btn-light:hover{
  background:#f3f0e8;
  color:var(--green2);
  border-color:#f3f0e8;
}
.site-footer .btn.btn-light:focus-visible{
  outline:3px solid rgba(255,255,255,.48);
  outline-offset:3px;
}


/* TZ 1.4.2 — акционные цены */
.product-price{
  display:flex;
  align-items:baseline;
  gap:8px;
  flex-wrap:wrap;
}
.product-price del,
.catalog-food-meta del,
.woocommerce .price del{
  color:#8a8f8a;
  font-weight:600;
  text-decoration-thickness:1.5px;
  text-decoration-color:#8a8f8a;
  opacity:.82;
}
.product-price ins,
.catalog-food-meta ins,
.woocommerce .price ins{
  color:var(--green);
  font-weight:900;
  text-decoration:none;
}
.product-price ins{font-size:21px}
.catalog-food-meta strong{
  display:flex;
  align-items:baseline;
  gap:7px;
  flex-wrap:wrap;
}
.catalog-food-meta strong ins{font-size:18px}
.single-product .summary .price ins{color:var(--green)}
.single-product .summary .price del{font-size:18px}

/* TZ 1.4.2 — контакты и доставка в карточной структуре */
.contact-delivery-hero{
  padding-bottom:24px;
}
.contact-delivery-hero .container{
  max-width:980px;
}
.contact-delivery-section{
  padding-top:34px;
}
.service-info-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
  align-items:stretch;
}
.service-info-card{
  min-width:0;
  min-height:260px;
  padding:28px;
  background:#fff;
  border:1px solid rgba(38,78,59,.11);
  border-radius:22px;
  box-shadow:0 16px 42px rgba(32,37,31,.07);
}
.service-info-icon{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  margin-bottom:25px;
  border-radius:14px;
  background:#e8ede8;
  color:var(--green);
  font-size:21px;
  font-weight:900;
}
.service-info-card h2{
  margin:0 0 14px;
  font-size:22px;
  line-height:1.15;
}
.service-info-card p,
.service-info-card a{
  color:var(--muted);
  line-height:1.55;
}
.service-info-card a{
  display:block;
  margin:6px 0;
}
.service-info-card .service-info-primary{
  color:var(--text);
  font-size:17px;
  font-weight:800;
}
.service-info-list{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}
.service-info-list li{
  position:relative;
  padding-left:20px;
  color:#4f5650;
}
.service-info-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.63em;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--accent);
}
.service-copy-block{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:36px;
  margin-top:28px;
  padding:30px 32px;
  border:1px solid rgba(38,78,59,.1);
  border-radius:22px;
  background:#eef2ee;
}
.service-copy-block h2{
  margin-bottom:8px;
  font-size:30px;
}
.service-copy-block p{
  max-width:760px;
  margin-bottom:0;
  color:var(--muted);
}
.contact-form-section{
  padding-top:72px;
}
.delivery-details{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:40px;
  margin-top:60px;
}
.delivery-steps-list{
  display:grid;
  gap:0;
  margin:24px 0 0;
  padding:0;
  list-style:none;
  counter-reset:yf-delivery-step;
}
.delivery-steps-list li{
  position:relative;
  display:grid;
  gap:5px;
  min-height:76px;
  padding:0 0 24px 54px;
  counter-increment:yf-delivery-step;
}
.delivery-steps-list li::before{
  content:counter(yf-delivery-step);
  position:absolute;
  left:0;
  top:0;
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:12px;
  background:var(--green);
  color:#fff;
  font-weight:900;
}
.delivery-steps-list li:not(:last-child)::after{
  content:"";
  position:absolute;
  left:17px;
  top:39px;
  bottom:2px;
  width:1px;
  background:rgba(38,78,59,.2);
}
.delivery-steps-list span{
  color:var(--muted);
}
.delivery-text-panel{
  padding:30px;
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(38,78,59,.1);
  box-shadow:0 16px 42px rgba(32,37,31,.05);
}
.delivery-text-panel h2{
  font-size:26px;
  margin:0 0 12px;
}
.delivery-text-panel h2:not(:first-child){
  margin-top:28px;
}
.delivery-text-panel p{
  color:var(--muted);
}

/* TZ 1.4.2 — плавающие виджеты соцсетей */
.social-float{
  position:fixed;
  right:20px;
  bottom:96px;
  z-index:64;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.social-float-item{
  display:grid;
  place-items:center;
  width:50px;
  height:50px;
  border-radius:50%;
  color:#fff;
  box-shadow:0 10px 26px rgba(20,28,23,.19);
  transition:transform .18s ease,box-shadow .18s ease;
}
.social-float-item:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(20,28,23,.24);
}
.social-float-item svg{
  width:27px;
  height:27px;
  fill:currentColor;
}
.social-vk{background:#2787f5}
.social-telegram{background:#28a8e9}
.social-max{background:#6f5cff}
.social-whatsapp{background:#25d366}
.social-text-logo{
  color:#fff;
  font-size:13px;
  line-height:1;
  font-weight:950;
  letter-spacing:-.04em;
}

@media(max-width:900px){
  .service-info-grid{grid-template-columns:1fr 1fr}
  .service-info-grid .service-info-card:last-child{grid-column:1/-1}
  .delivery-details{grid-template-columns:1fr}
}
@media(max-width:640px){
  .service-info-grid{grid-template-columns:1fr}
  .service-info-grid .service-info-card:last-child{grid-column:auto}
  .service-info-card{min-height:0;padding:22px}
  .service-copy-block{align-items:flex-start;flex-direction:column;padding:24px}
  .service-copy-block .btn{width:100%}
  .social-float{
    right:12px;
    bottom:82px;
    gap:8px;
  }
  .social-float-item{
    width:46px;
    height:46px;
  }
}


/* ==========================================================
   Обедомания 1.5.0 — финальная адаптивность по ТЗ
   ========================================================== */
:root{
  --yf-mobile-gutter:16px;
}

/* Надёжная сетка без маскировки переполнения */
*,*::before,*::after{box-sizing:border-box}
img,svg,video,iframe{max-width:100%;height:auto}
main,section,.container,.header-inner,.footer-grid,.product-card,.catalog-food-card,
.woocommerce,.woocommerce form,.woocommerce table,.woocommerce div.product,
.form-grid>*{min-width:0}
p,li,a,strong,span,h1,h2,h3,h4,.woocommerce td,.woocommerce th{
  overflow-wrap:anywhere;
}

/* Header */
.cart-link-icon{width:20px;height:20px;flex:0 0 20px}
.cart-link-sep{color:var(--muted);font-weight:700}
.cart-link b{flex:0 0 auto}
.menu-toggle,.mobile-nav-close{min-width:44px;min-height:44px}
.mobile-nav-panel{
  height:100vh;
  height:100dvh;
  max-height:100dvh;
  overscroll-behavior:contain;
}
.mobile-nav-panel>.btn{width:100%;min-height:50px;justify-content:center}
.mobile-nav-panel a{min-height:44px}
html.menu-open,html.menu-open body{overscroll-behavior:none}

/* FAQ */
.accordion details{padding:0}
.accordion summary{
  min-height:56px;
  display:flex;
  align-items:center;
  padding:14px 38px 14px 0;
  line-height:1.35;
}
.accordion summary::after{top:50%;transform:translateY(-50%)}
.accordion .faq-answer{padding:0 0 18px}

/* Все формы */
.form-grid input,.form-grid select,.form-grid textarea,
.woocommerce form input.input-text,.woocommerce form textarea,.woocommerce form select{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}
.form-grid textarea{min-height:130px}
.form-honeypot{
  position:absolute;
  left:-10000px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  clip-path:inset(50%);
  white-space:nowrap;
  pointer-events:none;
}

/* Доставка */
.delivery-facts-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.delivery-fact{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  min-height:142px;
  padding:22px;
  background:#fff;
  border:1px solid rgba(38,78,59,.11);
  border-radius:20px;
  box-shadow:0 12px 34px rgba(32,37,31,.055);
}
.delivery-fact span{
  display:block;
  color:var(--green);
  font-size:clamp(19px,2vw,25px);
  line-height:1.18;
  font-weight:900;
  overflow-wrap:anywhere;
}
.delivery-fact strong{
  margin-top:7px;
  color:var(--muted);
  font-size:13px;
  line-height:1.4;
}
.about-production-steps{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:22px;
}
.about-production-steps span{
  min-width:0;
  padding:11px 13px;
  border-radius:12px;
  background:#eef2ee;
  color:var(--green);
  font-size:13px;
  font-weight:800;
}

/* Single product: сбалансированные колонки */
.single-product div.product{
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  column-gap:52px;
}
.single-product .woocommerce-product-gallery__image img{
  min-height:0;
  aspect-ratio:4/3;
}
.single-product .summary{min-width:0}
.single-product .summary .product_title{max-width:100%}
.single-product form.cart .quantity,
.single-product form.cart .single_add_to_cart_button{min-height:50px}

/* Sticky cart */
@media(max-width:600px){
  html.has-mobile-cart body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.single-product){
    padding-bottom:88px;
  }
  html.has-mobile-cart .social-float{bottom:154px}
  .mobile-cartbar{
    min-height:60px;
    max-width:calc(100vw - 24px);
  }
  .mobile-cartbar span,.mobile-cartbar a{min-width:0;overflow-wrap:anywhere}
}

/* Footer mobile order */
.footer-requisites{
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
  padding-top:22px;
  color:#aebdb4;
  font-size:12px;
}
.footer-requisites strong{color:#dfe6e1}
@media(max-width:600px){
  .footer-grid{display:flex;flex-direction:column;gap:28px}
  .footer-grid>div:nth-child(1){order:1}
  .footer-grid>div:nth-child(3){order:2}
  .footer-grid>div:nth-child(2){order:3}
  .footer-grid>div:nth-child(4){order:4}
  .footer-requisites{display:grid;gap:5px;padding-top:8px}
  .footer-bottom{padding-top:18px}
}

/* Адаптивные фильтры и формы */
@media(max-width:820px){
  .delivery-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .container{width:calc(100% - 32px)}
  .filters{display:grid;grid-template-columns:1fr;gap:12px}
  .filters label,.filters select,.filters input{width:100%;max-width:100%}
  .view-switch{width:100%;display:flex}
  .view-switch button{flex:1;min-height:48px}
  .form-grid{grid-template-columns:1fr}
  .form-grid .span-2{grid-column:auto}
  .corp-form{padding:20px}
  .corp-form .btn{width:100%;min-height:50px}
  .consent{min-height:44px}
  .consent input{flex:0 0 auto;width:20px;height:20px;min-height:20px}
  .delivery-facts-grid{grid-template-columns:1fr}
  .delivery-fact{min-height:0;padding:20px}
  .delivery-details{gap:28px;margin-top:42px}
  .about-production-steps{grid-template-columns:1fr 1fr}
  .page-hero.compact h1{font-size:clamp(30px,9vw,36px)}
  .page-hero p{font-size:16px}
  .trust-row{display:grid;grid-template-columns:1fr 1fr}
  .trust-row span{min-width:0}
}
@media(max-width:390px){
  .container{width:calc(100% - 32px)}
  .header-inner{gap:8px}
  .brand{min-width:0}
  .cart-link{padding:7px;gap:5px}
  .cart-link-label,.cart-link-sep{display:none}
  .mobile-nav-panel{width:min(340px,92vw);padding-inline:18px}
  .about-production-steps,.trust-row{grid-template-columns:1fr}
}
@media(max-width:320px){
  .container{width:calc(100% - 32px)}
  .brand-mark{width:36px;height:36px;flex:0 0 36px}
  .brand-name{font-size:16px}
  .header-actions{gap:4px}
  .cart-link,.menu-toggle{min-width:42px;width:42px}
  .mobile-cartbar{left:8px;right:8px;max-width:calc(100vw - 16px);padding-inline:12px}
  .mobile-cartbar>span{font-size:12px}
}


/* Thank-you order items */
.yf-thankyou-items{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(38,78,59,.14);
}
.yf-thankyou-items h3{
  margin:0 0 12px;
  font-size:20px;
}
.yf-thankyou-items ul{
  display:grid;
  gap:9px;
  margin:0;
  padding:0;
  list-style:none;
}
.yf-thankyou-items li{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:10px 0;
  border-bottom:1px solid rgba(38,78,59,.1);
}
.yf-thankyou-items li span{min-width:0}
.yf-thankyou-items li strong{white-space:nowrap}
@media(max-width:600px){
  .yf-thankyou-items li{display:grid;gap:4px}
  .yf-thankyou-items li strong{white-space:normal}
}

.mobile-cartbar[hidden]{display:none}

.yf-product-category{
  margin:0 0 10px;
  color:var(--green);
  font-size:12px;
  line-height:1.4;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}


/* TZ 1.5.1 — категории меню слева */
.menu-with-sidebar{
  display:grid;
  grid-template-columns:210px minmax(0,1fr);
  gap:34px;
  align-items:start;
}
.menu-main-column{min-width:0}
.menu-category-sidebar{
  position:sticky;
  top:96px;
  display:grid;
  gap:2px;
  min-width:0;
  padding:18px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.menu-category-sidebar-title{
  margin-bottom:9px;
  color:var(--muted);
  font-size:12px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.menu-category-sidebar button{
  width:100%;
  min-height:42px;
  padding:9px 10px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--text);
  text-align:left;
  font:inherit;
  font-size:14px;
  line-height:1.3;
  cursor:pointer;
  overflow-wrap:anywhere;
}
.menu-category-sidebar button:hover{
  background:#eef2ee;
}
.menu-category-sidebar button.active{
  background:var(--green);
  color:#fff;
  font-weight:800;
}
@media(max-width:900px){
  .menu-with-sidebar{grid-template-columns:1fr;gap:22px}
  .menu-category-sidebar{
    position:static;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    padding:0 0 18px;
    border-top:0;
  }
  .menu-category-sidebar-title{grid-column:1/-1}
  .menu-category-sidebar button{
    border:1px solid var(--line);
    background:#fff;
    text-align:center;
  }
}
@media(max-width:600px){
  .menu-category-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:360px){
  .menu-category-sidebar{grid-template-columns:1fr}
}


/* TZ 1.5.2 — акционная цена */
.product-price del,
.catalog-food-meta del,
.woocommerce .price del{
  color:#8c928d;
  opacity:.78;
  font-weight:600;
  text-decoration:line-through;
  text-decoration-thickness:2px;
}
.product-price ins,
.catalog-food-meta ins,
.woocommerce .price ins{
  color:var(--green);
  opacity:1;
  font-weight:900;
  text-decoration:none;
}
.product-price ins{font-size:1.12em}

/* TZ 1.5.2 — слева только типы питания */
.menu-diet-sidebar .menu-category-sidebar-title{color:var(--green)}
.menu-diet-sidebar button.active{
  background:var(--green);
  color:#fff;
}


/* Обедомания 1.5.8 — состав комплексного обеда по категориям */
.plan-content{
  display:grid;
  gap:12px;
}
.plan-meal-group{
  padding:10px 0;
  border-top:1px solid rgba(38,78,59,.12);
}
.plan-meal-group:first-child{border-top:0}
.plan-meal-group>strong{
  display:block;
  margin-bottom:5px;
  color:var(--green);
  font-size:13px;
}
.plan-meal-group ul{
  display:grid;
  gap:4px;
  margin:0;
  padding:0;
  list-style:none;
}
.plan-meal-group li{
  position:relative;
  padding-left:15px;
  color:#4f5650;
  font-size:14px;
  line-height:1.4;
}
.plan-meal-group li::before{
  content:"";
  position:absolute;
  left:0;
  top:.65em;
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--accent);
}
.plan-note{
  margin-top:4px;
  color:var(--muted);
  font-size:13px;
}


/* Обедомания 1.6.0 — дневное меню целиком в корзину */
.daily-menu-bulk{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  margin:18px 0 24px;
  padding:20px 22px;
  border:1px solid rgba(38,78,59,.16);
  border-radius:18px;
  background:#eef2ee;
}
.daily-menu-bulk[hidden]{display:none}
.daily-menu-bulk-copy{
  display:grid;
  gap:5px;
  min-width:0;
}
.daily-menu-bulk-copy strong{
  color:var(--green);
  font-size:18px;
}
.daily-menu-bulk-copy span{
  max-width:720px;
  color:var(--muted);
  line-height:1.45;
}
.daily-menu-bulk-summary{
  display:flex;
  align-items:center;
  gap:14px;
  flex:0 0 auto;
}
.daily-menu-bulk-summary>span{
  min-width:110px;
  color:var(--text);
  font-size:14px;
  font-weight:800;
  text-align:right;
}
.daily-menu-bulk-status{
  flex-basis:100%;
  color:var(--muted);
  font-size:13px;
}
.daily-qty{
  display:grid;
  grid-template-columns:38px 58px 38px;
  align-items:center;
  overflow:hidden;
  border:1px solid #d8ddd9;
  border-radius:11px;
  background:#fff;
}
.daily-qty button{
  width:38px;
  height:42px;
  border:0;
  background:#f5f7f5;
  color:var(--green);
  font-size:22px;
  line-height:1;
  font-weight:800;
  cursor:pointer;
}
.daily-qty input{
  width:58px;
  height:42px;
  min-height:42px;
  padding:0 4px;
  border:0;
  border-left:1px solid #e2e6e2;
  border-right:1px solid #e2e6e2;
  border-radius:0;
  background:#fff;
  color:var(--text);
  text-align:center;
  font-size:16px;
  font-weight:800;
  appearance:textfield;
}
.daily-qty input::-webkit-outer-spin-button,
.daily-qty input::-webkit-inner-spin-button{
  margin:0;
  -webkit-appearance:none;
}
.daily-qty button:focus-visible,
.daily-qty input:focus-visible{
  position:relative;
  z-index:2;
  outline:2px solid var(--green);
  outline-offset:-2px;
}
@media(max-width:760px){
  .daily-menu-bulk{
    align-items:stretch;
    flex-direction:column;
    gap:14px;
    padding:18px;
  }
  .daily-menu-bulk-summary{
    align-items:stretch;
    flex-direction:column;
    gap:9px;
  }
  .daily-menu-bulk-summary>span{
    min-width:0;
    text-align:left;
  }
  .daily-menu-bulk-summary .btn{
    width:100%;
    min-height:50px;
  }
  .daily-menu-bulk-status{
    flex-basis:auto;
  }
}
@media(max-width:420px){
  .product-card .bulk-add{
    align-items:stretch;
    flex-direction:column;
  }
  .product-card .daily-qty{
    width:100%;
    grid-template-columns:44px minmax(58px,1fr) 44px;
  }
  .product-card .daily-qty button{
    width:44px;
  }
  .product-card .daily-qty input{
    width:100%;
  }
}


/* ==========================================================
   Обедомания 1.6.1 — правки по ТЗ
   ========================================================== */

/* Шапка: два телефона без служебной подписи */
.header-contact{
  display:grid;
  gap:3px;
  text-align:right;
  line-height:1.15;
}
.header-contact a{
  display:block;
  color:var(--text);
  font-size:13px;
  font-weight:850;
  white-space:nowrap;
  text-decoration:none;
}
.header-contact a:hover{color:var(--green)}
.mobile-phones{display:grid;gap:8px;margin-top:18px}
.mobile-phones .mobile-phone{
  margin:0;
  min-height:44px;
  display:flex;
  align-items:center;
  padding:9px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  color:var(--green);
  text-decoration:none;
}

/* Премиальное выпадающее меню */
.desktop-nav>ul{display:flex;gap:24px;align-items:center}
.desktop-nav li{position:relative}
.desktop-nav .menu-item-has-children>a{
  display:inline-flex;
  align-items:center;
  gap:7px;
}
.desktop-nav .menu-item-has-children>a::after{
  content:"";
  width:7px;
  height:7px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  opacity:.7;
  transition:transform .2s ease;
}
.desktop-nav .sub-menu{
  position:absolute;
  top:calc(100% + 16px);
  left:-18px;
  z-index:120;
  display:grid;
  gap:3px;
  width:max-content;
  min-width:240px;
  max-width:320px;
  padding:10px;
  border:1px solid rgba(38,78,59,.12);
  border-radius:18px;
  background:rgba(255,255,255,.98);
  box-shadow:0 22px 54px rgba(31,44,36,.15);
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  pointer-events:none;
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
}
.desktop-nav .sub-menu::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-18px;
  height:18px;
}
.desktop-nav .sub-menu a{
  display:block;
  padding:11px 13px;
  border-radius:11px;
  color:var(--text);
  font-size:13px;
  line-height:1.35;
  text-decoration:none;
}
.desktop-nav .sub-menu a:hover,
.desktop-nav .sub-menu a:focus-visible{
  background:#eef2ee;
  color:var(--green);
}
.desktop-nav .menu-item-has-children:hover>.sub-menu,
.desktop-nav .menu-item-has-children:focus-within>.sub-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}
.desktop-nav .menu-item-has-children:hover>a::after,
.desktop-nav .menu-item-has-children:focus-within>a::after{
  transform:rotate(225deg) translate(-1px,-1px);
}

/* Мобильное выпадающее меню */
.mobile-nav .menu-item-has-children{
  display:grid;
  grid-template-columns:minmax(0,1fr) 44px;
  align-items:center;
  column-gap:8px;
}
.mobile-nav .menu-item-has-children>a{min-width:0}
.mobile-nav .submenu-toggle{
  width:44px;
  height:44px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  color:var(--green);
  font-size:0;
  cursor:pointer;
}
.mobile-nav .submenu-toggle::before{
  content:"";
  display:block;
  width:9px;
  height:9px;
  margin:auto;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg) translate(-2px,-2px);
  transition:transform .2s ease;
}
.mobile-nav .menu-item-has-children.submenu-open>.submenu-toggle::before{
  transform:rotate(225deg) translate(-1px,-1px);
}
.mobile-nav .menu-item-has-children>.sub-menu{
  grid-column:1/-1;
  display:none;
  gap:5px;
  margin:7px 0 5px;
  padding:8px;
  border-radius:14px;
  background:#eef2ee;
}
.mobile-nav .menu-item-has-children.submenu-open>.sub-menu{display:grid}
.mobile-nav .sub-menu a{
  display:block;
  min-height:44px;
  padding:11px 12px;
  border-radius:10px;
  background:#fff;
  font-size:15px;
  line-height:1.35;
}

/* Условия бесплатной доставки в hero */
.hero-delivery-terms{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:20px;
}
.hero-delivery-terms>div{
  min-width:0;
  padding:13px 15px;
  border:1px solid rgba(38,78,59,.13);
  border-radius:14px;
  background:rgba(255,255,255,.72);
}
.hero-delivery-terms strong,
.hero-delivery-terms span{display:block}
.hero-delivery-terms strong{
  margin-bottom:4px;
  color:var(--green);
  font-size:13px;
}
.hero-delivery-terms span{
  color:var(--muted);
  font-size:12px;
  line-height:1.4;
}

/* Кнопки «В корзину»: читаемые, одинаковые, без сжатия текста */
.product-card .product-bottom{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  align-items:stretch;
}
.product-card .bulk-add{
  display:grid;
  grid-template-columns:minmax(86px,.85fr) minmax(112px,1fr);
  gap:8px;
  width:100%;
  align-items:stretch;
}
.product-card .bulk-add>label,
.product-card .bulk-add select{width:100%}
.product-card .add-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:112px;
  min-height:44px;
  height:44px;
  padding:0 16px;
  border-radius:12px;
  white-space:nowrap;
  line-height:1.1;
  font-size:13px;
  font-weight:850;
}
.product-card .daily-qty{
  width:100%;
  grid-template-columns:36px minmax(44px,1fr) 36px;
}
.product-card .daily-qty button{width:36px}
.product-card .daily-qty input{width:100%;min-width:0}

/* Админ: действия копирования меню */
.yf-copy-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}
.yf-copy-actions .description{
  flex-basis:100%;
  margin-top:0;
}

@media(max-width:1180px){
  .header-contact a{font-size:12px}
  .header-actions{gap:8px}
}
@media(max-width:760px){
  .hero-delivery-terms{grid-template-columns:1fr}
}
@media(max-width:480px){
  .product-card .bulk-add{grid-template-columns:1fr}
  .product-card .add-btn{width:100%}
}


/* Обедомания 1.6.2 — Завтраки / Обеды / Ужины */
.product-grid > .meal-section{
  grid-column:1/-1;
}
.meal-section{
  display:grid;
  gap:16px;
  min-width:0;
  margin-bottom:28px;
}
.meal-section:last-child{margin-bottom:0}
.meal-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding-bottom:10px;
  border-bottom:1px solid var(--line);
}
.meal-section-head span{
  color:var(--text);
  font-size:24px;
  font-weight:900;
  letter-spacing:-.02em;
}
.meal-section-head small{
  color:var(--muted);
  font-size:12px;
  font-weight:700;
}
.meal-section-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  min-width:0;
}
@media(max-width:1180px){
  .meal-section-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .meal-section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .meal-section{gap:12px;margin-bottom:24px}
  .meal-section-head span{font-size:21px}
  .meal-section-grid{grid-template-columns:1fr}
}


/* Обедомания 1.6.3 — формы B2B и правки по ТЗ */
.price-plans{
  padding-top:30px;
}
.price-plans .compact-price-head{
  margin-bottom:18px;
}
.price-plans .compact-price-head h2{
  margin-bottom:0;
}
.segment-calc{
  background:#E8EDE8;
}
.segment-calc .corporate-copy{
  position:sticky;
  top:120px;
}
.corp-form{
  min-width:0;
}
.corp-form .form-grid{
  align-items:start;
}
.corp-form input,
.corp-form select,
.corp-form textarea{
  max-width:100%;
  box-sizing:border-box;
}
.corp-form textarea{
  resize:vertical;
}
.corp-form .btn{
  min-height:48px;
}
@media(max-width:900px){
  .segment-calc .corporate-copy{
    position:static;
  }
  .corporate-grid{
    gap:30px;
  }
}
@media(max-width:620px){
  .corp-form{
    width:100%;
    padding:20px;
    border-radius:18px;
  }
  .corp-form .form-grid{
    grid-template-columns:minmax(0,1fr);
    gap:14px;
  }
  .corp-form .form-grid .span-2{
    grid-column:auto;
  }
  .corp-form input,
  .corp-form select,
  .corp-form textarea{
    width:100%;
    min-width:0;
  }
  .corp-form .btn{
    width:100%;
    justify-content:center;
  }
  .segment-calc{
    padding-top:48px;
    padding-bottom:48px;
  }
  .price-plans{
    padding-top:20px;
  }
}
@media(max-width:360px){
  .corp-form{
    padding:16px;
  }
}


/* Обедомания 1.6.4 — категории ежедневного меню на главной */
.home-menu-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 230px;
  gap:28px;
  align-items:start;
}
.home-menu-products{
  min-width:0;
}
.home-menu-categories{
  position:sticky;
  top:96px;
  display:grid;
  gap:4px;
  min-width:0;
  padding:18px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.home-menu-categories[hidden]{display:none}
.home-menu-categories-title{
  margin-bottom:8px;
  color:var(--green);
  font-size:12px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.home-menu-categories button{
  width:100%;
  min-height:42px;
  padding:9px 11px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--text);
  text-align:left;
  font:inherit;
  font-size:14px;
  line-height:1.3;
  cursor:pointer;
  overflow-wrap:anywhere;
  transition:background .18s ease,color .18s ease;
}
.home-menu-categories button:hover{
  background:#eef2ee;
}
.home-menu-categories button.active{
  background:var(--green);
  color:#fff;
  font-weight:800;
}
.home-menu-layout .product-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.home-menu-layout .meal-section-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
@media(max-width:1080px){
  .home-menu-layout{
    grid-template-columns:minmax(0,1fr) 200px;
    gap:22px;
  }
  .home-menu-layout .product-grid,
  .home-menu-layout .meal-section-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:900px){
  .home-menu-layout{
    grid-template-columns:1fr;
    gap:18px;
  }
  .home-menu-categories{
    position:static;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    padding:0 0 18px;
    border-top:0;
  }
  .home-menu-categories-title{
    grid-column:1/-1;
  }
  .home-menu-categories button{
    border:1px solid var(--line);
    background:#fff;
    text-align:center;
  }
}
@media(max-width:620px){
  .home-menu-categories{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .home-menu-layout .product-grid,
  .home-menu-layout .meal-section-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:360px){
  .home-menu-categories{
    grid-template-columns:1fr;
  }
}


/* Обедомания 1.6.5 — типы питания на главной и CTA комплексов */
.home-menu-diets .home-menu-categories-title{
  color:var(--green);
}
.home-menu-diets button.active{
  background:var(--green);
  color:#fff;
  font-weight:800;
}
.complex-empty-state{
  grid-column:1/-1;
  max-width:none;
  min-height:150px;
  padding:34px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  text-align:left;
}
.complex-empty-state>div{
  max-width:650px;
  color:var(--text);
  font-size:15px;
  line-height:1.55;
}
.complex-empty-state .btn{
  flex:0 0 auto;
  min-width:190px;
  justify-content:center;
}
@media(max-width:700px){
  .complex-empty-state{
    min-height:0;
    padding:24px 0;
    align-items:stretch;
    flex-direction:column;
    gap:16px;
  }
  .complex-empty-state .btn{
    width:100%;
    min-width:0;
  }
}


/* ==========================================================
   Обедомания 1.7.1 — финальная адаптивная полировка
   ========================================================== */

/* Общая защита от переполнения */
html,body{max-width:100%;overflow-x:hidden}
img,svg,video{max-width:100%;height:auto}
.container{width:min(100% - 32px,var(--container));margin-inline:auto}
main{min-width:0}
.product-card,
.price-plan-card,
.aud-card,
.corp-form,
.home-menu-layout,
.menu-main-column,
.menu-with-sidebar{min-width:0}

/* Desktop */
@media(min-width:1181px){
  .desktop-nav{min-width:0}
  .desktop-nav>ul{flex-wrap:nowrap}
  .header-inner{gap:18px}
  .header-actions{flex:0 0 auto}
  .home-menu-layout .meal-section-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* Laptop / tablet landscape */
@media(max-width:1180px){
  .site-header .container{width:min(100% - 24px,var(--container))}
  .header-inner{gap:12px}
  .desktop-nav>ul{gap:16px}
  .header-contact a{font-size:12px}
  .cart-link-label{display:none}
  .menu-with-sidebar{grid-template-columns:190px minmax(0,1fr)}
  .menu-category-sidebar{min-width:0}
}

/* Tablet */
@media(max-width:900px){
  .desktop-nav{display:none}
  .menu-toggle{display:inline-flex}
  .header-contact{display:none}
  .header-actions .cart-link{min-width:44px}
  .header-actions .btn-small{display:none}

  .menu-with-sidebar,
  .home-menu-layout,
  .corporate-grid,
  .proposal-grid,
  .legal-grid,
  .faq-grid{grid-template-columns:1fr}

  .menu-category-sidebar,
  .home-menu-categories{
    position:static;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    padding:0 0 18px;
    border-top:0;
  }
  .menu-category-sidebar-title,
  .home-menu-categories-title{grid-column:1/-1}
  .menu-category-sidebar button,
  .home-menu-categories button{
    min-height:44px;
    border:1px solid var(--line);
    background:#fff;
    text-align:center;
  }

  .date-strip,
  .date-strip.large{
    display:flex;
    gap:8px;
    overflow-x:auto;
    padding-bottom:4px;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
  }
  .date-pill{
    flex:0 0 92px;
    scroll-snap-align:start;
  }

  .daily-menu-bulk{
    align-items:stretch;
    flex-direction:column;
  }
  .daily-menu-bulk-summary{
    justify-content:space-between;
  }

  .product-grid,
  .catalog-food-grid,
  .meal-section-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* Mobile */
@media(max-width:620px){
  .container{width:min(100% - 20px,var(--container))}
  .section{padding-top:46px;padding-bottom:46px}
  .page-hero{padding-top:34px;padding-bottom:34px}
  .page-hero h1,
  .hero h1{font-size:clamp(32px,10vw,46px)}
  .section-head h2,
  .meal-section-head span{font-size:clamp(22px,7vw,30px)}

  .menu-category-sidebar,
  .home-menu-categories{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .filters{grid-template-columns:1fr}
  .view-switch{width:100%}
  .view-switch button{flex:1}

  .product-grid,
  .catalog-food-grid,
  .meal-section-grid,
  .audience-grid,
  .price-plan-grid,
  .diet-grid{grid-template-columns:1fr}

  .product-card .product-bottom{gap:10px}
  .product-card .bulk-add{grid-template-columns:1fr}
  .product-card .add-btn{width:100%}
  .daily-qty{grid-template-columns:44px minmax(58px,1fr) 44px}
  .daily-qty button{width:44px}

  .daily-menu-bulk{
    padding:16px;
    border-radius:16px;
  }
  .daily-menu-bulk-summary{
    flex-direction:column;
    align-items:stretch;
  }
  .daily-menu-bulk-summary>span{text-align:left}
  .daily-menu-bulk-summary .btn{width:100%;min-height:48px}

  .corp-form{padding:18px}
  .corp-form .form-grid{grid-template-columns:1fr}
  .corp-form .span-2{grid-column:auto}

  .mobile-nav-panel{
    width:min(92vw,380px);
    max-width:100%;
  }

  .site-footer .footer-grid{grid-template-columns:1fr}
}

/* Very small screens */
@media(max-width:380px){
  .menu-category-sidebar,
  .home-menu-categories{grid-template-columns:1fr}
  .date-pill{flex-basis:86px}
  .cart-link-sep{display:none}
  .header-actions{gap:6px}
  .corp-form{padding:15px}
}


/* ==========================================================
   Обедомания 1.7.2 — исправление отступов и контейнера
   ========================================================== */

/* Исправляем контейнер: в 1.7.1 использовалась несуществующая CSS-переменная,
   из-за чего часть секций теряла нормальные боковые отступы. */
.container{
  width:min(var(--max), calc(100% - 44px));
  margin-left:auto;
  margin-right:auto;
}

/* Более аккуратные интервалы между hero и следующим блоком */
.hero{
  padding-top:56px;
  padding-bottom:42px;
}
.b2b-hero{
  padding-top:56px;
  padding-bottom:42px;
}
.page-hero{
  padding-top:56px;
  padding-bottom:28px;
}
.hero + .section,
.b2b-hero + .section,
.page-hero + .section{
  padding-top:48px;
}

/* Небольшая полировка внутренних отступов карточек */
.product-card{
  padding-bottom:18px;
}
.product-card .product-body{
  padding-left:20px;
  padding-right:20px;
  padding-bottom:0;
}
.product-bottom{
  padding-left:20px;
  padding-right:20px;
}
.bulk-add{
  gap:10px;
}
.daily-qty{
  min-width:0;
}

/* Laptop / tablet landscape */
@media(max-width:1180px){
  .container{
    width:min(var(--max), calc(100% - 32px));
  }
  .site-header .container{
    width:min(var(--max), calc(100% - 32px));
  }
  .hero,
  .b2b-hero{
    padding-top:48px;
    padding-bottom:36px;
  }
  .page-hero{
    padding-top:48px;
    padding-bottom:24px;
  }
  .hero + .section,
  .b2b-hero + .section,
  .page-hero + .section{
    padding-top:40px;
  }
}

/* Tablet */
@media(max-width:900px){
  .container{
    width:min(var(--max), calc(100% - 28px));
  }
  .hero,
  .b2b-hero{
    padding-top:36px;
    padding-bottom:28px;
  }
  .page-hero{
    padding-top:36px;
    padding-bottom:18px;
  }
  .hero + .section,
  .b2b-hero + .section,
  .page-hero + .section{
    padding-top:30px;
  }
}

/* Mobile */
@media(max-width:620px){
  .container{
    width:calc(100% - 24px);
  }
  .hero,
  .b2b-hero{
    padding-top:24px;
    padding-bottom:20px;
  }
  .page-hero{
    padding-top:24px;
    padding-bottom:14px;
  }
  .hero + .section,
  .b2b-hero + .section,
  .page-hero + .section{
    padding-top:22px;
  }
  .section-head{
    margin-bottom:28px;
  }
  .product-card .product-body,
  .product-bottom{
    padding-left:16px;
    padding-right:16px;
  }
}

/* Very small screens */
@media(max-width:360px){
  .container{
    width:calc(100% - 20px);
  }
  .hero,
  .b2b-hero{
    padding-top:20px;
    padding-bottom:18px;
  }
  .hero + .section,
  .b2b-hero + .section,
  .page-hero + .section{
    padding-top:18px;
  }
}


/* ==========================================================
   Обедомания 1.7.3 — исправление всех форм, особенно mobile
   ========================================================== */

/* Все формы: защита от сжатия и выезда текста */
.corp-form,
.form-grid,
.form-grid label,
.form-grid .span-2,
.form-status,
.consent,
.consent span{
  min-width:0;
}

.corp-form{
  width:100%;
  max-width:100%;
  overflow:hidden;
}

.form-grid{
  align-items:start;
}

.form-grid label{
  align-content:start;
}

.form-grid input,
.form-grid select,
.form-grid textarea{
  width:100%;
  max-width:100%;
}

.corp-form textarea{
  min-height:140px;
  resize:vertical;
}

.consent{
  display:grid;
  grid-template-columns:20px minmax(0,1fr);
  align-items:start;
  column-gap:10px;
  row-gap:0;
}

.consent input{
  margin:3px 0 0;
  justify-self:start;
}

.consent span{
  display:block;
  width:100%;
  line-height:1.5;
  color:var(--muted);
  overflow-wrap:break-word;
  word-break:normal;
  hyphens:none;
}

.form-status{
  overflow-wrap:anywhere;
}

.corp-form .btn{
  min-height:48px;
}

/* Десктоп и ноутбук */
@media(min-width:901px){
  .corporate-grid{
    grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);
    gap:48px;
    align-items:start;
  }
  .corporate-copy{
    position:sticky;
    top:120px;
  }
  .corp-form{
    padding:28px;
  }
}

/* Планшет и мобильные */
@media(max-width:900px){
  .corporate-grid,
  .proposal-grid,
  .contact-grid,
  .service-info-grid,
  .info-grid{
    grid-template-columns:1fr !important;
    gap:20px;
  }

  .corporate-copy{
    position:static !important;
    top:auto !important;
  }

  .corp-form{
    padding:20px;
  }

  .form-grid{
    grid-template-columns:1fr !important;
    gap:14px;
  }

  .form-grid .span-2{
    grid-column:auto;
  }

  .consent{
    grid-template-columns:20px minmax(0,1fr);
    margin:16px 0;
  }
}

/* Телефоны */
@media(max-width:620px){
  .contact-delivery-section{
    padding-top:22px;
  }

  .contact-form-section{
    padding-top:36px;
  }

  .corp-form{
    padding:18px;
    border-radius:18px;
  }

  .form-grid label{
    gap:6px;
    font-size:12px;
  }

  .form-grid input,
  .form-grid select,
  .form-grid textarea{
    padding:12px 13px;
    min-height:46px;
    font-size:16px; /* защита от zoom в iOS/Android */
  }

  .corp-form textarea{
    min-height:132px;
  }

  .consent{
    grid-template-columns:18px minmax(0,1fr);
    column-gap:10px;
  }

  .consent span{
    font-size:12px;
    line-height:1.45;
    overflow-wrap:break-word;
    word-break:normal;
  }

  .corp-form .btn{
    width:100%;
    justify-content:center;
  }
}

/* Очень узкие экраны */
@media(max-width:360px){
  .corp-form{
    padding:16px;
  }

  .consent{
    grid-template-columns:16px minmax(0,1fr);
    column-gap:8px;
  }

  .consent span{
    font-size:11px;
    line-height:1.4;
  }
}

/* ============================================================
   Правки по ТЗ (обедомания) — v1.7.4
   ============================================================ */

/* п.1 — Бургер-иконка: при display:inline-flex (≤900px) три полоски
   раскладывались в строку и схлопывались в почти невидимую линию.
   Ставим их в столбик = нормальный гамбургер. display не трогаем,
   чтобы на десктопе кнопка осталась скрытой. */
.site-header .menu-toggle{flex-direction:column;align-items:center;justify-content:center}
.site-header .menu-toggle span{flex:0 0 auto;width:24px;height:2px;margin:3px 0;background:var(--text)}

/* п.1 — почта в бургер-меню (тот же «пилюльный» стиль, что и телефоны) */
.mobile-phones .mobile-email{word-break:break-all}

/* п.4 — крупнее шрифты в подвале (клиент: «всё очень мелкое») */
.footer-brand{font-size:23px}
.footer-grid h3{font-size:15px}
.footer-grid p{font-size:16px;line-height:1.55}
.footer-grid a{font-size:16px}
.footer-requisites{font-size:13px}
.footer-bottom{font-size:13px}

/* п.3 — фото в карточках «Специальное питание».
   Фото сверху, текст сгруппирован снизу и плотнее (по просьбе клиента). */
.diet-grid a{padding:0;overflow:hidden;display:flex;flex-direction:column;min-height:0}
.diet-grid a .diet-photo{width:100%;height:212px;object-fit:cover;display:block;border-bottom:1px solid var(--line)}
.diet-grid a .diet-num{padding:16px 20px 0;font-size:11px;font-weight:900;color:var(--accent);letter-spacing:.08em}
.diet-grid a h3{margin:4px 0 0;padding:0 20px;font-size:18px;line-height:1.25}
.diet-grid a p{margin:6px 0 0;padding:0 20px 20px;color:var(--muted);font-size:14px;line-height:1.5}
.diet-grid a:hover .diet-photo{filter:brightness(1.03)}
@media(max-width:600px){.diet-grid a .diet-photo{height:180px}}

/* ==================== п.5 — форматы питания + квиз-калькулятор ==================== */
/* Сетка форматов питания (аналог photo__container у конкурента): фото + затемнение + название */
.yff-list{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.yff-item{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:1/1;border:8px solid #fff;box-shadow:0 10px 30px rgba(24,57,43,.10)}
.yff-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.yff-item:hover .yff-img{transform:scale(1.06)}
.yff-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,57,43,0) 35%,rgba(24,57,43,.82) 100%)}
.yff-name{position:absolute;left:0;right:0;bottom:0;margin:0;padding:18px 20px;color:#fff;font-size:19px;line-height:1.25;font-weight:700;z-index:1}
@media(max-width:900px){.yff-list{grid-template-columns:repeat(2,1fr);gap:14px}.yff-name{font-size:17px;padding:14px 16px}}
@media(max-width:560px){.yff-list{grid-template-columns:1fr}}

/* Квиз-калькулятор (аналог quiz__container: «иконки и квадратики» с выбором) */
.yfq{background:var(--green);color:#fff}
.yfq .section-head h2{color:#fff}
.yfq .eyebrow{color:#fff;opacity:.85}
.yfq-sub{margin:0 0 26px;color:rgba(255,255,255,.85);font-size:17px;max-width:640px}
.yfq-form{background:var(--card);color:var(--text);border-radius:20px;padding:30px}
.yfq-progress{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.yfq-step-text{margin:0;font-size:14px;font-weight:700;color:var(--green);white-space:nowrap}
.yfq-bar{flex:1;height:8px;border-radius:999px;background:var(--line);overflow:hidden}
.yfq-bar-fill{height:100%;width:20%;background:var(--accent);border-radius:999px;transition:width .35s ease}
.yfq-slide[hidden]{display:none}
.yfq-name-q{margin:0 0 4px;font-size:22px;line-height:1.25}
.yfq-hint{margin:0 0 18px;color:var(--muted);font-size:14px}
.yfq-answers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.yfq-answer{position:relative;cursor:pointer;display:block}
.yfq-answer input{position:absolute;opacity:0;pointer-events:none}
.yfq-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;height:100%;min-height:118px;padding:18px 12px;border:2px solid var(--line);border-radius:14px;background:#fff;transition:border-color .15s,background .15s}
.yfq-answers--plain .yfq-card{min-height:62px;flex-direction:row;justify-content:center;font-weight:600}
.yfq-answer:hover .yfq-card{border-color:var(--accent)}
.yfq-answer.is-checked .yfq-card{border-color:var(--accent);background:rgba(217,107,59,.08)}
.yfq-answer.is-checked .yfq-card::after{content:"✓";position:absolute;top:8px;right:11px;color:var(--accent);font-weight:900}
.yfq-ico{font-size:30px;line-height:1}
.yfq-txt{font-size:14px;line-height:1.3;color:var(--text)}
.yfq-fields{display:grid;gap:16px;max-width:460px}
.yfq-fields label{display:block;font-size:14px;font-weight:600;color:var(--text)}
.yfq-fields input{width:100%;margin-top:6px;padding:13px 15px;border:2px solid var(--line);border-radius:12px;font-size:16px;font-family:inherit;background:#fff;color:var(--text)}
.yfq-fields input:focus{outline:none;border-color:var(--accent)}
.yfq-consent{display:flex;gap:10px;align-items:flex-start;margin-top:18px;font-size:13px;color:var(--muted)}
.yfq-consent input{margin-top:3px;flex:0 0 auto}
.yfq-consent a{color:var(--accent)}
.yfq-nav{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}
.yfq-nav .btn[hidden]{display:none}
.yfq-status{margin:14px 0 0;font-size:14px;min-height:18px;color:var(--muted)}
.yfq-status.is-error{color:#c0392b}
.yfq-thanks{text-align:center;padding:24px 0}
.yfq-thanks-ico{font-size:56px;line-height:1}
.yfq-thanks h3{margin:12px 0 6px;font-size:24px}
.yfq-thanks p{margin:0;color:var(--muted);font-size:16px}
@media(max-width:720px){.yfq-answers{grid-template-columns:repeat(2,1fr)}.yfq-form{padding:22px}}
@media(max-width:460px){.yfq-answers--plain{grid-template-columns:1fr}}
