/* Баумяу · вёрстка по итоговому макету (Figma «Г · проверка 1920»), брендбук «Тихо».
   Лист — белый с розовой клеткой; цветные блоки — на скруглённых подложках; текст — графит. */
:root{
  --ink:#1F1B18; --milk:#FCF8F5; --white:#FFFFFF; --lime:#D3F362; --pink:#FE71C0; --lemon:#F6F0A4; --lilac:#A59DFF; --beige:#F1EAE2;
  --ink-70:rgba(31,27,24,.72); --ink-55:rgba(31,27,24,.55); --ink-18:rgba(31,27,24,.18); --ink-10:rgba(31,27,24,.1);
  --gridc:rgba(254,113,192,.28); --gridw:rgba(255,255,255,.5);
  --f:"Nunito Sans","Segoe UI",Roboto,Arial,sans-serif; --hand:"Caveat","Segoe Print","Comic Sans MS",cursive;
  --step:60px; --gut:60px; --pm:20px; --rp:40px; --pad:80px; --open:120px;
  --h1:72px; --cav:48px; --body:20px; --hdr:88px;
  --ease:cubic-bezier(.2,.8,.2,1); --back:cubic-bezier(.34,1.56,.64,1);
  color-scheme:light;
}
@media (max-width:1099px){:root{--step:40px;--gut:40px;--pm:20px;--pad:60px;--open:88px;--h1:56px;--cav:36px;--body:18px;--hdr:80px}}
@media (max-width:699px){:root{--step:30px;--gut:24px;--pm:8px;--rp:28px;--pad:36px;--open:56px;--h1:40px;--cav:26px;--body:16px;--hdr:64px}}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--f);font-size:var(--body);line-height:1.45;color:var(--ink);background-color:var(--white);
  background-image:linear-gradient(var(--gridc) 1px,transparent 1px),linear-gradient(90deg,var(--gridc) 1px,transparent 1px);
  background-size:var(--step) var(--step);background-position:calc(50% + var(--step)/2) 0;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--white)}
img{max-width:100%;display:block}
button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;padding:0}
a{color:inherit}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:12px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.wrap{width:100%;max-width:calc(1320px + 2*var(--gut));margin-inline:auto;
  padding-left:max(var(--gut),env(safe-area-inset-left,0px));padding-right:max(var(--gut),env(safe-area-inset-right,0px))}
.panel{margin-inline:var(--pm);border-radius:var(--rp);background-color:var(--beige);padding-block:var(--pad);position:relative}
.panel>.wrap{max-width:calc(1320px + 2*var(--gut) - 2*var(--pm));padding-left:max(calc(var(--gut) - var(--pm)),16px);padding-right:max(calc(var(--gut) - var(--pm)),16px)}
.h1{font-weight:900;font-size:var(--h1);line-height:1.05;margin:0;letter-spacing:-.005em;text-wrap:balance}
.cav{font-family:var(--hand);font-weight:700;font-size:var(--cav);line-height:1.1;margin:.18em 0 0}

/* pills (brandbook «Форма / Пилюля») */
.pill{display:inline-flex;align-items:center;justify-content:center;gap:.4em;height:55px;padding:0 30px;border-radius:999px;
  font-weight:800;font-size:22px;letter-spacing:.01em;text-transform:uppercase;text-decoration:none;white-space:nowrap;
  transition:transform .25s var(--back),box-shadow .25s,background-color .2s}
.pill:hover{transform:translateY(-2px) rotate(-1.5deg)}
.pill:active{transform:translateY(1px) scale(.98)}
.pill-pink{background:var(--pink)}.pill-lime{background:var(--lime)}.pill-lilac{background:var(--lilac)}.pill-lemon{background:var(--lemon)}
.pill-white{background:var(--white);box-shadow:inset 0 0 0 1.5px var(--ink-18)}
.pill.sm{height:43px;padding:0 20px;font-size:16px}
.pill[disabled]{opacity:.45;pointer-events:none}

/* ---------- header ---------- */
.hdr{position:fixed;top:env(safe-area-inset-top,0px);left:0;right:0;z-index:50;height:var(--hdr);display:flex;align-items:center;gap:32px;
  padding-left:max(var(--gut),env(safe-area-inset-left,0px));padding-right:max(var(--gut),env(safe-area-inset-right,0px));transition:background-color .3s,box-shadow .3s}
.hdr.solid{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--ink-10)}
.hdr-logo{width:200px;flex:none;opacity:0;transform:translateY(-8px);transition:opacity .35s,transform .35s var(--ease);pointer-events:none}
.hdr.with-logo .hdr-logo{opacity:1;transform:none;pointer-events:auto}
.hdr-nav{margin-left:auto;display:flex;gap:28px;font-weight:700;font-size:16px}
.hdr-nav a{text-decoration:none;position:relative;padding:6px 0}
.hdr-nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;border-radius:3px;background:var(--pink);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.hdr-nav a:hover::after{transform:scaleX(1)}
.hdr-cart{height:44px;padding:0 22px;font-size:19px}
.hdr-cart.bump{animation:bump .5s var(--back)}
@keyframes bump{0%{transform:scale(1)}40%{transform:scale(1.18) rotate(-4deg)}100%{transform:scale(1)}}
.burger{display:none;width:40px;height:40px;border-radius:50%;background:var(--white);box-shadow:inset 0 0 0 1.5px var(--ink-18);position:relative;flex:none}
.burger i{position:absolute;left:12px;width:16px;height:2px;border-radius:2px;background:var(--ink)}
.burger i:nth-child(1){top:14px}.burger i:nth-child(2){top:19px}.burger i:nth-child(3){top:24px}
@media (max-width:999px){.hdr-nav{display:none}.burger{display:block}.hdr-cart{margin-left:auto}}
@media (max-width:699px){.hdr{gap:8px}.hdr-logo{width:124px}.hdr-cart{height:40px;padding:0 16px;font-size:14px}}

/* ---------- hero (окно раскрывается при прокрутке) ---------- */
.hero{position:relative;height:var(--heroH,100svh)}
.stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
#viewHome{overflow-x:clip}
.stage[data-mode="ph"] .sl-big{font-size:28px}.stage[data-mode="ph"] .sl-sub{font-size:12px;margin-top:6px}.stage[data-mode="ph"] .sl-btns{gap:8px;margin-top:16px}.stage[data-mode="ph"] .sl-btns .pill{height:48px;font-size:16px;padding:0 20px}.stage[data-mode="ph"] .hint{font-size:20px}.stage[data-mode="ph"] .win-frame{border-radius:24px;box-shadow:0 0 0 9px var(--white),0 12px 28px rgba(31,27,24,.16)}
.hbox{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform}
.hbox .el{position:absolute;will-change:transform}
.reveal{position:absolute;z-index:2;overflow:hidden;will-change:clip-path}
.vid{position:absolute;inset:0;background-color:#EFE7DE;background-image:linear-gradient(var(--gridc) 1px,transparent 1px),linear-gradient(90deg,var(--gridc) 1px,transparent 1px);background-size:60px 60px}
.vid-label{position:absolute;left:0;top:0;display:grid;justify-items:center;gap:6px;text-align:center;color:var(--ink);transform-origin:50% 50%;width:300px}
.vid-label i{width:38px;height:38px;border-radius:50%;border:2px dashed var(--ink-55);display:grid;place-items:center;margin-bottom:6px}
.vid-label i::after{content:"";border-left:11px solid var(--ink-55);border-top:7px solid transparent;border-bottom:7px solid transparent;margin-left:3px}
.vid-label b{font-size:14px;font-weight:800;opacity:.75}.vid-label small{font-size:12px;opacity:.55}
.win-frame{z-index:1;border-radius:30px;box-shadow:0 0 0 12px var(--white),0 18px 40px rgba(31,27,24,.16)}
.word{z-index:3;pointer-events:none}.word img{width:100%}
.st{z-index:4}
.st img,.dr img{width:100%;pointer-events:none}
.dr{z-index:0}
.float{animation:float 5.5s ease-in-out infinite}
.float.d2{animation-duration:6.5s;animation-delay:-2s}.float.d3{animation-duration:7s;animation-delay:-3.5s}
@keyframes float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-10px) rotate(3deg)}}
.sun img{animation:sun 9s ease-in-out infinite}@keyframes sun{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}
.heart img{animation:beat 1.6s ease-in-out infinite}@keyframes beat{0%,60%,100%{transform:scale(1)}20%{transform:scale(1.14)}40%{transform:scale(.96)}}
.flower img{transform-origin:50% 100%;animation:sway 4s ease-in-out infinite}@keyframes sway{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}
.slogan{z-index:5;text-align:center}
.sl-big{margin:0;font-weight:900;font-size:56px;line-height:1;white-space:nowrap}
.sl-sub{margin:14px 0 0;font-weight:900;font-size:14px;letter-spacing:.08em;text-transform:uppercase}
.sl-btns{display:flex;gap:12px;justify-content:center;margin-top:16px}
.hint{z-index:5;margin:0;text-align:center;font-family:var(--hand);font-weight:700;font-size:24px}
.ribbon{position:relative;width:114vw;margin-left:-7vw;pointer-events:none;z-index:6}
.ribbon svg{width:100%;height:auto;display:block;overflow:visible}
.ribbon text{font-family:var(--f);font-weight:900;font-size:30px;fill:var(--ink);letter-spacing:.5px}
.ribbon-stage{position:absolute;left:0;bottom:var(--ribB,-5%)}
.ribbon-flow{margin-top:calc(var(--pad) * -.2);margin-bottom:-60px}
/* entrance */
.intro .word-bau{animation:dropL .9s var(--back) both}.intro .word-myau{animation:dropR .9s .12s var(--back) both}
.intro .win-frame,.intro .reveal{animation:pop .8s .05s var(--back) both}
.intro .st{animation:pop .7s .45s var(--back) both}.intro .slogan{animation:up .7s .3s var(--ease) both}
@keyframes dropL{from{opacity:0;translate:-60px -40px;rotate:-6deg}to{opacity:1;translate:0 0;rotate:0deg}}
@keyframes dropR{from{opacity:0;translate:60px -40px;rotate:6deg}to{opacity:1;translate:0 0;rotate:0deg}}
@keyframes pop{from{opacity:0;scale:.85}to{opacity:1;scale:1}}
@keyframes up{from{opacity:0;translate:0 24px}to{opacity:1;translate:0 0}}

