@charset "UTF-8";
/* «Русские Традиции» · стиль «Мандарин» — «Открытка из бумаги и чернил» (П5b, 14.09.2026)
   Токены из <design_plan>: бумага · чернила · красная печать · золото только линией · мандарин только у предмета 3D и одной точки на экран.
   Движение: только transform и opacity. Кривая дома cubic-bezier(.32,.72,0,1).
   Числа доноров: bananashow — наведение 0.3s, шапка 0.2s ease, аккордеон 0.35s cubic-bezier(.23,1,.32,1) · bazinga — ссылки 0.12s, шторка 0.3s/0.25s, dropbar 0.22s ·
   happilyeverlaughter — появления 0.6s/0.7s cubic-bezier(.2,.7,.3,1), фото падают 0.7s cubic-bezier(.2,.85,.35,1), wiggle 2.4s, наведение 0.15s. */

/* ---------- шрифты (self-host, woff2, кириллица + латиница) ---------- */

/* ---------- токены ---------- */
:root{
  --paper:#FDFAF6;--paper-2:#E4EFE7;--white:#FDFAF6;--ink:#064420;--ink-2:rgba(6,68,32,.72);--stamp:#064420;--stamp-press:#04301A;
  --fir:#064420;--fir-2:#04301A;--gold:rgba(6,68,32,.3);--line:rgba(6,68,32,.14);--mandarin:#064420;
  --paper-ink:rgba(253,250,246,.86);--paper-ink-2:rgba(253,250,246,.62);
  --paper-bg:#FDFAF6;
  --paper2-bg:#E4EFE7;
  --r-s:6px;--r-m:16px;--r-l:28px;
  --shadow:0 10px 28px -6px rgba(6,68,32,.13);--shadow-2:0 22px 48px -18px rgba(6,68,32,.28);--shadow-flat:0 1px 0 rgba(6,68,32,.06),0 2px 6px -2px rgba(6,68,32,.12);
  --curve:cubic-bezier(.32,.72,0,1);--curve-reveal:cubic-bezier(.2,.7,.3,1);--curve-acc:cubic-bezier(.23,1,.32,1);
  --f-display:'Prata',Georgia,'Times New Roman',serif;--f-text:'Onest',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;--f-hand:'Prata',Georgia,serif;
  --wrap:1280px;--gutter:clamp(16px,4vw,52px);--gap:clamp(16px,2vw,28px);
  --header-h:76px;--tear-h:120px;
}

/* ---------- база ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px)}
html:focus-within{scroll-behavior:smooth}
body{margin:0;background:var(--paper-bg);background-color:var(--paper);color:var(--ink);font:400 1.0625rem/1.55 var(--f-text);overflow-x:clip;-webkit-font-smoothing:antialiased}
img,video{display:block;max-width:100%;height:auto}
a{color:inherit}
button{font:inherit;color:inherit}
h1,h2,h3,h4{margin:0;font-family:var(--f-display);font-weight:400;line-height:1.08;letter-spacing:-.01em;text-wrap:balance}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
figure{margin:0}
blockquote{margin:0}
hr{border:0}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--stamp);outline-offset:3px;border-radius:4px}
[tabindex="-1"]:focus-visible{outline:none}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:16px;top:-64px;z-index:100;padding:10px 16px;background:var(--stamp);color:#fff;border-radius:var(--r-s);text-decoration:none;transition:transform 0.12s var(--curve)}
.skip:focus{transform:translateY(80px)}
.wrap{width:min(100% - 2 * var(--gutter),var(--wrap));margin-inline:auto}
.grain{position:fixed;inset:0;z-index:60;pointer-events:none;opacity:.05;mix-blend-mode:multiply;background:url(media/grain.svg) repeat}

/* ---------- типографика ---------- */
.h1{font-size:clamp(2.1rem,1.2rem + 2.6vw,3.6rem);max-width:20ch}
.hero .h1{font-size:clamp(2rem,1.05rem + 2.45vw,3.3rem);max-width:22ch}
.h1--long{font-size:clamp(1.7rem,1rem + 1.8vw,2.55rem);max-width:30ch}
.h1__a{display:block}
.h1__b{display:block;margin-top:.35em;font-family:var(--f-hand);font-weight:600;font-size:.56em;line-height:1.15;letter-spacing:0;color:var(--stamp);max-width:30ch}
.h2{font-size:clamp(1.7rem,1.15rem + 2vw,2.9rem);max-width:22ch}
.h3{font-size:clamp(1.2rem,1rem + .7vw,1.6rem)}
.lead{font-size:clamp(1.05rem,.95rem + .45vw,1.3rem);line-height:1.5;color:var(--ink);max-width:56ch}
.small{font-size:.9375rem;line-height:1.5;color:var(--ink-2)}
.micro{font-size:.8125rem;line-height:1.45;color:var(--ink-2)}
.hand{font-family:var(--f-hand);font-weight:600;font-size:clamp(1.25rem,1.1rem + .6vw,1.65rem);line-height:1.1;color:var(--stamp);letter-spacing:0}
.hand--ink{color:var(--ink-2)}
.hand--tilt{display:inline-block;transform:rotate(-2.5deg);transform-origin:left center}
.price{font-family:var(--f-display);font-size:clamp(1.35rem,1.1rem + .9vw,2rem);line-height:1;letter-spacing:-.01em;color:var(--ink)}
.price--l{font-size:clamp(2rem,1.4rem + 2.2vw,3.6rem)}
.price--s{font-size:1.05rem}
.price--vip{color:var(--fir)}
.num{font-family:var(--f-display);font-size:clamp(1.8rem,1.4rem + 1.6vw,3rem);line-height:1;color:var(--ink)}
.rule{height:1px;background:var(--gold);opacity:.55;margin:0}
.link{color:var(--stamp);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:opacity 0.12s var(--curve)}
.link:hover{opacity:.7}
.arrow{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:500;color:var(--ink);transition:opacity 0.12s var(--curve)}
.arrow .ico{width:18px;height:18px;transition:transform 0.3s var(--curve)}
.arrow:hover{opacity:.65}
.arrow:hover .ico{transform:translateX(4px)}
.ico{width:1.25em;height:1.25em;flex:none;fill:currentColor}
.tel{font-family:var(--f-display);font-size:clamp(1.15rem,1rem + .6vw,1.6rem);line-height:1;text-decoration:none;color:var(--ink);letter-spacing:.01em;white-space:nowrap}
.tel--big{font-size:clamp(1.6rem,1.3rem + 1.4vw,2.5rem);color:var(--stamp)}

/* ---------- кнопки, чипы, теги ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 26px;border-radius:var(--r-l);border:1px solid transparent;font-weight:500;font-size:1rem;line-height:1.2;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background-color 0.3s var(--curve),border-color 0.3s var(--curve),color 0.3s var(--curve),transform 0.3s var(--curve),box-shadow 0.3s var(--curve)}
.btn .ico{width:20px;height:20px}
.btn--stamp{background:var(--stamp);color:#fff;box-shadow:0 8px 20px -8px rgba(6,68,32,.35)}
.btn--stamp:hover{background:var(--stamp-press);transform:translateY(-1px)}
.btn--stamp:active{transform:translateY(1px)}
.btn--paper{background:var(--paper);color:var(--ink);border-color:var(--ink)}
.btn--paper:hover{background:var(--ink);color:var(--paper)}
.btn--on-dark{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.btn--on-dark:hover{background:#fff;transform:translateY(-1px)}
.btn--sm{min-height:44px;padding:9px 18px;font-size:.9375rem}
.btn--lg{min-height:58px;padding:14px 32px;font-size:1.0625rem}
.btn--block{width:100%}
@keyframes wiggle{0%,70%,100%{transform:rotate(0)}76%{transform:rotate(-2.2deg)}82%{transform:rotate(2.2deg)}88%{transform:rotate(-1.4deg)}94%{transform:rotate(1.4deg)}}
.btn--wiggle{animation:wiggle 2.4s cubic-bezier(.45,.05,.55,.95) infinite}
.btn--wiggle:hover{animation-play-state:paused}
.chip{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 14px;border-radius:var(--r-s);border:1px solid var(--line);background:var(--white);font-size:.9375rem;cursor:pointer;text-decoration:none;transition:border-color 0.3s var(--curve),background-color 0.3s var(--curve),color 0.3s var(--curve)}
.chip:hover{border-color:var(--ink)}
.chip[aria-pressed="true"],.chip[aria-selected="true"],.chip.is-on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.chip--stamp[aria-pressed="true"]{background:var(--stamp);border-color:var(--stamp);color:#fff}
.chip .ico{width:16px;height:16px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.tag{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:var(--r-s);font-size:.8125rem;font-weight:500;line-height:1.2;background:var(--paper-2);color:var(--ink);text-decoration:none}
.tag .ico{width:16px;height:16px}
.tag--stamp{background:var(--stamp);color:#fff}
.tag--fir{background:var(--fir);color:var(--paper)}
.tag--ok{background:#E7F0EA;color:var(--fir)}
.tag--busy{background:transparent;color:var(--ink-2);border:1px solid var(--line)}
.tag--line{background:transparent;border:1px solid var(--line)}
.pill{display:inline-block;width:2.2rem;height:2.2rem;border-radius:50%;object-fit:cover;border:2px solid var(--white);box-shadow:0 0 0 1px var(--line);margin-left:-.6rem}
.pills{display:inline-flex;padding-left:.6rem}

/* ---------- печать ---------- */
.seal{--s:96px;position:relative;display:grid;place-items:center;align-content:center;gap:2px;width:var(--s);height:var(--s);border-radius:50%;color:#fff;text-align:center;font-family:var(--f-hand);font-weight:600;line-height:1;transform:rotate(-8deg);padding:8px;
  background:var(--stamp);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 6px 14px -6px rgba(4,48,26,.5)}
.seal::before{content:'';position:absolute;inset:7px;border-radius:50%;border:1px dashed rgba(255,255,255,.5)}
.seal__big{font-size:calc(var(--s) * .27);display:block}
.seal__small{font-size:calc(var(--s) * .14);display:block;opacity:.92}
.seal--lg{--s:140px}
.seal--wax{background:url(media/gen/seal.png) center/112% no-repeat;box-shadow:none;filter:drop-shadow(0 8px 12px rgba(6,68,32,.25))}
.seal--wax::before{display:none}
.seal--wax .seal__big{font-size:calc(var(--s) * .16);max-width:70%;line-height:1.05;text-shadow:0 1px 0 rgba(0,0,0,.25)}

