@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:400;src:url(/lab-e1aad64acc/assets/jost-cyrillic-400-normal-bVZEi0jL.woff2) format("woff2"),url(/lab-e1aad64acc/assets/jost-cyrillic-400-normal-Dk3McGkH.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:400;src:url(/lab-e1aad64acc/assets/jost-latin-ext-400-normal-CpdMQIMr.woff2) format("woff2"),url(/lab-e1aad64acc/assets/jost-latin-ext-400-normal-Dsyb2mtt.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:400;src:url(/lab-e1aad64acc/assets/jost-latin-400-normal-q-RKOgPK.woff2) format("woff2"),url(/lab-e1aad64acc/assets/jost-latin-400-normal-C7S-3Ky6.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:500;src:url(/lab-e1aad64acc/assets/jost-cyrillic-500-normal-DtB2bvF0.woff2) format("woff2"),url(/lab-e1aad64acc/assets/jost-cyrillic-500-normal-DlHwnXyv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:500;src:url(/lab-e1aad64acc/assets/jost-latin-ext-500-normal-BkvHgcKf.woff2) format("woff2"),url(/lab-e1aad64acc/assets/jost-latin-ext-500-normal-Cpxiadwk.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:500;src:url(/lab-e1aad64acc/assets/jost-latin-500-normal-41lBe9I9.woff2) format("woff2"),url(/lab-e1aad64acc/assets/jost-latin-500-normal-B-AtzreL.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:600;src:url(/lab-e1aad64acc/assets/jost-cyrillic-600-normal-BEDXyecp.woff2) format("woff2"),url(/lab-e1aad64acc/assets/jost-cyrillic-600-normal-D0Fzn8un.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:600;src:url(/lab-e1aad64acc/assets/jost-latin-ext-600-normal-D8I9kjga.woff2) format("woff2"),url(/lab-e1aad64acc/assets/jost-latin-ext-600-normal-Pm6OqGZB.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:600;src:url(/lab-e1aad64acc/assets/jost-latin-600-normal-C497H-z9.woff2) format("woff2"),url(/lab-e1aad64acc/assets/jost-latin-600-normal-Bv_M0d15.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:700;src:url(/lab-e1aad64acc/assets/jost-cyrillic-700-normal-_ob5o-r5.woff2) format("woff2"),url(/lab-e1aad64acc/assets/jost-cyrillic-700-normal-BHDNzvjF.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:700;src:url(/lab-e1aad64acc/assets/jost-latin-ext-700-normal-AnR_ULdm.woff2) format("woff2"),url(/lab-e1aad64acc/assets/jost-latin-ext-700-normal-DTcCupJy.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:700;src:url(/lab-e1aad64acc/assets/jost-latin-700-normal-u2Hrqd6k.woff2) format("woff2"),url(/lab-e1aad64acc/assets/jost-latin-700-normal-k-iBXzmq.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Podkova;font-style:normal;font-display:swap;font-weight:600;src:url(/lab-e1aad64acc/assets/podkova-cyrillic-ext-600-normal-DqC83_U0.woff2) format("woff2"),url(/lab-e1aad64acc/assets/podkova-cyrillic-ext-600-normal-Cj797WcK.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Podkova;font-style:normal;font-display:swap;font-weight:600;src:url(/lab-e1aad64acc/assets/podkova-cyrillic-600-normal-BdfiDzP7.woff2) format("woff2"),url(/lab-e1aad64acc/assets/podkova-cyrillic-600-normal-B9R_dRps.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Podkova;font-style:normal;font-display:swap;font-weight:600;src:url(/lab-e1aad64acc/assets/podkova-vietnamese-600-normal-D7opnXO1.woff2) format("woff2"),url(/lab-e1aad64acc/assets/podkova-vietnamese-600-normal-DbfOpBWy.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Podkova;font-style:normal;font-display:swap;font-weight:600;src:url(/lab-e1aad64acc/assets/podkova-latin-ext-600-normal-DBciF2g0.woff2) format("woff2"),url(/lab-e1aad64acc/assets/podkova-latin-ext-600-normal-BAayp4sm.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Podkova;font-style:normal;font-display:swap;font-weight:600;src:url(/lab-e1aad64acc/assets/podkova-latin-600-normal-B9bmqKzn.woff2) format("woff2"),url(/lab-e1aad64acc/assets/podkova-latin-600-normal-BR1UT28K.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Podkova;font-style:normal;font-display:swap;font-weight:700;src:url(/lab-e1aad64acc/assets/podkova-cyrillic-ext-700-normal-DEioAm-e.woff2) format("woff2"),url(/lab-e1aad64acc/assets/podkova-cyrillic-ext-700-normal-CP6c3zjL.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Podkova;font-style:normal;font-display:swap;font-weight:700;src:url(/lab-e1aad64acc/assets/podkova-cyrillic-700-normal-CZCTYK42.woff2) format("woff2"),url(/lab-e1aad64acc/assets/podkova-cyrillic-700-normal-D_4vMKwE.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Podkova;font-style:normal;font-display:swap;font-weight:700;src:url(/lab-e1aad64acc/assets/podkova-vietnamese-700-normal-EyltXpQb.woff2) format("woff2"),url(/lab-e1aad64acc/assets/podkova-vietnamese-700-normal-BHoj4gcv.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Podkova;font-style:normal;font-display:swap;font-weight:700;src:url(/lab-e1aad64acc/assets/podkova-latin-ext-700-normal-Bpz53OWz.woff2) format("woff2"),url(/lab-e1aad64acc/assets/podkova-latin-ext-700-normal-BCD8bVNG.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Podkova;font-style:normal;font-display:swap;font-weight:700;src:url(/lab-e1aad64acc/assets/podkova-latin-700-normal-BHGNBpV7.woff2) format("woff2"),url(/lab-e1aad64acc/assets/podkova-latin-700-normal-pG9Ys4Z0.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Josefin Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/lab-e1aad64acc/assets/josefin-sans-vietnamese-600-normal-B3-kA7Zo.woff2) format("woff2"),url(/lab-e1aad64acc/assets/josefin-sans-vietnamese-600-normal-CD4q0dTQ.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Josefin Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/lab-e1aad64acc/assets/josefin-sans-latin-ext-600-normal-BBwcr3jX.woff2) format("woff2"),url(/lab-e1aad64acc/assets/josefin-sans-latin-ext-600-normal-UIETFcKM.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Josefin Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/lab-e1aad64acc/assets/josefin-sans-latin-600-normal-DXjG1Gv0.woff2) format("woff2"),url(/lab-e1aad64acc/assets/josefin-sans-latin-600-normal-CcMFZ0n5.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brown-950:#2e0f07;--brown-900:#3d170c;--brown-800:#5a2716;--orange:#ff7a00;--orange-dark:#e96800;--cream:#fff7f0;--linen:#f9eee6;--peach:#f5d7c4;--ink:#3b1a10;--muted:#70584f;--line:rgba(74,34,20,.14);--shell:min(1232px, calc(100vw - 48px) );font-family:Jost,Arial,sans-serif;color:var(--ink);background:#fff;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px;scrollbar-gutter:stable;overflow-x:clip}body{margin:0;min-width:320px;background:#fff;color:var(--ink);overflow-x:clip}body.menu-open,body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit}img{display:block;max-width:100%}::selection{background:#ffb35f;color:#2d0e06}.site-canvas{width:min(100%,1440px);margin-inline:auto;background:#fff;overflow-x:clip;box-shadow:0 0 0 1px #3a180c09}.shell{width:var(--shell);margin-inline:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.025em}p{line-height:1.48}.section-dark{background:var(--brown-900);color:#fff}[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .72s cubic-bezier(.2,.72,.2,1),transform .72s cubic-bezier(.2,.72,.2,1)}[data-reveal][data-revealed],[data-reveal].is-visible{opacity:1;transform:none}.site-header{height:70px;background:#fff;position:sticky;top:0;z-index:70;border-bottom:1px solid rgba(64,28,16,.035);transition:background .3s ease,box-shadow .3s ease,backdrop-filter .3s ease}.site-header.is-scrolled{background:#fff9;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);box-shadow:0 6px 24px #3a180c12}.site-header__inner{height:100%;display:flex;align-items:center;gap:40px}.brand{display:inline-flex;align-items:center;gap:12px;flex:0 0 auto}.brand img{width:52px;height:54px;object-fit:contain}.brand>span{display:flex;flex-direction:column;line-height:1}.brand b{font-size:29px;font-weight:700;color:#f39200;text-transform:uppercase;letter-spacing:-.055em}.brand small{font-size:13px;font-weight:600;margin-top:4px;color:#5a2917;letter-spacing:-.02em}.brand--light b{color:#ffffff85}.brand--light small{color:#fff}.desktop-nav{display:flex;align-items:center;gap:22px;margin-left:auto}.desktop-nav a{font-size:17px;line-height:1;position:relative;white-space:nowrap}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:2px;background:var(--orange);transition:right .28s ease}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{right:0}.header-actions{display:flex;align-items:center;gap:12px;margin-left:4px}.header-icon,.profile-placeholder{width:32px;height:32px;border:0;background:transparent;display:grid;place-items:center;padding:0;position:relative}.header-icon{cursor:pointer}.header-icon:after{content:"";position:absolute;inset:-6px;border-radius:12px;background:#ff7a0014;opacity:0;transform:scale(.8);transition:.25s}.header-icon:hover:after{opacity:1;transform:scale(1)}.header-icon svg,.profile-placeholder svg{position:relative;z-index:1}.basket-button span{position:absolute;z-index:2;top:-4px;right:-5px;background:var(--orange);color:#fff;width:18px;height:18px;border-radius:50%;font-size:10px;font-weight:700;display:grid;place-items:center;border:2px solid white}.menu-button{display:none}.hero{height:auto;aspect-ratio:1440/860;position:relative;overflow:hidden;color:#fff;background:#b98564}.hero__media{position:absolute;inset:0;background:url(/assets/hero.webp?v=3) center center/cover no-repeat;animation:heroMedia 1.15s cubic-bezier(.2,.7,.2,1) both;will-change:opacity,transform}.hero__veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(57,21,8,.16) 0%,rgba(57,21,8,.035) 38%,transparent 62%),linear-gradient(0deg,rgba(45,13,5,.16) 0%,transparent 34%)}.hero__inner{height:100%;position:relative}.hero__copy{position:absolute;left:0;top:532px;width:724px;animation:heroCopy .85s .15s cubic-bezier(.2,.75,.2,1) both}.hero__copy>p{font-size:32px;line-height:40px;font-weight:600;margin:0 0 12px;color:#fff}.hero h1{font-size:128px;line-height:.68;font-weight:700;letter-spacing:-.055em;margin:0 0 31px;color:#fff}.hero h1 span{display:block}.hero__copy>a{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:16px;font-weight:500;position:relative}.hero__copy>a:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:#ffffffa6;transform-origin:left;transform:scaleX(.45);transition:.3s}.hero__copy>a:hover:after{transform:scaleX(1)}.hero__copy>a svg{opacity:0;transform:translate(-4px);transition:.25s}.hero__copy>a:hover svg{opacity:1;transform:none}@keyframes heroMedia{0%{opacity:.72;transform:scale(1.012)}to{opacity:1;transform:scale(1)}}@keyframes heroCopy{0%{opacity:0;transform:translateY(24px);clip-path:inset(0 0 25% 0)}to{opacity:1;transform:none;clip-path:inset(0)}}.button{min-height:48px;padding:0 24px;border:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:600;cursor:pointer;position:relative;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}.button--orange{background:var(--orange);color:#fff;box-shadow:0 8px 24px #ff7a002e}.button--orange:before{content:"";position:absolute;inset:-70% auto -70% -35%;width:32%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);transform:skew(-20deg);transition:transform .7s ease}.button--orange:hover{background:#ff8612;transform:translateY(-2px);box-shadow:0 13px 30px #ff7a0040}.button--orange:hover:before{transform:translate(500%) skew(-20deg)}.button--wide{width:100%}.button:disabled{opacity:.6;cursor:wait}.product-intro{height:560px;position:relative;overflow:visible;z-index:4}.product-intro__inner{height:100%;display:grid;grid-template-columns:698px 1fr;position:relative}.product-intro__copy{padding-top:50px;max-width:698px}.product-intro__copy h2{font-size:36px;line-height:1.22;font-weight:500;width:678px;margin:0 0 38px;color:#fff}.product-intro__story{display:grid;grid-template-columns:200px 1fr;gap:36px;align-items:center;width:650px}.video-thumb{width:200px;height:150px;border-radius:18px;overflow:hidden;position:relative}.video-thumb img{width:100%;height:100%;object-fit:cover}.video-thumb:after{content:"";position:absolute;inset:0;background:#230a0429}.video-thumb button{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;border:0;background:#fff;color:var(--brown-900);display:grid;place-items:center;cursor:pointer;transition:.25s}.video-thumb button:hover{transform:translate(-50%,-50%) scale(1.06)}.product-intro__story p,.product-intro__story strong{font-size:20px;line-height:1.55}.product-intro__story p{margin:0 0 12px;color:#fff}.product-intro__story strong{font-weight:600;display:block}.product-intro__visual{position:relative;height:100%;min-width:0}.product-pack--hero{position:absolute;width:360px;height:auto;left:0;top:-84px;z-index:3;filter:drop-shadow(0 18px 22px rgba(23,6,1,.28));animation:packEnter .95s .28s cubic-bezier(.18,.72,.2,1) both}.calorie-sticker{position:absolute;z-index:5;left:262px;top:15px;width:320px;height:124px;background:#ffa000;color:#2e170a;border-radius:26px 18px 28px 22px;transform:rotate(-7deg);display:flex;flex-direction:column;justify-content:center;padding:14px 27px;font-family:Podkova,serif;box-shadow:0 11px 24px #22080129;clip-path:polygon(3% 8%,96% 0,100% 91%,8% 100%,0 31%)}.calorie-sticker b{font-size:52px;line-height:.82;white-space:nowrap}.calorie-sticker span{font-size:30px;line-height:1;margin-top:8px;font-weight:700;white-space:nowrap}.product-intro__packwrap{display:contents}.product-intro__buy{position:absolute;left:auto;right:0;top:330px;min-width:150px}.product-intro__visual>small{position:absolute;left:auto;right:0;top:390px;font-size:12px;color:#ffffff8c}@keyframes packEnter{0%{opacity:0;transform:translateY(28px) rotate(1.5deg)}to{opacity:1;transform:none}}.features{height:704px;background:#fff7f1}.features__inner{height:100%;padding-top:114px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:84px;width:1040px;margin:0 auto}.feature-grid article{min-width:0}.feature-icon{height:88px;display:flex;align-items:flex-end;color:var(--ink);margin-bottom:24px}.feature-icon svg{stroke-width:1.3}.feature-icon--zero{font-size:50px;line-height:.95;font-weight:500;letter-spacing:-.05em}.feature-grid h3{font-size:24px;line-height:1;margin:0 0 32px;font-weight:600;min-height:48px}.feature-grid p{font-size:20px;line-height:1.58;margin:0}.features__statement{text-align:center;font-size:32px;line-height:1.25;font-weight:600;margin:72px 0 0}.footer__buy{display:flex;flex-direction:column;align-items:flex-end;gap:9px}.footer__buy small{font-size:12px;color:#ffffff73}.calc .shell{max-width:1232px}.calc-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:44px;align-items:start}.calc-card{background:#fff7f1;border-radius:16px;padding:40px 44px}.calc-card h2{font-size:28px;margin:0 0 22px;font-weight:600}.calc-card__lead{font-size:16px;line-height:1.5;color:var(--muted);margin:0 0 22px}.calc-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;margin-bottom:26px}.calc-fields label{font-size:14px;font-weight:600;display:block}.calc-fields input,.calc-fields select{width:100%;border:1px solid var(--line);border-radius:8px;padding:12px 14px;margin-top:6px;background:#fff;outline:none;appearance:none}.calc-fields select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23a2653f' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.calc-fields input:focus,.calc-fields select:focus{border-color:var(--orange);box-shadow:0 0 0 3px #ff7a0017}.calc-fields__wide{grid-column:1/-1}.calc-sex span{font-size:14px;font-weight:600;display:block}.calc-sex>div{display:flex;gap:8px;margin-top:6px}.calc-sex button{flex:1;border:1px solid var(--line);background:#fff;border-radius:8px;padding:12px 8px;cursor:pointer;font-size:15px;transition:.15s}.calc-sex button.is-active{border-color:var(--orange);background:var(--orange);color:#fff;font-weight:600}.calc-result{margin-top:28px;display:grid;gap:14px}.calc-result article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 22px}.calc-result small{display:block;font-size:14px;color:var(--muted);margin-bottom:4px}.calc-result b{font-size:30px;font-weight:700}.calc-result article span{display:block;font-size:15px;margin-top:4px;color:var(--orange);font-weight:600}.calc-note{font-size:15px;line-height:1.45;margin:0;color:var(--muted)}.calc-note--warn{color:#c2371f}.calc-error{margin-top:22px;font-size:15px;color:#c2371f}.calc-footnote{display:block;margin-top:34px;font-size:13px;color:var(--muted)}.calc-cta{padding:86px 0}.calc-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:60px}.calc-cta h2{font-size:36px;margin:0 0 16px}.calc-cta p{font-size:19px;line-height:1.5;margin:0;color:#ffffffd1;max-width:640px}.calc-cta .button{flex:0 0 auto}@media(max-width:900px){.calc-grid{grid-template-columns:1fr;gap:28px}.calc-card{padding:28px 20px}.calc-fields{grid-template-columns:1fr 1fr}.calc-fields__wide{grid-column:1/-1}.calc-cta__inner{flex-direction:column;align-items:flex-start}.calc-cta h2{font-size:28px}}.docs{background:#fff;padding:80px 0}.docs__contacts-link{color:var(--orange);font-weight:600}.docs__caption{font-size:16px;color:var(--muted)}.docs__lead{font-size:19px;line-height:1.5;color:var(--muted);max-width:720px;margin:20px 0 44px}.docs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.doc-card{display:flex;flex-direction:column;background:#fff7f1;border:1px solid rgba(74,34,20,.07);border-radius:16px;padding:20px 20px 24px;color:inherit;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease}.doc-card:hover{transform:translateY(-6px);box-shadow:0 22px 44px #4018081f}.doc-card__thumb{position:relative;border-radius:10px;overflow:hidden;background:#fff;border:1px solid rgba(74,34,20,.08);height:250px;display:block}.doc-card__thumb img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;transition:transform .5s ease}.doc-card:hover .doc-card__thumb img{transform:scale(1.04)}.doc-card__thumb em{position:absolute;right:10px;top:10px;background:var(--orange);color:#fff;font-style:normal;font-size:12px;font-weight:700;padding:4px 9px;border-radius:6px}.doc-card strong{font-size:19px;margin:18px 0 7px;font-weight:600}.doc-card small{font-size:13.5px;line-height:1.45;color:var(--muted)}.doc-card__open{display:inline-flex;align-items:center;gap:7px;color:var(--orange);font-weight:600;font-size:15px;margin-top:16px}.requisites{margin-top:34px;padding:24px 26px;background:#fff7f1;border-radius:14px;display:grid;gap:7px}.requisites b{font-size:18px;margin-bottom:4px}.requisites span{font-size:15.5px;color:var(--muted)}.requisites a{display:inline-flex;align-items:center;gap:7px;color:var(--orange);font-weight:600;margin-top:10px}.contact-list p small{font-size:15px;color:var(--muted);font-weight:400}.lost{background:#fff7f1;padding:110px 0 120px;overflow:hidden}.lost__inner{text-align:center;position:relative}.lost__code{display:flex;align-items:center;justify-content:center;gap:8px;font-family:Podkova,serif;font-size:190px;font-weight:700;line-height:1;color:var(--ink)}.lost__elephant{width:170px;height:auto;animation:lostBob 2.6s ease-in-out infinite;transform-origin:50% 90%}@keyframes lostBob{0%,to{transform:translateY(0) rotate(-4deg)}25%{transform:translateY(-16px) rotate(2deg)}50%{transform:translateY(0) rotate(4deg)}75%{transform:translateY(-9px) rotate(-2deg)}}.lost h1{font-size:40px;margin:26px 0 14px}.lost p{font-size:19px;color:var(--muted);max-width:560px;margin:0 auto 34px;line-height:1.5}.lost__actions{display:flex;align-items:center;justify-content:center;gap:26px}.lost__link{display:inline-flex;align-items:center;gap:8px;color:var(--orange);font-weight:600}.lost__crumbs{position:absolute;inset:0;pointer-events:none}.lost__crumbs i{position:absolute;width:10px;height:10px;border-radius:50% 40% 55% 45%;background:#e8b98a;opacity:.7;animation:crumbFloat 6s ease-in-out infinite}.lost__crumbs i:nth-child(1){left:8%;top:16%}.lost__crumbs i:nth-child(2){left:16%;top:64%;width:7px;height:7px;animation-delay:-1.4s}.lost__crumbs i:nth-child(3){left:30%;top:32%;width:6px;height:6px;animation-delay:-3s}.lost__crumbs i:nth-child(4){right:26%;top:22%;animation-delay:-2.2s}.lost__crumbs i:nth-child(5){right:12%;top:58%;width:13px;height:13px;animation-delay:-4.5s}.lost__crumbs i:nth-child(6){right:6%;top:12%;width:7px;height:7px;animation-delay:-.8s}@keyframes crumbFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-22px) rotate(40deg)}}@media(max-width:900px){.lost__code{font-size:110px}.lost__elephant{width:100px}.lost h1{font-size:28px}.docs-grid{grid-template-columns:1fr;gap:20px}.docs{padding:70px 0}.lost__actions{flex-direction:column;gap:18px}}.hero__media{animation:heroZoom 12s cubic-bezier(.2,.6,.3,1) both}@keyframes heroZoom{0%{transform:scale(1.06)}to{transform:scale(1)}}@media(min-width:901px){.product-intro .calorie-sticker{animation:stickerFloat 5.5s ease-in-out 1.6s infinite}}@keyframes stickerFloat{0%,to{transform:rotate(-7deg) translateY(0)}50%{transform:rotate(-5.4deg) translateY(-9px)}}.ingredient-grid button:nth-child(2){transition-delay:.06s}.ingredient-grid button:nth-child(3){transition-delay:.12s}.ingredient-grid button:nth-child(4){transition-delay:.18s}.ingredient-grid button:nth-child(5){transition-delay:.24s}.ingredient-grid button:nth-child(6){transition-delay:.3s}.ingredient-grid button:nth-child(7){transition-delay:.36s}.pack-stack{transition:transform .35s ease}.product-grid article:hover .pack-stack{transform:translateY(-8px)}.review-card{transition:transform .3s ease,box-shadow .3s ease}.review-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px #3c16081a}@media(prefers-reduced-motion:reduce){.hero__media,.lost__elephant,.lost__crumbs i,.product-intro .calorie-sticker{animation:none}}.scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--orange),#ffc25e);z-index:220;border-radius:0 3px 3px 0;box-shadow:0 0 8px #ff8c1480}.to-top{position:fixed;left:26px;bottom:26px;z-index:150;width:52px;height:52px;border-radius:50%;border:0;background:#fff;color:var(--orange);box-shadow:0 10px 30px #3814062e;display:grid;place-items:center;cursor:pointer;opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .3s ease,transform .3s ease,background .2s ease}.to-top svg{transform:rotate(180deg)}.to-top.is-shown{opacity:1;transform:none;pointer-events:auto}.to-top:hover{background:var(--orange);color:#fff}.basket-button.is-pop{animation:cartPop .5s cubic-bezier(.3,1.6,.4,1)}@keyframes cartPop{0%{transform:scale(1)}35%{transform:scale(1.28) rotate(-6deg)}70%{transform:scale(.94)}to{transform:scale(1)}}::selection{background:var(--orange);color:#fff}html{scrollbar-color:#e0955c #f6efe9}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:#f6efe9}::-webkit-scrollbar-thumb{background:#e0955c;border-radius:8px;border:3px solid #f6efe9}::-webkit-scrollbar-thumb:hover{background:var(--orange)}:focus-visible{outline:3px solid rgba(255,122,0,.55);outline-offset:2px;border-radius:6px}.site-canvas{animation:pageIn .5s ease}@keyframes pageIn{0%{opacity:0}to{opacity:1}}@media(max-width:900px){.to-top{left:auto;right:18px;bottom:86px;width:46px;height:46px}}@media(prefers-reduced-motion:reduce){.site-canvas,.basket-button.is-pop{animation:none}.to-top{transition:opacity .2s}}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.nutrition-block{-webkit-overflow-scrolling:touch}@media(max-width:900px){.hero h1{font-size:clamp(46px,16vw,68px)}.page-hero h1{font-size:clamp(36px,10vw,64px)}.to-top{bottom:calc(86px + env(safe-area-inset-bottom))}.toast{right:14px;left:14px;bottom:calc(14px + env(safe-area-inset-bottom))}.cart__panel{padding-bottom:calc(20px + env(safe-area-inset-bottom))}.lost{padding:80px 0 90px}.calc-result b{font-size:26px}.footer__cta h2{font-size:clamp(26px,7.5vw,34px)}}@media(max-width:380px){.hero h1{font-size:clamp(40px,15vw,52px)}.product-grid .button{min-width:0;width:100%}.calc-fields{grid-template-columns:1fr}}@media(max-width:560px){.audience__list{grid-template-columns:1fr;gap:2px}.hero{height:470px}.features__inner,.audience__inner,.composition__inner,.nutrition__inner,.reviews__inner,.faq__inner{padding:58px 0}.docs{padding:56px 0}.solution h2{font-size:31px}.pack-stack{height:250px}.product-grid{gap:44px}.review-stats article{height:112px}.lost__code{font-size:88px}.lost__elephant{width:82px}}.consent{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;line-height:1.4;color:var(--muted);cursor:pointer;margin:2px 0 4px}.consent input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--orange);flex:0 0 18px;cursor:pointer}.form .consent input,.cart__form .consent input{width:18px;margin-top:1px;padding:0}.consent span{min-width:0;flex:1}.consent a{color:var(--orange);text-decoration:underline}.cart__form .consent{color:var(--muted)}.button--ghost{background:transparent;border:1.5px solid var(--orange);color:var(--orange)}.button--ghost:hover{background:#ff7a0014}.cart__form .button--ghost{margin-top:-6px}.payresult{background:#fff7f1;padding:110px 0 120px}.payresult__inner{text-align:center;max-width:640px}.payresult__icon{width:84px;height:84px;border-radius:50%;display:inline-grid;place-items:center;margin-bottom:26px;color:#fff}.payresult__icon--ok{background:#3aa655;animation:payPop .5s cubic-bezier(.3,1.6,.4,1) both}.payresult__icon--fail{background:#c2371f}@keyframes payPop{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}.payresult h1{font-size:40px;margin:0 0 16px}.payresult p{font-size:19px;line-height:1.55;color:var(--muted);margin:0 0 34px}.payresult__actions{display:flex;align-items:center;justify-content:center;gap:26px;flex-wrap:wrap}@media(max-width:900px){.payresult{padding:70px 0}.payresult h1{font-size:29px}}.cabinet__add{display:grid;grid-template-columns:1.4fr 1fr auto;gap:12px;margin-bottom:26px}.cabinet__add input{border:1px solid var(--line);border-radius:10px;padding:14px 16px;background:#fff}.cabinet__add input:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px #ff7a0017}.cabinet__empty,.cabinet__loading{color:var(--muted)}.cabinet__orders{display:grid;gap:22px;margin-top:10px}.order-card{background:#fff7f1;border-radius:16px;padding:26px 30px}.order-card header{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:16px}.order-card header b{font-size:20px}.order-card header span{color:var(--muted)}.badge{font-style:normal;font-size:12.5px;font-weight:700;padding:4px 10px;border-radius:7px;color:#fff}.badge--paid{background:#3aa655}.badge--cancel{background:#c2371f}.order-steps{display:flex;gap:0;margin:6px 0 18px}.order-steps span{flex:1;position:relative;text-align:center;font-size:13px;color:var(--muted);padding-top:22px}.order-steps span i{position:absolute;top:0;left:50%;transform:translate(-50%);width:14px;height:14px;border-radius:50%;background:#e5d6cb}.order-steps span:before{content:"";position:absolute;top:6px;left:-50%;width:100%;height:2px;background:#e5d6cb}.order-steps span:first-child:before{display:none}.order-steps span.is-done{color:var(--ink);font-weight:600}.order-steps span.is-done i,.order-steps span.is-done:before{background:var(--orange)}.order-card ul{margin:0 0 18px;padding-left:20px;color:var(--muted)}.order-card footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.order-card footer strong{font-size:24px}.order-card footer>div{display:flex;gap:12px}.cabinet__note{margin-top:36px;color:var(--muted);font-size:15px}.admin{padding:70px 0 100px;min-height:70vh}.admin--login .admin__login{max-width:380px;margin-top:30px}.admin h1{font-size:38px;margin:0}.admin__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.admin__tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:30px}.admin__tabs button{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 18px;cursor:pointer;font-size:15px}.admin__tabs button.is-active{background:var(--orange);border-color:var(--orange);color:#fff;font-weight:600}.admin__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.admin__cards article{background:#fff7f1;border-radius:14px;padding:22px 24px}.admin__cards small{display:block;color:var(--muted);margin-bottom:6px}.admin__cards b{font-size:32px}.admin__cards span{display:block;color:var(--orange);font-weight:600;margin-top:2px}.admin__search{width:100%;border:1px solid var(--line);border-radius:10px;padding:13px 16px;margin-bottom:20px}.admin__list{display:grid;gap:16px}.admin-order{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 24px}.admin-order.is-muted{opacity:.55}.admin-order header{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.admin-order header b{font-size:17px}.admin-order header span{color:var(--muted);font-size:14px}.admin-order header select{margin-left:auto;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:#fff;cursor:pointer}.admin-order p{margin:4px 0;font-size:15.5px}.admin-order__items{color:var(--muted)}.admin-order__comment{background:#fff7f1;border-radius:8px;padding:8px 12px}.admin-order a{color:var(--orange)}.admin__actions{display:flex;gap:10px;margin-top:12px}.admin__answer textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin-top:8px;font:inherit}.admin__empty{color:var(--muted)}@media(max-width:900px){.cabinet__add{grid-template-columns:1fr}.admin__cards{grid-template-columns:1fr 1fr}.order-card{padding:20px 18px}.order-card footer>div{flex-direction:column;width:100%}.order-card footer>div .button{width:100%;justify-content:center}}.auth{max-width:440px}.auth__form{margin-top:22px}.auth__hint{font-weight:400;color:var(--muted)}.cabinet__bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}.cabinet__bar h2{margin:0;font-size:30px}.cabinet__bar>div{display:flex;gap:10px}.cabinet__empty a{color:var(--orange);font-weight:600}@media(max-width:900px){.product-card__period{text-align:left;color:#bd8f79;font-weight:600}.product-card__period small{position:static;display:block;text-align:left;color:#bd8f79;font-weight:400;margin-top:4px}.pack-stack{position:relative;height:auto;width:min(320px,86%);margin:6px auto 0;display:block}.pack-stack:before{content:"";position:absolute;z-index:0;left:50%;top:50%;transform:translate(-50%,-50%);width:114%;aspect-ratio:1/1;background:url(/lab-e1aad64acc/assets/pack-circle.webp) center/contain no-repeat}.pack-stack img{position:relative;z-index:3;width:100%;height:auto;max-width:none;filter:drop-shadow(0 16px 22px rgba(54,20,8,.18))}.product-card__body{display:block;position:relative;z-index:2;background:#fff;border:1px solid rgba(74,34,20,.07);border-radius:20px;box-shadow:0 16px 44px #4018081a;padding:26px 18px 22px;margin:-70px 10px 0}.product-card__body h3{font-size:19.5px;margin:0 0 8px;font-weight:700}.product-card__body>p{font-size:15.5px;font-weight:500;color:#7d675a;margin:0 0 14px}.product-card__body>strong{display:block;font-size:27px;margin:0 0 16px}.product-card__body .button{width:100%;justify-content:center;min-height:52px}.product-grid{gap:52px}.solution__summary{padding-bottom:36px}}@media(max-width:900px){.market-banner{height:auto;padding:26px 0}.market-banner__inner{flex-direction:column;gap:18px}.market-banner__inner>div{flex-direction:column;gap:12px}.market-banner strong{font-size:20px}}.market-banner{height:112px;background:#3d170c;color:#f6e9df}.market-banner__inner{height:100%;display:flex;align-items:center;justify-content:center;gap:48px}.market-banner strong{font-size:24px}.market-banner__inner>div{display:flex;align-items:center;gap:24px}.market-banner a{display:block;height:48px;width:174px;overflow:hidden;border-radius:12px;transition:transform .2s ease}.market-banner a img{display:block;width:100%;height:100%;object-fit:contain}.market-banner a:hover{transform:translateY(-2px)}.market-banner img{width:100%;height:100%;object-fit:cover}.audience{height:913px;background:#fff}.audience__inner{height:100%;padding-top:100px}.plain-heading{max-width:868px}.plain-heading h2{font-size:36px;line-height:1.1;margin:0 0 34px;font-weight:600}.plain-heading p{font-size:24px;line-height:1.35;margin:0}.audience__body{display:grid;grid-template-columns:520px 1fr;gap:80px;margin-top:100px}.audience__list{display:flex;flex-direction:column;align-items:stretch}.audience__list button{border:0;background:transparent;text-align:left;padding:12px 0;font-size:20px;line-height:1.35;display:flex;gap:14px;align-items:flex-start;cursor:pointer;transition:color .2s,transform .2s}.audience__list button span{font-size:21px;width:28px;flex:0 0 auto}.audience__list button:hover,.audience__list button.is-active{color:var(--orange);transform:translate(4px)}.audience__answer{padding-top:5px}.audience__answer>div+div{margin-top:36px}.audience__answer h3{font-size:20px;margin:0 0 10px;font-weight:700}.audience__answer p{font-size:20px;line-height:1.45;margin:0;max-width:602px}.composition{height:778px;background:#f7f7f7;position:relative}.composition__inner{height:100%;padding-top:100px;position:relative}.composition__top{display:flex;align-items:center;justify-content:space-between}.composition__top h2{font-size:36px;margin:0;font-weight:600}.composition__top>span{font-size:20px}.ingredient-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:21px;margin-top:60px}.ingredient-grid button{border:0;background:transparent;padding:0;text-align:left;cursor:pointer;position:relative;min-width:0}.ingredient-grid__image{display:block;width:100%;aspect-ratio:1;border-radius:30%;overflow:hidden;transition:transform .28s ease,box-shadow .28s ease}.ingredient-grid__image img{width:100%;height:100%;object-fit:cover}.ingredient-grid button:hover .ingredient-grid__image,.ingredient-grid button.is-active .ingredient-grid__image{transform:translateY(-6px);box-shadow:0 14px 24px #2a12091f}.ingredient-grid strong{display:block;font-size:20px;line-height:1.05;margin-top:18px;min-height:44px;font-weight:500}.ingredient-grid small{font-size:20px;display:block;margin-top:10px}.ingredient-grid em{font-style:normal;color:var(--orange);font-size:12px;position:absolute;left:0;bottom:-28px}.composition__summary{position:absolute;left:0;bottom:70px;width:633px}.composition__summary h3{font-size:32px;line-height:1.25;margin:0 0 8px;font-weight:600}.composition__summary p{font-size:24px;margin:0;display:inline}.composition__summary a,.composition__summary button{display:inline-flex;align-items:center;gap:8px;color:var(--orange);font-size:16px;margin-left:34px;border:0;background:transparent;padding:0;cursor:pointer}.nutrition--closed{display:none}@media(max-width:900px){.nutrition--closed{display:block}}.nutrition--open{animation:nutritionIn .55s cubic-bezier(.2,.72,.2,1) both}@keyframes nutritionIn{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.nutrition--open{animation:none}}.ingredient-popover{position:absolute;z-index:20;right:0;bottom:35px;width:470px;background:#fff;box-shadow:0 24px 70px #2f10062e;border-radius:16px;padding:22px;display:grid;grid-template-columns:130px 1fr;gap:22px;align-items:center;animation:popover .3s ease both}.ingredient-popover>button{position:absolute;right:10px;top:10px;border:0;background:transparent;cursor:pointer}.ingredient-popover img{width:130px;height:130px;border-radius:50%;object-fit:cover}.ingredient-popover h3{font-size:21px;margin:0 0 5px}.ingredient-popover strong{color:var(--orange)}.ingredient-popover p{margin:10px 0 0;font-size:15px}@keyframes popover{0%{opacity:0;transform:translateY(12px) scale(.98)}}.nutrition{background:#fff}.nutrition__inner{padding:100px 0}.nutrition__heading{margin-bottom:48px}.nutrition__heading h2{font-size:36px;margin:0 0 8px;font-weight:600}.nutrition__heading p{font-size:20px;margin:0}.nutrition-block{margin-bottom:56px}.nutrition-block h3{font-size:32px;margin:0 0 22px;font-weight:600}.nutrition-table{width:100%;font-size:16px}.nutrition-row{display:grid;grid-template-columns:250px 190px 1fr;gap:28px;align-items:center;min-height:80px;padding:10px 16px}.nutrition-row:nth-child(2n){background:#fff3eb}.nutrition-row--head{min-height:58px;background:#f3e6de!important;font-size:16px}.nutrition-row strong,.nutrition-row span{font-size:17px}.nutrition-row span{font-weight:600}.nutrition-row p{margin:0;line-height:1.38}.nutrition-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:52px;margin-top:60px}.nutrition-benefits article{display:flex;gap:16px}.nutrition-benefits span{width:22px;height:22px;flex:0 0 auto;border-radius:50%;background:#fff3ea;color:var(--orange);display:grid;place-items:center;font-size:12px;font-weight:700}.nutrition-benefits p{font-size:19px;line-height:1.5;margin:0}.nutrition__final{font-size:20px;font-weight:600;margin:44px 0 0;max-width:1180px}.cooking{height:922px;overflow:hidden}.cooking__inner{height:100%;display:grid;grid-template-columns:720px 1fr;position:relative;padding-top:100px}.cooking__copy h2{font-size:36px;margin:0 0 56px;font-weight:600}.cooking__card{width:560px;background:#9d6c5a;border-radius:10px;padding:38px 46px 32px;position:relative;z-index:2}.cooking__card article{display:grid;grid-template-columns:42px 1fr;gap:18px}.cooking__card article+article{margin-top:28px}.cooking__card article>span{width:34px;height:34px;border-radius:50%;background:#e61f4a;display:grid;place-items:center;font-size:19px;font-weight:700}.cooking__card h3{font-size:24px;margin:0 0 10px;font-weight:600}.cooking__card p{font-size:22px;line-height:1.38;margin:0;color:#fff}.cooking__copy>small{display:block;font-size:16px;margin-top:36px;color:#fffc}.cooking__visual{position:absolute;right:-112px;top:-62px;width:760px;height:760px;z-index:1}.cooking__bowl--mobile{display:none}.cooking__visual>img{width:760px;height:760px;object-fit:contain;filter:drop-shadow(0 22px 30px rgba(20,4,0,.24))}.cooking__visual .calorie-sticker{left:115px;top:620px;transform:rotate(-7deg) scale(.76);transform-origin:left top}.calorie-sticker--compact b{font-size:52px}.calorie-sticker--compact span{font-size:30px}.solution{height:626px;background:#fff6ee;overflow:hidden}.solution__inner{height:100%;position:relative;padding-top:100px}.solution h2{font-size:48px;margin:0 0 68px;font-weight:600}.solution__summary{width:880px;height:280px;position:relative;z-index:2;background:#f5d7c4;border-radius:10px;padding:38px 50px;display:grid;grid-template-columns:repeat(3,1fr);gap:46px}.solution__summary article{position:relative;padding-bottom:32px}.solution__summary h3{font-size:24px;margin:0 0 12px;font-weight:500}.solution__summary strong{font-size:24px;display:block;margin-bottom:7px}.solution__summary p{font-size:20px;margin:0;line-height:1.25}.solution__summary span{position:absolute;left:0;bottom:0;width:28px;height:28px;border-radius:50%;background:#fff;color:var(--orange);display:grid;place-items:center}.solution__product{position:absolute;right:-22px;top:45px;width:544px;height:597px;z-index:1}.solution__pack{position:absolute;right:0;top:0;width:360px;filter:drop-shadow(0 18px 28px rgba(64,20,5,.15))}.solution__spoon{position:absolute;width:210px;left:80px;bottom:26px;filter:drop-shadow(0 9px 12px rgba(63,20,5,.16))}.product-cards{min-height:802px;background:#fff}.product-cards__inner{height:100%;padding-top:48px;position:relative}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:76px;width:1112px;margin:0 auto}.product-grid article{text-align:center;position:relative;height:642px}.product-card__body{display:contents}.product-card__period{font-size:32px;margin:0 0 28px;font-weight:500;min-height:46px;position:relative}.product-card__period small{position:absolute;top:100%;left:0;right:0;display:block;font-size:16px;margin-top:2px}.pack-stack{height:330px;display:flex;align-items:flex-end;justify-content:center;margin:0 auto 12px}.pack-stack img{height:100%;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 13px 18px rgba(54,20,8,.1))}.product-grid h3{font-size:20px;margin:0 0 5px;font-weight:600}.product-grid article>p:not(.product-card__period){font-size:17px;margin:0 0 9px}.product-grid article>strong{display:block;font-size:32px;margin-bottom:16px}.product-grid .button{min-width:210px}.product-cards__note{position:absolute;left:50%;transform:translate(-50%);bottom:54px;font-size:12px;color:var(--muted)}.reviews{height:894px;background:#f7f7f7}.reviews__inner{height:100%;padding-top:100px}.section-line{display:flex;align-items:center;justify-content:space-between;height:40px;margin-bottom:60px}.section-line h2{font-size:36px;margin:0;font-weight:600}.section-line>div{display:flex;gap:28px;align-items:center}.section-line a,.section-line button{border:0;background:transparent;padding:0;font-size:16px;cursor:pointer}.section-line a{color:var(--orange)}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.review-card{height:402px;background:#fff;border-radius:12px;padding:28px 26px;display:flex;flex-direction:column}.stars{display:flex;gap:3px;color:#ff9a00;margin-bottom:12px}.stars svg.is-filled{fill:currentColor}.review-card>span{align-self:flex-start;background:#fff1e8;color:var(--orange);border-radius:999px;padding:4px 12px;font-size:13px;font-weight:600}.review-card>p{font-size:16px;line-height:1.42;margin:20px 0;flex:1;overflow:hidden}.review-card footer{border-top:1px solid var(--line);padding-top:16px;display:flex;flex-direction:column}.review-card footer b{font-size:16px}.review-card footer small{font-size:13px;color:var(--muted)}.review-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}.review-stats article{height:192px;background:#fff;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center}.review-stats span{color:var(--orange);font-size:22px;height:30px}.review-stats strong{font-size:30px;margin:8px 0 3px}.review-stats small{color:var(--muted);font-size:13px;text-align:center}.faq{height:813px;background:#fff}.faq__inner{height:100%;padding-top:100px}.faq .section-line{margin-bottom:40px}.faq-list article{border-bottom:1px solid rgba(74,34,20,.08)}.faq-list article>button{width:100%;height:88px;border:0;background:transparent;display:flex;align-items:center;justify-content:space-between;text-align:left;font-size:20px;cursor:pointer;padding:0 10px 0 0}.faq-list article>button svg{transition:transform .28s ease}.faq-list article>div{display:grid;grid-template-rows:0fr;transition:grid-template-rows .32s ease}.faq-list article>div p{overflow:hidden;margin:0;max-width:900px;font-size:17px;color:var(--muted)}.faq-list article.is-open>div{grid-template-rows:1fr}.faq-list article.is-open>div p{padding-bottom:26px}.faq-list article.is-open>button svg{transform:rotate(180deg)}.footer{height:720px}.footer__cta{height:200px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.12)}.footer__cta h2{font-size:36px;line-height:1.1;margin:0;font-weight:600}.footer__cta .button{min-width:200px}.footer__main{height:388px;display:grid;grid-template-columns:300px 1fr 205px;gap:72px;padding-top:64px;border-bottom:1px solid rgba(255,255,255,.12)}.footer__main>.brand+p{font-size:16px;line-height:1.5;color:#ffffffb8;margin:26px 0 0;max-width:286px}.footer .brand img{width:54px;height:56px}.footer .brand b{font-size:25px}.footer .brand small{font-size:11px}.footer__links{display:grid;grid-template-columns:repeat(3,1fr);gap:46px}.footer__links>div{display:flex;flex-direction:column;gap:13px}.footer__links b{font-size:20px;margin-bottom:8px}.footer__links a,.footer__links span{font-size:16px;color:#ffffffd1}.footer__markets>span{font-size:16px}.footer__markets>div{display:flex;gap:12px;margin-top:22px}.footer__markets img{width:120px;height:auto;border-radius:8px}.footer__legal{height:132px;display:flex;align-items:center;justify-content:space-between;color:#ffffff8c;font-size:14px}.footer__legal>div{display:flex;gap:25px}.modal,.cart{position:fixed;inset:0;z-index:200;pointer-events:none}.modal__backdrop,.cart__backdrop{position:absolute;inset:0;border:0;background:#18070294;opacity:0;transition:.3s}.modal{pointer-events:auto;display:grid;place-items:center}.modal__backdrop{opacity:1}.modal__card{position:relative;width:min(620px,calc(100vw - 32px));max-height:88vh;overflow:auto;background:#fff;border-radius:18px;padding:28px;box-shadow:0 30px 90px #1c07014d;animation:modalIn .3s ease both}.modal__card>header,.cart__panel>header{display:flex;align-items:center;justify-content:space-between}.modal__card h2,.cart__panel h2{font-size:30px;margin:0}@keyframes modalIn{0%{opacity:0;transform:translateY(20px) scale(.98)}}.form{display:grid;gap:14px;margin-top:22px}.form label{font-size:14px;font-weight:600}.form input,.form textarea,.cart__form input,.cart__form textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:12px 14px;margin-top:6px;background:#fff;outline:none}.form input:focus,.form textarea:focus,.cart__form input:focus,.cart__form textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px #ff7a0017}.cart.is-open{pointer-events:auto}.cart.is-open .cart__backdrop{opacity:1}.cart__panel{position:absolute;right:0;top:0;bottom:0;width:min(500px,100%);background:#fff;transform:translate(100%);transition:transform .38s cubic-bezier(.2,.75,.2,1);padding:28px;overflow:auto;box-shadow:-18px 0 70px #1b070133}.cart.is-open .cart__panel{transform:none}.cart__lines{margin-top:25px}.cart__lines article{display:grid;grid-template-columns:76px 1fr 28px;gap:15px;padding:16px 0;border-bottom:1px solid var(--line);align-items:start}.cart__remove{width:28px;height:28px;border:0;background:transparent;color:#b9a496;display:grid;place-items:center;cursor:pointer;border-radius:6px;transition:.15s}.cart__remove:hover{color:#c2371f;background:#c2371f14}.cart__lines img{height:90px;object-fit:contain}.cart__lines b{display:block;font-size:16px}.cart__lines span{font-size:15px}.qty{display:flex;align-items:center;gap:10px;margin-top:10px}.qty button{width:28px;height:28px;border:1px solid var(--line);border-radius:6px;background:#fff;display:grid;place-items:center;cursor:pointer}.cart__empty{color:var(--muted);padding:40px 0}.cart__form{display:grid;gap:10px;margin-top:22px}.cart__total{display:flex;justify-content:space-between;align-items:center;font-size:19px;margin-bottom:6px}.cart__total strong{font-size:27px}.cart__form small{text-align:center;color:var(--muted)}.toast{position:fixed;z-index:300;right:24px;bottom:24px;background:#fff;color:var(--ink);border-radius:10px;padding:14px 18px;box-shadow:0 18px 60px #250a023d;display:flex;align-items:center;gap:10px;animation:toastIn .35s ease both}.toast svg{color:var(--orange)}@keyframes toastIn{0%{opacity:0;transform:translateY(15px)}}.mobile-menu{display:none}.page-hero{padding:100px 0;background:#fff4ec}.page-hero h1{font-size:64px;margin:0 0 18px}.page-hero p{font-size:22px;margin:0}.subpage{padding:90px 0}.subpage__grid{display:grid;grid-template-columns:1fr 480px;gap:80px}.contact-list p{display:flex;align-items:center;gap:13px;font-size:22px;margin:0 0 26px}.prose{max-width:880px}.prose h2{font-size:32px;margin-top:40px}.prose h3{font-size:22px;margin-top:30px}.prose p{font-size:18px;color:var(--muted)}.reviews-page>.form{max-width:600px;margin:70px auto 0}@media(min-width:901px){.hero__copy{top:61.86%}.product-intro{margin-top:0}}@media(min-width:1441px){.site-canvas{border-radius:0}}@media(max-width:1200px){:root{--shell:min(100% - 40px,1040px)}.desktop-nav{gap:20px}.desktop-nav a{font-size:15px}.brand b{font-size:25px}.brand small{font-size:11px}.brand img{width:52px;height:54px}.hero__copy{left:0;width:590px}.hero h1{font-size:104px}.hero__copy>p{font-size:26px}.product-intro__inner{grid-template-columns:58% 42%}.product-intro__copy h2{width:100%;font-size:31px}.product-intro__story{width:100%;grid-template-columns:160px 1fr}.video-thumb{width:160px;height:122px}.product-intro__story p,.product-intro__story strong{font-size:17px}.product-pack--hero{width:280px}.calorie-sticker{left:175px;transform:rotate(-7deg) scale(.84);transform-origin:left top}.product-intro__buy{min-width:140px;top:300px}.product-intro__visual>small{top:360px}.feature-grid{width:100%;gap:44px}.audience__body{grid-template-columns:44% 56%;gap:44px}.ingredient-grid{gap:12px}.ingredient-grid strong,.ingredient-grid small{font-size:16px}.nutrition-row{grid-template-columns:220px 170px 1fr}.cooking__visual{right:-230px}.cooking__card{width:470px}.solution__summary{width:72%}.solution__product{right:-120px}.product-grid{width:100%;gap:35px}.footer__main{grid-template-columns:250px 1fr 180px;gap:40px}}@media(max-width:900px){:root{--shell: calc(100vw - 32px) }html{scroll-padding-top:78px}.site-header{height:64px;position:sticky;top:0;box-shadow:0 4px 20px #3412070f}.brand img{width:42px;height:44px}.brand b{font-size:21px}.brand small{font-size:9px}.desktop-nav,.profile-placeholder{display:none}.header-actions{margin-left:auto}.menu-button{display:grid}.mobile-menu{display:block;position:fixed;inset:0;z-index:180;pointer-events:none}.mobile-menu.is-open{pointer-events:auto}.mobile-menu__backdrop{position:absolute;inset:0;border:0;background:#2309028c;opacity:0;transition:.3s}.mobile-menu.is-open .mobile-menu__backdrop{opacity:1}.mobile-menu__panel{position:absolute;right:0;top:0;bottom:0;width:min(390px,90vw);background:#fff;padding:20px;transform:translate(100%);transition:.35s cubic-bezier(.2,.75,.2,1)}.mobile-menu.is-open .mobile-menu__panel{transform:none}.mobile-menu__top{display:flex;align-items:center;justify-content:space-between}.mobile-menu nav{display:flex;flex-direction:column;margin:40px 0}.mobile-menu nav a{font-size:24px;padding:15px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.hero{height:520px;aspect-ratio:auto}.hero__media{background-position:center center}.hero__veil{background:linear-gradient(90deg,#320f056b,#320f050f 70%)}.hero__copy{top:auto;bottom:42px;width:100%;left:0}.hero__copy>p{font-size:17px;line-height:1.2;margin-bottom:10px}.hero h1{font-size:68px;line-height:.77;margin-bottom:20px}.product-intro{height:auto;min-height:0}.product-intro__inner{display:flex;flex-direction:column;padding:64px 0 56px}.product-intro__copy{padding-top:25px}.product-intro__copy h2{font-size:28px;line-height:1.25;margin-bottom:30px}.product-intro__story{grid-template-columns:130px 1fr;gap:18px}.video-thumb{width:130px;height:110px}.product-intro__story p,.product-intro__story strong{font-size:15px}.product-intro__visual{position:static;height:auto;display:flex;flex-direction:column;align-items:center;margin-top:30px}.product-intro__packwrap{display:block;order:1;position:relative;width:min(290px,80vw);margin-top:6px}.product-intro__buy{position:static;order:2;margin-top:26px;min-width:min(300px,88vw);justify-content:center}.product-intro__visual>small{position:static;order:3;margin-top:10px;text-align:center}.product-pack--hero{position:static;width:100%;transform:none;animation:none}.product-intro .calorie-sticker{left:auto;right:-14px;top:-12px;transform:rotate(-7deg) scale(.55);transform-origin:right top}.features,.audience,.composition,.nutrition,.cooking,.solution,.product-cards,.reviews,.faq,.footer{height:auto}.features__inner,.audience__inner,.composition__inner,.nutrition__inner,.reviews__inner,.faq__inner{padding:72px 0}.feature-grid{grid-template-columns:1fr;gap:44px}.feature-grid article{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.feature-icon{height:auto;margin:0 0 16px;align-items:flex-start}.feature-icon--zero{font-size:52px;line-height:1;font-weight:300;letter-spacing:-.02em}.feature-grid h3{min-height:0;margin:0 0 12px}.feature-grid p{font-size:17px;max-width:420px}.features__statement{text-align:left}.features__statement{font-size:24px;margin-top:55px}.market-banner{height:88px}.market-banner__inner{gap:20px}.market-banner strong{font-size:16px}.market-banner a{width:105px;height:36px}.market-banner__inner>div{gap:10px}.plain-heading h2{font-size:31px}.plain-heading p{font-size:18px}.audience__body{grid-template-columns:1fr;margin-top:45px}.audience__list{display:grid;grid-template-columns:1fr 1fr;gap:3px 18px}.audience__list button{font-size:15px}.audience__answer{border-top:1px solid var(--line);padding-top:30px}.audience__answer p{font-size:17px}.composition__top{flex-wrap:wrap;gap:8px}.composition__top h2{font-size:32px}.ingredient-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px 18px;width:100%;margin-top:40px}.ingredient-grid button strong{font-size:15.5px}.ingredient-grid button strong{font-size:14.5px}.ingredient-grid button small{font-size:13px}.composition__summary{position:static;margin-top:48px;width:100%}.composition__summary h3{font-size:26px}.composition__summary p{font-size:18px}.ingredient-popover{position:fixed;left:16px;right:16px;bottom:16px;width:auto}.nutrition__heading h2{font-size:31px}.nutrition-row--head{display:none}.nutrition-row{grid-template-columns:1fr auto;gap:6px 14px;align-items:baseline;min-height:0;padding:16px;border-radius:12px;margin-bottom:8px}.nutrition-row:nth-child(odd){background:#faf5f1}.nutrition-row strong{font-size:16.5px}.nutrition-row span{color:var(--orange);white-space:nowrap}.nutrition-row p{grid-column:1/-1;font-size:15px;color:var(--muted)}.nutrition-benefits{grid-template-columns:1fr;gap:20px}.nutrition__final{font-size:18px}.cooking__inner{display:flex;flex-direction:column;padding:8px 0 0}.cooking__copy h2{font-size:31px}.cooking__card{width:100%;padding:28px 22px}.cooking__card p{font-size:17px}.cooking__visual{position:relative;order:-1;align-self:flex-end;right:auto;top:auto;width:min(430px,96%);height:auto;margin:0 -16px 0 0;z-index:1}.cooking__bowl--desktop{display:none}.cooking__bowl--mobile{display:block;width:100%;height:auto}.cooking__visual .calorie-sticker{left:2px;top:auto;bottom:30%;transform:rotate(-7deg) scale(.62);transform-origin:left bottom}.cooking__copy{position:relative;z-index:2}.cooking h2{margin-top:-56px}.cooking__copy>small{padding-bottom:20px}.solution__inner{padding:70px 0 40px}.solution h2{font-size:38px;margin-bottom:35px}.solution__summary{width:100%;height:auto;grid-template-columns:1fr;padding:25px;gap:25px}.solution__summary article{padding-bottom:38px}.solution__product{position:relative;right:auto;top:auto;width:100%;height:auto;margin-top:-48px;display:flex;justify-content:flex-end;padding:0 2px 4px 0;z-index:2}.solution__pack{position:static;width:min(345px,88%)}.solution__spoon{left:0;bottom:6px;width:150px}.product-cards__inner{padding:70px 0}.product-grid{grid-template-columns:1fr;gap:60px}.product-grid article{height:auto}.product-card__period{font-size:27px}.product-cards__note{position:static;display:block;text-align:center;transform:none;margin-top:45px}.reviews-grid{grid-template-columns:1fr}.review-card{height:auto;min-height:330px}.review-stats{grid-template-columns:1fr 1fr}.review-stats article{height:130px}.section-line{height:auto;align-items:flex-start}.section-line h2{font-size:32px}.section-line>div{gap:13px;flex-direction:column;align-items:flex-end}.faq-list article>button{height:auto;min-height:74px;font-size:17px;padding:12px 0}.footer__cta{height:auto;padding:50px 0}.footer__cta h2{font-size:30px}.footer__main{height:auto;grid-template-columns:1fr;padding:50px 0;gap:45px}.footer__links{grid-template-columns:1fr 1fr;gap:36px 20px}.footer__links>div:last-child{grid-column:1/-1}.footer__legal{height:auto;padding:28px 0;gap:20px;align-items:flex-start;flex-direction:column}.footer__legal>div{flex-wrap:wrap}.subpage__grid{grid-template-columns:1fr}.page-hero h1{font-size:48px}}@media(max-width:560px){:root{--shell: calc(100vw - 28px) }.brand b{font-size:18px}.brand small{display:none}.brand img{width:38px;height:40px}.hero{height:490px;aspect-ratio:auto}.hero__media{background-position:51% center}.hero__copy{bottom:30px}.hero__copy>p{font-size:14px}.hero h1{font-size:56px}.product-intro{min-height:850px}.product-intro__copy h2{font-size:25px}.product-intro__story{grid-template-columns:105px 1fr}.video-thumb{width:105px;height:105px}.product-intro__story p,.product-intro__story strong{font-size:14px}.product-intro__buy{right:0;top:270px}.product-pack--hero{width:225px}.calorie-sticker{left:calc(50% + 20px);transform:rotate(-7deg) scale(.48)}.market-banner{height:112px}.market-banner__inner{flex-direction:column;gap:8px}.market-banner strong{font-size:15px}.market-banner a{width:110px}.audience__list{grid-template-columns:1fr}.ingredient-grid button{min-width:130px}.ingredient-grid strong,.ingredient-grid small{font-size:15px}.solution__product{height:350px}.solution__pack{width:220px}.solution__spoon{width:145px}.footer__cta{align-items:flex-start;gap:24px;flex-direction:column}.footer__links{grid-template-columns:1fr 1fr}.footer__links>div:last-child{grid-column:1/-1}.footer__markets{display:none}.review-stats{gap:10px}.review-stats strong{font-size:24px}.review-stats small{font-size:11px}.modal__card,.cart__panel{padding:20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}[data-reveal]{opacity:1;transform:none}}

/* --- 2026-07-29 · первый экран на мобильной: убираем сильную обрезку фото по бокам --- */
/* Было: фиксированная высота 520/490px при широком фото 1440x860 -> срезалось до 52% ширины. */
/* Стало: высота привязана к ширине экрана, обрезка ~7% на любом телефоне. */
@media(max-width:900px){
  .hero{height:64vw;max-height:420px;aspect-ratio:auto}
  .hero__media{background-position:center center}
  .hero__copy{bottom:18px}
  .hero h1{font-size:clamp(34px,11vw,52px);line-height:.82;margin-bottom:12px}
  .hero__copy>p{font-size:clamp(12px,3.4vw,16px);line-height:1.2;margin-bottom:6px}
}
@media(max-width:560px){
  .hero{height:64vw;max-height:300px}
  .hero__copy{bottom:14px}
  .hero h1{font-size:clamp(30px,10.5vw,44px)}
  .hero__copy>p{font-size:clamp(11px,3.2vw,14px)}
}

/* --- ТЕСТ: первый экран на мобильной, три полосы по макету --- */
@media(max-width:900px){
  .hero{height:64vw;max-height:420px;aspect-ratio:auto}
  .hero__media{background-position:center center}
  .hero__copy{bottom:18px}
  .hero h1{font-size:clamp(34px,11vw,52px);line-height:.82;margin-bottom:12px}
  .hero__copy>p{font-size:clamp(12px,3.4vw,16px);line-height:1.2;margin-bottom:6px}
  /* блик оранжевых кнопок: у кнопки «Корзина» в закрытом меню он вылезает
     диагональной полосой через первый экран. На телефоне hover не нужен — убираем. */
  .button--orange:before{display:none}
}
@media(max-width:640px){
  .hero{
    --strip:22vw;   /* белая полоса сверху (было 29vw — подняли фото) */
    --photo:64vw;
    height:138vw;max-height:none;aspect-ratio:auto;overflow:hidden;
    background:linear-gradient(#FDFBFA 0 calc(var(--strip) + var(--photo)),#381C11 calc(var(--strip) + var(--photo)) 100%);
  }
  /* снимаем анимацию появления — из-за неё текст оставался прозрачным */
  .hero__copy{
    animation:none!important;opacity:1!important;transform:none!important;clip-path:none!important;
    position:static;width:auto;bottom:auto;
  }
  .hero__media{
    position:absolute;left:0;right:0;top:var(--strip);height:var(--photo);
    background-position:center center;background-size:cover;
  }
  .hero__veil{display:none}
  .hero__inner{position:static;height:auto}
  .hero__copy>p{
    position:absolute;left:7.7vw;right:7.7vw;top:6vw;z-index:2;
    color:#381C11;font-size:5vw;line-height:1.25;font-weight:800;margin:0;
  }
  .hero h1{
    position:absolute;left:7.7vw;right:7.7vw;top:70vw;z-index:2;   /* было 79vw */
    font-size:20vw;line-height:.94;letter-spacing:-.04em;margin:0;color:#fff;
  }
  .hero__copy>a{position:absolute;left:7.7vw;top:130vw;z-index:2;color:#fff;font-size:4.2vw}
}

/* --- ТЕСТ: блок с упаковкой на мобильной, по макету --- */
@media(max-width:640px){
  /* упаковка заполняет свой контейнер и стоит по центру (была 225px и смещена влево) */
  .product-intro__packwrap{width:min(290px,74vw);display:flex;justify-content:center}
  .product-intro__packwrap img{width:100%;height:auto}
  /* стикер: меньше и спокойнее по наклону — в макете он не перекрывает упаковку целиком */
  .product-intro .calorie-sticker{transform:rotate(-4deg) scale(.45);right:-4px;top:-6px}
  /* кнопка: во всю ширину, выше, иконка слева от текста */
  .product-intro__buy{
    width:88vw;min-width:0;height:62px;border-radius:14px;
    font-size:21px;gap:14px;flex-direction:row-reverse;padding:0 20px;
    margin-top:34px;
  }
  .product-intro__buy svg{width:26px;height:26px}
  .product-intro__visual>small{font-size:13px;margin-top:12px}
}

/* --- ТЕСТ: плашка «1050 ккал» — по макету, без срезанного края --- */
/* Было: clip-path:polygon(...) резал плашку пятиугольником (острый угол слева)
   и заодно съедал скругления. В макете — ровный прямоугольник со скруглением. */
.calorie-sticker{
  clip-path:none;
  border-radius:26px;
}

/* --- ТЕСТ: раскрываем блоки, которые на живом сайте показывает скрипт --- */
/* На пробной странице React отключён, поэтому [data-reveal] остаются
   прозрачными. Показываем их принудительно — иначе половина страницы пустая. */
.lab-static [data-reveal]{opacity:1!important;transform:none!important}
.lab-static .hero__copy,.lab-static .hero__media,.lab-static .site-canvas{animation:none!important;opacity:1!important}
.lab-static .hero__copy{transform:none!important;clip-path:none!important}

/* --- ТЕСТ: «Инструкция по приготовлению» — чаша выходит за тёмное поле --- */
/* Ключевое: чаша УЖЕ спозиционирована с выходом наверх (top:-62px),
   но у секции стоял overflow:hidden и обрезал её по границе тёмного поля. */
/* обрезка нужна: чаша не должна вылезать в соседние секции.
   На телефоне она и не вылезает — тёмное поле там начинается ниже верха блока. */
.cooking{overflow:hidden}

/* --- телефон: тёмное поле начинается ниже, чаша лежит на белой полосе --- */
/* Без отрицательных отступов: они сдвигали заголовок на белый фон,
   и он становился белым по белому. */
@media(max-width:640px){
  .cooking{
    height:auto;
    /* верхняя полоса — цвет предыдущей секции, чтобы не было шва */
    background:linear-gradient(#f7f7f7 0 25vw,var(--brown-900) 25vw 100%);
  }
  .cooking__visual{
    position:relative;order:-1;align-self:auto;
    width:auto;height:auto;
    margin:0 -8vw 0 18vw;   /* чуть за правый край */
    z-index:2;
  }
  .cooking__visual img{width:100%;height:auto;object-fit:contain}
}

/* --- ТЕСТ: «Инструкция» на телефоне — шрифты, отступы, плашка по макету --- */
@media(max-width:640px){
  /* карточка: отступы по бокам 7px -> 17px */
  .cooking__card{box-sizing:border-box;width:calc(100% - 20px);margin-inline:10px;padding:24px 14px}
  .cooking__card>article{gap:10px}
  .cooking__card>article>span{width:26px;height:26px;min-width:26px;font-size:15px}
  /* шрифты: замерены по ширине строк макета */
  .cooking__card h3{font-size:32px}          /* было 24px */
  .cooking__card p{font-size:22px;line-height:1.38}  /* было 17px */
  /* плашка: уже, к левому краю экрана и ниже — к низу чаши */
  .cooking .calorie-sticker{
    left:-15vw;                 /* было +2px внутри чаши -> к краю экрана */
    bottom:26%;                 /* привязка к низу чаши, как в макете */
    transform:rotate(-7deg) scale(.46);   /* было .62 */
    transform-origin:left bottom;
  }
}

/* --- ТЕСТ: «Инструкция» на компьютере — по макету 1126px --- */
@media(min-width:901px){
  .cooking{height:709px}                       /* было 922px */
  .cooking__copy>h2{font-size:29px;line-height:1.3;margin:-17px 0 32px}
  .cooking__copy>small{font-size:12px}
  .cooking__card{
    width:564px;margin-left:38px;              /* было 518px, отступ 43 -> 81 */
    padding:30px 36px 26px;border-radius:20px;
  }
  .cooking__card h3{font-size:23px}            /* было 16px */
  .cooking__card p{font-size:18px;line-height:1.5}   /* было 15px */
  .cooking__card>article>span{width:30px;height:30px;min-width:30px;font-size:17px}
  /* чаша: ваша вырезка (обрезана по правому краю), пропорции 1000x1262 */
  .cooking__visual{
    right:-15px;left:auto;top:8px;
    width:860px;height:auto;
  }
  .cooking__visual img{width:100%;height:auto}
  .cooking .calorie-sticker{left:80px;top:598px}     /* сдвиг влево и вверх */
}

/* --- ТЕСТ: «Микронутриентный профиль» под спойлером и на телефоне --- */
/* Было: @media(max-width:900px){.nutrition--closed{display:block}} — на телефоне
   спойлер отключён и таблицы всегда раскрыты. Возвращаем поведение как на компьютере. */
@media(max-width:900px){
  .nutrition--closed{display:none}
}

/* --- ТЕСТ: блок «7 компонентов» на телефоне по макету --- */
/* Размеры выведены по ширине строк макета:
   «метаболическая» 275px, «Почему это работает» 260px, «Смотреть» 96px. */
@media(max-width:640px){
  .composition__summary{position:relative;padding-bottom:0}
  .composition__summary h3{margin-bottom:18px}
  .composition__summary p{margin:0;padding-right:110px}
  .composition__summary button{
    position:absolute;right:0;bottom:2px;
    font-size:24px;
    text-decoration:underline;text-underline-offset:4px;
    gap:0;
  }
  .composition__summary button svg{display:none}   /* в макете стрелки нет */
}

/* --- ТЕСТ: единая шкала шрифтов по макету 01. Main-mob (360px) --- */
/* Замерено по ширине строк макета:
   заголовок секции 38px · заголовок блока 26px · вводный текст 24px · текст 20px
   Раньше: h2 гулял 31/32/38, текст 14/17/18/20/22/27/29 — блок к блоку. */
@media(max-width:640px){
  /* Заголовки секций */
  .audience h2,
  .nutrition__heading h2,
  .cooking__copy>h2,
  .reviews__inner h2,
  .faq__inner h2,
  .composition__summary h3{font-size:38px;line-height:1.15}

  /* Заголовки блоков */
  .features h3,
  .cooking__card h3,
  .solution h3{font-size:26px;line-height:1.25}

  /* Вводный текст секции */
  .audience__intro,
  .composition__summary p{font-size:24px;line-height:1.4}

  /* Основной текст */
  .features p,
  .cooking__card p{font-size:20px;line-height:1.45}
}

/* --- ТЕСТ: блок «Анаболический старт» по макету 01. Main-mob --- */
/* Шрифты уже по шкале (26/20). Правим геометрию:
   отступ слева 14 -> 24, иконки 48 -> 58, «0%» 52 -> 80, шаг между пунктами 44 -> 64,
   финальная фраза 20 -> 30. Все цифры выведены из макета. */
@media(max-width:640px){
  .features__inner{padding-inline:10px}
  .feature-grid{gap:64px}
  .feature-icon svg{width:58px;height:58px}
  .feature-icon--zero{font-size:80px;line-height:1}
  .features p.features__statement{font-size:30px;line-height:1.25}
}

/* --- ТЕСТ: кнопки на мобильной по макету 01. Main-mob (360px) --- */
/* «Купить» под упаковкой уже совпадает с макетом (w~328, h~57, radius~14) — не трогаем. */
@media(max-width:640px){
  /* Настоящая причина, почему прошлая правка не сработала: .product-grid .button
     и .footer__cta .button задают min-width 210/200px с более высокой специфичностью. */
  .product-grid .button{min-width:0}
  .footer__cta .button{min-width:0}

  /* «Добавить в корзину» в карточках товара: было во всю ширину (362px),
     в макете — уже и по центру карточки: 244px из 360, т.е. ~68%. */
  /* 244/316=77% от карточки, но width% считается от контента ВНУТРИ padding
     карточки (280px), значит нужно 244/280=87%, иначе текст переносится. */
  .product-card__body .button--orange{
    width:87%;margin-inline:auto;
    min-height:48px;border-radius:8px;
    white-space:nowrap;
  }
  /* «Купить сейчас» в футере: было 200px/48px, в макете — во всю ширину
     как кнопка под упаковкой: 328/360 ≈ 91%, высота 57px, радиус 14px. */
  .footer__buy{align-items:stretch;width:100%}
  .footer__buy .button--orange{
    width:100%;min-height:57px;border-radius:14px;
  }
}

/* --- ТЕСТ: исправление настоящей ошибки исходного CSS сайта --- */
/* В файле есть неогороженное .product-card__body{display:contents} (без @media),
   которое идёт позже мобильного .product-card__body{display:block;...} и поэтому
   побеждает на ЛЮБОЙ ширине экрана, включая телефон — карточка (фон/рамка/тень/
   отступы) исчезает. Правило явно предназначалось только для десктопа. */
@media(max-width:900px){
  .product-card__body{
    display:block!important;position:relative;z-index:2;
    background:#fff;border:1px solid rgba(74,34,20,.07);
    border-radius:20px;box-shadow:0 16px 44px #4018081a;
    padding:26px 18px 22px;margin:-70px 10px 0;
  }
}

/* --- ТЕСТ: ещё одна утечка глобального десктопного правила --- */
/* .product-card__period{font-size:32px;margin:0 0 28px;font-weight:500;min-height:46px}
   стоит БЕЗ @media — те же 46px min-height и 28px отступ (десктопные) продавливаются
   и на телефон, раздувая расстояние до кружка с 29px (в макете) до ~74px. Заодно
   font-weight 500 забивает мобильные 600 (менее жирный текст, чем в макете). */
@media(max-width:900px){
  .product-card__period{
    font-size:31px!important;font-weight:600!important;
    margin:0 0 8px!important;min-height:0!important;line-height:1.3!important;
  }
}

/* --- ТЕСТ: подпись «на неделю» выше + картинка не наезжает на карточку --- */
/* 1) Отступ сверху секции 70px (десктопное наследие), в макете ~44px —
   подпись «на неделю»/«на 2 недели»/«на месяц*» стояла ниже, чем нужно. */
@media(max-width:900px){
  .product-cards__inner{padding-top:40px}
}
/* 2) РЕАЛЬНЫЙ БАГ: .pack-stack жёстко 250px высотой, но картинка при ширине
   320px (min(320px,86%)) рендерится 332px — на 82px выше контейнера.
   Без overflow:hidden этот излишек, у которого z-index:3 (выше карточки,
   z-index:2), наплывает поверх цены и кнопки. Не всегда заметно в обычном
   просмотре — начинает плавать при любом пересчёте раскладки (Safari
   часто это делает при тапе, скрывая/показывая адресную строку). */
@media(max-width:640px){
  .pack-stack{height:auto!important}
}

/* --- ТЕСТ: после исправления высоты .pack-stack картинка стала выше (323 вместо
   обрезанных 250), и старый отступ карточки -70px стал перекрывать заголовок
   товара на 31px. Уменьшаем нахлёст до касания, не залезая на текст. */
@media(max-width:640px){
  .product-card__body{margin-top:-38px!important}
}

/* --- ТЕСТ: настоящая причина, почему подписи «на неделю/2 недели/на месяц»
   стоят низко --- */
/* .solution{height:626px;overflow:hidden} — ГЛОБАЛЬНОЕ правило (без @media),
   десктопная фиксированная высота секции «Готовое решение роста». На телефоне
   реальный контент этой секции короче 626px, и из-за overflow:hidden внизу
   остаётся пустой хвост в ~150-200px ПЕРЕД тем, как начнётся следующая секция
   (карточки товаров) — вот откуда «на неделю» стояла ниже. Мой предыдущий
   фикс padding-top у product-cards__inner был верным, но чинил не ту секцию. */
@media(max-width:900px){
  .solution{height:auto!important;overflow:visible!important}
}

/* --- ТЕСТ: два оставшихся источника эффекта «по нажатию картинка лезет на карточку» --- */

/* ПРИЧИНА 1. У картинок упаковок нет width/height и стоит loading=lazy.
   До загрузки браузер не знает их размер и резервирует 0px — карточка с ценой
   поднимается вверх. Когда картинка догружается (а lazy срабатывает как раз при
   прокрутке/касании), она резко разворачивается на 332px и в этот момент
   перекрывает карточку. Резервируем место заранее — сдвига не будет. */
@media(max-width:900px){
  /* .pack-stack на телефоне — flex-контейнер, а у картинки width:auto.
     Пока картинка не загружена, у неё нет своих размеров, flex её не тянет,
     и она схлопывается в 0. Задаём ширину и пропорцию явно — место
     резервируется сразу, ничего не прыгает при догрузке. */
  .pack-stack img{
    width:100%!important;height:auto!important;
    aspect-ratio:632/656;flex:0 0 auto;
  }
}

/* ПРИЧИНА 2. На сайте есть наведение мышью:
   .product-grid article:hover .pack-stack{transform:translateY(-8px)}
   На тач-экранах «наведение» залипает при касании: палец = hover. При этом
   transform создаёт новый контекст наложения, и картинка (z-index:3) внезапно
   перестаёт быть выше карточки (z-index:2) — слои меняются местами прямо под
   пальцем. Оставляем эффект только там, где есть настоящая мышь. */
@media(hover:none){
  .product-grid article:hover .pack-stack{transform:none}
}

/* --- ФИКС 05.08: чаша на компьютере не загружалась ---------------------
   .cooking__visual абсолютный, height:auto, а у <img> нет своих размеров:
   до загрузки бокс 860x0 => нулевая площадь => loading="lazy" не срабатывает
   и картинка никогда не запрашивается. Задаём пропорции 1000x1262 явно. */
@media(min-width:901px){
  .cooking__visual{aspect-ratio:1000/1262}
  .cooking__visual img{width:100%;height:100%;object-fit:contain}
}


/* --- ФИКС 05.08 (v2): «0%» одного визуального размера с иконками -------------
   Равнять нужно по РИСУНКУ, а не по рамке: путь внутри svg занимает 80% рамки
   (bbox 18/24 + обводка 1.3), то есть при рамке 58px рисунок высотой 46.6px,
   при рамке 48px — 38.6px. Высота цифр «0%» подобрана под эти значения.
   Было: телефон 80px (цифры 57.6 — на четверть крупнее иконок), десктоп 50px. */
@media(max-width:640px){
  .feature-icon--zero{font-size:65px}   /* цифры 46.6px = рисунок иконки 58px */
}
@media(min-width:641px){
  .feature-icon--zero{font-size:53px}   /* цифры 38.6px = рисунок иконки 48px */
}

/* --- ФИКС 05.08 (v4): толщина линий у трёх значков ---------------------------
   Линия иконок была 1.3 ед. — 3.1px при рамке 58 и 2.6px при рамке 48, вдвое
   тоньше штриха цифр «0%» (6px и 5px). Ровно в штрих (2.5 ед.) вышло тяжело,
   поэтому средний вариант: 2.0 ед. = 4.8px и 4.0px — на глаз заодно с цифрами,
   но иконки остаются легче. У «0%» на компьютере было начертание 500 (штрих
   7px) против 400 на телефоне — приводим к 400. */
.feature-icon svg{stroke-width:2}
.feature-icon--zero{font-weight:400}

/* --- ФИКС 05.08: плашка маркетплейсов на телефоне по макету 01. Main-mob -----
   Было: жёсткая высота 112px без отступов, бейджи 110x36, подпись 15px — блок
   сжат, сверху и снизу воздуха нет. Цифры сняты с макета (360px):
   отступ сверху до надписи 41 · надпись → 1-й бейдж 30 · между бейджами 25 ·
   2-й бейдж → низ 33 · бейдж 174x48 · подпись Jost 700, 19px. */
@media(max-width:560px){
  .market-banner{height:auto;padding:36px 0 33px}
  .market-banner__inner{flex-direction:column;align-items:center;justify-content:flex-start;gap:28px;height:auto}
  .market-banner strong{font-size:19px;line-height:1.2}
  .market-banner__inner>div{flex-direction:column;align-items:center;gap:25px;height:auto}
  .market-banner a{width:174px;height:48px}
}

/* --- ФИКС 05.08: блок «Готовое решение роста» на телефоне по макету ----------
   Замерено на 01. Main-mob (360px): подписи в карточках были крупнее макета
   (h3 26 vs 25, «735 г» 24 vs 21, описание 20 vs 16 — из-за него текст
   переносился на вторую строку), галочка 28 вместо 48, скругление панели 10
   вместо 20, заголовок с разреженным межстрочным. */
@media(max-width:560px){
  .solution h2{font-size:38px;line-height:1.26;margin:0 0 30px}
  .solution__summary{border-radius:28px;padding:42px 25px 25px;gap:24px}
  .solution__summary article{padding-bottom:0}
  .solution__summary h3{font-size:25px;line-height:1.2;margin:0 0 21px}
  .solution__summary strong{font-size:21px;line-height:1.2;margin:0 0 22px}
  .solution__summary p{font-size:16px;line-height:1.3;margin:0}
  .solution__summary span{position:static;width:48px;height:48px;margin-top:21px}
  /* упаковка: в макете прижата к правому краю, левый край на 146px */
  .solution__product{padding:0}
  .solution__pack{width:214px;margin-right:-14px}   /* в макете пакет упирается в край экрана */
}

/* --- ФИКС 05.08: мерная ложка на телефоне по макету --------------------------
   В макете чаша ложки 116px шириной (порошок 96), у нас было 47/35 — почти
   втрое мельче. Масштабируем картинку ×2.74 и ставим левый край чаши на 62px,
   как в макете. Хвост ручки уходит за правый край — секцию подрезаем, чтобы
   не появилась горизонтальная прокрутка. */
@media(max-width:560px){
  .solution{overflow:hidden!important}
  .solution__inner{padding-bottom:62px}   /* место под опущенную ложку, как в макете */
  .solution__spoon{width:397px;max-width:none;left:37px;bottom:-110px}
}

/* --- ФИКС 05.08: подписи «на неделю / на 2 недели / на месяц» ----------------
   В макете подпись отступает от края экрана на 36px, у нас начиналась с 14px
   (только отступ .shell). Верхний отступ (50px от начала секции) уже совпадал. */
@media(max-width:560px){
  .product-card__period{margin-left:22px!important}   /* перебиваем более раннее margin:0 0 8px!important */
}

/* --- ФИКС 05.08: карточки товаров на телефоне — минус 15%, подписи выше ------
   Уменьшаем пропорционально весь блок: круг с упаковкой, белую карточку и
   типографику внутри. Подписи «на неделю» поднимаем за счёт верхнего отступа
   секции (40→24) и шага между карточками (44→34). */
@media(max-width:560px){
  .product-cards__inner{padding-top:24px}
  .product-grid{gap:34px}
  .pack-stack{width:min(272px,73%)!important}
  .product-card__body{margin-left:34px!important;margin-right:34px!important;padding:22px 15px 19px!important;border-radius:17px!important}
  .product-card__body h3{font-size:16.5px}
  .product-card__body>p{font-size:13px;margin:0 0 12px}
  .product-card__body>strong{font-size:23px;margin:0 0 14px}
  .product-card__body .button{min-height:44px;font-size:15px;gap:8px}
  .product-card__body .button svg{flex:0 0 auto;width:17px;height:17px}   /* иначе flex сплющивает иконку в узкой кнопке */
}

/* --- ФИКС 06.08: зазор между подписью и кругом карточки ----------------------
   Круг рисуется через .pack-stack:before шириной 114% контейнера, поэтому его
   макушка поднимается ВЫШЕ верхней границы контейнера — подпись оказывалась
   прижата к кругу (фактический зазор −6px). В макете 01. Main-mob зазор от
   строки подписи до края круга 28-29px. Добавляем недостающее. */
@media(max-width:560px){
  .product-card__period{margin-bottom:42px!important}
  /* у «на месяц» под подписью висит строка «28 дней» (position:absolute) — ей нужен запас */
  .product-card__period:has(small){margin-bottom:64px!important}
}

/* --- ФИКС 06.08: карточка товара на телефоне строго по макету -----------------
   Замерено по карточке «Плюс Кило 2 упаковки» из 01. Main-mob (360px):
   карточка 316 шириной (поля 22 от края экрана), радиус 20, поля внутри 36,
   снизу 40; круг 320. Отступы между строками: верх→название 37, название→вес 13,
   вес→цена 25, цена→кнопка 26, кнопка→низ 40. Кнопка 244x48.
   Размеры шрифтов выведены по ширине строк макета: 15.5 / 14 / 26. */
@media(max-width:560px){
  .pack-stack{width:min(320px,84.5%)!important}   /* круг = 114% ширины, целимся в 320 */
  .product-card__body{
    margin-left:8px!important;margin-right:8px!important;
    padding:36px 36px 40px!important;border-radius:20px!important;
  }
  .product-card__body h3{font-size:15.5px;margin:0 0 13px}
  .product-card__body>p{font-size:14px;margin:0 0 25px}
  .product-card__body>strong{font-size:26px;margin:0 0 26px}
  .product-card__body .button{min-height:48px;width:100%;font-size:16px}
}

/* --- ФИКС 06.08 (v2): типографика карточки по макету -------------------------
   Сверено пиксельно со скриншотом макета (пересчёт в css при ширине 360):
   • воздух над названием: было 15 от низа упаковки, в макете 37 → padding-top 58
   • название → вес: было 21, в макете 9
   • вес: высота букв 11.2, в макете 12.8 → 16px, начертание 400 (было 500)
   • вес → цена: было 38, в макете 23
   • цена: высота цифр 19.1, в макете 22.8 → 31px
   • цена → кнопка: было 36, в макете 25
   Название (15.5px/600) совпало точно — не трогаем. */
@media(max-width:560px){
  .product-card__body{padding:57px 36px 40px!important}
  .product-card__body h3{margin:0 0 1px}
  .product-card__body>p{font-size:16px;font-weight:400;margin:0 0 7px}
  .product-card__body>strong{font-size:31px;margin:0 0 13px}
}

/* --- ФИКС 06.08 (v3): обводка карточки и начертание цены ----------------------
   Обводка: в макете тонкая тёплая линия rgb(251,233,217) ~1px и БЕЗ тени,
   у нас была серая rgba(74,34,20,.07) плюс мягкая тень 0 16px 44px.
   Цена: штрих цифр в макете 3.8px при высоте 22.8, у нас 5.3 — начертание
   было 700, ставим 500. */
@media(max-width:560px){
  .product-card__body{
    border:1px solid #fbe9d9!important;
    box-shadow:none!important;
  }
  .product-card__body>strong{font-weight:500}
}

/* --- ФИКС 06.08 (v4): упаковка не должна залезать на карточку -----------------
   В макете низ упаковки совпадает с верхней границей белой карточки. У нас
   упаковка заходила на карточку на 20px. Поднимаем картинку внутри круга на
   эти 20px (позиция круга и карточки не меняется) и на столько же уменьшаем
   верхнее поле карточки, чтобы зазор до названия остался макетным (37). */
@media(max-width:560px){
  .pack-stack img{top:-26px}   /* низ упаковки ровно на границе карточки */
  .product-card__body{padding-top:32px!important}
}

/* --- ФИКС 06.08: карточка товара на КОМПЬЮТЕРЕ по макету 01. Main-Desktop -----
   Было: белой карточки на десктопе нет вовсе — у .product-card__body стоит
   display:contents, поэтому правила вида «.product-grid article>strong» не
   срабатывают (в разметке React эти элементы лежат внутри .product-card__body).
   Из-за этого цена рендерилась 16px вместо 32 и налезала на кнопку.
   Замерено по макету (1440): карточка 316x215, поля 39 по бокам, кнопка 238x48,
   упаковка заходит на карточку на 24. */
@media(min-width:901px){
  .product-card__body{
    display:block!important;position:relative;z-index:2;text-align:center;
    background:#fff;border:1px solid #fbe9d9;border-radius:20px;box-shadow:none;
    padding:21px 39px 29px;margin:-36px 0 0;
  }
  .product-card__body h3{font-size:19px;font-weight:600;line-height:1.2;margin:0 0 11px}
  .product-card__body>p{font-size:16px;font-weight:400;line-height:1.3;margin:0 0 20px}
  .product-card__body>strong{display:block;font-size:38px;font-weight:500;line-height:1.1;margin:0 0 16px}
  .product-card__body .button{width:100%;min-width:0;min-height:48px}
}

/* ===== плашка акции (полоса над шапкой + корзина) ===== */
.promo-bar{background:var(--brown-900);color:#f6e9df;text-align:center;padding:11px 16px;
  font-size:15px;line-height:1.25;display:flex;align-items:center;justify-content:center;gap:10px}
.promo-bar span{min-width:0;text-wrap:balance}
.promo-bar::before{content:"";width:20px;height:20px;flex:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffb15c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7h11v9H3z'/%3E%3Cpath d='M14 10h4l3 3v3h-7z'/%3E%3Ccircle cx='7' cy='18' r='1.8'/%3E%3Ccircle cx='17.5' cy='18' r='1.8'/%3E%3C/svg%3E") center/contain no-repeat}
@media(max-width:900px){.promo-bar{font-size:14px;padding:10px 14px}}
@media(max-width:560px){.promo-bar{font-size:13px;padding:9px 12px}
  .promo-bar{gap:8px}.promo-bar::before{width:17px;height:17px}}

.cart__ship{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;
  background:var(--linen);border-radius:12px;padding:11px 12px;margin-bottom:4px}
.cart__ship::before{content:"";width:22px;height:22px;margin-top:1px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff7a00' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7h11v9H3z'/%3E%3Cpath d='M14 10h4l3 3v3h-7z'/%3E%3Ccircle cx='7' cy='18' r='1.8'/%3E%3Ccircle cx='17.5' cy='18' r='1.8'/%3E%3C/svg%3E") center/contain no-repeat}
.cart__ship b{grid-column:2;font-size:14.5px;font-weight:600;line-height:1.25}
.cart__ship span{grid-column:2;font-size:12.5px;color:var(--muted);line-height:1.3;margin-top:2px}

/* ===== слайдер первого экрана ===== */
/* обёртка берёт геометрию у .hero__media, но своё фото не показывает */
.hero .hero__media--3{background-image:none;animation:none}
/* сам кадр — вложенный слой; затемнение слева вшито в него, под белый заголовок */
.hero__slide{position:absolute;inset:0;background-position:inherit;background-size:inherit;
  background-repeat:no-repeat;opacity:0}
/* картинка подключается после загрузки страницы (класс ставит promo.js) */
.hero-slides .hero__media--3 .hero__slide{background-image:linear-gradient(90deg,rgba(50,16,5,.46),rgba(50,16,5,.12) 46%,transparent 64%),url(/assets/hero-3.webp?v=2);
  animation:heroSlide 6s ease-in-out infinite}
/* у кого в системе отключены анимации — та же смена, но спокойнее.
   Здесь !important обязателен: в CSS сайта есть глобальный сброс
   *{animation-duration:.01ms!important} для этого режима. */
@media (prefers-reduced-motion:reduce){
  .hero-slides .hero__media--3 .hero__slide{animation-duration:9s!important;
    animation-iteration-count:infinite!important;animation-timing-function:ease-in-out!important}
}
/* 3 секунды кадр 1, 3 секунды кадр 2, переход ~0,8 с */
@keyframes heroSlide{0%,36.7%{opacity:0}50%,86.7%{opacity:1}100%{opacity:0}}

/* ===== окно «остались вопросы» ===== */
.pk-exit{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:16px}
.pk-exit__card{outline:none}
.pk-exit h2{font-size:27px;line-height:1.15;margin:0 0 8px}
.pk-exit p{margin:0;color:var(--muted);font-size:15.5px;line-height:1.4}
.pk-exit__x{position:absolute;right:12px;top:10px;background:none;border:0;color:#a08a80;
  font-size:26px;line-height:1;padding:4px 9px;cursor:pointer}
.pk-exit__x:hover{color:var(--ink)}
.pk-exit__btns{display:grid;gap:10px;margin-top:20px}
.pk-msg{display:flex;align-items:center;justify-content:center;gap:10px;border-radius:12px;
  padding:14px 16px;color:#fff;text-decoration:none;font-weight:500;font-size:16px;
  transition:filter .2s ease}
.pk-msg svg{width:23px;height:23px;flex:none;fill:currentColor}
.pk-msg--vk{background:#07f}
.pk-msg--tg{background:#29a9eb}
.pk-msg:hover{filter:brightness(.93)}
.pk-exit__close{display:block;width:100%;background:none;border:0;color:var(--muted);
  font-family:inherit;font-size:14.5px;padding:14px 0 2px;cursor:pointer}
.pk-exit__close:hover{color:var(--ink)}
@media(max-width:560px){
  .pk-exit h2{font-size:23px}
  .pk-exit p{font-size:15px}
  .pk-msg{font-size:15px;padding:13px 14px}
}

/* ===== подсказки адреса в корзине ===== */
.pk-sug{position:fixed;z-index:300;background:#fff;border:1px solid var(--line);border-radius:10px;
  box-shadow:0 18px 44px rgba(28,7,1,.18);max-height:46vh;overflow-y:auto}
.pk-sug__item{display:block;width:100%;text-align:left;background:none;border:0;cursor:pointer;
  font-family:inherit;font-size:14.5px;line-height:1.3;color:var(--ink);padding:11px 13px}
.pk-sug__item + .pk-sug__item{border-top:1px solid rgba(74,34,20,.07)}
.pk-sug__item:hover,.pk-sug__item.is-active{background:var(--linen)}
@media(max-width:560px){.pk-sug__item{font-size:14px;padding:12px 12px}}

/* ===== десктоп: первый экран на 10% ниже =====
   Фото не уменьшаем — оно по-прежнему во всю ширину и в том же масштабе,
   просто в кадр попадает чуть меньше по высоте. Зато на экран влезает
   больше страницы. */
@media(min-width:901px){
  .hero{aspect-ratio:1440/774}
}

/* десктоп: подпись и заголовок поднимаем вслед за уменьшенной высотой (было 61.86%) */
@media(min-width:901px){
  .hero__copy{top:55.7%}
}

/* ===== десктоп: поднимаем фото первого экрана и пакет во втором блоке ===== */
/* фото: прижимаем кадр низом — это максимум, дальше снизу появится пустота */
@media(min-width:901px){
  .hero__media{background-position:center bottom}
}
/* пакет: выше на 15% собственной высоты (ширина пакета на брейкпоинтах разная) */
@media(min-width:1201px){
  .product-pack--hero{top:-161px}          /* ширина 360 → высота 519, 15% = 77 */
}
@media(min-width:901px) and (max-width:1200px){
  .product-pack--hero{top:-145px}          /* ширина 280 → высота 404, 15% = 61 */
}
/* наклейка «1050 ккал» едет вместе с пакетом, чтобы не налезать на название */
@media(min-width:1201px){
  .product-intro .calorie-sticker{top:-62px}
}
@media(min-width:901px) and (max-width:1200px){
  .product-intro .calorie-sticker{top:-46px}
}

/* ===== блок «Состав»: убираем белые углы у плиток =====
   Фото ингредиентов сняты кругом на белом фоне, а рамка — скруглённый квадрат
   (как в макете). Увеличиваем фото так, чтобы круг всегда перекрывал углы:
   белого поля не видно ни в покое, ни при наведении, ни при клике. */
.ingredient-grid__image img{
  transform:scale(1.45);
  transition:transform .35s cubic-bezier(.2,.7,.2,1);
}
.ingredient-grid button:hover .ingredient-grid__image img,
.ingredient-grid button:focus-visible .ingredient-grid__image img{
  transform:scale(1.58);
}
/* видимый фокус для тех, кто ходит по сайту с клавиатуры */
.ingredient-grid button:focus-visible .ingredient-grid__image{
  outline:2px solid var(--orange);outline-offset:3px;
}

/* ===== подвал: «Свяжитесь с нами» ===== */
.footer__social{margin-top:26px}
.footer__social>span{display:block;font-size:16px;color:#ffffffd1;margin-bottom:12px}
.footer__social>div{display:flex;gap:10px}
.footer__social a{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;
  border-radius:13px;background:rgba(255,255,255,.1);color:#fff;
  transition:background .2s ease,transform .2s ease}
.footer__social a:hover{transform:translateY(-2px)}
.footer__social-vk:hover{background:#07f}
.footer__social-tg:hover{background:#29a9eb}
.footer__social a:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.footer__social svg{width:24px;height:24px;fill:currentColor}
@media(max-width:900px){
  .footer__social{margin-top:22px}
  .footer__social a{width:44px;height:44px}
}

/* ===== видео по кнопке «плей» =====
   Кнопку показываем только когда в assets/video.js задана ссылка на ролик —
   иначе на фото висел бы «плей», который ничего не делает. */
.video-thumb button{display:none}
.pk-has-video .video-thumb button{display:grid}

.pk-video{position:fixed;inset:0;z-index:210;display:grid;place-items:center;padding:16px}
.pk-video__card{position:relative;width:min(960px,100%)}
.pk-video__frame{position:relative;padding-top:56.25%;background:#000;border-radius:16px;overflow:hidden;
  box-shadow:0 30px 90px rgba(28,7,1,.45)}
.pk-video__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.pk-video__x{position:absolute;right:-6px;top:-46px;background:none;border:0;color:#fff;font-size:34px;
  line-height:1;padding:4px 10px;cursor:pointer;opacity:.85}
.pk-video__x:hover{opacity:1}
@media(max-width:560px){
  .pk-video{padding:12px}
  .pk-video__x{top:-40px;font-size:30px}
}


/* видео своим файлом. Контейнер держит пропорции старым способом
   (padding-top:56.25% = 16:9), поэтому сам ролик кладём абсолютом внутрь —
   как это уже сделано для iframe. */
.pk-video__frame video{position:absolute;inset:0;width:100%;height:100%;
  border:0;background:#000;object-fit:contain}
/* вертикальный ролик: узкое окно, свои пропорции вместо padding-хака */
.pk-video--portrait .pk-video__card{width:min(420px,100%)}
.pk-video--portrait .pk-video__frame{padding-top:0;aspect-ratio:3/4;
  max-height:82vh;margin:0 auto}
@media(max-width:560px){
  .pk-video--portrait .pk-video__frame{max-height:74vh}
}

/* Блок «Инструкция по приготовлению», десктоп.
   Плашка «1050 ккал» стояла над сноской и срезала у неё хвост строки.
   Сдвигаем правее — на белое поле тарелки, где она ничего не перекрывает,
   и добавляем то же лёгкое покачивание, что у плашки в блоке о продукте. */
@media(min-width:901px){
  .cooking .calorie-sticker{left:250px;top:556px;animation:cookStickerFloat 5.5s ease-in-out 1.2s infinite}
  .cooking__copy>small{position:relative;z-index:3;max-width:640px}
}
@keyframes cookStickerFloat{
  0%,to{transform:rotate(-7deg) translateY(0)}
  50%{transform:rotate(-5.4deg) translateY(-9px)}
}
@media(prefers-reduced-motion:reduce){
  .cooking .calorie-sticker{animation:none}
}

/* Заголовок блока приготовления + ссылка «Смотреть видео» справа от него */
.cooking__head{display:flex;align-items:baseline;gap:22px;flex-wrap:wrap}
.cooking__head h2{margin-bottom:0}
.cooking__play{display:inline-flex;align-items:center;gap:8px;font-size:17px;
  color:#ffc46b;text-decoration:none;border-bottom:1px solid #ffc46b59;
  padding-bottom:2px;transition:color .18s,border-color .18s;cursor:pointer}
.cooking__play::before{content:"";width:0;height:0;
  border-left:11px solid currentColor;border-top:7px solid transparent;
  border-bottom:7px solid transparent;flex:none}
.cooking__play:hover,.cooking__play:focus-visible{color:#ffd9a3;border-color:#ffd9a3}
.cooking__play:focus-visible{outline:2px solid #ffd9a3;outline-offset:4px;border-radius:3px}
@media(min-width:901px){
  .cooking__head{margin:0 0 56px}
  .cooking__head h2{margin:0}
}
@media(max-width:900px){
  .cooking__head{gap:12px;margin-bottom:18px}
  .cooking__play{font-size:16px}
}

/* У блока приготовления фиксированная высота и overflow:hidden — после
   добавления ссылки в заголовок сноска перестала помещаться и срезалась
   нижним краем. Отпускаем высоту, сохраняя прежнюю как минимум. */
@media(min-width:901px){
  .cooking{height:auto;min-height:709px;padding-bottom:28px}
  .cooking__head{margin:0 0 44px}
}

/* Ссылка «Смотреть видео» не нажималась: контейнер с чашей (.cooking__visual,
   860px, position:absolute) левым краем заходит на заголовок и перехватывает
   клики прозрачной областью картинки. Само изображение декоративное —
   отключаем ему события мыши, а заголовок поднимаем над ним. */
.cooking__head{position:relative;z-index:6}
.cooking__play{position:relative;z-index:7}
.cooking__visual{pointer-events:none}
.cooking__visual .calorie-sticker{pointer-events:none}

/* ============ Кольцо результата калькулятора ============
   Шкала скруглений: контейнер 16, блок 12, контрол 10, метка 4, продукт круг */
.cr{--cr-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,monospace;
  --cr-ease:cubic-bezier(.23,1,.32,1);display:block;
  margin-top:30px;background:#fff;border:1px solid var(--peach);border-radius:16px;
  padding:clamp(18px,3.4cqw,28px);box-shadow:0 10px 30px -22px rgba(90,39,22,.5)}
.cr-head{padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid var(--line)}
.cr-eyebrow{font-family:var(--cr-mono);font-size:11px;font-weight:500;letter-spacing:.13em;
  text-transform:uppercase;color:var(--orange-dark,#e96800);margin:0 0 10px}
.cr-title{font-size:clamp(19px,2.4cqw,23px);line-height:1.25;font-weight:700;margin:0;
  letter-spacing:-.01em;text-wrap:balance}
.cr-hint{font-size:14px;line-height:1.5;color:var(--muted);margin:10px 0 0;max-width:60ch}
/* Карточка калькулятора узкая (553px на 1100), поэтому раскладка считается
   от ширины самой карточки, а не от окна: две колонки только когда влезают */
.calc-card{container-type:inline-size}
.cr-top{display:grid;grid-template-columns:1fr;gap:clamp(18px,4cqw,30px);align-items:center;
  justify-items:center}
.cr-ring{position:relative;width:min(268px,78cqw);aspect-ratio:1;justify-self:center}
.cr-legend{width:100%}
@container (min-width: 640px){
  .cr-top{grid-template-columns:auto 1fr;justify-items:stretch}
  .cr-ring{justify-self:center}
}
.cr-ring svg{width:100%;height:100%;display:block;transform:rotate(-90deg)}
.cr-ring circle{fill:none;stroke-width:42}
.cr-arc{transition:stroke-dasharray 640ms var(--cr-ease)}
.cr-labels text{font-family:var(--cr-mono);font-size:16px;font-weight:600;letter-spacing:.01em}
.cr-mid{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;
  justify-content:center;text-align:center}
.cr-mid b{font-size:clamp(26px,6vw,34px);font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
.cr-mid span{font-size:12px;color:var(--muted);margin-top:4px}
.cr-legend{min-width:0}
.cr-leg strong{overflow-wrap:anywhere}
.cr-leg{display:grid;grid-template-columns:12px 1fr auto;gap:12px;align-items:baseline;
  padding:13px 0;border-bottom:1px solid var(--line)}
.cr-leg:last-of-type{border-bottom:0}
.cr-leg--pic{grid-template-columns:54px 1fr auto;align-items:center;gap:16px}
/* строка продукта — ссылка на карточку товара */
.cr-leg--link{color:inherit;text-decoration:none;cursor:pointer;
  border-radius:10px;padding-left:8px;padding-right:8px;margin-left:-8px;margin-right:-8px;
  transition:background 180ms ease,transform 140ms var(--cr-ease)}
.cr-leg--link:active{transform:scale(.995)}
.cr-leg--link:focus-visible{outline:3px solid #e96800;outline-offset:2px}
.cr-leg--link strong{text-decoration:underline;text-decoration-color:rgba(74,34,20,.28);
  text-underline-offset:3px;transition:text-decoration-color 180ms ease}
@media (hover:hover) and (pointer:fine){
  .cr-leg--link:hover{background:#fffdfb}
  .cr-leg--link:hover strong{text-decoration-color:var(--orange)}
}
.cr-dot{width:12px;height:12px;border-radius:4px;justify-self:center}
.cr-thumb{width:54px;height:54px;border-radius:50%;background:var(--orange);display:grid;
  place-items:center;overflow:hidden;box-shadow:0 0 0 2px #fff,0 0 0 4px currentColor}
.cr-thumb img{width:68%;height:68%;object-fit:contain;display:block}
.cr-leg strong{font-size:14px;font-weight:700;display:block;text-transform:uppercase;
  letter-spacing:.02em;line-height:1.25}
.cr-leg em{font-style:normal;font-size:13px;color:var(--muted);display:block;margin-top:3px}
.cr-kcal{font-size:20px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.cr-kcal sup{font-family:var(--cr-mono);font-size:10px;font-weight:500;color:var(--muted);
  vertical-align:super;margin-left:3px}
.cr-share{font-size:13px;color:var(--muted);margin:12px 0 0}
.cr-warn{margin:20px 0 0;padding:16px 18px;border-radius:12px;background:#fbe7da;
  color:#8f2f14;font-size:15px;line-height:1.45}
.cr-buys{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.cr-buy{flex:1 1 210px;min-height:52px;display:inline-flex;align-items:center;justify-content:center;
  gap:9px;border-radius:10px;font-size:16px;font-weight:600;text-decoration:none;color:#fff;
  transition:transform 140ms var(--cr-ease),box-shadow 200ms ease,background 200ms ease,filter 200ms ease}
.cr-buy:active{transform:scale(.98)}
.cr-buy--ozon{background:#005BFF;box-shadow:0 8px 22px rgba(0,91,255,.24)}
.cr-buy--wb{background:linear-gradient(101deg,#481173,#CB11AB);box-shadow:0 8px 22px rgba(120,25,130,.24)}
.cr-mark{font-weight:700;letter-spacing:-.01em}
.cr-buy--ozon .cr-mark{font-size:19px;text-transform:lowercase}
.cr-buy:focus-visible{outline:3px solid #e96800;outline-offset:2px}
@media (hover:hover) and (pointer:fine){
  .cr-buy--ozon:hover{background:#0049cc;box-shadow:0 10px 26px rgba(0,91,255,.3)}
  .cr-buy--wb:hover{filter:saturate(1.1) brightness(.97);box-shadow:0 10px 26px rgba(120,25,130,.3)}
}
.cr-method{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
.cr-method summary{font-family:var(--cr-mono);font-size:11px;font-weight:500;letter-spacing:.13em;
  text-transform:uppercase;color:var(--muted);cursor:pointer;list-style:none;
  display:inline-flex;align-items:center;gap:8px;padding:4px 0}
.cr-method summary::-webkit-details-marker{display:none}
.cr-method summary::after{content:"";width:7px;height:7px;border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);
  transition:transform .2s ease}
.cr-method[open] summary::after{transform:rotate(-135deg) translate(-2px,-2px)}
.cr-method summary:focus-visible{outline:3px solid #e96800;outline-offset:3px}
.cr-trail{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:12px;overflow:hidden}
.cr-trail li{background:#fff;display:grid;grid-template-columns:1fr auto;gap:14px;
  align-items:baseline;padding:11px 14px}
.cr-expr{font-family:var(--cr-mono);font-size:13px;color:var(--muted);overflow-wrap:anywhere}
.cr-val{font-family:var(--cr-mono);font-size:14px;font-weight:600;
  font-variant-numeric:tabular-nums;white-space:nowrap}
.cr-tag{display:inline-block;margin-left:8px;font-size:10px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--muted);opacity:.8}
.cr-trail li:last-child{background:var(--linen)}
.cr-trail li:last-child .cr-expr,.cr-trail li:last-child .cr-val{color:var(--ink)}
.cr-src{font-family:var(--cr-mono);font-size:11px;line-height:1.6;color:var(--muted);
  margin:12px 0 0;max-width:72ch}
.cr-edu{margin:22px 0 0;font-size:14px;color:var(--muted);max-width:62ch;line-height:1.5}
.cr-foot{margin:14px 0 0;font-size:13px;color:var(--muted);max-width:66ch;line-height:1.5}
.cr-head,.cr-top,.cr-warn,.cr-buys,.cr-method,.cr-edu,.cr-foot{animation:cr-rise 280ms var(--cr-ease) both}
.cr-top{animation-delay:40ms}
.cr-warn{animation-delay:60ms}
.cr-buys{animation-delay:60ms}
.cr-method{animation-delay:110ms}
.cr-edu,.cr-foot{animation-delay:150ms}
@keyframes cr-rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
  .cr-arc{transition:stroke-dasharray 200ms ease}
  .cr-head,.cr-top,.cr-warn,.cr-buys,.cr-method,.cr-edu,.cr-foot{animation:cr-fade 200ms ease both}
  @keyframes cr-fade{from{opacity:0}to{opacity:1}}
}

/* ===== Страница калькулятора: компактная шапка и вертикальная раскладка =====
   .page-hero общий для всех подстраниц, поэтому правка скоуплена через :has() */
body:has(.subpage.calc) .page-hero{padding:clamp(26px,5vw,48px) 0}
body:has(.subpage.calc) .page-hero h1{font-size:clamp(26px,6vw,42px);line-height:1.06;
  letter-spacing:-.02em;margin:0 0 8px;text-wrap:balance}
body:has(.subpage.calc) .page-hero p{font-size:clamp(15px,2.2vw,18px);line-height:1.45;
  max-width:62ch;text-wrap:pretty}
.subpage.calc{padding:clamp(22px,4vw,44px) 0 clamp(48px,7vw,80px)}
/* калькулятор ИМТ уходит под калькулятор калорий */
.subpage.calc .calc-grid{grid-template-columns:1fr;gap:24px;max-width:860px}


/* ===== ИМТ под кнопкой ===== */
.bmi-fold{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}
.bmi-fold summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;
  padding:18px 22px;transition:background 180ms ease}
.bmi-fold summary::-webkit-details-marker{display:none}
.bmi-fold summary span{font-size:17px;font-weight:600}
.bmi-fold summary small{color:var(--muted);font-size:14px;margin-right:auto}
.bmi-fold summary::after{content:"";flex:0 0 auto;width:9px;height:9px;
  border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);
  transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s ease}
.bmi-fold[open] summary::after{transform:rotate(-135deg) translate(-2px,-2px)}
.bmi-fold[open] summary{border-bottom:1px solid var(--line)}
.bmi-fold summary:focus-visible{outline:3px solid #e96800;outline-offset:-3px}
@media (hover:hover) and (pointer:fine){.bmi-fold summary:hover{background:#fffaf6}}
.bmi-fold .calc-card{background:transparent;border-radius:0}
@media (max-width:560px){
  .bmi-fold summary{flex-wrap:wrap;padding:16px 18px;gap:4px 12px}
  .bmi-fold summary span{flex:1 1 auto}
  .bmi-fold summary small{flex:1 1 100%;margin-right:0}
}

/* ===== десктоп: карточка на всю ширину контейнера ===== */
.subpage.calc .calc-grid{max-width:none}
@container (min-width: 900px){
  .calc-fields{grid-template-columns:repeat(3,1fr)}
  .calc-fields .calc-fields__wide,.calc-fields label:last-of-type{grid-column:span 2}
  .calc-card > .button--orange{min-width:280px;width:auto}
  .cr-buys{max-width:620px}
  .cr-legend{max-width:640px}
  .cr-title{font-size:26px}
  .cr-ring{width:300px}
  .cr-top{gap:40px}
}

/* --- две секции карточек: завтрак и коктейль --- */
.product-cards__title{font-size:36px;line-height:1.15;font-weight:600;letter-spacing:-.025em;color:var(--ink,#3d170c);text-align:center;margin:0 0 42px;text-wrap:balance}
#buy-shake{min-height:0;padding-bottom:24px}
#buy-shake .product-cards__inner{padding-top:8px}
@media(max-width:900px){.product-cards__title{font-size:28px;margin:0 0 30px}#buy-shake .product-cards__inner{padding-top:0}}

/* --- значок выгоды на наборах из нескольких упаковок --- */
.product-card__body{position:relative}
.product-card__save{position:absolute;top:-15px;right:16px;z-index:4;background:#c0341d;color:#fff;font-size:13px;font-weight:600;line-height:1;letter-spacing:-.01em;padding:7px 11px;border-radius:64px;font-variant-numeric:tabular-nums;box-shadow:0 4px 12px rgba(120,26,10,.22)}
@media(max-width:900px){.product-card__save{font-size:12px;padding:6px 10px}}