/* ---------- catalog ---------- */
.cat{margin-top:0}
.cat-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap;margin-bottom:64px}
.filters{display:flex;gap:8px;flex-wrap:wrap;padding-top:16px}
.filters button{height:43px;padding:0 20px;border-radius:999px;background:var(--white);font-weight:800;font-size:16px;text-transform:uppercase;letter-spacing:.02em;transition:background-color .2s,transform .25s var(--back)}
.filters button:hover{transform:translateY(-2px)}
.filters button[aria-pressed="true"]{background:var(--lime)}
.cards-wrap{position:relative}
.stamp{position:absolute;width:150px;right:-4px;top:-60px;transform:rotate(-12deg);z-index:2;pointer-events:none}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 24px}
.card{cursor:pointer;outline:none;transition:opacity .35s,transform .35s var(--ease)}
.card.out{opacity:0;transform:scale(.92)}
.card[hidden]{display:none}
.tile{position:relative;aspect-ratio:424/440;background:var(--white);border-radius:32px;display:grid;place-items:center;overflow:hidden;transition:transform .35s var(--back),box-shadow .35s}
.tile .ill{width:72%;height:72%;object-fit:contain;transition:transform .5s var(--back)}
.card:hover .tile,.card:focus-visible .tile{transform:translateY(-6px);box-shadow:0 18px 40px rgba(31,27,24,.1)}
.card:hover .ill{transform:rotate(-4deg) scale(1.05)}
.card:focus-visible .tile{outline:3px solid var(--ink);outline-offset:3px}
.status{position:absolute;left:22px;top:22px;height:37px;padding:0 16px;border-radius:999px;background:var(--lemon);font-weight:900;font-size:14px;letter-spacing:.04em;display:flex;align-items:center;text-transform:uppercase;white-space:nowrap;z-index:1}
.status.soon{background:var(--white);box-shadow:inset 0 0 0 1.5px var(--ink-18)}
.tile .status.soon{background:var(--milk)}
.plus{position:absolute;right:22px;bottom:22px;width:60px;height:60px;border-radius:50%;background:var(--lime);display:grid;place-items:center;font-size:40px;font-weight:700;line-height:1;transition:transform .4s var(--back)}
.card:hover .plus{transform:rotate(90deg) scale(1.08)}
.card h3{margin:22px 0 0;font-weight:900;font-size:28px;line-height:1.35}
.card-desc{margin:2px 0 0;font-size:18px;color:var(--ink-70)}
.card-foot{display:flex;justify-content:space-between;align-items:flex-start;margin-top:10px;gap:12px}
.price{position:relative;font-weight:900;font-size:30px;line-height:1.3;display:inline-block;padding-bottom:12px}
.squig{position:absolute;left:-2px;right:-6px;bottom:0;height:14px;width:calc(100% + 8px)}
.dots{display:flex;gap:8px;padding-top:12px}
.dots i{width:22px;height:22px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--ink-18)}
@media (max-width:1099px){.cards{gap:36px 20px}.card h3{font-size:20px;margin-top:14px}.card-desc{font-size:14px}.price{font-size:22px}.status{height:26px;font-size:11px;left:12px;top:12px;padding:0 10px}.plus{width:44px;height:44px;font-size:30px;right:10px;bottom:10px}.dots{gap:5px;padding-top:6px}.dots i{width:16px;height:16px}.card-foot{flex-direction:column;gap:0}.stamp{width:110px;top:-150px}.tile{border-radius:28px}}
@media (max-width:699px){.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}.card-desc{display:none}.card h3{font-size:16px;line-height:1.25;margin-top:10px}.price{font-size:18px;padding-bottom:9px}.squig{height:10px}.status{height:22px;font-size:10px;left:10px;top:10px;padding:0 8px}.plus{width:36px;height:36px;font-size:24px;right:8px;bottom:8px}.dots i{width:13px;height:13px}.tile{border-radius:24px}.cat-head{margin-bottom:24px}.filters{flex-wrap:nowrap;overflow-x:auto;margin-inline:-16px;padding:4px 16px;scrollbar-width:none}.filters::-webkit-scrollbar{display:none}.filters button{flex:none;height:38px;font-size:14px;padding:0 16px}.stamp{width:76px;top:-128px;right:0}}

/* ---------- family ---------- */
.fam{background-color:var(--lime);background-image:linear-gradient(var(--gridw) 1px,transparent 1px),linear-gradient(90deg,var(--gridw) 1px,transparent 1px);background-size:var(--step) var(--step);background-position:calc(50% + var(--step)/2) 0;overflow:hidden;margin-top:20px}
.fan{position:relative;height:540px;margin-top:24px}
.fc{position:absolute;left:50%;top:40px;width:221px;margin:0;cursor:pointer;perspective:1100px;
  transition:transform .7s var(--back);transform-origin:50% 120%;user-select:none;-webkit-user-select:none;outline:none}
.fc:focus-visible .fc-f,.fc:focus-visible .fc-b{outline:3px solid var(--ink);outline-offset:4px}
.fc-in{position:relative;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform .75s var(--back)}
.fc.flip .fc-in{transform:rotateY(180deg)}
.fc-f,.fc-b{border:3px solid var(--ink);border-radius:18px;overflow:hidden;-webkit-backface-visibility:hidden;backface-visibility:hidden}
.fc-f{background:var(--white);box-shadow:6px 6px 0 var(--ink)}
.fc-b{position:absolute;inset:0;transform:rotateY(180deg);background:var(--bg,var(--milk));box-shadow:6px 6px 0 var(--ink);padding:16px 16px 14px;display:flex;flex-direction:column;text-align:left}
.fc-b b{font-weight:900;font-size:22px;line-height:1.1}
.fc-b .role{font-family:var(--hand);font-weight:700;font-size:22px;line-height:1.05;margin-top:4px}
.fc-b p{margin:12px 0 0;font-size:14.5px;line-height:1.42}
.fc-b small{margin-top:auto;padding-top:8px;font-weight:800;font-size:12px;letter-spacing:.04em;text-transform:uppercase;opacity:.6}
.fc .ph{position:relative;height:263px;background:var(--bg,var(--milk));display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.fc .ph img{height:92%;width:auto;max-width:none;object-fit:contain;transition:transform .5s var(--back)}
.fc .ph img.pet{height:70%}
.fc:hover .ph img{transform:translateY(-6px) scale(1.04)}
.fc .snd{position:absolute;left:10px;top:10px;padding:3px 9px;border:2.5px solid var(--ink);border-radius:9px;background:var(--white);font-weight:900;font-size:15px;transition:transform .35s var(--back)}
.fc.say .snd{animation:say .6s var(--back)}
@keyframes say{0%{transform:scale(1)}35%{transform:scale(1.5) rotate(-8deg)}100%{transform:scale(1)}}
.fc figcaption{position:relative;border-top:3px solid var(--ink);padding:9px 40px 12px 12px;min-height:60px}
.fc figcaption b{display:block;font-weight:900;font-size:18px;line-height:1.2}
.fc figcaption span{display:block;font-size:13px;color:var(--ink-70);line-height:1.3}
.turn{position:absolute;right:9px;bottom:10px;width:26px;height:26px;border-radius:50%;background:var(--lime);box-shadow:inset 0 0 0 2px var(--ink);transition:transform .45s var(--back)}
.turn::before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231F1B18' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12a7 7 0 1 1-2.1-5'/%3E%3Cpath d='M19 4v4h-4'/%3E%3C/svg%3E") center/14px no-repeat}
.fc:hover .turn{transform:rotate(200deg) scale(1.12)}
.fam-tip{white-space:nowrap}
.fan-ui{display:none;align-items:center;justify-content:space-between;margin-top:8px}
.fan-dots{display:flex;gap:6px}.fan-dots i{height:8px;width:8px;border-radius:4px;background:var(--ink);opacity:.25;transition:width .3s,opacity .3s}.fan-dots i.on{width:20px;opacity:1}
.fan-ui .cav{font-size:22px;margin:0}
@media (max-width:1099px){
  .fan{height:auto;display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1*max(calc(var(--gut) - var(--pm)),16px));padding:30px max(calc(var(--gut) - var(--pm)),16px) 30px;scrollbar-width:none}
  .fan::-webkit-scrollbar{display:none}
  .fc{position:relative;left:auto;top:auto;flex:none;scroll-snap-align:start;transform:rotate(var(--rot,0deg))}
  .fan-ui{display:flex}}