/* ---------- листы, открытки, полароиды, лента ---------- */
.sheet{background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);box-shadow:var(--shadow)}
.sheet--ink{background:var(--ink);color:var(--paper);border-color:transparent}
.sheet--ink .h2,.sheet--ink .h3,.sheet--ink .price,.sheet--ink .tel,.sheet--ink .num{color:var(--paper)}
.sheet--ink .small,.sheet--ink .micro{color:var(--paper-ink-2)}
.sheet--ink p{color:var(--paper-ink)}
.sheet--pad{padding:clamp(18px,2.2vw,32px)}
.postcard{position:relative;background:var(--white);border:1px solid var(--line);border-radius:var(--r-s);box-shadow:var(--shadow-2);padding:10px 10px 12px;display:grid;gap:10px}
.postcard__img{position:relative;overflow:hidden;border-radius:3px;background:var(--paper-2)}
.postcard__img img{width:100%;height:100%;object-fit:cover}
.postcard__cap{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-family:var(--f-hand);font-weight:600;font-size:1.2rem;line-height:1.1;color:var(--ink-2);padding-inline:4px}
.postcard__cap b{color:var(--ink);font-weight:600}
.polaroid{position:relative;background:var(--white);padding:10px 10px 12px;border-radius:3px;box-shadow:var(--shadow-2);border:1px solid var(--line)}
.tape{position:absolute;top:-11px;left:50%;width:88px;height:26px;transform:translateX(-50%) rotate(-3deg);background:rgba(243,231,208,.86);box-shadow:0 1px 2px rgba(6,68,32,.15);border-left:1px dashed rgba(6,68,32,.15);border-right:1px dashed rgba(6,68,32,.15);z-index:3}
.tape--r{left:auto;right:22px;transform:rotate(6deg)}
.tape--l{left:34px;transform:rotate(-8deg)}

/* рваные края: бумага поверх тёмной секции, форма — маска из сгенерированного края, цвет — та же бумага, что у тела */
.tear{position:absolute;left:0;right:0;height:var(--tear-h);pointer-events:none;z-index:3;background:var(--tear-bg,var(--paper-bg));-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x;-webkit-mask-size:1916px 821px;mask-size:1916px 821px}
.tear--top{top:0;-webkit-mask-image:url(media/gen/torn_top.png);mask-image:url(media/gen/torn_top.png);-webkit-mask-position:center -335px;mask-position:center -335px}
.tear--bottom{bottom:0;-webkit-mask-image:url(media/gen/torn_bottom.png);mask-image:url(media/gen/torn_bottom.png);-webkit-mask-position:center -316px;mask-position:center -316px}
.dark-sec{position:relative;color:var(--paper);padding-block:calc(var(--tear-h) + 16px) calc(var(--tear-h) + 8px)}
.dark-sec .h2,.dark-sec .h3{color:var(--paper)}
.dark-sec .small,.dark-sec .micro{color:var(--paper-ink-2)}
.dark-sec .lead{color:var(--paper-ink)}
.dark-sec .hand{color:var(--paper-ink-2)}
.dark-sec .hand--ink{color:var(--paper-ink-2)}
.dark-sec .arrow{color:var(--paper)}
.orn{height:120px;background:url(media/gen/ornament.png) center/auto 250% no-repeat}
.orn--small{height:52px;background-size:auto 260%;opacity:.8}
.footer__orn{height:70px;background:rgba(251,243,228,.38);-webkit-mask:url(media/gen/ornament.png) center/auto 250% no-repeat;mask:url(media/gen/ornament.png) center/auto 250% no-repeat;margin-bottom:clamp(24px,3vw,40px)}

/* ---------- шапка ---------- */
.header{position:sticky;top:0;z-index:50;background:rgba(251,243,228,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(226,212,189,.7);transition:transform 0.2s ease,box-shadow 0.2s ease}
.header.is-hidden{transform:translateY(-100%)}
.header.is-scrolled{box-shadow:0 5px 35px -18px rgba(6,68,32,.35)}
.header__in{display:flex;align-items:center;gap:clamp(12px,1.5vw,28px);min-height:var(--header-h)}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:inherit}
.brand .seal{--s:46px;transform:rotate(-8deg);padding:0}
.brand .seal__big{font-size:17px;letter-spacing:.02em}
.brand__text{display:grid}
.brand__name{font-family:var(--f-display);font-size:1.15rem;line-height:1.05}
.brand__sub{font-family:var(--f-hand);font-weight:600;font-size:1rem;line-height:1;color:var(--stamp);margin-top:2px;white-space:nowrap}
.nav{display:flex;gap:clamp(12px,1.6vw,26px);margin-inline:auto}
.nav a{text-decoration:none;font-weight:500;font-size:.95rem;padding:6px 0;position:relative;transition:opacity 0.12s var(--curve)}
.nav a:hover{opacity:.55}
.nav a[aria-current="page"]::after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--stamp);border-radius:2px}
.header__tel{display:grid;text-decoration:none;text-align:right;gap:2px}
.header__tel .tel{font-size:1.1rem}
.burger{display:none;width:48px;height:48px;border:1px solid var(--line);border-radius:var(--r-s);background:var(--white);place-items:center;cursor:pointer;flex:none}
.burger .ico{width:24px;height:24px}
.drawer{position:fixed;inset:0;z-index:70;visibility:hidden;transition:visibility 0s 0.3s}
.drawer.is-open{visibility:visible;transition-delay:0s}
.drawer__scrim{position:absolute;inset:0;background:rgba(6,68,32,.5);transition:opacity 0.25s var(--curve)}
html.js .drawer__scrim{opacity:0}
.drawer.is-open .drawer__scrim{opacity:1}
.drawer__panel{position:absolute;top:0;bottom:0;left:0;width:min(88vw,380px);background:var(--paper-bg);background-color:var(--paper);padding:20px 24px 28px;display:grid;align-content:start;gap:16px;transform:translateX(-100%);transition:transform 0.3s var(--curve);box-shadow:var(--shadow-2);overflow:auto}
.drawer.is-open .drawer__panel{transform:none}
.drawer__close{justify-self:end;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--white);display:grid;place-items:center;cursor:pointer}
.drawer__close .ico{width:22px;height:22px}
.drawer__nav{display:grid;gap:2px}
.drawer__nav a{text-decoration:none;font-family:var(--f-display);font-size:1.3rem;padding:9px 0;border-bottom:1px solid var(--line)}
.drawer__nav a[aria-current="page"]{color:var(--stamp)}
.drawer__tel{font-size:1.6rem}
.drawer__btn{justify-self:start}
body.is-locked{overflow:hidden}

/* липкая полоса цены (вылазка П5): въезжает, когда первый экран ушёл, прячется у подвала */
.pricebar{position:fixed;left:0;right:0;bottom:0;z-index:45;transform:translateY(110%);transition:transform 0.26s var(--curve);background:var(--ink);color:var(--paper);box-shadow:0 -10px 30px -12px rgba(6,68,32,.5)}
.pricebar.is-on{transform:none}
.pricebar__in{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:62px;padding-block:8px}
.pricebar__price{display:grid;gap:2px}
.pricebar__price .price{color:var(--paper);font-size:1.25rem}
.pricebar__sub{color:var(--paper-ink-2)}

/* ---------- секции: общее ---------- */
main{display:block;overflow-x:clip}
section{position:relative}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:20px 32px;flex-wrap:wrap}
.sec-head>div{display:grid;gap:12px}
.sec-head .small{max-width:62ch}
.sec-head--more{margin:clamp(32px,4vw,64px) 0 20px}

/* ---------- герой (Editorial Split 6/12) ---------- */
.hero{min-height:calc(100dvh - var(--header-h));display:grid;align-items:center;padding-block:clamp(24px,4vh,56px) clamp(56px,9vh,110px);overflow:visible}
.hero__grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(24px,4vw,64px);align-items:center}
.hero__copy{display:grid;gap:clamp(14px,1.6vw,22px);align-content:center;justify-items:start}
.hero__note{margin-left:2px}
.hero__cta{display:flex;align-items:center;gap:18px 26px;flex-wrap:wrap;margin-top:6px}
.hero__cta-note{display:grid;gap:3px}
.hero__cal{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-family:var(--f-hand);font-weight:600;font-size:1.3rem;color:var(--ink-2);transition:opacity 0.12s var(--curve)}
.hero__cal:hover{opacity:.6}
.hero__cal .ico{width:22px;height:22px;color:var(--stamp)}
.hero__stamps{display:flex;flex-wrap:wrap;gap:8px 16px;color:var(--ink-2);font-size:.9375rem;margin-top:4px}
.hero__stamps li{display:inline-flex;align-items:center;gap:8px}
.hero__stamps li::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--gold)}
.hero__stamps li:first-child::before{background:var(--mandarin)}
.hero__stamps a{text-decoration:none}
.hero__stage{position:relative;min-height:clamp(380px,46vw,660px)}
.postcard--hero{position:absolute;left:5%;right:0;top:50%;translate:0 -50%;transform:rotate(2deg);z-index:1}
.postcard--hero .postcard__img{aspect-ratio:16/11}
.postcard__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.postcard__photo{display:none}
.seal--hero{position:absolute;right:-12px;top:-4%;z-index:5;transform:rotate(9deg)}
.hero3d{position:absolute;inset:-6% -6% -16% -12%;z-index:4;pointer-events:none}
.hero3d canvas{width:100%!important;height:100%!important;display:block}
.hero__leaf{position:absolute;left:-4%;bottom:-8%;width:clamp(70px,8vw,120px);height:auto;transform:rotate(-24deg);z-index:2;pointer-events:none;filter:drop-shadow(0 10px 12px rgba(6,68,32,.25))}

/* ---------- три двери (Z-каскад) ---------- */
.doors{padding-block:clamp(48px,7vw,104px) clamp(56px,8vw,120px)}
.doors__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px 32px;flex-wrap:wrap;margin-bottom:clamp(28px,3.5vw,52px)}
.cascade{position:relative;display:grid;grid-template-columns:repeat(12,1fr);align-items:start}
.door{--rot:0deg;grid-row:1;transform:rotate(var(--rot));gap:0}
.door:nth-child(1){grid-column:1/6;--rot:-2deg;z-index:1}
.door:nth-child(2){grid-column:5/10;margin-top:clamp(56px,8vw,130px);--rot:3deg;z-index:2}
.door:nth-child(3){grid-column:9/13;margin-top:clamp(0px,2vw,32px);--rot:-1deg;z-index:3}
.door .postcard__img{aspect-ratio:4/3}
.door:nth-child(3) .postcard__img{aspect-ratio:4/5}
.door__body{display:grid;gap:8px;padding:14px 6px 6px}
.door__body .h3{font-size:clamp(1.25rem,1.05rem + .8vw,1.7rem)}
.door__price{position:absolute;top:-18px;left:-14px;z-index:2;--s:88px;transform:rotate(-12deg)}
.doors__note{margin-top:clamp(24px,3vw,44px);display:flex;gap:12px 20px;align-items:center;flex-wrap:wrap}

/* ---------- как это работает (акт I) ---------- */
.steps{background:var(--fir);color:var(--paper);overflow:hidden}
.steps .h2{color:var(--paper)}
.steps .lead{color:var(--paper-ink)}
.steps__pin{padding-block:calc(var(--tear-h) + 8px) calc(var(--tear-h) + 8px);display:grid;align-items:center}
.steps__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,72px);align-items:start}
.steps__side{display:grid;gap:18px;align-content:start}
.steps__index{display:flex;gap:10px;flex-wrap:wrap}
.steps__index li{width:40px;height:40px;border-radius:50%;border:1px solid rgba(251,243,228,.35);display:grid;place-items:center;font-family:var(--f-display);font-size:1rem;color:var(--paper-ink);transition:background-color 0.3s var(--curve),color 0.3s var(--curve)}
.steps__index li.is-on{background:var(--paper);color:var(--fir)}
.steps__tg{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:8px}
.steps__tg figure{position:relative;transform:rotate(var(--rot,0deg))}
.steps__tg figure:nth-child(1){--rot:-3deg}.steps__tg figure:nth-child(2){--rot:2deg;margin-top:14px}.steps__tg figure:nth-child(3){--rot:-1.5deg}.steps__tg figure:nth-child(4){--rot:2.5deg;margin-top:10px}
.steps__tg img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:2px;border:4px solid var(--white);box-shadow:var(--shadow)}
.steps__tg figcaption{font-family:var(--f-hand);font-weight:600;font-size:1rem;color:var(--paper-ink-2);margin-top:6px;line-height:1.1}
.steps__stage{position:relative;display:grid;gap:16px}
.step{position:relative;background:var(--paper);color:var(--ink);border-radius:var(--r-s);box-shadow:var(--shadow-2);padding:clamp(20px,2.4vw,34px) clamp(20px,2.4vw,34px) clamp(20px,2.4vw,34px) clamp(78px,7vw,108px);display:grid;gap:8px;transform:rotate(var(--rot,0deg))}
.step:nth-child(1){--rot:-1.5deg}.step:nth-child(2){--rot:1.2deg}.step:nth-child(3){--rot:-.8deg}.step:nth-child(4){--rot:1.6deg}
.step__n{position:absolute;left:clamp(18px,2vw,28px);top:clamp(18px,2vw,26px);width:44px;height:44px;border-radius:50%;background:var(--ink);color:var(--paper);display:grid;place-items:center;font-family:var(--f-display);font-size:1.25rem}
.step .h3{font-size:clamp(1.2rem,1rem + .8vw,1.7rem);color:var(--ink)}
.step p{color:var(--ink-2)}
.step__seal{position:absolute;right:clamp(10px,2vw,28px);top:-30px;--s:124px;transform:rotate(-10deg);z-index:2}
html.js.motion .steps__stage{height:min(560px,64vh);display:block}
html.js.motion .step{position:absolute;left:0;right:0;top:calc(var(--i,0) * 24px);min-height:236px}
html.js.motion .steps__pin{min-height:100dvh}

/* ---------- пакеты (акт III) ---------- */
.packs{padding-block:clamp(56px,8vw,124px) clamp(48px,6vw,96px);overflow:visible}
.packs--page{padding-block:clamp(8px,2vw,24px) clamp(56px,8vw,120px)}
.packs__head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(20px,3vw,48px);align-items:end;margin-bottom:clamp(28px,4vw,56px)}
.packs__head>div{display:grid;gap:12px}
.packs__cal{position:relative;display:grid;gap:8px;justify-items:start;font-family:var(--f-hand);font-weight:600;font-size:clamp(1.3rem,1.1rem + .8vw,1.7rem);color:var(--ink);text-decoration:none;padding-bottom:12px}
.packs__cal span:first-child{transition:opacity 0.12s var(--curve)}
.packs__cal:hover span:first-child{opacity:.6}
.inkline{display:block;width:100%;height:3px;background:var(--stamp);border-radius:2px;transform-origin:left center}
html.js.motion .inkline{transform:scaleX(0)}
.packs__sheets{display:grid;grid-template-columns:minmax(0,3.6fr) minmax(0,4.8fr) minmax(0,3.6fr);gap:clamp(14px,2vw,28px);align-items:end}
.pack{position:relative;display:grid;gap:14px;padding:clamp(20px,2.4vw,34px);border-radius:var(--r-m);align-content:start}
.pack--classic{transform:rotate(-1.2deg)}
.pack--exclusive{transform:rotate(1.1deg)}
.pack--vip{background:var(--ink);color:var(--paper);border-color:transparent;padding-block:clamp(30px,3.4vw,48px);box-shadow:var(--shadow-2);z-index:1}
.pack--vip .pack__name,.pack--vip .price{color:var(--paper)}
.pack--vip .micro{color:var(--paper-ink-2)}
.pack--vip li{border-color:rgba(251,243,228,.16);color:rgba(251,243,228,.92)}
.pack__name{font-size:clamp(1.4rem,1.1rem + 1vw,2rem)}
.pack__price{display:inline-block;transform-origin:left center}
.pack li{padding:9px 0;border-bottom:1px solid var(--line);font-size:.9375rem;line-height:1.45;color:var(--ink-2)}
.pack li:last-child{border-bottom:0}
.pack__tag{position:absolute;top:-14px;right:18px}
.pack .btn{justify-self:start}
.packs__foot{margin-top:clamp(24px,3vw,44px);display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;color:var(--ink-2)}
.packs__foot .hand{max-width:40ch;line-height:1.15}
.packs__foot .micro{flex-basis:100%}

/* ---------- кто приедет (акт II) ---------- */
.pairs{background:var(--paper2-bg);background-color:var(--paper-2);overflow:hidden}
.pairs__pin{padding-block:clamp(56px,7vw,96px) clamp(24px,3vw,40px);display:grid;grid-template-columns:minmax(0,1fr);align-content:center}
.pairs__track{min-width:0}
.pairs__head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(20px,3vw,48px);align-items:end}
.pairs__head>div{display:grid;gap:12px}
.pairs__head .lead{max-width:52ch}
.pairs__head-side{justify-items:start}
.pairs__track{display:flex;gap:clamp(20px,2.6vw,36px);align-items:flex-start;padding:clamp(36px,4.5vw,64px) var(--gutter) 24px;will-change:transform}
.pairs__track .polaroid{flex:none;width:clamp(290px,27vw,380px);transform:rotate(var(--rot,0deg))}
.pairs__track>:nth-child(4n+1){--rot:-2deg}.pairs__track>:nth-child(4n+2){--rot:1.5deg;margin-top:40px}.pairs__track>:nth-child(4n+3){--rot:-1deg;margin-top:14px}.pairs__track>:nth-child(4n){--rot:2.4deg;margin-top:52px}
.pair-photo{position:relative;aspect-ratio:4/5;border-radius:2px;overflow:hidden;background:var(--paper-2)}
.pair-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pair-photo .is-image{z-index:1;transition:opacity 0.3s ease}
.pair-life{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;gap:4px;background:var(--white);opacity:0;pointer-events:none;z-index:2;transition:opacity 0.3s ease}
.pair-life img{position:static;height:100%}
.polaroid:hover .pair-life,.polaroid:focus-within .pair-life{opacity:1}
.pair-photo__hint{position:absolute;left:10px;bottom:10px;z-index:3;padding:4px 9px;border-radius:var(--r-s);background:rgba(251,243,228,.92);font-family:var(--f-hand);font-weight:600;font-size:1rem;color:var(--ink);line-height:1}
.polaroid__body{display:grid;gap:6px;padding:12px 4px 2px;position:relative}
.polaroid__tag{position:absolute;right:0;top:-38px;z-index:3}
.polaroid__body .h3{font-size:1.35rem}
.polaroid__body .small{font-size:.875rem}
.polaroid__body .btn{justify-self:start;margin-top:6px}
.promise{flex:none;width:clamp(230px,20vw,280px);align-self:center;display:grid;gap:8px;transform:rotate(var(--rot,-3deg));font-family:var(--f-hand);font-weight:600;font-size:clamp(1.35rem,1.2rem + .6vw,1.7rem);line-height:1.1;color:var(--ink);padding-top:20px}
.promise .ico{width:32px;height:32px;color:var(--stamp)}
.promise small{font-family:var(--f-text);font-weight:400;font-size:.875rem;color:var(--ink-2);line-height:1.4}
.pairs__all{padding-block:clamp(8px,2vw,24px) clamp(56px,7vw,104px)}
.pairs__all-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px 24px;flex-wrap:wrap;margin-bottom:8px}
.mini{flex:none;width:132px;background:var(--white);padding:6px 6px 24px;border:1px solid var(--line);border-radius:2px;box-shadow:var(--shadow-flat);transform:rotate(var(--rot,0deg));text-decoration:none;color:inherit;position:relative}
.mini:nth-child(3n+1){--rot:-2deg}.mini:nth-child(3n+2){--rot:1.6deg;margin-top:8px}.mini:nth-child(3n){--rot:-.6deg}
.mini img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:2px}
.mini span{position:absolute;left:8px;right:8px;bottom:4px;font-family:var(--f-hand);font-weight:600;font-size:.95rem;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---------- видео-стена ---------- */
.wall{background:var(--ink);color:var(--paper);padding-block:calc(var(--tear-h) + 8px) calc(var(--tear-h) + 4px)}
.wall .tear--top{--tear-bg:var(--paper2-bg)}
.wall__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,3.5vw,56px);align-items:center}
.wall__big{position:relative;display:block;border-radius:var(--r-s);overflow:hidden;text-decoration:none;color:var(--paper);background:var(--fir-2);aspect-ratio:16/10;transform:rotate(-1deg);box-shadow:var(--shadow-2);border:8px solid var(--white)}
.wall__big img{position:absolute;inset:0;width:100%;height:120%;top:-10%;object-fit:cover;transition:transform 0.7s var(--curve)}
.wall__big:hover img{transform:scale(1.03)}
.wall__big::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,68,32,0) 42%,rgba(6,68,32,.84))}
.wall__cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:clamp(18px,2.4vw,34px);display:flex;justify-content:space-between;align-items:end;gap:16px}
.wall__cap>span{display:grid;gap:4px}
.wall__cap .h3{font-size:clamp(1.4rem,1.1rem + 1.2vw,2.2rem);color:var(--paper);font-family:var(--f-display);font-weight:400}
.wall__cap .small{color:var(--paper-ink)}
.wall__cap .hand{color:var(--paper-ink-2)}
.play{flex:none;width:64px;height:64px;border-radius:50%;background:var(--stamp);display:grid;place-items:center;color:#fff;box-shadow:0 10px 24px -8px rgba(6,68,32,.7);transition:transform 0.3s var(--curve)}
.play .ico{width:28px;height:28px;margin-left:2px}
.wall__big:hover .play{transform:scale(1.06)}
.wall__side{display:grid;gap:16px;align-content:start;justify-items:start}
.wall__side .h2{color:var(--paper);font-size:clamp(1.6rem,1.2rem + 1.4vw,2.4rem)}
.wall__side .small{color:var(--paper-ink-2)}
.wall__side .arrow{color:var(--paper)}
.tvtape{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:clamp(36px,5vw,64px)}
.vtile{position:relative;display:grid;gap:8px;text-decoration:none;color:inherit;transform:rotate(var(--rot,0deg))}
.vtile:nth-child(odd){--rot:-1.4deg}.vtile:nth-child(even){--rot:1.2deg;margin-top:16px}
.vtile__img{position:relative;display:block;aspect-ratio:16/10;border-radius:3px;overflow:hidden;background:var(--fir-2);border:5px solid var(--white);box-shadow:var(--shadow)}
.vtile__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 0.7s var(--curve)}
.vtile:hover .vtile__img img{transform:scale(1.04)}
.vtile .play{position:absolute;right:8px;bottom:8px;width:40px;height:40px}
.vtile .play .ico{width:16px;height:16px}
.vtile__row{display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.vtile__row b{font-family:var(--f-display);font-weight:400;font-size:1.05rem}
.vtile__row span{font-family:var(--f-hand);font-weight:600;color:var(--paper-ink-2);font-size:1.05rem}
.vtile p{font-size:.8125rem;color:var(--paper-ink-2);line-height:1.35}
.stars{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center}
.stars__lead{font-family:var(--f-hand);font-weight:600;font-size:1.45rem;color:var(--paper-ink-2);margin-right:6px}
.stars span:not(.stars__lead){padding:6px 12px;border:1px solid rgba(251,243,228,.28);border-radius:var(--r-s);font-family:var(--f-display);font-size:.95rem;transform:rotate(var(--rot,0deg))}
.stars span:nth-child(odd){--rot:-1deg}.stars span:nth-child(3n){--rot:1.5deg}

/* ---------- доказательства (счётчики + лента отзывов) ---------- */
.proof{padding-block:clamp(56px,8vw,120px) clamp(40px,5vw,72px);overflow:hidden}
.counters{display:grid;grid-template-columns:repeat(4,auto);justify-content:space-between;gap:20px 32px;align-items:end;padding-bottom:clamp(22px,3vw,36px);border-bottom:1px solid var(--gold)}
.counter{display:grid;gap:6px}
.counter b{font-family:var(--f-display);font-weight:400;font-size:clamp(2.2rem,1.4rem + 3vw,4.4rem);line-height:.95;letter-spacing:-.02em}
.counter b i{font-style:normal;font-family:var(--f-hand);font-weight:600;font-size:.5em;color:var(--stamp);margin-left:.15em}
.counter span{font-size:.9375rem;color:var(--ink-2)}
.proof__head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-top:clamp(28px,4vw,52px)}
.proof__side{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.carousel{display:flex;gap:clamp(18px,2.2vw,28px);overflow-x:auto;scroll-snap-type:x mandatory;padding:30px var(--gutter) 30px;margin-inline:calc(-1 * var(--gutter));scrollbar-width:none;cursor:grab;align-items:flex-start}
.carousel::-webkit-scrollbar{display:none}
.carousel.is-drag{cursor:grabbing;scroll-snap-type:none}
.review{scroll-snap-align:start;flex:none;width:clamp(290px,30vw,400px);display:grid;transform:rotate(var(--rot,0deg))}
.review:nth-child(5n+1){--rot:-1.5deg}.review:nth-child(5n+2){--rot:1deg}.review:nth-child(5n+3){--rot:-.5deg}.review:nth-child(5n+4){--rot:1.8deg}.review:nth-child(5n){--rot:-1.2deg}
.review--text{width:clamp(260px,24vw,320px);align-self:center;margin-top:60px}
.review__photos{position:relative;height:clamp(210px,21vw,270px);margin-bottom:-26px;z-index:1}
.review__photos img{position:absolute;width:62%;aspect-ratio:4/5;object-fit:cover;border:6px solid var(--white);box-shadow:var(--shadow);border-radius:2px}
.review__photos img:first-child{left:0;top:0;transform:rotate(-4deg)}
.review__photos img:nth-child(2){right:0;top:20px;transform:rotate(5deg)}
.review__photos img:only-child{width:76%;left:10%}
.review__body{background:var(--white);border:1px solid var(--line);border-radius:var(--r-s);padding:clamp(30px,2.8vw,40px) clamp(18px,2vw,26px) clamp(18px,2vw,24px);display:grid;gap:10px;align-content:start;box-shadow:var(--shadow-flat)}
.review--text .review__body{background:var(--paper-2);border-color:transparent;padding-top:clamp(18px,2vw,24px)}
.review__who{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.review__who b{font-family:var(--f-display);font-weight:400;font-size:1.2rem}
.review__who span{font-family:var(--f-hand);font-weight:600;color:var(--ink-2);font-size:1.05rem}
.review__text{font-size:.9375rem;line-height:1.5;color:var(--ink)}
.review--text .review__text{font-family:var(--f-hand);font-weight:500;font-size:1.3rem;line-height:1.2}
.carousel__nav{display:flex;gap:8px;align-items:center}
.carousel__btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--ink);background:var(--paper);display:grid;place-items:center;cursor:pointer;transition:background-color 0.3s var(--curve),color 0.3s var(--curve)}
.carousel__btn:hover{background:var(--ink);color:var(--paper)}
.carousel__btn .ico{width:20px;height:20px}