@media (max-width:1099px){.fam-tip{display:none}}
@media (max-width:699px){.fc{width:177px}.fc .ph{height:210px}.fc figcaption{min-height:50px;padding:7px 34px 10px 10px}.fc figcaption b{font-size:15px}.fc figcaption span{font-size:12px}.fc .snd{font-size:12px;padding:2px 7px}
  .turn{width:22px;height:22px;right:7px;bottom:8px}.turn::before{background-size:12px}
  .fc-b{padding:12px 12px 10px}.fc-b b{font-size:17px}.fc-b .role{font-size:18px}.fc-b p{font-size:12.5px;line-height:1.38;margin-top:8px}.fc-b small{font-size:10px}}

/* ---------- how we make ---------- */
.how{position:relative;padding-block:var(--open);overflow:hidden}
.how-head{display:grid;grid-template-columns:auto 1fr minmax(0,520px);align-items:start;gap:24px 30px;margin-bottom:64px}
.how-head .loop{width:130px;margin-top:30px}
.how-head p{margin:14px 0 0;color:var(--ink-70)}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px;position:relative}
.thread{position:absolute;left:-100vw;right:-100vw;height:12px;border-radius:6px;background:var(--lime);top:280px;transform:scaleX(0);transform-origin:left;transition:transform 1.4s var(--ease);z-index:0}
.steps.in .thread{transform:scaleX(1)}
.step{position:relative;z-index:1}
.ph-box{aspect-ratio:200/271;border:2px dashed rgba(31,27,24,.28);border-radius:22px;background:var(--beige);display:grid;place-items:center;text-align:center;padding:12px;font-size:13px;font-weight:800;color:var(--ink-70)}
.ph-box small{display:block;font-weight:600;opacity:.7;margin-top:4px}
.srow{display:flex;justify-content:space-between;align-items:flex-end;margin-top:-17px}
.step .ico{width:64px;height:64px;margin-left:-2px;background:var(--white);border-radius:50%;display:grid;place-items:center;position:relative}
.step .ico img{max-width:56px;max-height:56px}
.step .num{font-weight:900;font-size:15px;opacity:.45;padding-bottom:6px}
.step h3{margin:28px 0 0;font-weight:900;font-size:21px;line-height:1.35}
.step p{margin:2px 0 0;font-size:16px;color:var(--ink-70)}
.pre-step{opacity:0;transform:translateY(-36px) rotate(-10deg)}
.step.in{opacity:1;transform:none;transition:opacity .4s,transform .8s var(--back)}
@media (max-width:1099px){.how-head{grid-template-columns:auto 1fr;}.how-head p{grid-column:1/-1;max-width:640px}.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 24px}.thread{display:none}.step .ico{background:var(--white)}}
@media (max-width:699px){
  .how-head{margin-bottom:36px}.how-head .loop{width:80px;margin-top:10px}
  .steps{grid-template-columns:1fr;gap:22px;padding-left:0}
  .steps::before{content:"";position:absolute;left:22px;top:60px;bottom:60px;width:8px;border-radius:4px;background:var(--lime);transform:scaleY(var(--grow,0));transform-origin:top;transition:transform .2s linear}
  .step{display:grid;grid-template-columns:48px 100px 1fr;gap:0 18px;align-items:center}.srow{display:contents}
  .step .ph-box{grid-column:2;grid-row:1/4;font-size:9px;padding:6px;border-radius:16px}
  .step .ico{grid-column:1;grid-row:1/4;width:56px;height:56px;margin:0 0 0 -4px}
  .step .ico img{max-width:44px;max-height:44px}
  .step .num{position:static;grid-column:3;font-size:13px;align-self:end}
  .step h3{grid-column:3;margin:2px 0 0;font-size:18px;line-height:1.3}
  .step p{grid-column:3;align-self:start;font-size:14px}}

/* ---------- surprise ---------- */
.sur-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,600px);gap:60px;align-items:center}
.sur-text .h1{margin-top:24px;max-width:560px}
.sur-text p{margin:24px 0 0;max-width:500px;color:var(--ink-70)}
.sur-text .cav{margin-top:60px;color:var(--ink);transition:opacity .3s}
.pack{position:relative;aspect-ratio:1;max-width:600px;width:100%;justify-self:end}
.pack>img{width:100%;border-radius:16px;transition:transform .6s var(--back)}
.pack.open>img{transform:none}
.reseal{font-family:var(--hand);font-weight:700;font-size:24px;text-decoration:underline;margin-top:6px;display:none}
.pack.open~* .reseal,.sur.opened .reseal{display:inline-block}
@media (max-width:1099px){.sur-grid{grid-template-columns:minmax(0,1fr) minmax(0,330px);gap:28px}.sur-text .cav{margin-top:28px}}
@media (max-width:699px){.sur-grid{grid-template-columns:1fr}.pack{justify-self:center}.sur-text .cav{text-align:center;order:3}}

/* ---------- FAQ ---------- */
.faq{padding-block:var(--open);position:relative}
.faq-grid{display:grid;grid-template-columns:minmax(0,440px) minmax(0,780px);justify-content:space-between;gap:40px}
.faq-aside{position:relative}
.faq-dog{width:158px;position:absolute;left:270px;top:180px;transform:rotate(5deg)}
.faq-aside h3{margin:236px 0 0;font-size:30px;font-weight:900}
.faq-aside p{margin:6px 0 0;color:var(--ink-70);max-width:440px}
.faq-aside .pill{margin-top:40px;height:59px;font-size:22px;padding:0 28px;width:100%}
.faq-list{position:relative;padding-top:18px}
.margin-line{position:absolute;right:56px;top:calc(-1*var(--open));bottom:calc(-1*var(--open));width:2px;background:var(--pink)}
.qa{position:relative}
.q{display:grid;grid-template-columns:56px 1fr 44px;align-items:center;gap:0 24px;width:100%;text-align:left;padding:13px 0}
.qn{font-weight:700;font-size:16px;opacity:.5}
.qt{font-weight:900;font-size:30px;line-height:1.3}
.qb{width:44px;height:44px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--ink);background:var(--white);position:relative;transition:background-color .25s,transform .35s var(--back)}
.qb::before,.qb::after{content:"";position:absolute;left:50%;top:50%;width:16px;height:2px;margin:-1px 0 0 -8px;background:var(--ink);border-radius:2px;transition:transform .35s var(--back)}
.qb::after{transform:rotate(90deg)}
.qa.open .qb{background:var(--lime);box-shadow:none;transform:rotate(180deg)}
.qa.open .qb::after{transform:rotate(0deg)}
.q:hover .qb{transform:scale(1.08)}
.a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease)}
.a>div{overflow:hidden}
.a p{margin:0 68px 24px 80px;max-width:620px;font-size:21px;color:var(--ink-70)}
.qa.open .a{grid-template-rows:1fr}
@media (max-width:1099px){.faq-grid{grid-template-columns:1fr}.faq-aside{display:grid;grid-template-columns:minmax(0,1fr) 140px;gap:0 20px;order:2}.faq-aside>.h1,.faq-aside>.cav{display:none}.faq-dog{position:static;grid-column:2;grid-row:1/4;width:130px}.faq-aside h3{margin:0;grid-column:1}.faq-aside p{grid-column:1}.faq-aside .pill{grid-column:1;width:auto;margin-top:20px;height:48px;font-size:18px}.faq-head-m{display:block!important}.margin-line{right:56px}.q{grid-template-columns:48px 1fr 44px}.qt{font-size:26px}.a p{margin-left:72px;font-size:18px}}
@media (max-width:699px){.margin-line{right:42px}.q{grid-template-columns:44px 1fr 36px;gap:0 12px;padding:8px 0}.qn{font-size:13px}.qt{font-size:20px}.qb{width:36px;height:36px}.qb::before,.qb::after{width:14px;margin-left:-7px}.a p{margin:0 58px 18px 56px;font-size:15px}.faq-aside{grid-template-columns:minmax(0,1fr) 100px}.faq-dog{width:100px}.faq-aside h3{font-size:24px}.faq-aside p{font-size:16px}.faq-aside .pill{grid-column:1/-1;width:100%;font-size:15px}}
.faq-head-m{display:none;margin-bottom:12px}


/* ---------- footer ---------- */
.foot{padding-bottom:40px}
.band{margin-inline:var(--pm);border-radius:var(--rp);overflow:hidden;background:var(--lilac);margin-top:20px}
.band img{width:100%;height:auto;aspect-ratio:2299/371;object-fit:cover}
.foot-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1.2fr) minmax(0,1.1fr);gap:40px;padding-block:62px 40px}
.foot-logo img{width:420px;max-width:100%}
.foot-logo span{display:block;font-weight:700;font-size:21px;margin-top:10px}
.foot-menu,.foot-docs,.foot-contacts{display:flex;flex-direction:column;gap:9px}
.foot-menu a{font-weight:700;font-size:18px;text-decoration:none}
.foot-contacts b{font-weight:900;font-size:22px}
.foot-contacts a,.foot-contacts span{font-size:18px;text-decoration:none}
.foot-docs a,.foot-docs button{font-size:15px;text-align:left;text-decoration:none;color:var(--ink-70)}
.foot a:hover,.foot-docs button:hover{text-decoration:underline}
.foot-legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 24px;font-size:14px;color:var(--ink-70)}
.foot-legal p{margin:0}
@media (max-width:1099px){.foot-grid{grid-template-columns:1fr 1fr 1.2fr;gap:28px}.foot-logo{grid-column:1/-1}.foot-logo img{width:300px}}
@media (max-width:699px){.foot-grid{grid-template-columns:1fr 1fr;gap:24px 16px;padding-block:36px 28px}.foot-logo img{width:252px}.foot-docs{grid-column:1/-1}.foot-contacts b{font-size:17px}.foot-contacts a{font-size:15px}.foot-menu a{font-size:16px}.foot-legal{flex-direction:column;font-size:12px}}