/* ---------- программы (бенто без дыр) ---------- */
.programs{background:var(--paper2-bg);background-color:var(--paper-2);padding-block:clamp(56px,8vw,120px) clamp(64px,8vw,120px)}
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:clamp(150px,15vw,225px);grid-auto-flow:dense;gap:clamp(10px,1.4vw,18px);margin-top:clamp(24px,3vw,44px)}
.bento--3{grid-template-columns:repeat(3,1fr);grid-auto-rows:clamp(190px,18vw,260px);margin-top:0}
.pcard{position:relative;display:block;border-radius:var(--r-s);overflow:hidden;text-decoration:none;color:var(--paper);background:var(--ink);box-shadow:var(--shadow-flat)}
.pcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 0.7s var(--curve)}
.pcard:hover img{transform:scale(1.04)}
.pcard::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,68,32,0) 45%,rgba(6,68,32,.86))}
.pcard__body{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:14px 16px;display:grid;gap:3px}
.pcard__body b{font-family:var(--f-display);font-weight:400;font-size:1.05rem;line-height:1.15}
.pcard__body>span{font-size:.8125rem;color:var(--paper-ink-2)}
.pcard__body .price{font-size:1.05rem;color:var(--paper);margin-top:4px}
.pcard--2x2{grid-column:span 2;grid-row:span 2}
.pcard--2x2 .pcard__body b{font-size:clamp(1.3rem,1.1rem + .8vw,1.8rem)}
.pcard--2x2 .pcard__body .price{font-size:1.3rem}
.pcard--2x1{grid-column:span 2}
.pcard--paper{background:var(--paper);color:var(--ink);border:1px solid var(--line);display:grid;align-content:end;padding:16px}
.pcard--paper::after{display:none}
.pcard--paper .pcard__body{position:static;padding:0}
.pcard--paper .pcard__body b{font-size:1.15rem}
.pcard--paper .pcard__body>span{color:var(--ink-2)}
.pcard--paper .pcard__body .price{color:var(--ink)}
.pcard__cat{position:absolute;left:12px;top:12px;z-index:2}
.pcard__nop{color:var(--stamp)!important}
.pcard--stamp{background:var(--stamp);color:#fff;display:grid;align-content:center;justify-items:start;gap:10px;padding:clamp(18px,2.4vw,32px)}
.pcard--stamp::after{display:none}
.pcard--stamp .h3{color:#fff;font-size:clamp(1.3rem,1.1rem + .9vw,1.9rem);font-family:var(--f-display);font-weight:400}
.pcard--stamp .hand{color:var(--paper-ink-2)}
.pcard--stamp .small{color:rgba(255,255,255,.86)}
.pcard--stamp .btn{margin-top:6px}

/* ---------- FAQ + открытка-CTA ---------- */
.faq-sec{padding-block:clamp(56px,8vw,120px) clamp(80px,9vw,140px)}
.faq-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,4vw,64px);align-items:start}
.faq-side{display:grid;gap:14px;justify-items:start;position:sticky;top:calc(var(--header-h) + 24px)}
.faq-side .orn--small{width:min(100%,360px);justify-self:start}
.faq{display:grid;border-top:1px solid var(--line)}
.faq__item{border-bottom:1px solid var(--line)}
.faq__q{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:18px 0;background:none;border:0;text-align:left;cursor:pointer;font-family:var(--f-display);font-size:clamp(1.1rem,1rem + .5vw,1.4rem);line-height:1.2}
.faq__q .chev{flex:none;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;transition:transform 0.35s var(--curve-acc),background-color 0.3s var(--curve),color 0.3s var(--curve)}
.faq__q .chev .ico{width:18px;height:18px}
.faq__item.is-open .chev{transform:rotate(180deg);background:var(--ink);color:var(--paper)}
.faq__a{display:grid;grid-template-rows:0fr;transition:grid-template-rows 0.35s var(--curve-acc)}
.faq__a>div{overflow:hidden}
.faq__a p{padding-bottom:18px;color:var(--ink-2);max-width:60ch}
.faq__item.is-open .faq__a{grid-template-rows:1fr}
.cta-card{position:relative;display:grid;gap:18px;padding:clamp(28px,3.5vw,52px);margin-top:clamp(40px,5vw,80px);transform:rotate(-1.2deg);background:var(--stamp);color:#fff;border-radius:var(--r-s);box-shadow:var(--shadow-2);justify-items:start}
.cta-card .h2{color:#fff;max-width:16ch}
.cta-card p{color:rgba(255,255,255,.88);max-width:46ch}
.cta-card__row{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center}
.cta-card .tel{color:#fff}
.cta-card__tel{display:grid;gap:2px}
.cta-card .micro{color:rgba(255,255,255,.75)}
.cta-card .tag--line{color:#fff;border-color:rgba(255,255,255,.4)}
.cta-card .arrow{color:#fff}
.cta-card__leaf{position:absolute;right:-16px;top:-34px;width:clamp(70px,7vw,110px);height:auto;transform:rotate(28deg);pointer-events:none;filter:drop-shadow(0 8px 10px rgba(6,68,32,.3))}
.cta-card__seal{position:absolute;left:-24px;bottom:-28px;--s:112px;transform:rotate(-14deg)}
.thanks{margin-top:0}
.thanks__check{width:56px;height:56px;border-radius:50%;background:#fff;color:var(--stamp);display:grid;place-items:center}
.thanks__check .ico{width:28px;height:28px}
.thanks__top{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;width:100%;align-items:flex-start}
.thanks__num{display:grid;gap:2px;padding:14px 20px;border-radius:var(--r-s);background:rgba(255,255,255,.14)}
.thanks__num .num{color:#fff;font-size:2rem}
.thanks__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:100%}
.thanks__steps div{padding:16px;border-radius:var(--r-s);background:rgba(255,255,255,.12);display:grid;gap:6px;align-content:start}
.thanks__steps .h3{color:#fff;font-size:1.15rem}
.thanks__steps p{font-size:.875rem}

/* добавки: стопка полароидов в шапке страницы, открытка в шапке, блок Крио, полароид у FAQ */
.stack3{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:0;width:min(100%,420px);margin-bottom:-24px}
.stack3 .polaroid{padding:6px 6px 8px;transform:rotate(var(--rot,0deg));z-index:1}
.stack3 .polaroid:nth-child(1){--rot:-6deg;margin-top:18px}.stack3 .polaroid:nth-child(2){--rot:3deg;z-index:2;margin-inline:-10px}.stack3 .polaroid:nth-child(3){--rot:-2deg;margin-top:26px}
.stack3 img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:2px}
.stack3 .postcard__cap{font-size:.95rem;padding:4px 2px 0}
.page-head__card{max-width:360px;transform:rotate(2deg);justify-self:end}
.page-head__card .postcard__img{aspect-ratio:4/3}
.krio{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,4vw,64px);align-items:center;margin-top:clamp(40px,5vw,80px)}
.krio__card{transform:rotate(-2deg)}
.krio__card .postcard__img{aspect-ratio:4/3}
.krio__text{display:grid;gap:14px;justify-items:start}
.krio__list{display:grid}
.krio__list li{padding:10px 0 10px 28px;border-bottom:1px solid var(--line);position:relative;color:var(--ink-2)}
.krio__list li::before{content:'';position:absolute;left:4px;top:18px;width:10px;height:10px;border-radius:50%;background:var(--stamp)}
.faq-side__card{width:min(100%,260px);transform:rotate(-3deg);margin-top:8px}
.faq-side__card img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:2px}
.faq-side__card .postcard__cap{padding-top:8px}

/* ---------- подвал ---------- */
.footer{background:var(--ink);color:var(--paper);padding-block:calc(var(--tear-h) + 8px) clamp(28px,3vw,44px);position:relative}
.footer__grid{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px)}
.footer__who{display:grid;gap:14px;align-content:start;justify-items:start}
.footer__who .small{color:var(--paper-ink)}
.footer__who .micro{color:var(--paper-ink-2)}
.footer h4{font-family:var(--f-hand);font-weight:600;font-size:1.3rem;color:var(--paper-ink-2);margin-bottom:12px}
.footer .brand__name{color:var(--paper)}
.footer__nav{display:grid;gap:8px}
.footer__nav a,.footer__contacts a{text-decoration:none;transition:opacity 0.12s var(--curve)}
.footer__nav a:hover,.footer__contacts a:hover{opacity:.55}
.footer__contacts{display:grid;gap:8px;color:var(--paper-ink)}
.footer__contacts .small{color:var(--paper-ink)}
.footer .tel{color:var(--paper);font-size:1.5rem;display:inline-block;margin-bottom:10px}
.footer__chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(251,243,228,.25);border-radius:var(--r-s);text-decoration:none;font-size:.9375rem;justify-self:start}
.footer__chip .ico{width:18px;height:18px}
.footer__bottom{margin-top:clamp(28px,3vw,44px);padding-top:18px;border-top:1px solid rgba(251,243,228,.16);display:flex;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;font-size:.8125rem;color:var(--paper-ink-2)}

/* ---------- внутренние страницы: шапка страницы, вкладки, фильтры, таблицы ---------- */
.page-head{padding-block:clamp(24px,3.5vw,52px) clamp(28px,3.5vw,52px);display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:clamp(20px,3vw,48px);align-items:end}
.page-head--full{grid-template-columns:1fr}
.page-head__main{display:grid;gap:14px;justify-items:start}
.page-head__side{display:grid;justify-items:end;gap:10px;text-align:right}
.seal--page{transform:rotate(8deg)}
.crumbs{display:flex;gap:8px;flex-wrap:wrap;font-size:.875rem;color:var(--ink-2);margin-bottom:4px}
.crumbs a{text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.filters{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;margin-top:14px}
.filters__count{margin-left:auto}
.age-note{margin-top:12px;max-width:80ch;color:var(--fir)}
.tabs{display:flex;flex-wrap:wrap;gap:6px}
.tab{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 16px;border:1px solid var(--line);border-radius:var(--r-l);background:transparent;cursor:pointer;font-size:.9375rem;color:inherit;transition:background-color 0.3s var(--curve),color 0.3s var(--curve),border-color 0.3s var(--curve)}
.tab:hover{border-color:var(--ink)}
.tab[aria-selected="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.tabs--dark .tab{border-color:rgba(251,243,228,.3);color:var(--paper)}
.tabs--dark .tab:hover{border-color:var(--paper)}
.tabs--dark .tab[aria-selected="true"]{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.tab .count{font-family:var(--f-hand);font-weight:600;font-size:1.05rem;opacity:.7}
.table-scroll{overflow-x:auto}
.ptable{width:100%;border-collapse:collapse;font-size:.9375rem}
.ptable th{text-align:left;font-weight:500;color:var(--ink-2);padding:10px 12px;border-bottom:1px solid var(--line);font-size:.8125rem;letter-spacing:.04em;text-transform:uppercase}
.ptable td{padding:13px 12px;border-bottom:1px solid var(--line);vertical-align:middle}
.ptable tbody tr{cursor:pointer;transition:background-color 0.3s var(--curve)}
.ptable tbody tr:hover{background:var(--paper)}
.ptable tbody tr.is-active{background:var(--paper-2)}
.ptable .price{font-size:1.05rem}
.ptable__by{font-family:var(--f-hand);font-weight:600;font-size:1.05rem;color:var(--ink-2)}
.compare{width:100%;border-collapse:collapse;font-size:.9375rem}
.compare th{text-align:left;font-weight:500;padding:12px 14px;border-bottom:1px solid var(--line);font-family:var(--f-display);font-size:1.05rem;color:var(--ink)}
.compare td{padding:14px;border-bottom:1px solid var(--line);vertical-align:top}
.compare td:first-child{font-weight:500;width:26%}
.compare td:nth-child(3){color:var(--fir)}
.compare tbody tr:last-child td{border-bottom:0}
.compare-sheet{overflow:hidden;margin-top:clamp(20px,2.4vw,36px)}
.compare .price{font-size:1.1rem}
.variants td:nth-child(3){color:inherit}
.variants__h3{margin:clamp(28px,3vw,48px) 0 -6px}
.variants__note{margin-top:12px;max-width:90ch}

/* цены */
.calendar{background:var(--fir);color:var(--paper);padding-block:calc(var(--tear-h) + 8px) calc(var(--tear-h) + 8px)}
.calendar .h2{color:var(--paper)}
.calendar .sec-head .small{color:var(--paper-ink-2)}
.calendar .sec-head .tabs .tab{border-color:rgba(251,243,228,.3);color:var(--paper)}
.calendar .sec-head .tabs .tab[aria-selected="true"]{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.calendar-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--gap);align-items:start;margin-top:clamp(24px,3vw,44px)}
.calendar__table{color:var(--ink);display:grid;gap:12px}
.calendar__side{display:grid;gap:var(--gap)}
.pick{display:grid;gap:8px;color:var(--ink);transform:rotate(1.2deg)}
.pick__line{display:flex;align-items:baseline;gap:10px}
.pick__row{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;margin-top:6px}
.nye{display:grid;gap:12px;padding:clamp(18px,2vw,28px);transform:rotate(-1deg)}
.nye__head{display:grid;gap:8px}
.nye__row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--r-s);cursor:pointer;transition:background-color 0.3s var(--curve),color 0.3s var(--curve)}
.nye__row:hover{background:rgba(251,243,228,.1)}
.nye__row.is-active{background:var(--paper);color:var(--ink)}
.nye__row .price{font-size:1.05rem;color:inherit}
.nye__foot{display:grid;gap:10px;margin-top:6px}
.flip{display:inline-block}
@keyframes flipIn{from{transform:translateY(12px);opacity:0}to{transform:none;opacity:1}}
html.js .flip.is-flip{animation:flipIn 0.2s var(--curve) both}
@keyframes blinkOnce{0%,100%{opacity:1}50%{opacity:.2}}
html.js .blink-once{animation:blinkOnce 0.4s var(--curve) 1}
.compare-sec{padding-block:clamp(56px,8vw,120px) clamp(40px,5vw,72px)}
.extras{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,28px);margin-top:clamp(24px,3vw,44px);align-items:start}
.extra{display:grid;gap:8px;transform:rotate(var(--rot,0deg))}
.extra:nth-child(1){--rot:-1.2deg}.extra:nth-child(2){--rot:.8deg;margin-top:22px}.extra:nth-child(3){--rot:-.6deg;margin-top:8px}
.extra__img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:3px;margin-top:8px}
.pay{padding-block:clamp(24px,4vw,64px) clamp(72px,9vw,140px)}
.rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,28px);margin-top:clamp(24px,3vw,44px)}
.payrule{position:relative;display:grid;gap:10px;align-content:start;padding-top:clamp(28px,3vw,40px);transform:rotate(var(--rot,0deg))}
.payrule:nth-child(1){--rot:-1deg}.payrule:nth-child(2){--rot:.8deg;margin-top:26px}.payrule:nth-child(3){--rot:-.5deg;margin-top:10px;padding-bottom:clamp(30px,3vw,44px)}
.payrule__n{position:absolute;left:clamp(18px,2.2vw,32px);top:-16px;width:40px;height:40px;border-radius:50%;background:var(--stamp);color:#fff;display:grid;place-items:center;font-family:var(--f-hand);font-weight:600;font-size:1.3rem;transform:rotate(-8deg)}
.payrule p{color:var(--ink-2)}
.pay__cta{margin-top:clamp(28px,3vw,48px)}

/* артисты */
.artists{padding-bottom:clamp(56px,8vw,120px)}
.agrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,36px);margin-top:clamp(24px,3vw,44px);align-items:start}
.acard{position:relative;display:grid;gap:12px;padding:12px 12px 18px;transform:rotate(var(--rot,0deg));border-radius:var(--r-s)}
.acard:nth-child(3n+1){--rot:-1.2deg}.acard:nth-child(3n+2){--rot:.9deg;margin-top:18px}.acard:nth-child(3n){--rot:-.5deg;margin-top:6px}
.acard__photos{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.acard__photos figure{position:relative}
.acard__photos img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:2px;background:var(--paper-2)}
.acard__photos figcaption{position:absolute;left:8px;bottom:8px;padding:3px 8px;border-radius:var(--r-s);background:rgba(251,243,228,.92);font-family:var(--f-hand);font-weight:600;font-size:.95rem;line-height:1.1;max-width:calc(100% - 16px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.acard__image{grid-column:1/-1}
.acard__image img{aspect-ratio:16/11}
.acard__body{display:grid;gap:8px;padding-inline:4px}
.acard__body .h3{font-size:1.4rem}
.acard__body .small{font-size:.875rem}
.acard__actions{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin-top:4px}
.acard__tag{position:absolute;top:-12px;right:14px;z-index:2}
.artists__note{margin-top:20px;max-width:80ch}
.vip{padding-block:clamp(24px,3vw,48px) clamp(56px,8vw,120px)}
.vip-names{display:flex;flex-wrap:wrap;gap:8px;margin-top:clamp(20px,2.4vw,32px)}
.vip-names span{padding:7px 12px;border:1px solid var(--line);border-radius:var(--r-s);background:var(--white);font-size:.9375rem;transform:rotate(var(--rot,0deg))}
.vip-names span:nth-child(odd){--rot:-.8deg}.vip-names span:nth-child(3n){--rot:1deg}
.why-sec{background:var(--fir);color:var(--paper);padding-block:calc(var(--tear-h) + 8px) calc(var(--tear-h) + 8px)}
.why-sec .h2{color:var(--paper)}
.why{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,2.4vw,36px);margin-top:clamp(24px,3vw,44px)}
.why>div{display:grid;gap:10px;align-content:start;padding-top:14px;border-top:1px solid rgba(251,243,228,.25)}
.why .ico{width:30px;height:30px;color:var(--paper-ink-2)}
.why .h3{font-size:1.3rem;color:var(--paper)}
.why p{color:var(--paper-ink);font-size:.9375rem}
.why__strip{display:grid;grid-template-columns:repeat(10,1fr);gap:10px;margin-top:clamp(28px,4vw,56px)}
.why__strip img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:2px;border:4px solid var(--white);box-shadow:var(--shadow);transform:rotate(var(--rot,0deg))}
.why__strip img:nth-child(odd){--rot:-2.5deg}.why__strip img:nth-child(even){--rot:2deg;margin-top:12px}.why__strip img:nth-child(3n){--rot:-1deg}
.why__note{margin-top:16px;color:var(--paper-ink-2)}
.modal{position:fixed;inset:0;z-index:80;visibility:hidden;transition:visibility 0s 0.2s}
.modal.is-open{visibility:visible;transition-delay:0s}
.modal__scrim{position:absolute;inset:0;background:rgba(6,68,32,.55);transition:opacity 0.2s var(--curve)}
html.js .modal__scrim{opacity:0}
.modal.is-open .modal__scrim{opacity:1}
.modal__panel{position:absolute;inset:4vh 0 auto;margin-inline:auto;width:min(92vw,900px);max-height:92vh;overflow:auto;background:var(--paper);border-radius:var(--r-m);box-shadow:var(--shadow-2);padding:clamp(18px,2.4vw,32px);transform:translateY(24px);transition:transform 0.3s var(--curve)}
.modal.is-open .modal__panel{transform:none}
.modal__close{position:absolute;right:14px;top:14px;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--white);display:grid;place-items:center;cursor:pointer;z-index:2}
.modal__close .ico{width:20px;height:20px}
.modal__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(16px,2vw,28px)}
.modal__photo img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r-s)}
.modal__body{display:grid;gap:16px;align-content:start}
.modal__video{position:relative;aspect-ratio:16/9;border-radius:var(--r-s);overflow:hidden;background:var(--paper-2);display:grid;place-items:center}
.modal__video img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.35}
.modal__video .play{position:relative;z-index:2}
.modal__video p{position:absolute;left:14px;right:14px;bottom:12px;z-index:2;font-size:.875rem;color:var(--ink)}
.dates{display:flex;flex-wrap:wrap;gap:8px}
.dates span{display:grid;gap:2px;padding:8px 12px;border:1px solid var(--line);border-radius:var(--r-s);background:var(--white)}
.dates b{font-family:var(--f-display);font-weight:400}

/* программы каталог */
.catalog-sec{padding-bottom:clamp(64px,8vw,120px)}
.catalog{grid-auto-rows:clamp(170px,16vw,240px)}
.more-row{display:grid;justify-items:center;gap:14px;margin-top:clamp(24px,3vw,44px);text-align:center}
.more-row .micro{max-width:80ch}

/* карточка программы */
.phero-sec{padding-block:clamp(20px,2.4vw,40px) clamp(56px,8vw,120px)}
.phero{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,4vw,64px);align-items:center;margin-top:14px}
.phero__text{display:grid;gap:clamp(14px,1.6vw,22px);justify-items:start}
.phero__facts{display:flex;flex-wrap:wrap;gap:18px 32px}
.phero__facts div{display:grid;gap:4px}
.phero__card{transform:rotate(2deg)}
.phero__card .postcard__img{aspect-ratio:4/3}
.includes-sec{background:var(--ink);color:var(--paper);padding-block:calc(var(--tear-h) + 8px) calc(var(--tear-h) + 8px)}
.includes{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,4vw,64px);align-items:start}
.includes__side{display:grid;gap:14px;justify-items:start}
.includes__side .h2{color:var(--paper)}
.includes__side .small{color:var(--paper-ink);max-width:46ch}
.includes__list{display:grid}
.includes__list li{padding:14px 0 14px 30px;border-bottom:1px solid rgba(251,243,228,.18);position:relative;color:var(--paper-ink)}
.includes__list li::before{content:'';position:absolute;left:4px;top:22px;width:12px;height:12px;border-radius:50%;background:var(--stamp)}
.variants-sec{padding-block:clamp(56px,8vw,120px) clamp(40px,5vw,72px)}
.qa-sec{padding-block:clamp(24px,4vw,64px) clamp(72px,9vw,140px)}
.video-side{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(24px,3vw,56px);align-items:start}
.video-mid{text-decoration:none;color:inherit;transform:rotate(-1.5deg)}
.video-mid .postcard__img{aspect-ratio:16/10;display:block}
.video-mid .postcard__img img{position:absolute;inset:0;width:100%;height:100%}
.video-mid .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2}
.video-mid .postcard__cap{display:grid;gap:2px}
.qa{display:grid;gap:12px}
.qa>div{padding:14px 0;border-bottom:1px solid var(--line);display:grid;gap:6px}
.qa .h3{font-size:1.2rem}
.qa p{color:var(--ink-2)}