/* scroll reveal */
.pre{opacity:0;transform:translateY(28px)}
.pre.in{opacity:1;transform:none;transition:opacity .7s var(--ease),transform .8s var(--ease)}

/* ---------- popup ---------- */
.pp{position:fixed;inset:0;z-index:70;display:grid;place-items:center}
.pp-back{position:absolute;inset:0;background:rgba(252,248,245,.78);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fade .3s both}
.pp.closing .pp-back{animation:fade .25s reverse both}
@keyframes fade{from{opacity:0}to{opacity:1}}
.pp-card{position:relative;width:min(1600px,calc(100vw - 2*max(40px,env(safe-area-inset-left,0px))));height:min(1000px,calc(100svh - 64px));background:var(--white);border-radius:40px;box-shadow:0 30px 80px rgba(31,27,24,.18);
  display:grid;grid-template-columns:minmax(0,900fr) minmax(380px,640fr);overflow:hidden;animation:ppIn .5s var(--back) both}
.pp.closing .pp-card{animation:ppOut .25s var(--ease) both}
@keyframes ppIn{from{opacity:0;transform:translateY(40px) scale(.96)}to{opacity:1;transform:none}}
@keyframes ppOut{to{opacity:0;transform:translateY(30px) scale(.97)}}
.pp-x{position:absolute;right:24px;top:24px;width:56px;height:56px;border-radius:50%;background:var(--beige);z-index:5;display:grid;place-items:center;transition:transform .3s var(--back)}
.pp-x:hover{transform:rotate(90deg)}
.pp-x svg{width:20px;height:20px}
.pp-handle{display:none}
.pp-sw{position:relative;margin:24px;min-height:0}
.pp-stage{position:relative;height:100%;border-radius:28px;background-color:var(--beige);background-image:linear-gradient(var(--gridc) 1px,transparent 1px),linear-gradient(90deg,var(--gridc) 1px,transparent 1px);background-size:60px 60px;overflow:hidden;min-height:0}
.pp-stage .status{left:24px;top:24px}
.pp-visual{position:absolute;inset:80px 40px 150px;display:flex;align-items:center;justify-content:center}
.pp-visual canvas,.pp-visual>img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transition:transform .5s var(--back)}
.pp-visual .bump{animation:vbump .45s var(--back)}
@keyframes vbump{0%{transform:scale(1)}40%{transform:scale(1.05) rotate(-1.5deg)}100%{transform:scale(1)}}
.pp-visual .spot{position:absolute;width:62%;aspect-ratio:1.1;border-radius:46% 54% 50% 50%/55% 48% 52% 45%;transition:background-color .4s;z-index:0;opacity:.9}
.pp-visual .spot+img{position:relative;z-index:1}
.three{position:absolute;inset:0;z-index:1}
.three canvas{width:100%!important;height:100%!important;touch-action:none}
.pp-hint{position:absolute;left:0;right:0;bottom:122px;text-align:center;margin:0;font-family:var(--hand);font-weight:700;font-size:24px}
.pp-thumbs{position:absolute;left:24px;bottom:24px;display:flex;gap:10px}
.pp-thumbs button{width:84px;height:84px;border-radius:18px;background:var(--white);font-size:11px;font-weight:800;line-height:1.15;padding:6px;color:var(--ink-70);box-shadow:inset 0 0 0 2px transparent;transition:box-shadow .2s,transform .25s var(--back)}
.pp-thumbs button[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--ink);color:var(--ink)}
.pp-thumbs button:hover{transform:translateY(-3px)}
.pp-stamp{position:absolute;right:-40px;bottom:-34px;width:150px;transform:rotate(-12deg);pointer-events:none;z-index:6}
.pp-tools{position:absolute;right:24px;top:24px;display:flex;gap:8px}
.pp-tools button{height:40px;padding:0 16px;border-radius:999px;background:var(--white);font-weight:800;font-size:13px;text-transform:uppercase}
.pp-ph{position:absolute;inset:0;display:grid;place-items:center;text-align:center;font-weight:800;color:var(--ink-70)}
.pp-ph span{border:2px dashed rgba(31,27,24,.3);border-radius:24px;padding:40px 30px;background:rgba(255,255,255,.6)}
.pp-info{display:flex;flex-direction:column;min-height:0;padding:56px 56px 32px 32px}
.pp-scroll{overflow:auto;flex:1;min-height:0;padding-right:8px;scrollbar-width:thin}
.rubric{margin:0;font-weight:900;font-size:14px;letter-spacing:.1em;opacity:.55}
.pp-info h2{margin:8px 0 0;font-weight:900;font-size:clamp(34px,3vw,56px);line-height:1.05;text-wrap:balance;padding-right:56px}
.pp-info .cav{font-size:clamp(28px,2.2vw,40px);margin-top:4px}
.pp-price{margin:14px 0 0}
.pp-price .price{font-size:40px}
.pp-lead{margin:12px 0 0;font-size:17px;color:var(--ink-70);max-width:520px}
.grp{margin-top:26px}
.grp-lab{font-weight:900;font-size:14px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px}
.grp-lab span{font-weight:700;letter-spacing:0;text-transform:none;opacity:.6}
.seg{display:flex;flex-wrap:wrap;gap:8px}
.seg button{height:46px;padding:0 20px;border-radius:999px;background:var(--white);box-shadow:inset 0 0 0 1.5px var(--ink-18);font-weight:700;font-size:16px;transition:background-color .2s,transform .25s var(--back)}
.seg button small{font-weight:600;opacity:.6;margin-left:4px}
.seg button[aria-pressed="true"]{background:var(--lime);box-shadow:none}
.seg button:hover{transform:translateY(-2px)}
.sws{display:flex;flex-wrap:wrap;gap:6px}
.sw{width:44px;height:44px;border-radius:50%;padding:5px;box-shadow:inset 0 0 0 2px transparent;transition:box-shadow .2s,transform .25s var(--back)}
.sw i{display:block;width:100%;height:100%;border-radius:50%;box-shadow:inset 0 0 0 1px var(--ink-18)}
.sw[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--ink)}
.sw:hover{transform:scale(1.12)}
.fixed-cols{display:flex;align-items:center;gap:10px;font-size:15px;color:var(--ink-70)}
.fixed-cols i{width:34px;height:34px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--ink-18)}
.presets{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.presets button{flex:none;display:flex;align-items:center;gap:8px;height:42px;padding:0 14px 0 6px;border-radius:999px;background:var(--milk);box-shadow:inset 0 0 0 1.5px var(--ink-10);font-size:14px;font-weight:700}
.presets button b{display:flex}.presets button b i{width:26px;height:26px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--ink-18)}.presets button b i+i{margin-left:-8px}
.chk{display:flex;gap:12px;align-items:flex-start;font-size:15px;cursor:pointer;line-height:1.4}
.chk input{appearance:none;-webkit-appearance:none;flex:none;width:24px;height:24px;border-radius:7px;background:var(--white);box-shadow:inset 0 0 0 1.5px rgba(31,27,24,.35);margin:0;cursor:pointer;display:grid;place-items:center;transition:background-color .2s}
.chk input:checked{background:var(--lime);box-shadow:inset 0 0 0 1.5px var(--ink)}
.chk input:checked::after{content:"";width:12px;height:6px;border-left:2.4px solid var(--ink);border-bottom:2.4px solid var(--ink);transform:translateY(-2px) rotate(-45deg)}
.chk input:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.chk a{font-weight:700}
.pp-note{margin:22px 0 0;font-size:14px;color:var(--ink-55)}
.facts{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:12px 24px}
.facts li{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600}
.facts img{width:28px;height:28px}
.pp-cta{padding-top:18px}
.cta{width:100%;height:72px;font-size:24px}
.pp-sub{margin:8px 0 0;font-size:14px;color:var(--ink-55);text-align:center}
.pp-sub a{font-weight:700}
@media (max-width:1099px){
  .pp{place-items:end center}
  .pp-card{width:100%;height:94svh;border-radius:28px 28px 0 0;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);animation-name:sheetIn}
  .pp.closing .pp-card{animation-name:sheetOut}
  @keyframes sheetIn{from{transform:translateY(100%)}to{transform:none}}
  @keyframes sheetOut{to{transform:translateY(100%)}}
  .pp-handle{display:block;position:absolute;left:50%;top:8px;width:40px;height:4px;margin-left:-20px;border-radius:2px;background:var(--ink-18);z-index:6}
  .pp-x{right:16px;top:14px;width:40px;height:40px}.pp-x svg{width:14px;height:14px}
  .pp-sw{margin:62px 12px 0;height:min(48svh,460px)}
  .pp-visual{inset:56px 24px 64px}
  .pp-hint{bottom:14px;font-size:20px}
  .pp-thumbs{display:none}
  .pp-stamp{width:92px;right:-8px;bottom:-22px}
  .pp-tools{top:auto;bottom:12px;right:12px}
  .pp-info{padding:20px max(20px,env(safe-area-inset-left,0px)) 0;overflow:auto;display:block}
  .pp-scroll{overflow:visible;padding:0}
  .pp-cta{position:sticky;bottom:0;margin:20px -20px 0;padding:14px 20px calc(14px + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 -8px 20px rgba(31,27,24,.08)}
  .cta{height:58px;font-size:19px}
  .pp-info h2{padding-right:0}}