/* корпоративам */
.corp-hero-sec{padding-block:clamp(20px,2.4vw,40px) clamp(64px,8vw,120px)}
.corp-hero{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,4vw,64px);align-items:center}
.corp-hero__text{display:grid;gap:clamp(14px,1.6vw,22px);justify-items:start}
.corp-facts{display:flex;flex-wrap:wrap;gap:18px 32px}
.corp-facts div{display:grid;gap:4px}
.corp-hero__side{position:relative}
.corp-hero__side .postcard{transform:rotate(2.5deg)}
.corp-hero__side .postcard__img{aspect-ratio:4/5}
.corp-hero__side .seal{position:absolute;left:-22px;bottom:-26px;z-index:2;transform:rotate(-12deg)}
.corp-how{background:var(--fir);color:var(--paper);padding-block:calc(var(--tear-h) + 8px) calc(var(--tear-h) + 8px)}
.corp-how .h2{color:var(--paper)}
.corp-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,28px);align-items:start;margin-top:clamp(24px,3vw,44px)}
.corp-steps .step:nth-child(2){margin-top:22px}
.corp-steps .step:nth-child(3){margin-top:6px}
.corp-adv{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,28px);margin-top:clamp(36px,4vw,64px)}
.corp-adv div{display:grid;gap:8px;padding:18px 0 0;border-top:2px solid var(--paper-ink-2);align-content:start}
.corp-adv .h3{font-size:1.2rem;color:var(--paper)}
.corp-adv p{color:var(--paper-ink);font-size:.9375rem}
.corp-proof{padding-block:clamp(56px,8vw,120px) clamp(40px,5vw,72px)}
.corp-proof__grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(14px,2vw,28px);align-items:start}
.corp-proof__grid>:nth-child(1){grid-column:1/7}
.corp-proof__grid>:nth-child(2){grid-column:7/13;margin-top:30px}
.corp-proof__grid>:nth-child(3){grid-column:1/6;transform:rotate(-1.5deg);margin-top:-10px}
.corp-proof__grid>:nth-child(4){grid-column:6/13;transform:rotate(1deg)}
.corp-proof__grid .postcard__img{aspect-ratio:16/10}
.quote{display:grid;gap:14px;transform:rotate(1.2deg)}
.quote p{font-family:var(--f-hand);font-weight:500;font-size:clamp(1.25rem,1.1rem + .6vw,1.6rem);line-height:1.2;color:var(--paper)}
.quote footer{color:var(--paper-ink-2)}
.clients{padding-block:clamp(24px,3vw,48px) clamp(56px,8vw,120px);overflow:hidden}
.clients .sec-head{margin-bottom:8px}
.logo{flex:none;display:grid;grid-template-columns:auto auto;align-items:center;gap:10px;padding:8px 14px 8px 8px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-s);font-size:.875rem;color:var(--ink-2);white-space:nowrap;transform:rotate(var(--rot,0deg))}
.logo:nth-child(odd){--rot:-1deg}.logo:nth-child(3n){--rot:1.2deg}
.logo img{width:90px;height:45px;object-fit:contain;mix-blend-mode:multiply}
.logo--txt{padding:10px 14px;font-family:var(--f-hand);font-weight:600;font-size:1.1rem;color:var(--ink);display:block}
.corp-form-sec{padding-block:clamp(40px,5vw,80px) clamp(72px,9vw,140px)}
.corp-form{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,3vw,48px);align-items:start}
.corp-form__side{display:grid;gap:14px;justify-items:start;position:sticky;top:calc(var(--header-h) + 24px)}
.corp-form__side .small{max-width:44ch}
.corp-form__side .rule{width:100%;max-width:280px}
.corp-form .thanks{grid-column:1/-1}
.form__foot{display:grid;gap:10px}

/* отзывы */
.reviews-sec{padding-bottom:clamp(64px,8vw,120px)}
.review-grid{columns:3;column-gap:var(--gap);margin-top:clamp(20px,2.4vw,36px)}
.rcard{break-inside:avoid;margin-bottom:var(--gap);display:grid;transform:rotate(var(--rot,0deg));width:auto;scroll-snap-align:none}
.rcard:nth-child(4n+1){--rot:-.8deg}.rcard:nth-child(4n+2){--rot:.6deg}.rcard:nth-child(4n+3){--rot:-.4deg}.rcard:nth-child(4n){--rot:1deg}
.rcard__photos{display:flex;gap:8px;padding:10px 10px 0;background:var(--white);border:1px solid var(--line);border-bottom:0;border-radius:var(--r-s) var(--r-s) 0 0}
.rcard__photos img{flex:1;min-width:0;aspect-ratio:4/5;object-fit:cover;border-radius:2px}
.rcard__body{background:var(--white);border:1px solid var(--line);border-radius:var(--r-s);padding:18px;display:grid;gap:8px;box-shadow:var(--shadow-flat)}
.rcard__photos + .rcard__body{border-radius:0 0 var(--r-s) var(--r-s);border-top:0}
.rcard--text .rcard__body{background:var(--paper-2);border-color:transparent}
.rcard--text .review__text{font-family:var(--f-hand);font-weight:500;font-size:1.25rem;line-height:1.2}
.reviews__note{margin-top:16px;max-width:90ch}
.leave{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(20px,3vw,44px);align-items:start;margin-top:clamp(28px,3vw,48px);transform:rotate(-.6deg)}
.leave__side{display:grid;gap:12px;justify-items:start}
.leave__side .orn--small{width:min(100%,320px)}
.file-btn{position:relative;cursor:pointer}
.vlib{background:var(--ink);color:var(--paper);padding-block:calc(var(--tear-h) + 8px) calc(var(--tear-h) + 8px)}
.vlib .h2{color:var(--paper)}
.vlib .sec-head .small{color:var(--paper-ink-2)}
.vlib-panel{margin-top:clamp(24px,3vw,44px);display:grid;gap:18px}
.vlib-panel .hand{color:var(--paper-ink-2)}
.vgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.8vw,26px) clamp(12px,1.6vw,22px)}

/* формы */
.form{display:grid;gap:14px}
.field{display:grid;gap:6px}
.field label,.field__lbl{font-size:.875rem;font-weight:500}
.field input,.field textarea,.field select{width:100%;min-height:48px;padding:10px 14px;border:1px solid var(--line);border-radius:var(--r-s);background:var(--white);font:inherit;color:inherit;transition:border-color 0.3s var(--curve),box-shadow 0.3s var(--curve)}
.field input:hover,.field textarea:hover{border-color:var(--ink-2)}
.field input:focus-visible,.field textarea:focus-visible{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(6,68,32,.15)}
.field textarea{min-height:110px;resize:vertical}
.form__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form .btn{justify-self:start}
.form .btn--block{justify-self:stretch}

/* мастер заказа */
.page-zakaz .header{position:sticky}
.progress{position:sticky;top:var(--header-h);z-index:30;background:rgba(251,243,228,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.progress__in{display:flex;gap:6px;padding-block:10px}
.progress__step{flex:1;display:flex;align-items:center;gap:8px;background:none;border:0;padding:6px 0;cursor:pointer;font-size:.875rem;color:var(--ink-2)}
.progress__step .dot{width:12px;height:12px;border-radius:50%;border:2px solid var(--line);flex:none;transition:background-color 0.3s var(--curve),border-color 0.3s var(--curve)}
.progress__step .bar{flex:1;height:2px;background:var(--line)}
.progress__step.is-active{color:var(--ink);font-weight:500}
.progress__step.is-active .dot{border-color:var(--stamp);background:var(--stamp)}
.progress__step.is-done .dot{border-color:var(--fir);background:var(--fir)}
.progress__step.is-done .bar{background:var(--fir)}
.progress__step:last-child .bar{display:none}
.progress__mobile{display:none;padding-block:10px;font-size:.9375rem}
.wizard{padding-block:clamp(28px,3.5vw,56px) clamp(72px,9vw,140px)}
.wstep{display:none}
.wstep.is-active{display:grid;gap:clamp(20px,2.4vw,32px)}
.wstep__head{display:flex;gap:18px;align-items:flex-start}
.wstep__n{--s:64px;flex:none;padding:0}
.wstep__n .seal__big{font-size:24px}
.wstep__head p{color:var(--ink-2);margin-top:6px;max-width:64ch}
.opts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.4vw,18px)}
.opt{position:relative;display:grid;grid-template-rows:auto 1fr;padding:0;border:1px solid var(--line);border-radius:var(--r-s);background:var(--white);text-align:left;cursor:pointer;overflow:hidden;transition:border-color 0.3s var(--curve),box-shadow 0.3s var(--curve),transform 0.3s var(--curve);font:inherit;color:inherit}
.opt:hover{border-color:var(--ink);transform:translateY(-2px)}
.opt img{width:100%;aspect-ratio:4/3;object-fit:cover}
.opt__ico{aspect-ratio:4/3;display:grid;place-items:center;background:var(--paper-2);color:var(--stamp)}
.opt__ico .ico{width:48px;height:48px}
.opt__body{display:grid;gap:4px;padding:12px 14px 14px;justify-items:start}
.opt__body .h3{font-size:1.15rem;font-family:var(--f-display);font-weight:400;line-height:1.1}
.opt__body .price{font-size:1.05rem;margin-top:4px}
.opt__mark{position:absolute;top:10px;right:10px;visibility:hidden;transform:scale(.9)}
.opt.is-selected{border-color:var(--stamp);box-shadow:0 0 0 2px var(--stamp)}
.opt.is-selected .opt__mark{visibility:visible;transform:none;transition:transform 0.2s var(--curve)}
.opt--any{background:var(--paper-2)}
.opt--any .opt__body{padding-top:30px;gap:8px}
.wnav{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.wgrid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--gap);align-items:start}
.cal{display:grid;gap:12px;padding:clamp(16px,2vw,26px)}
.cal__head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.cal__legend{display:flex;gap:12px;font-size:.8125rem;color:var(--ink-2)}
.cal__legend span{display:inline-flex;align-items:center;gap:6px}
.cal__i{width:10px;height:10px;border-radius:50%;display:inline-block}
.cal__i--free{background:var(--fir)}.cal__i--few{background:var(--stamp)}.cal__i--busy{background:var(--line)}
.cal__dow,.cal__days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.cal__dow span{font-size:.75rem;color:var(--ink-2);text-align:center;letter-spacing:.06em}
.day{display:grid;gap:2px;min-height:56px;padding:6px 4px;border:1px solid var(--line);border-radius:var(--r-s);background:var(--paper);cursor:pointer;text-align:center;transition:border-color 0.3s var(--curve),background-color 0.3s var(--curve)}
.day b{font-family:var(--f-display);font-weight:400;font-size:1rem}
.day small{font-size:.65rem;color:var(--ink-2);line-height:1.1}
.day:hover{border-color:var(--ink)}
.day--empty{border:0;background:transparent;cursor:default}
.day--few{background:#FBEAE8}
.day--nye{background:var(--paper-2)}
.day.is-selected{background:var(--stamp);border-color:var(--stamp);color:#fff}
.day.is-selected small{color:rgba(255,255,255,.85)}
.cal__nodate{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px dashed var(--ink-2);border-radius:var(--r-s);background:transparent;cursor:pointer;text-align:left;transition:background-color 0.3s var(--curve),color 0.3s var(--curve)}
.cal__nodate .ico{width:24px;height:24px;color:var(--stamp)}
.cal__nodate.is-selected{background:var(--ink);color:var(--paper);border-style:solid}
.kids{display:grid;gap:18px;padding:clamp(16px,2vw,26px)}
.kids__row{display:flex;flex-wrap:wrap;gap:8px}
.kbtn{min-width:48px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:var(--r-s);background:var(--white);cursor:pointer;font-family:var(--f-display);transition:background-color 0.3s var(--curve),color 0.3s var(--curve)}
.kbtn.is-active{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.range{display:grid;gap:8px}
.range__out{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.range output{font-family:var(--f-display);font-size:1.4rem}
input[type=range]{width:100%;accent-color:var(--stamp)}
.hint{display:grid;gap:10px;padding:clamp(16px,2vw,26px);justify-items:start;transform:rotate(1deg)}
.hint .h3{color:var(--paper)}
.pairs-pick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.4vw,18px)}
.pairs-pick .opt img{aspect-ratio:4/3}
.addons{display:grid;gap:12px}
.addon{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px;transition:border-color 0.3s var(--curve)}
.addon img{width:110px;height:82px;object-fit:cover;border-radius:var(--r-s)}
.addon.is-on{border-color:var(--stamp)}
.addon__body .h3{font-size:1.1rem;margin-bottom:4px}
.addon__body p{font-size:.875rem;color:var(--ink-2)}
.addon__side{display:grid;gap:8px;justify-items:end}
.toggle{display:inline-flex;border:1px solid var(--line);border-radius:var(--r-l);overflow:hidden}
.toggle button{padding:8px 14px;border:0;background:var(--white);cursor:pointer;font-size:.875rem;transition:background-color 0.3s var(--curve),color 0.3s var(--curve)}
.toggle button.is-active{background:var(--ink);color:var(--paper)}
.summary{display:grid;gap:12px;padding:clamp(16px,2vw,26px);position:sticky;top:calc(var(--header-h) + 64px);transform:rotate(-.8deg)}
.summary .h3{font-size:1.3rem}
.summary__row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid rgba(251,243,228,.16);font-size:.9375rem}
.summary--paper .summary__row{border-color:var(--line)}
.summary__row b{font-weight:500;text-align:right}
.summary__total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-top:8px}
.summary .price{color:inherit}
.zone{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:.875rem;color:var(--ink-2)}
.sticky-bar{position:fixed;left:0;right:0;bottom:0;z-index:45;background:var(--ink);color:var(--paper);transform:translateY(110%);transition:transform 0.26s var(--curve)}
.sticky-bar.is-on{transform:none}
.sticky-bar__in{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding-block:8px}
.sticky-bar .price{color:var(--paper);font-size:1.2rem}
body.has-bar{padding-bottom:70px}
.thanks--big{width:100%;transform:rotate(-.8deg)}

/* кабинет */
.login-sec{padding-block:clamp(24px,3.5vw,52px) clamp(56px,8vw,120px)}
.login-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,4vw,64px);align-items:start}
.login-grid__main{display:grid;gap:clamp(16px,1.5vw,24px);align-content:start;justify-items:start}
.login-grid__main .form{justify-self:stretch;max-width:560px}
.code-row{display:flex;gap:8px}
.code-row input{width:56px;text-align:center;font-family:var(--f-display);font-size:1.4rem}
.repeat{transform:rotate(1.8deg);margin-top:24px}
.repeat .postcard__img{aspect-ratio:4/5}
.repeat__body{display:grid;gap:10px;padding:10px 8px 8px;justify-items:start}
.order-sec{background:var(--ink);color:var(--paper);padding-block:calc(var(--tear-h) + 8px) calc(var(--tear-h) + 8px)}
.order-sec .h1{color:var(--paper)}
.order-head{display:flex;justify-content:space-between;align-items:start;gap:20px;flex-wrap:wrap;margin-bottom:var(--gap)}
.order-head>div:first-child{display:grid;gap:8px}
.order-head .small{color:var(--paper-ink-2)}
.manager{display:grid;gap:2px;color:var(--ink);padding:14px 18px;transform:rotate(1.5deg)}
.manager .num{font-size:1.4rem}
.order-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--gap);align-items:start;color:var(--ink)}
.order-col{display:grid;gap:var(--gap)}
.order-col .sheet{display:grid;gap:14px}
.order-col .h2{font-size:clamp(1.4rem,1.1rem + 1vw,2rem)}
.who-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.who{display:grid;gap:10px}
.who img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:2px;border:5px solid var(--white);box-shadow:var(--shadow)}
.who__body{display:grid;gap:4px}
.who__tel{color:var(--stamp)}
.memo{display:grid;gap:8px}
.memo li{padding-left:22px;position:relative;font-size:.9375rem;color:var(--ink-2)}
.memo li::before{content:'';position:absolute;left:0;top:9px;width:10px;height:10px;border-radius:50%;background:var(--stamp)}
.timeline{display:grid}
.tl{display:grid;grid-template-columns:24px 1fr;gap:12px;padding:12px 0;position:relative}
.tl i{width:14px;height:14px;border-radius:50%;border:2px solid rgba(251,243,228,.4);margin-top:6px;justify-self:center;position:relative;z-index:1;background:var(--ink)}
.tl::before{content:'';position:absolute;left:11px;top:34px;bottom:-10px;width:2px;background:rgba(251,243,228,.2)}
.tl:last-child::before{display:none}
.tl.is-done i{background:var(--paper);border-color:var(--paper)}
.tl.is-now i{background:var(--stamp);border-color:var(--stamp);box-shadow:0 0 0 5px rgba(6,68,32,.25)}
.tl .h3{font-size:1.1rem;color:var(--paper)}
.tl>div{display:grid;gap:2px}
.tl .micro{color:var(--paper-ink-2)}
.after{display:grid;gap:8px}
.after a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-s);background:var(--white);text-decoration:none;transition:border-color 0.3s var(--curve)}
.after a:hover{border-color:var(--ink)}
.after a>span{display:grid;gap:2px}
.after .ico{width:22px;height:22px;flex:none}
.after .h3{font-size:1.05rem}
.order__note{margin-top:20px;color:var(--paper-ink-2)}