@media (max-width:699px){.pp-sw{height:300px}.pp-info h2{font-size:30px}.pp-info .cav{font-size:28px}.pp-price .price{font-size:30px}.sw{width:38px;height:38px;padding:4px}.grp{margin-top:20px}.seg button{height:40px;font-size:15px;padding:0 16px}}

/* ---------- fly to cart, toast ---------- */
.fly{position:fixed;left:0;top:0;z-index:90;width:22px;height:22px;border-radius:50%;background:var(--pink);box-shadow:0 0 0 3px var(--white);pointer-events:none}
.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:95;transform:translate(-50%,calc(100% + 60px));background:var(--ink);color:var(--white);border-radius:999px;padding:12px 22px;font-weight:700;font-size:15px;display:flex;gap:14px;align-items:center;transition:transform .45s var(--back);max-width:calc(100vw - 32px)}
.toast.show{transform:translate(-50%,0)}
.toast button{color:var(--lime);font-weight:800;text-decoration:underline}

/* ---------- menu (телефон) ---------- */
.menu{position:fixed;inset:0;z-index:80;background-color:var(--lime);background-image:linear-gradient(var(--gridw) 1px,transparent 1px),linear-gradient(90deg,var(--gridw) 1px,transparent 1px);background-size:30px 30px;
  padding:calc(env(safe-area-inset-top,0px) + 12px) max(24px,env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(24px,env(safe-area-inset-left,0px));display:flex;flex-direction:column;clip-path:circle(0 at calc(100% - 44px) 32px);transition:clip-path .55s var(--ease)}
.menu.open{clip-path:circle(150% at calc(100% - 44px) 32px)}
.menu-top{display:flex;justify-content:space-between;align-items:center;height:40px}
.menu-top img{width:124px}
.menu-x{width:40px;height:40px;border-radius:50%;background:var(--white);display:grid;place-items:center}
.menu nav{display:flex;flex-direction:column;gap:8px;margin-top:56px}
.menu nav a{font-weight:900;font-size:40px;text-decoration:none;line-height:1.3}
.menu nav a sup{font-size:13px;opacity:.45;margin-left:6px}
.menu .pill{margin-top:28px;width:100%;height:56px;font-size:18px}
.menu-foot{margin-top:auto;display:grid;gap:4px;font-size:16px}
.menu-foot b{font-size:20px;font-weight:900}
.menu-foot .cav{font-size:26px;margin-bottom:10px}

/* ---------- cookie ---------- */
.ck{position:fixed;z-index:85;left:max(40px,env(safe-area-inset-left,0px));bottom:calc(40px + env(safe-area-inset-bottom,0px));width:min(640px,calc(100vw - 32px));background:var(--white);border-radius:32px;padding:28px 32px;box-shadow:0 16px 48px rgba(31,27,24,.16);animation:ckIn .6s var(--back) both}
@keyframes ckIn{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
.ck h2{margin:0;font-size:22px;font-weight:900}
.ck p{margin:12px 0 0;font-size:15px;line-height:1.53;color:rgba(31,27,24,.85)}
.ck p a{text-decoration:underline}
.ck-btns{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px}
.ck-btns .pill{height:52px;font-size:16px;padding:0 26px}
.ck-btns .link{font-weight:800;font-size:16px;text-decoration:underline;padding:8px}
.ck-row{display:grid;grid-template-columns:1fr auto;gap:4px 20px;border-top:1px solid var(--ink-10);padding:18px 0;align-items:center}
.ck-row:last-of-type{border-bottom:1px solid var(--ink-10)}
.ck-row b{font-size:17px;font-weight:900}
.ck-row span{grid-column:1;font-size:14px;color:var(--ink-70)}
.ck-sets{margin-top:20px}
.tgl{grid-column:2;grid-row:1/3;appearance:none;-webkit-appearance:none;width:52px;height:30px;border-radius:15px;background:var(--white);box-shadow:inset 0 0 0 1.5px rgba(31,27,24,.3);position:relative;cursor:pointer;margin:0;transition:background-color .25s}
.tgl::after{content:"";position:absolute;left:4px;top:4px;width:22px;height:22px;border-radius:50%;background:#CFC8C0;transition:transform .3s var(--back),background-color .25s}
.tgl:checked{background:var(--lime);box-shadow:inset 0 0 0 1.5px var(--ink)}
.tgl:checked::after{transform:translateX(22px);background:var(--ink)}
.tgl:disabled{opacity:.55;cursor:default}
body.sticky-bar .ck{bottom:calc(104px + env(safe-area-inset-bottom,0px))}
@media (max-width:699px){.ck{left:8px;right:8px;width:auto;bottom:calc(8px + env(safe-area-inset-bottom,0px));padding:18px 20px;border-radius:24px}.ck h2{font-size:18px}.ck p{font-size:13px;line-height:1.46}.ck-btns{flex-direction:column;align-items:stretch;gap:8px}.ck-btns .pill{height:48px;font-size:15px}.ck-btns .link{align-self:center}}

/* ---------- pages: cart, 404, thanks ---------- */
.page{padding-top:calc(var(--hdr) + 40px);min-height:100svh}
.back{font-weight:700;font-size:16px;opacity:.7;text-decoration:none}
.page-title{margin-top:12px}
.cart-panel{margin-top:40px;padding-block:var(--pad)}
.cart-grid{display:grid;grid-template-columns:minmax(0,872fr) minmax(0,424fr);gap:24px;align-items:start}
.c-col{display:grid;gap:24px;min-width:0}
.c-card{background:var(--white);border-radius:32px;padding:36px 40px 40px;min-width:0}
.c-head{display:flex;align-items:center;gap:16px;margin-bottom:28px}
.c-head h2{margin:0;font-size:32px;font-weight:900;line-height:1.1}
.c-head .n{width:48px;height:48px;border-radius:50%;background:var(--lime);display:grid;place-items:center;font-weight:900;font-size:22px;flex:none}
.c-head small{font-size:18px;font-weight:600;color:var(--ink-55)}
.item{display:grid;grid-template-columns:160px minmax(0,1fr) auto;gap:0 32px;padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid var(--ink-10);align-items:start;transition:opacity .3s,transform .3s}
.item.gone{opacity:0;transform:translateX(30px)}
.item .th{width:160px;aspect-ratio:1;border-radius:28px;background:var(--beige);display:grid;place-items:center}
.item .th img{width:78%;height:78%;object-fit:contain}
.item h3{margin:0;font-size:26px;font-weight:900;line-height:1.3}
.item .opts{margin:4px 0 0;font-size:16px;color:var(--ink-70)}
.item .cols{display:flex;flex-wrap:wrap;gap:4px 20px;margin-top:4px;font-size:16px;color:var(--ink-70)}
.item .cols span{display:inline-flex;align-items:center;gap:8px}.item .cols b{font-weight:600;color:var(--ink)}
.item .cols i{width:16px;height:16px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--ink-18)}
.item .meta{display:flex;align-items:center;gap:18px;margin-top:14px;flex-wrap:wrap}
.item .meta .status{position:static;height:30px;font-size:12px;padding:0 12px}
.item .meta button{font-weight:700;font-size:15px;text-decoration:underline;opacity:.8}
.item .right{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;height:100%;gap:12px}
.item .sum{font-weight:900;font-size:26px;white-space:nowrap}
.item .each{font-size:14px;color:var(--ink-55);margin-top:-8px}
.item .row{display:flex;align-items:center;gap:20px}
.item .rm{font-weight:700;font-size:15px;text-decoration:underline;opacity:.55}
.qty{display:flex;align-items:center;height:48px;border-radius:24px;box-shadow:inset 0 0 0 1.5px var(--ink-18);background:var(--white)}
.qty button{width:44px;height:48px;font-size:22px;font-weight:700}
.qty output{min-width:30px;text-align:center;font-weight:900;font-size:18px}
.gift{display:flex;align-items:center;gap:20px;padding:14px 24px 14px 18px;border-radius:24px;background:rgba(165,157,255,.35)}
.gift .heads{display:flex;flex:none}.gift .heads img{width:58px;height:58px;object-fit:contain}.gift .heads img+img{margin-left:-14px}
.gift b{display:block;font-weight:900;font-size:20px}.gift span{font-size:16px;color:var(--ink-70)}
.gift em{margin-left:auto;font-style:normal;font-weight:900;font-size:18px;white-space:nowrap}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.fld{display:grid;gap:8px;min-width:0}
.fld label{font-weight:700;font-size:14px;color:var(--ink-70)}
.fld label small{font-weight:400;opacity:.65}
.fld input,.fld textarea,.fld select{width:100%;height:60px;border-radius:16px;border:0;box-shadow:inset 0 0 0 1.5px var(--ink-18);background:var(--white);padding:0 20px;font:600 18px/1.2 var(--f);color:var(--ink);transition:box-shadow .2s}
.fld textarea{height:112px;padding:16px 20px;resize:vertical;font-weight:500}
.fld input::placeholder,.fld textarea::placeholder{color:rgba(31,27,24,.4);font-weight:400}
.fld input:focus,.fld textarea:focus{outline:none;box-shadow:inset 0 0 0 2px var(--ink),0 0 0 4px var(--lime)}
.fld .fhint{font-size:14px;color:var(--ink-55)}
.fld.bad input{box-shadow:inset 0 0 0 2px var(--pink)}
.fld .err{font-size:14px;color:#B4206E;font-weight:700}
.svc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.svc label{position:relative;border-radius:20px;box-shadow:inset 0 0 0 1.5px var(--ink-18);background:var(--white);padding:20px;cursor:pointer;display:grid;gap:4px;min-height:136px;transition:background-color .2s,box-shadow .2s,transform .25s var(--back)}
.svc label:hover{transform:translateY(-2px)}
.svc input{position:absolute;opacity:0}
.svc .rd{width:24px;height:24px;border-radius:50%;box-shadow:inset 0 0 0 1.5px rgba(31,27,24,.35);background:var(--white);display:grid;place-items:center}
.svc .pr{position:absolute;right:20px;top:20px;font-weight:900;font-size:18px}
.svc b{font-weight:900;font-size:20px;margin-top:16px}.svc span{font-size:15px;color:var(--ink-70)}
.svc label:has(input:checked){background:var(--lime);box-shadow:inset 0 0 0 2px var(--ink)}
.svc label:has(input:checked) .rd{box-shadow:inset 0 0 0 2px var(--ink);background:transparent}
.svc label:has(input:checked) .rd::after{content:"";width:12px;height:12px;border-radius:50%;background:var(--ink)}
.svc label:has(input:focus-visible){outline:3px solid var(--ink);outline-offset:3px}
.map{position:relative;height:300px;border-radius:20px;background:#EAE3D9;overflow:hidden;margin-top:8px}
.map svg{position:absolute;inset:0;width:100%;height:100%}
.pin{position:absolute;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;background:var(--pink);box-shadow:0 0 0 4px var(--white),0 4px 8px rgba(31,27,24,.2);transition:transform .3s var(--back),background-color .2s}
.pin:hover{transform:scale(1.2)}
.pin.on{width:40px;height:40px;margin:-20px 0 0 -20px;background:var(--lime);box-shadow:0 0 0 3px var(--ink),0 6px 12px rgba(31,27,24,.25);animation:pinDrop .5s var(--back)}
@keyframes pinDrop{from{transform:translateY(-24px) scale(.6)}to{transform:none}}
.pt{position:absolute;left:20px;top:20px;width:min(340px,calc(100% - 40px));background:var(--white);border-radius:16px;padding:18px 20px;box-shadow:0 12px 32px rgba(31,27,24,.12)}
.pt b{display:block;font-size:17px;font-weight:900}.pt span{display:block;font-size:15px;color:var(--ink-70)}
.pt small{display:block;font-size:13px;color:var(--ink-55);margin-top:8px}
.note{display:flex;gap:16px;align-items:center;margin-top:24px;font-size:16px}
.note img{width:48px;flex:none}
.sum-card{position:sticky;top:calc(var(--hdr) + 20px);background:var(--white);border-radius:32px;padding:32px}
.sum-card h2{margin:0;font-size:36px;font-weight:900}
.cooper{position:absolute;right:-6px;top:-70px;width:120px;transform:rotate(-6deg)}
.promo{display:flex;align-items:center;height:56px;border-radius:28px;box-shadow:inset 0 0 0 1.5px var(--ink-18);padding:6px 6px 6px 22px;margin-top:8px}
.promo input{flex:1;min-width:0;border:0;background:none;font:700 18px var(--f);text-transform:uppercase;color:var(--ink);outline:none}
.promo button{height:44px;padding:0 18px;border-radius:22px;background:var(--lime);font-weight:800;font-size:14px;text-transform:uppercase}
.promo-msg{font-size:14px;font-weight:600;margin-top:8px;min-height:20px}
.promo-msg.ok{color:var(--ink)}.promo-msg.ok::before{content:"✓ ";font-weight:900}
.promo-msg.bad{color:#B4206E}
.rows{display:grid;gap:12px;margin-top:20px;padding-bottom:20px;border-bottom:1px solid var(--ink-10);font-size:17px}
.rows div{display:flex;justify-content:space-between;gap:12px}.rows span{color:var(--ink-70)}.rows b{font-weight:800;white-space:nowrap}
.total{margin-top:16px}
.total p{margin:0;font-weight:700;font-size:18px}
.total .price{font-size:48px;line-height:1.2}
.dolyami{font-size:15px;color:var(--ink-70);margin:6px 0 0}
.checks{display:grid;gap:16px;margin-top:24px}
.pay{width:100%;height:64px;font-size:22px;margin-top:24px}
.pay.off{opacity:.5}
.fine{font-size:13px;line-height:1.4;color:var(--ink-55);margin:16px 0 0}
.fine a{color:var(--ink-70);font-weight:700}
.mbar{display:none}
.empty{text-align:center;padding:40px 0}
.empty img{width:160px;margin:0 auto 12px}
.empty h2{margin:0;font-size:32px;font-weight:900}
.empty p{color:var(--ink-70);margin:8px 0 24px}
@media (max-width:1099px){.cart-grid{grid-template-columns:minmax(0,1fr)}.sum-card{position:relative;top:auto}.cooper{top:-50px;width:90px}}
@media (max-width:699px){
  .page{padding-top:calc(var(--hdr) + 16px)}
  .c-card{padding:22px 20px 24px;border-radius:24px}.c-head{margin-bottom:20px;gap:12px}.c-head h2{font-size:22px}.c-head .n{width:36px;height:36px;font-size:17px}.c-head small{font-size:15px}
  .item{grid-template-columns:88px minmax(0,1fr);gap:0 16px}.item .th{width:88px;border-radius:18px}.item h3{font-size:18px}.item .opts,.item .cols{font-size:13px}.item .cols{flex-direction:column;gap:2px}
  .item .meta .status{height:24px;font-size:10px}.item .right{grid-column:1/-1;flex-direction:row-reverse;align-items:center;margin-top:16px}.item .sum{font-size:20px}.item .each{display:none}
  .qty{height:40px}.qty button{width:38px;height:40px}
  .gift{padding:12px;gap:12px}.gift .heads img{width:40px;height:40px}.gift b{font-size:15px}.gift span{font-size:13px}.gift em{display:none}
  .fgrid{grid-template-columns:1fr;gap:16px}.fld input{height:52px;font-size:16px}
  .svc{grid-template-columns:1fr;gap:12px}.svc label{min-height:0;padding:16px 16px 16px 50px}.svc .rd{position:absolute;left:16px;top:50%;margin-top:-11px}.svc b{margin:0;font-size:16px}.svc span{font-size:13px}.svc .pr{top:16px;right:16px;font-size:16px}
  .map{height:200px}.pt{position:relative;left:auto;top:auto;width:auto;margin-top:12px;box-shadow:none;background:var(--beige)}
  .sum-card{padding:22px 20px;border-radius:24px}.sum-card h2{font-size:24px}.total .price{font-size:40px}
  .mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;align-items:center;justify-content:space-between;background:var(--white);border-radius:24px 24px 0 0;box-shadow:0 -6px 24px rgba(31,27,24,.12);padding:16px max(16px,env(safe-area-inset-right,0px)) calc(16px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
  .mbar small{display:block;font-weight:700;font-size:13px;opacity:.6}.mbar b{font-size:24px;font-weight:900}
  .mbar .pill{height:52px;font-size:17px;padding:0 24px}}
.e404{display:grid;justify-items:center;text-align:center;padding-top:calc(var(--hdr) + 30px);padding-bottom:60px;min-height:100svh;position:relative;overflow:hidden}
.digits{display:flex;align-items:center;gap:28px;font-weight:900;font-size:340px;line-height:.86;position:relative}
.digits img.z{width:210px;margin-top:20px;animation:wob 3s ease-in-out infinite}
@keyframes wob{0%,100%{rotate:-4deg}50%{rotate:4deg}}
.digits .lilu{position:absolute;right:-150px;top:-10px;width:140px;transform:rotate(8deg);animation:float 5s ease-in-out infinite}
.e404 h1{margin:40px 0 0;font-size:56px;font-weight:900;line-height:1.1;text-wrap:balance}
.e404 .cav{font-size:44px}
.e404 p.t{margin:20px 0 0;max-width:720px;font-size:20px;line-height:1.5;color:var(--ink-70)}
.e404 .btns{display:flex;gap:12px;margin-top:36px;flex-wrap:wrap;justify-content:center}
.e404 .code{margin-top:40px;font-weight:900;font-size:14px;letter-spacing:.08em;opacity:.45}
.e404 .dr{position:absolute;pointer-events:none}
@media (max-width:1099px){.digits{font-size:220px;gap:18px}.digits img.z{width:140px}.digits .lilu{width:100px;right:-90px}.e404 h1{font-size:40px}.e404 .cav{font-size:34px}}
@media (max-width:699px){.digits{font-size:150px;gap:12px}.digits img.z{width:94px;margin-top:10px}.digits .lilu{width:76px;right:-30px;top:-40px}.e404 h1{font-size:30px;margin-top:24px}.e404 .cav{font-size:30px}.e404 p.t{font-size:16px}.e404 .btns{flex-direction:column;width:100%}.e404 .btns .pill{width:100%;height:54px;font-size:19px}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .pre,.pre-step{opacity:1!important;transform:none!important}
}

/* --- fixes after first render --- */
@media (max-width:1099px){.stamp{top:-262px;right:0}.band img{height:165px;aspect-ratio:auto;object-fit:cover;object-position:left center}}
@media (max-width:699px){.cat .cav{font-size:22px}.stamp{top:-214px;width:72px}.band img{height:170px}
  .sur-grid{gap:0}.sur-text{display:contents}.sur-text>*{grid-column:1}.pack{order:5;margin-top:28px}.sur-text .cav{order:6;margin-top:18px}.reseal{order:7;justify-self:center}
  .foot-contacts span{font-size:15px}}

@media (min-width:1100px) and (max-width:1700px),(min-width:1100px) and (max-height:1000px){
  .ck:not(.sets){left:max(40px,calc((100vw - 1320px)/2));right:max(40px,calc((100vw - 1320px)/2));width:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:40px;align-items:center;padding:24px 32px}
  .ck:not(.sets) h2{grid-column:1}.ck:not(.sets) p{grid-column:1;margin-top:6px;font-size:14px;line-height:1.5}
  .ck:not(.sets) .ck-btns{grid-column:2;grid-row:1/3;margin:0;flex-direction:column;align-items:stretch;gap:8px}
  .ck:not(.sets) .ck-btns .pill{height:46px}}

@media (max-width:1099px){.pp-tools{top:14px;bottom:auto;right:14px}}
.sum-card,.c-card,.item>div{min-width:0}
.pp-miss{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:6px;text-align:center;z-index:2}
.pp-miss b{font-size:18px;font-weight:900;background:rgba(255,255,255,.85);padding:10px 18px;border-radius:999px}
.pp-miss span{font-size:14px;color:var(--ink-70)}
.pp-visual>img{transition:opacity .3s,transform .5s var(--back)}

/* --- surprise: holographic seal you can peel, gift underneath --- */
.pack{container-type:inline-size}
.seal{position:absolute;left:33%;top:30%;width:35%;aspect-ratio:1;border-radius:50%;z-index:3;cursor:grab;touch-action:none;padding:0;
  box-shadow:0 0 0 clamp(4px,1.1cqw,7px) #fff,0 12px 26px rgba(31,27,24,.25);animation:sealIdle 3.6s ease-in-out infinite;transition:scale .35s var(--back)}
.seal:hover{scale:1.06}
.seal.grab{cursor:grabbing;animation:none;scale:1.08}
.seal-holo{position:absolute;inset:0;border-radius:50%;overflow:hidden;background:conic-gradient(from 200deg,#ffd3ef,#cfeeff,#fff3bf,#e4d2ff,#c9ffe6,#ffd3ef);animation:holo 6s linear infinite}
.seal-holo::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.95),rgba(255,255,255,.35) 45%,transparent 72%)}
.seal-holo::after{content:"";position:absolute;inset:-40%;background:linear-gradient(115deg,transparent 42%,rgba(255,255,255,.95) 50%,transparent 58%);animation:shine 2.8s ease-in-out infinite}
@keyframes holo{to{filter:hue-rotate(360deg)}}
@keyframes shine{0%,30%{transform:translateX(-62%)}70%,100%{transform:translateX(62%)}}
@keyframes sealIdle{0%,64%,100%{rotate:0deg}70%{rotate:-8deg}76%{rotate:7deg}82%{rotate:-4deg}88%{rotate:2deg}}
.seal-in{position:relative;display:grid;place-content:center;height:100%;text-align:center;line-height:.92;pointer-events:none;color:var(--ink)}
.seal-in b{font-weight:900;font-size:6cqw;letter-spacing:.01em}
.seal-in small{display:block;margin-top:.8cqw;font-family:var(--hand);font-size:max(11px,3.3cqw);font-weight:700;line-height:1}
.seal-curl{position:absolute;right:12%;bottom:12%;width:17%;height:17%;background:linear-gradient(135deg,rgba(255,255,255,0) 50%,#fff 51%,#e4dcec 100%);border-radius:0 0 45% 0;filter:drop-shadow(-2px -2px 3px rgba(31,27,24,.22));transform-origin:100% 100%;animation:curl 2.4s ease-in-out infinite;pointer-events:none}
@keyframes curl{0%,100%{transform:scale(1)}50%{transform:scale(1.3)}}
.gift-in{position:absolute;left:33%;top:30%;width:35%;aspect-ratio:1;z-index:2;border-radius:50%;background:#fff;box-shadow:0 6px 16px rgba(31,27,24,.14);
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none;padding:0 4%}
.gift-in .tails{display:flex;justify-content:center;align-items:center;width:100%}
.gift-in .tails img{width:9.5cqw;margin:0 -.4cqw;transform:rotate(var(--r))}
.gift-in .tails img.wide{width:12.5cqw}
.pack.open .gift-in .tails img{animation:tailPop .55s var(--back) both}
.pack.open .gift-in .tails img:nth-child(1){animation-delay:.25s}.pack.open .gift-in .tails img:nth-child(2){animation-delay:.35s}.pack.open .gift-in .tails img:nth-child(3){animation-delay:.45s}
@keyframes tailPop{0%{transform:scale(.4) rotate(var(--r))}100%{transform:scale(1) rotate(var(--r))}}
.gift-in p{margin:1.4cqw 0 0;font-family:var(--hand);font-weight:700;font-size:3.6cqw;line-height:1}.gift-in p small{display:block;font-size:2.7cqw;opacity:.7;margin-top:.3cqw}
.gift-in .sp{position:absolute;font-size:4cqw;color:var(--pink);opacity:0;transition:opacity .3s}
.pack.open .gift-in .sp{opacity:1;animation:tw 1.6s ease-in-out infinite}
.gift-in .s1{left:-4%;top:2%}.gift-in .s2{right:-6%;top:30%;color:var(--lilac)}.gift-in .s3{left:4%;bottom:0;color:var(--lime);text-shadow:0 0 1px var(--ink)}
.pack.open .gift-in .s2{animation-delay:-.5s}.pack.open .gift-in .s3{animation-delay:-1s}
@keyframes tw{0%,100%{transform:scale(.6) rotate(0);opacity:.5}50%{transform:scale(1.25) rotate(20deg);opacity:1}}

@media (max-width:1099px){.margin-line{top:-24px;bottom:-8px}}

/* hint for 3D: a quiet pill beside the thumbnails, gone after the first turn */
.pp-stage .status,.pp-thumbs,.pp-tools,.pp-ph{z-index:3}
.pp-hint{left:416px;right:auto;bottom:46px;z-index:3;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:999px;background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  font-family:var(--f);font-weight:800;font-size:14px;color:var(--ink);transition:opacity .4s,transform .4s var(--ease);pointer-events:none;white-space:nowrap}
.pp-hint.rot::before{content:"";width:18px;height:18px;flex:none;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231F1B18' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12a8 8 0 1 1-2.3-5.6'/%3E%3Cpath d='M20 4v5h-5'/%3E%3C/svg%3E");animation:spinHint 2.4s ease-in-out infinite}
@keyframes spinHint{0%,40%{transform:rotate(0)}70%,100%{transform:rotate(360deg)}}
.pp-hint.gone{opacity:0;transform:translateY(8px)}
.pp-hint:empty{display:none}
@media (max-width:1099px){.pp-hint{left:12px;bottom:12px;font-size:13px;height:36px;padding:0 14px}}

/* ===== v7: куки-уведомление, мобилка, «в наличии», допы корзины ===== */
.status.stock{background:var(--lime)}
.status.stock::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ink);margin-right:7px;flex:none}
@media (max-width:699px){.status.stock::before{width:5px;height:5px;margin-right:5px}}

/* видео-заглушка: тёплый «экран» без клетки, чтобы не путать с фоном страницы */
.vid{background-color:#CDBFB0;background-image:radial-gradient(ellipse 70% 60% at 50% 45%,rgba(255,255,255,.32),transparent 70%),linear-gradient(160deg,#D9CCBE,#B9A794);background-size:auto}
.vid-label i{border-color:rgba(31,27,24,.6)}.vid-label i::after{border-left-color:rgba(31,27,24,.6)}
.vid-label b{opacity:.85}.vid-label small{opacity:.7}

/* лента: на телефоне крупнее, панель каталога начинается под ней, а не на видео */
@media (max-width:699px){.ribbon{width:190vw;margin-left:-45vw}.ribbon-flow{margin-bottom:-11.5vw}}
.stage[data-mode="ph"] .heart{z-index:4}

/* печать — на углу карточки, подальше от ленты */
@media (max-width:1099px){.stamp{top:-46px;right:-14px;width:104px}}
@media (max-width:699px){.stamp{top:-20px;right:-8px;width:70px}}

/* cookie */
.ck h2{display:flex;align-items:center;gap:12px}
.ck-cat{width:54px;height:auto;flex:none;margin:-8px 0 -6px -6px;transform:rotate(-6deg)}
.ck.bye{animation:ckOut .32s ease both}@keyframes ckOut{to{opacity:0;transform:translateY(30px)}}
.ck-btns .pill{min-width:170px}
@media (max-width:699px){.ck-cat{width:44px}}

/* корзина: связь, допы, шаги заказа */
.contact{margin-top:24px}
.contact .fld{margin:0 0 10px}
.adds{display:grid;gap:12px}
.add{border-radius:22px;box-shadow:inset 0 0 0 1.5px var(--ink-18);transition:background-color .2s,box-shadow .2s}
.add.on{background:rgba(211,243,98,.3);box-shadow:inset 0 0 0 2px var(--ink)}
.add.off{opacity:.55}
.add-h{display:grid;grid-template-columns:24px 56px minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px 20px;cursor:pointer}
.add.off .add-h{cursor:default}
.add-h input{appearance:none;-webkit-appearance:none;width:24px;height:24px;border-radius:7px;background:var(--white);box-shadow:inset 0 0 0 1.5px rgba(31,27,24,.35);margin:0;cursor:pointer;display:grid;place-items:center;transition:background-color .2s}
.add-h input:checked{background:var(--lime);box-shadow:inset 0 0 0 1.5px var(--ink)}
.add-h input:checked::after{content:"";width:12px;height:6px;border-left:2.4px solid var(--ink);border-bottom:2.4px solid var(--ink);transform:translateY(-2px) rotate(-45deg)}
.add-h input:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.add-ico{width:56px;height:56px;border-radius:16px;background:var(--beige);display:grid;place-items:center}
.add-ico img{width:40px;height:40px;object-fit:contain}
.add-t b{display:block;font-weight:900;font-size:19px;line-height:1.25}
.add-t span{display:block;font-size:15px;color:var(--ink-70);line-height:1.35;margin-top:2px}
.add-h em{font-style:normal;font-weight:900;font-size:17px;white-space:nowrap}
.add-body{padding:0 20px 22px 132px;display:grid;gap:16px}
.add-body .fld input{height:52px}
.add-body .err{margin:0}
.add-note{margin:0;font-size:14px;color:var(--ink-55)}
.upl-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.upl{position:relative;display:flex;align-items:center;gap:14px;padding:10px 18px 10px 10px;border-radius:18px;border:2px dashed rgba(31,27,24,.3);background:var(--white);cursor:pointer;min-width:0;max-width:100%;transition:border-color .2s,transform .25s var(--back)}
.upl:hover{transform:translateY(-2px);border-color:var(--ink)}
.upl.has{border-style:solid;border-color:var(--ink)}
.upl input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.upl:focus-within{outline:3px solid var(--ink);outline-offset:3px}
.upl-pv{position:relative;width:64px;height:64px;border-radius:12px;background:var(--beige);display:grid;place-items:center;overflow:hidden;flex:none}
.upl-pv img{width:100%;height:100%;object-fit:cover}
.upl-pv i::before,.upl-pv i::after{content:"";position:absolute;left:50%;top:50%;width:22px;height:3px;margin:-1.5px 0 0 -11px;border-radius:2px;background:var(--ink)}
.upl-pv i::after{transform:rotate(90deg)}
.upl-t{min-width:0}
.upl-t b{display:block;font-weight:800;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:280px}
.upl-t small{display:block;font-size:13px;color:var(--ink-55)}
.c-card .link{font-weight:700;font-size:15px;text-decoration:underline;opacity:.7}
.flow{list-style:none;margin:20px 0 0;padding:16px 18px;border-radius:20px;background:rgba(165,157,255,.24);display:grid;gap:12px;counter-reset:f}
.flow li{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:12px;counter-increment:f;font-size:15px;line-height:1.35}
.flow li::before{content:counter(f);grid-row:1/3;width:28px;height:28px;border-radius:50%;background:var(--white);display:grid;place-items:center;font-weight:900;font-size:14px}
.flow b{font-weight:800}.flow span{color:var(--ink-70)}
.fine.mixed{margin-top:12px;color:var(--ink-70)}
@media (max-width:699px){
  .add-h{grid-template-columns:24px 44px minmax(0,1fr);gap:12px;padding:14px}
  .add-h em{grid-column:3;justify-self:start;font-size:15px;margin-top:-6px}
  .add-ico{width:44px;height:44px;border-radius:12px}.add-ico img{width:30px;height:30px}
  .add-t b{font-size:16px}.add-t span{font-size:13px}
  .add-body{padding:0 14px 16px}
  .upl-t b{max-width:170px}
  .contact .seg button{height:40px;font-size:14px;padding:0 14px}}
.e404{padding-inline:max(var(--gut),16px)}

/* ===== v8 ===== */
/* без второй ленты: каталог сразу после видео, как соседние подложки */
.cat{margin-top:20px}
@media (max-width:699px){.cat{margin-top:8px}}
/* «Как мы делаем»: заголовок и подзаголовок рядом */
@media (max-width:1099px){.how-head{row-gap:0}.how-head p{margin-top:12px}}
@media (max-width:699px){.how-head .loop{display:none}.how-head p{margin-top:10px}}
/* пломба +15 % и белый круг под ней того же размера */
.seal,.gift-in{left:30.4%;top:27.4%;width:40.25%}
.seal-in b{font-size:6.9cqw}
.seal-in small{font-size:max(12px,3.8cqw);margin-top:.9cqw}
.gift-in .tails.t3d{align-items:flex-end;margin-top:1cqw}
.gift-in .tails.t3d img{width:auto;height:18cqw;margin:0 -1.6cqw;filter:drop-shadow(0 .6cqw .8cqw rgba(31,27,24,.18))}
.gift-in .tails.t3d img.mid{height:16cqw;position:relative;z-index:1}
.gift-in p{font-size:4cqw}.gift-in p small{font-size:3cqw}
/* корзина: хвостик — 3D-стикеры зверей */
.gift .heads3d img{width:auto;height:66px;object-fit:contain}
.gift .heads3d img+img{margin-left:-12px}
.gift .heads3d img:nth-child(2){position:relative;z-index:1;height:60px}
@media (max-width:699px){.gift .heads3d img{height:50px}.gift .heads3d img:nth-child(2){height:45px}.gift .heads3d img+img{margin-left:-9px}}
/* гравировка у каждой вещи под заказ */
.eng-ico{width:22px;height:22px;flex:none;background:url("img/i-paint.webp") center/contain no-repeat}
.eng-add{display:inline-flex;align-items:center;gap:8px;margin-top:14px;height:40px;padding:0 16px 0 12px;border-radius:999px;box-shadow:inset 0 0 0 1.5px var(--ink-18);font-weight:700;font-size:15px;transition:background-color .2s,transform .25s var(--back)}
.eng-add:hover{background:rgba(211,243,98,.35);transform:translateY(-2px)}
.eng-add b{font-weight:900;margin-left:2px}
.eng{margin-top:14px;padding:14px 16px 16px;border-radius:18px;background:rgba(211,243,98,.3);box-shadow:inset 0 0 0 2px var(--ink);display:grid;gap:10px}
.eng-h{display:flex;align-items:center;gap:8px;font-size:15px}
.eng-h b{font-weight:900}.eng-p{font-weight:800}
.eng-x{margin-left:auto;font-weight:700;font-size:14px;text-decoration:underline;opacity:.7}
.eng .fld input{height:48px;font-size:16px}
.eng .fhint{font-size:13px}
.adds-eng{margin-top:14px}
/* cookie: коротко — Купер, «cookie» ссылкой, кнопка */
.ck.mini{left:max(24px,env(safe-area-inset-left,0px));right:auto;bottom:calc(24px + env(safe-area-inset-bottom,0px));width:auto;max-width:calc(100vw - 32px);display:flex;align-items:center;gap:20px;padding:10px 10px 10px 18px;border-radius:999px}
.ck.mini .ck-t{margin:0;display:flex;align-items:center;gap:10px;font-weight:900;font-size:20px;line-height:1.2;color:var(--ink);white-space:nowrap}
.ck.mini .ck-t a{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.ck.mini .ck-cat{width:52px;margin:-6px 0 -6px -4px}
.ck.mini .ck-ok{height:48px;font-size:16px;padding:0 26px;min-width:0}
@media (max-width:699px){.ck.mini{left:8px;right:8px;max-width:none;justify-content:space-between;gap:10px;padding:8px 8px 8px 12px}.ck.mini .ck-t{font-size:17px;gap:8px}.ck.mini .ck-cat{width:42px}.ck.mini .ck-ok{height:44px;font-size:15px;padding:0 20px}}
/* меню: стикер Лилу */
.menu-pet{position:absolute;right:max(24px,env(safe-area-inset-right,0px));bottom:calc(112px + env(safe-area-inset-bottom,0px));width:104px;filter:drop-shadow(0 8px 14px rgba(31,27,24,.18));animation:float 5.5s ease-in-out infinite;pointer-events:none}
@media (max-height:700px){.menu-pet{width:84px;bottom:calc(100px + env(safe-area-inset-bottom,0px))}}
.item>.eng-wrap{grid-column:2;grid-row:2;min-width:0}
.item>.right{grid-column:3;grid-row:1/3}
.eng-add,.eng-p,.eng-h b{white-space:nowrap}
@media (max-width:699px){.item>.eng-wrap{grid-column:1/-1;grid-row:auto}.item>.right{grid-column:1/-1;grid-row:auto}.eng{padding:12px 14px 14px}}
.item>.th{grid-row:1/3}
.item>.eng-wrap{align-self:start}
@media (max-width:699px){.item>.th{grid-row:auto}}
@media (min-width:700px) and (max-width:1099px){.item>.right{grid-row:1}.item>.eng-wrap{grid-column:2/-1;margin-top:4px}}
.eng-seg{gap:6px}
.eng-seg button{height:40px;font-size:14px;padding:0 14px}
.eng-seg button small{font-weight:800;opacity:.7}
@media (max-width:699px){.eng-seg button{height:38px;font-size:13px;padding:0 12px}}
.cat-empty{display:grid;justify-items:center;gap:8px;padding:40px 0 20px;text-align:center}
.cat-empty img{width:120px}
.cat-empty p{margin:0;font-family:var(--hand);font-weight:700;font-size:var(--cav)}
.pp-visual>img.pp-photo{border-radius:22px;box-shadow:0 10px 30px rgba(31,27,24,.14)}