/* контакты */
.contacts{padding-bottom:clamp(64px,8vw,120px)}
.contact-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--gap);align-items:start}
.contact-col{display:grid;gap:12px}
.cbig{display:grid;gap:6px;padding:clamp(20px,2.4vw,32px);text-decoration:none;transform:rotate(-1deg);justify-items:start}
.cbig .tel{font-size:clamp(1.8rem,1.4rem + 1.6vw,2.8rem);color:var(--paper)}
.cbig .hand{color:var(--paper-ink-2)}
.crow{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;padding:16px 18px}
.crow>.ico{width:26px;height:26px;color:var(--stamp);margin-top:2px}
.crow>div{display:grid;gap:2px}
.crow a,.crow b{font-family:var(--f-display);font-weight:400;font-size:1.15rem;text-decoration:none;display:block}
.crow p{font-size:.875rem;color:var(--ink-2)}
.crow p a{font:inherit;display:inline}
.map{transform:rotate(1.2deg)}
.map__paper{position:relative;aspect-ratio:16/10;border-radius:3px;overflow:hidden;background:var(--paper-2)}
.map__svg{position:absolute;inset:0;width:100%;height:100%}
.map__pin{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);display:flex;gap:10px;align-items:center;padding:10px 14px;background:var(--white);border-radius:var(--r-s);box-shadow:var(--shadow-2)}
.map__pin .ico{width:28px;height:28px;color:var(--stamp)}
.map__pin b{font-family:var(--f-display);font-weight:400;display:block}
.map__pin p{font-size:.8125rem;color:var(--ink-2)}
.map__note{position:absolute;right:12px;bottom:10px;font-family:var(--f-hand);font-weight:600;color:var(--ink-2);font-size:1.05rem}
.when{display:grid;gap:14px;transform:rotate(-.8deg)}

/* 404 */
.p404{min-height:calc(100dvh - var(--header-h));display:grid;align-items:center;padding-block:clamp(28px,4vw,56px)}
.p404__grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(24px,4vw,64px);align-items:center}
.p404__text{display:grid;gap:18px;justify-items:start}
.p404__card{transform:rotate(2deg)}
.p404__card .postcard__img{aspect-ratio:16/10}

/* ---------- html.still: всё в финальном состоянии ---------- */
/* движение выключается классом html.still (k5.js читает системную настройку) */
html.still *,html.still *::before,html.still *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
html.still .btn--wiggle{animation:none}
html.still .header.is-hidden{transform:none}
html.still:focus-within{scroll-behavior:auto}

/* ---------- адаптив ---------- */
@media (max-width:1180px){
  .nav{gap:14px}
  .header__tel .micro{display:none}
  .brand__sub{display:none}
  .bento{grid-template-columns:repeat(3,1fr)}
  .bento .pcard--2x2:not(.pcard--stamp){grid-row:span 1}
  .why{grid-template-columns:repeat(2,1fr)}
  .why__strip{grid-template-columns:repeat(5,1fr)}
  .corp-adv{grid-template-columns:repeat(2,1fr)}
  .opts,.pairs-pick{grid-template-columns:repeat(3,minmax(0,1fr))}
  .vgrid{grid-template-columns:repeat(3,1fr)}
  .agrid{grid-template-columns:repeat(2,1fr)}
  .counters{grid-template-columns:repeat(2,1fr);justify-content:start}
}
@media (max-width:900px){
  :root{--header-h:64px;--tear-h:84px}
  .tear{-webkit-mask-size:1150px 493px;mask-size:1150px 493px}
  .tear--top{-webkit-mask-position:center -195px;mask-position:center -195px}
  .tear--bottom{-webkit-mask-position:center -186px;mask-position:center -186px}
  .nav,.header__tel,.header__btn{display:none}
  .burger{display:grid;margin-left:auto}
  .hero{min-height:0;padding-block:20px 56px}
  .hero__grid{grid-template-columns:1fr;gap:36px}
  .hero__stage{min-height:0;order:-1;padding-top:14px}
  .postcard--hero{position:relative;left:0;top:0;translate:none;transform:rotate(1.5deg);max-width:440px;margin-inline:auto}
  .postcard--hero .postcard__img{aspect-ratio:4/5}
  .postcard__video{display:none}
  .postcard__photo{display:block;width:100%;height:100%;object-fit:cover}
  .hero3d{display:none}
  .seal--hero{right:0;top:-10px;--s:96px}
  .hero__leaf{width:64px;left:0;bottom:-10px}
  .cascade{display:grid;grid-template-columns:1fr;gap:22px}
  .door{grid-column:auto!important;grid-row:auto!important;margin-top:0!important;--rot:0deg!important;max-width:520px}
  .door:nth-child(even){justify-self:end}
  .door .postcard__img{aspect-ratio:4/3!important}
  .steps__grid{grid-template-columns:1fr;gap:28px}
  html.js.motion .steps__stage{height:auto;display:grid}
  html.js.motion .step{position:relative;top:0}
  html.js.motion .steps__pin{min-height:0}
  .step{--rot:0deg!important}
  .step__seal{--s:104px;top:-26px}
  .packs__head{grid-template-columns:1fr}
  .packs__sheets{grid-template-columns:1fr;gap:20px}
  .pack--classic,.pack--exclusive{transform:none}
  .pack--vip{padding-block:clamp(20px,2.4vw,34px)}
  .pairs__head{grid-template-columns:1fr}
  .pairs__track{flex-direction:column;align-items:stretch;padding-inline:var(--gutter);gap:22px}
  .pairs__track>*{margin-top:0!important;--rot:0deg!important}
  .pairs__track .polaroid{width:min(100%,440px);margin-inline:auto}
  .pairs__track .polaroid:nth-child(4n+2),.pairs__track .polaroid:nth-child(4n){margin-inline:auto 0}
  .pair-photo{aspect-ratio:4/4}
  .pair-life{position:static;opacity:1;pointer-events:auto;height:auto;margin-top:6px;gap:6px}
  .pair-life img{aspect-ratio:1;height:auto}
  .pair-photo__hint{display:none}
  .promise{width:min(100%,440px);margin-inline:auto;padding:10px 0 0}
  .wall__grid{grid-template-columns:1fr}
  .tvtape{grid-template-columns:repeat(3,1fr)}
  .faq-grid{grid-template-columns:1fr}
  .faq-side{position:static}
  .footer__grid{grid-template-columns:1fr 1fr}
  .page-head,.phero,.includes,.video-side,.corp-hero,.corp-form,.leave,.login-grid,.order-grid,.contact-grid,.calendar-grid,.wgrid,.modal__grid,.p404__grid{grid-template-columns:1fr}
  .page-head__side{justify-items:start;text-align:left}
  .stack3{margin-bottom:0}
  .page-head__card{justify-self:start}
  .krio{grid-template-columns:1fr}
  .seal--page{--s:112px}
  .corp-steps{grid-template-columns:1fr}
  .corp-steps .step{margin-top:0!important}
  .corp-proof__grid{grid-template-columns:1fr}
  .corp-proof__grid>*{grid-column:auto!important;margin-top:0!important}
  .corp-form__side{position:static}
  .review-grid{columns:2}
  .vgrid{grid-template-columns:repeat(2,1fr)}
  .agrid{grid-template-columns:1fr;gap:22px}
  .acard{margin-top:0!important;--rot:0deg!important;max-width:560px}
  .why{grid-template-columns:1fr 1fr}
  .extras,.rules{grid-template-columns:1fr}
  .extra,.payrule{margin-top:0!important}
  .summary{position:static}
  .hero__stage .postcard--hero{max-width:100%}
  .repeat{max-width:440px}
  .phero__card,.corp-hero__side{max-width:440px}
}
@media (max-width:600px){
  body{font-size:1rem}
  :root{--tear-h:64px}
  .tear{-webkit-mask-size:860px 369px;mask-size:860px 369px}
  .tear--top{-webkit-mask-position:center -150px;mask-position:center -150px}
  .tear--bottom{-webkit-mask-position:center -140px;mask-position:center -140px}
  .h1__b{max-width:none}
  .hero__cta{gap:12px}
  .hero__cta .btn{width:100%}
  .btn--lg{min-height:54px;padding:12px 24px}
  .steps__tg{grid-template-columns:repeat(2,1fr)}
  .step{padding:70px clamp(18px,5vw,30px) 22px}
  .step__seal{--s:92px;top:-22px;right:10px}
  .tvtape{grid-template-columns:repeat(2,1fr)}
  .vtile:nth-child(even){margin-top:0}
  .bento{grid-template-columns:repeat(2,1fr);grid-auto-rows:clamp(150px,40vw,210px)}
  .bento .pcard--2x2{grid-column:span 2;grid-row:span 2}
  .bento .pcard--2x2:not(.pcard--stamp){grid-row:span 2}
  .catalog{grid-auto-rows:clamp(150px,44vw,210px)}
  .bento--3{grid-template-columns:1fr 1fr}
  .footer__grid{grid-template-columns:1fr}
  .footer__nav{gap:0}
  .footer__nav a{padding-block:9px}
  .footer__contacts{gap:4px}
  .footer__contacts .small{padding-block:4px}
  .opts,.pairs-pick{grid-template-columns:1fr 1fr}
  .form__row{grid-template-columns:1fr}
  .thanks__steps{grid-template-columns:1fr}
  .addon{grid-template-columns:1fr;gap:10px}
  .addon img{width:100%;height:auto;aspect-ratio:16/9}
  .addon__side{justify-items:start}
  .who-grid{grid-template-columns:1fr}
  .review-grid{columns:1}
  .vgrid{grid-template-columns:1fr 1fr}
  .why{grid-template-columns:1fr}
  .why__strip{grid-template-columns:repeat(3,1fr)}
  .corp-adv{grid-template-columns:1fr}
  .progress__in{display:none}
  .progress__mobile{display:block}
  .review{width:min(84vw,340px)}
  .review--text{width:min(80vw,300px);margin-top:0}
  .counters{gap:16px}
  .counter b{font-size:2.2rem}
  .pricebar__sub{display:none}
  .pricebar__price .price{font-size:1.05rem;white-space:nowrap}
  .cta-card{transform:none;margin-top:clamp(32px,6vw,48px)}
  .cta-card__leaf{width:60px;right:-8px;top:-24px}
  .cta-card__seal{--s:88px;left:-10px;bottom:-20px}
  .door__price{--s:76px;top:-14px;left:-8px}
  .polaroid__tag{top:-34px}
  .orn{height:80px}
  .wall__big{border-width:6px}
  .stars span:not(.stars__lead){font-size:.875rem;padding:5px 10px}
  .code-row input{width:48px}
  .pick,.nye,.summary,.hint,.leave,.when,.map,.quote,.manager,.video-mid{transform:none}
}
@media (max-width:600px){
  .arrow{min-height:44px;padding-block:8px}
  .hero__cal{min-height:44px}
  .hero__cta-note .tel,.cta-card__tel .tel,.footer .tel,.thanks__contact .tel{display:inline-flex;align-items:center;min-height:44px}
  .footer__contacts a,.hero__stamps a,.crumbs a,.link{display:inline-block;padding-block:9px}
  .footer__contacts .small{padding-block:0}
  .crow a{padding-block:8px}
  .crow p a{padding:8px 0}
  .review__who span,.vtile__row span{padding:0}
}
@media (max-width:420px){
  .steps__tg{grid-template-columns:repeat(2,1fr)}
  .opts,.pairs-pick{grid-template-columns:1fr}
  .vgrid{grid-template-columns:1fr}
  .bento .pcard--2x2{grid-row:span 1}
  .bento .pcard--stamp{grid-row:span 2}
}
