/* pinerovabeauty.ru — «бумага и помада». Без внешних зависимостей. */
@font-face{font-family:"Oranienbaum";font-weight:400;font-display:swap;src:url(fonts/oranienbaum-cyr.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Oranienbaum";font-weight:400;font-display:swap;src:url(fonts/oranienbaum-lat.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+2190-2199,U+2212}
@font-face{font-family:"Golos Text";font-weight:400 700;font-display:swap;src:url(fonts/golos-cyr.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Golos Text";font-weight:400 700;font-display:swap;src:url(fonts/golos-lat.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+2190-2199,U+2212}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:400 600;font-display:swap;src:url(fonts/cormorant-italic-cyr.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:400 600;font-display:swap;src:url(fonts/cormorant-italic-lat.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F}

:root{
  --paper:#f8f3e9;--ink:#1c1a18;--red:#d3261c;--blush:#f1d8d0;--mute:#7b736a;--line:rgba(28,26,24,.18);
  --disp:"Oranienbaum","Times New Roman",serif;--ital:"Cormorant Garamond",Georgia,serif;
  --text:"Golos Text",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --pad:clamp(16px,3.4vw,56px);--top:60px;--ease:cubic-bezier(.2,.8,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--top);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.55 var(--text);-webkit-font-smoothing:antialiased;overflow-x:clip}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
h1,h2,h3,p,ul,ol,figure,blockquote{margin:0}
ul,ol{padding:0;list-style:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
::selection{background:var(--red);color:var(--paper)}
:focus-visible{outline:2px solid var(--red);outline-offset:3px}
em{font-family:var(--ital);font-style:italic;font-weight:500;color:var(--red)}
.wrap{padding-inline:var(--pad)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;z-index:100;background:var(--ink);color:var(--paper);padding:10px 16px}
.skip:focus{left:8px;top:8px}
.mono{font:500 .72rem/1.4 var(--text);letter-spacing:.14em;text-transform:uppercase}
.under{border-bottom:1px solid currentColor;padding-bottom:2px;transition:color .2s}
.under:hover{color:var(--red)}
h2{font:400 clamp(2.6rem,8.6vw,9.5rem)/.92 var(--disp);letter-spacing:-.02em}
h2 em{font-size:1.04em}
.btn{display:inline-flex;align-items:center;gap:10px;min-height:54px;padding:14px 30px;border-radius:999px;background:var(--ink);color:var(--paper);font:500 1rem/1 var(--text);transition:background .25s,color .25s}
.btn:hover{background:var(--red)}
.btn--red{background:var(--paper);color:var(--red)}
.btn--red:hover{background:var(--ink);color:var(--paper)}

/* заставка: чистый CSS, один раз за сессию */
.intro{position:fixed;inset:0;z-index:90;display:none;align-items:flex-end;justify-content:space-between;padding:var(--pad);background:var(--red);color:var(--paper);font:400 clamp(2rem,7vw,7rem)/1 var(--disp);pointer-events:none}
.js:not(.seen) .intro{display:flex;animation:intro-out .7s var(--ease) 1.05s forwards}
@keyframes intro-out{to{clip-path:inset(0 0 100% 0)}}
.js{--d:1.25s}.js.seen{--d:.1s}

/* шапка */
.top{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:20px;height:var(--top);padding-inline:var(--pad);mix-blend-mode:difference;color:#e4e1d8;font:500 .8rem/1 var(--text);letter-spacing:.1em;text-transform:uppercase}
.top__nav{display:flex;gap:clamp(14px,2.2vw,34px)}
.top a{padding:10px 0;transition:opacity .2s}
.top a:hover{opacity:.6}
.top__cta{border-bottom:1px solid currentColor;padding-bottom:4px!important}
.top.on-red{mix-blend-mode:normal;color:var(--paper)}

/* первый экран */
.hero{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto 1fr auto;column-gap:20px;min-height:100svh;padding:calc(var(--top) + 2.2vw) var(--pad) 2.6vw}
.hero__meta{grid-column:1/6;grid-row:1;display:flex;gap:clamp(20px,4vw,64px);align-items:flex-start}
.hero__meta h1{max-width:19em;font:500 .72rem/1.5 var(--text);letter-spacing:.14em;text-transform:uppercase}
.hero__meta p{font-size:.82rem;line-height:1.5;color:var(--mute);white-space:nowrap}
.hero__meta p span{display:block}
.hero__say{grid-column:1/-1;grid-row:2;align-self:center;position:relative;z-index:2;font:400 clamp(3.4rem,12.4vw,15.5rem)/.84 var(--disp);letter-spacing:-.03em;mix-blend-mode:difference;color:#dcd9d1;pointer-events:none}
.hero__say em{color:#25cdcd;font-size:1.03em}
.ln{display:block;overflow:hidden;padding-block:.06em .1em;margin-block:-.06em -.1em}
.ln>span{display:block}
.ln:nth-child(2){padding-left:13vw}
.ln:nth-child(4){padding-left:6vw}
.js .ln>span{animation:rise 1s var(--ease) both;animation-delay:calc(var(--d) + var(--i,0) * 90ms)}
.ln:nth-child(2)>span{--i:1}.ln:nth-child(3)>span{--i:2}.ln:nth-child(4)>span{--i:3}
@keyframes rise{from{transform:translateY(112%)}}
.hero__pic{grid-column:8/13;grid-row:1/4;align-self:center;position:relative;z-index:1}
.hero__pic img{width:100%;height:min(82svh,56vw);object-fit:cover;object-position:50% 22%}
.js .hero__pic picture{display:block;animation:unveil 1.2s var(--ease) both;animation-delay:var(--d)}
@keyframes unveil{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0)}}
.hero__pic figcaption{display:flex;justify-content:space-between;margin-top:10px;color:var(--mute)}
.hero__foot{grid-column:1/8;grid-row:3;display:flex;flex-wrap:wrap;align-items:center;gap:18px 32px;z-index:3}

/* бегущая строка */
.marq{overflow:hidden;border-block:1px solid var(--line);padding-block:.5vw}
.marq__in{display:flex;width:max-content;animation:marq 38s linear infinite}
.marq span{display:flex;align-items:center;font:400 clamp(1.6rem,4.2vw,4.4rem)/1.3 var(--disp);white-space:nowrap}
.marq span::after{content:"";width:.26em;height:.26em;margin-inline:.5em;border-radius:50%;background:var(--red)}
@keyframes marq{to{transform:translateX(-50%)}}

/* подход */
.say{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;padding-block:clamp(72px,11vw,180px)}
.say>.mono{grid-column:1/3;padding-top:.8em;color:var(--mute)}
.say__text{grid-column:3/10;font:400 clamp(1.7rem,4.1vw,4.4rem)/1.08 var(--disp);letter-spacing:-.015em}
.say__pic{grid-column:10/13;align-self:end;margin-bottom:-6vw}
.say__pic img{width:100%;aspect-ratio:3/4;object-fit:cover}

/* портфолио */
.work{padding-bottom:clamp(40px,6vw,90px)}
.work__head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:16px 32px;padding-bottom:clamp(28px,4vw,56px);border-bottom:1px solid var(--line)}
.work__head .mono{grid-column:1/-1;color:var(--mute)}
.work__nav{display:flex;gap:22px;padding-bottom:1.2vw;font:500 .8rem/1 var(--text);letter-spacing:.1em;text-transform:uppercase}
.work__nav a{border-bottom:1px solid currentColor;padding-bottom:4px}
.work__nav a:hover{color:var(--red)}
.chapter{padding-top:clamp(44px,6vw,96px);--h:clamp(300px,64svh,640px)}
.chapter__head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;align-items:end;margin-bottom:clamp(20px,2.6vw,36px)}
.chapter__head .mono{grid-column:1/3;padding-bottom:1.5vw;color:var(--red)}
.chapter__head h3{grid-column:3/9;font:400 clamp(2.4rem,7.4vw,8rem)/.9 var(--disp);letter-spacing:-.02em}
.chapter__head sup{margin-left:.25em;font:500 max(.14em,11px)/1 var(--text);letter-spacing:.08em;vertical-align:top;position:relative;top:.9em;color:var(--red)}
.chapter__lead{grid-column:9/12;padding-bottom:1vw;font-size:.92rem;color:var(--mute)}
.chapter__nav{grid-column:12/13;display:flex;justify-content:flex-end;gap:8px;padding-bottom:1vw}
.chapter__nav button{width:46px;height:46px;border:1px solid var(--ink);border-radius:50%;font-size:1.1rem;transition:background .2s,color .2s,opacity .2s}
.chapter__nav button:hover{background:var(--ink);color:var(--paper)}
.chapter__nav button:disabled{opacity:.25;pointer-events:none}
.rail{display:flex;gap:clamp(10px,1.3vw,20px);padding-inline:var(--pad);overflow-x:auto;scroll-snap-type:x proximity;scroll-padding-inline:var(--pad);scrollbar-width:none;cursor:grab;-webkit-overflow-scrolling:touch}
.rail::-webkit-scrollbar{display:none}
.rail.is-drag{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto}
.rail.is-drag a{pointer-events:none}
.frame{flex:none;width:calc(var(--h) * var(--ar));scroll-snap-align:start}
.frame a{display:block;height:var(--h);overflow:hidden;background:var(--blush);cursor:zoom-in}
.frame img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease);-webkit-user-drag:none;user-select:none}
.frame a:hover img{transform:scale(1.045)}
.frame figcaption{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;padding-top:12px}
.frame figcaption i{grid-row:1/3;font:500 .72rem/1.9 var(--text);letter-spacing:.1em;font-style:normal;color:var(--red)}
.frame figcaption b{font:400 1.25rem/1.15 var(--disp)}
.frame figcaption span{font-size:.8rem;line-height:1.4;color:var(--mute);min-height:2.8em}
.rail__end{flex:none;display:flex;flex-direction:column;justify-content:space-between;width:min(300px,70vw);height:var(--h);padding:22px;border:1px solid var(--ink);scroll-snap-align:start;transition:background .25s,color .25s}
.rail__end span{font:400 clamp(1.8rem,3vw,2.8rem)/1 var(--disp)}
.rail__end b{align-self:flex-end;font:400 3rem/1 var(--disp)}
.rail__end:hover{background:var(--red);border-color:var(--red);color:var(--paper)}
.rail__bar{margin-top:18px}
.rail__bar::before{content:"";display:block;height:1px;background:var(--line)}
.rail__bar span{display:block;height:3px;margin-top:-2px;background:var(--red);transform-origin:0 50%;transform:scaleX(.08)}

/* общие заголовки секций */
.sec-head{display:grid;gap:14px;margin-bottom:clamp(28px,4vw,60px)}
.sec-head .mono{color:var(--mute)}

/* услуги — индекс */
.svc{padding-block:clamp(72px,10vw,160px)}
.index{border-bottom:1px solid var(--ink)}
.idx{border-top:1px solid var(--ink)}
.idx>a{display:grid;grid-template-columns:5vw minmax(0,5fr) minmax(0,4fr) 4vw;column-gap:20px;align-items:baseline;padding:clamp(18px,2.4vw,34px) 0 10px;transition:padding .45s var(--ease),color .25s}
.idx__n{font:500 .72rem/1 var(--text);letter-spacing:.12em;color:var(--red)}
.idx__t{font:400 clamp(2rem,5.2vw,5.6rem)/.95 var(--disp);letter-spacing:-.02em}
.idx__t em{display:block;margin-top:.5em;font:500 .72rem/1.4 var(--text);font-style:normal;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.idx__d{font-size:.95rem;color:var(--mute);max-width:30em}
.idx__go{justify-self:end;font:400 clamp(1.6rem,3vw,3rem)/1 var(--disp);transition:transform .45s var(--ease)}
.idx__tags{display:flex;flex-wrap:wrap;gap:6px;padding:0 0 clamp(18px,2.4vw,30px) calc(5vw + 20px)}
.idx__tags li{padding:5px 12px;border:1px solid var(--line);border-radius:999px;font-size:.78rem}
.svc__note{margin-top:26px;max-width:44em;color:var(--mute)}
.svc__note a{color:var(--ink)}

/* шаги и вопросы — две колонки с липким заголовком */
.steps,.faq{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;padding-block:clamp(40px,6vw,100px) clamp(72px,10vw,160px)}
.steps .sec-head,.faq .sec-head{grid-column:1/7;align-self:start;position:sticky;top:calc(var(--top) + 24px)}
.steps h2,.faq h2{font-size:clamp(2.4rem,5.6vw,6rem)}
.steps__list,.faq__list{grid-column:7/13}
.steps__list li{display:grid;grid-template-columns:clamp(60px,9vw,150px) 1fr;gap:4px 20px;padding-block:clamp(20px,2.4vw,34px);border-top:1px solid var(--line)}
.steps__list li:last-child{border-bottom:1px solid var(--line)}
.steps__list i{grid-row:1/3;font:400 clamp(3.4rem,7.5vw,8rem)/.8 var(--disp);font-style:normal;color:var(--red)}
.steps__list h3{font:400 clamp(1.5rem,2.3vw,2.2rem)/1.1 var(--disp)}
.steps__list p{color:var(--mute);max-width:32em}
.faq{padding-top:0}
.faq details{border-top:1px solid var(--line)}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker,.all summary::-webkit-details-marker{display:none}
.faq h3{font:400 clamp(1.35rem,2vw,1.9rem)/1.15 var(--disp)}
.faq summary i,.all summary i{position:relative;flex:none;width:18px;height:18px;transition:transform .35s var(--ease)}
.faq summary i::before,.faq summary i::after,.all summary i::before,.all summary i::after{content:"";position:absolute;left:0;top:8px;width:18px;height:1.5px;background:currentColor}
.faq summary i::after,.all summary i::after{transform:rotate(90deg)}
details[open]>summary i{transform:rotate(45deg)}
.faq summary:hover h3{color:var(--red)}
.faq details p{padding:0 40px 24px 0;color:var(--mute);max-width:38em}

/* отзывы */
.voices{background:var(--ink);color:var(--paper);padding-block:clamp(72px,10vw,160px)}
.voices .sec-head .mono{color:#a59c90}
.voices em{color:#ff6a5c}
.pulls{display:grid;gap:clamp(44px,7vw,110px);margin-block:clamp(40px,6vw,90px)}
.pull{max-width:min(78%,60rem)}
.pull--1{margin-left:auto;text-align:right}
.pull blockquote{font:400 clamp(1.8rem,4.5vw,4.8rem)/1.04 var(--disp);letter-spacing:-.015em}
.pull figcaption{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:18px;font-size:.82rem;color:#a59c90}
.pull--1 figcaption{justify-content:flex-end}
.pull figcaption b{font-weight:500;color:var(--paper);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;line-height:1.9}
.all{border-block:1px solid rgba(248,243,233,.3)}
.all summary{display:flex;justify-content:space-between;align-items:center;padding:26px 0;cursor:pointer;list-style:none;font:400 clamp(1.5rem,2.6vw,2.6rem)/1 var(--disp)}
.all summary:hover{color:#ff6a5c}
/* сетка, а не columns: колонки заполняются сверху вниз, и порядок «свежие сверху» читался бы вразброс */
.all__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:32px;align-items:start;padding:10px 0 40px}
.rv{break-inside:avoid;margin-bottom:30px;padding-top:16px;border-top:1px solid rgba(248,243,233,.2)}
.rv header{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}
.rv header b{font:400 1.4rem/1.1 var(--disp)}
.rv header span{font-size:.74rem;color:#a59c90}
.rv p{font-size:.92rem;line-height:1.6;color:#e2dacd}
.rv a{display:inline-block;margin-top:10px;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:#a59c90;border-bottom:1px solid currentColor}
.rv a:hover{color:#ff6a5c}

/* обо мне */
.about{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;padding-block:clamp(72px,10vw,160px);align-items:start}
.about__pic{grid-column:1/5;position:sticky;top:calc(var(--top) + 20px)}
.about__pic img{width:100%;aspect-ratio:4/5;object-fit:cover}
.about__text{grid-column:6/13;display:grid;gap:22px}
.about__text>.mono{color:var(--mute)}
.about__lead{font:400 clamp(1.4rem,2.4vw,2.3rem)/1.18 var(--disp)}
.about__text>p:not(.mono):not(.about__lead){max-width:38em;color:var(--mute)}
.about__sub{margin-top:clamp(20px,3vw,44px);color:var(--red)}
.credits{border-bottom:1px solid var(--line)}
.credits a{display:grid;grid-template-columns:60px minmax(0,4fr) minmax(0,5fr) auto;column-gap:16px;align-items:baseline;padding:16px 0;border-top:1px solid var(--line);cursor:zoom-in;transition:padding .4s var(--ease),color .2s}
.credits .mono{color:var(--mute)}
.credits b{font:400 1.3rem/1.15 var(--disp)}
.credits a>span:not(.mono){font-size:.88rem;color:var(--mute)}
.credits i{font:500 .7rem/1 var(--text);font-style:normal;letter-spacing:.12em;text-transform:uppercase;opacity:0;transition:opacity .2s}

/* запись — финал */
.book{position:relative;overflow:hidden;background:var(--red);color:var(--paper);padding-top:clamp(64px,9vw,140px)}
.book ::selection{background:var(--paper);color:var(--red)}
.book :focus-visible{outline-color:var(--paper)}
.letter{margin-top:22px}
.letter p{font:400 clamp(1.9rem,5.4vw,6rem)/1.16 var(--disp);letter-spacing:-.015em;max-width:17em}
.letter select,.letter input{font:inherit;font-family:var(--ital);font-style:italic;font-weight:500;letter-spacing:0;color:inherit;background:none;border:0;border-bottom:2px solid currentColor;border-radius:0;padding:0 .1em;margin:0;max-width:100%;color-scheme:dark;appearance:none;-webkit-appearance:none;cursor:pointer}
.letter input[type=text]{cursor:text;width:8.4em}
.letter input::placeholder{color:rgba(248,243,233,.55)}
.letter select option{font:400 1rem var(--text);color:#111}
.letter input[type=date]{min-width:5.6em}
.letter__go{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:clamp(28px,4vw,56px)}
.letter__go .under:hover{color:var(--ink)}
.letter__status{flex-basis:100%;min-height:1.4em;font-size:.9rem}
.book__links{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px 40px;margin-top:clamp(44px,7vw,110px);padding-top:22px;border-top:1px solid rgba(248,243,233,.45)}
.book__phone{font:400 clamp(1.8rem,4vw,4rem)/1 var(--disp)}
.book__links ul{display:flex;flex-wrap:wrap;gap:10px 28px;font:500 .84rem/1 var(--text);letter-spacing:.1em;text-transform:uppercase}
.book__links a{transition:color .2s}
.book__links a:hover{color:var(--ink)}
.book__mark{margin:clamp(20px,3vw,50px) 0 -.19em;font:400 25.5vw/.8 var(--disp);letter-spacing:-.04em;text-align:center;white-space:nowrap;color:#b81d14;user-select:none}
.foot{position:absolute;inset:auto 0 0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 24px;padding-block:14px;font-size:.76rem}
.foot a:hover{color:var(--ink)}

/* плавающее превью и кнопка */
.peek{position:fixed;left:0;top:0;z-index:40;width:clamp(180px,17vw,260px);aspect-ratio:3/4;overflow:hidden;pointer-events:none;opacity:0;transform:translate3d(-50%,-50%,0) scale(.86) rotate(-3deg);transition:opacity .3s,transform .5s var(--ease);will-change:left,top}
.peek.on{opacity:1;transform:translate3d(-50%,-50%,0) scale(1) rotate(3deg)}
.peek img{width:100%;height:100%;object-fit:cover}
.fab{display:none}

/* просмотр */
.lb{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;background:var(--paper);color:var(--ink)}
.lb[open]{display:grid;grid-template-columns:var(--pad) 1fr var(--pad);animation:lb-in .35s var(--ease)}
@keyframes lb-in{from{opacity:0}}
.lb figure{grid-column:2;display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:24px;height:100dvh;padding-block:64px 28px;min-width:0}
.lb img{grid-column:2;max-width:100%;max-height:calc(100dvh - 92px);width:auto;height:auto;object-fit:contain}
.lb figcaption{grid-column:3;display:grid;gap:6px;max-width:18em;padding-bottom:4px}
.lb figcaption b{font:400 1.9rem/1.05 var(--disp)}
.lb figcaption span{font-size:.86rem;color:var(--mute)}
.lb figcaption i{font-style:normal;color:var(--red)}
.lb__x{position:absolute;top:18px;right:var(--pad);font:500 .78rem/1 var(--text);letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:4px;z-index:2}
.lb__nav{position:absolute;bottom:26px;width:52px;height:52px;border:1px solid var(--ink);border-radius:50%;font-size:1.2rem;z-index:2;transition:background .2s,color .2s}
.lb__prev{left:var(--pad)}.lb__next{left:calc(var(--pad) + 60px)}
.lb button:hover{background:var(--ink);color:var(--paper)}
.lb__x:hover{background:none!important;color:var(--red)!important}
.lb.is-single .lb__nav{display:none}

/* появление */
.js [data-r]{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.js [data-r].in{opacity:1;transform:none}

@media (hover:hover) and (pointer:fine){
  .idx>a:hover{padding-left:2.2vw;color:var(--red)}
  .idx>a:hover .idx__go{transform:translate(-1vw,-.2em) rotate(45deg)}
  .credits a:hover{padding-left:14px;color:var(--red)}
  .credits a:hover i{opacity:1}
}
@media (max-width:1099px){
  .all__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chapter__lead{grid-column:9/13}
  .chapter__nav{display:none}
}
@media (max-width:899px){
  .top__nav{display:none}
  .top{mix-blend-mode:normal;background:var(--paper);color:var(--ink)}
  .top.on-red{background:var(--red)}
  .hero{display:flex;flex-direction:column;gap:22px;min-height:0;padding-top:calc(var(--top) + 18px);padding-bottom:36px}
  .hero__meta{flex-direction:column;gap:10px}
  .hero__meta p{white-space:normal}
  .hero__meta p span{display:inline}
  .hero__meta p span+span::before{content:" · "}
  .hero__say{font-size:clamp(3.2rem,16.6vw,9rem);mix-blend-mode:normal;color:var(--ink)}
  .hero__say em{color:var(--red)}
  .ln:nth-child(2){padding-left:18vw}.ln:nth-child(4){padding-left:0}
  .hero__pic{width:100%}
  .hero__pic img{height:auto;aspect-ratio:4/5}
  .hero__foot .btn{flex:1 1 100%;justify-content:center}
  .say{display:block}
  .say__text{margin-top:16px}
  .say__pic{width:56%;margin:36px 0 0 auto}
  .work__head{grid-template-columns:1fr}
  .work__nav{flex-wrap:wrap;padding-bottom:0}
  .chapter{--h:clamp(280px,54svh,460px)}
  .chapter__head{display:block}
  .chapter__head h3{margin-block:8px 12px}
  .idx>a{grid-template-columns:34px 1fr auto;row-gap:12px}
  .idx__d{grid-column:2/-1;grid-row:2}
  .idx__go{grid-column:3;grid-row:1}
  .idx__tags{padding-left:54px}
  .steps,.faq,.about{display:block}
  .steps .sec-head,.faq .sec-head{position:static}
  .about__pic{position:static;width:72%;margin-bottom:36px}
  .faq details p{padding-right:0}
  .pull{max-width:100%}
  .pull--1{text-align:left}
  .pull--1 figcaption{justify-content:flex-start}
  .all__grid{grid-template-columns:1fr}
  .credits a{grid-template-columns:52px 1fr;row-gap:4px}
  .credits a>span:not(.mono){grid-column:2}
  .credits i{display:none}
  .letter input[type=text]{width:calc(100% - .5em)}
  .book__mark{margin-bottom:.12em}
  .foot{position:static;padding-block:0 84px}
  .fab{position:fixed;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:45;display:inline-flex;align-items:center;height:50px;padding:0 24px;border-radius:999px;background:var(--ink);color:var(--paper);font:500 .95rem/1 var(--text);box-shadow:0 8px 24px rgba(28,26,24,.28);transition:opacity .3s,transform .3s}
  .fab.is-off{opacity:0;transform:translateY(20px);pointer-events:none}
  .lb figure{grid-template-columns:1fr;align-items:center;justify-items:center;gap:12px;padding-block:56px 92px}
  .lb img{grid-column:1;max-height:calc(100dvh - 250px)}
  .lb figcaption{grid-column:1;max-width:none;text-align:center}
  .lb figcaption b{font-size:1.4rem}
  .peek{display:none}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .intro{display:none!important}
  .marq__in{animation:none}
  .js .ln>span,.js .hero__pic picture{animation:none}
  .js [data-r]{opacity:1;transform:none;transition:none}
  *,*::before,*::after{transition-duration:.01ms!important}
}
@media print{.top,.intro,.fab,.peek,.lb,.marq,.chapter__nav{display:none!important}.js [data-r]{opacity:1;transform:none}}

/* документы, cookie, подписи под заявкой */
.letter .letter__note{margin-top:22px;max-width:46em;font:400 .84rem/1.5 var(--text);letter-spacing:0;color:rgba(248,243,233,.85)}
.letter__note a{border-bottom:1px solid currentColor}
.letter__note a:hover{color:var(--ink)}
.foot__legal{display:flex;flex-wrap:wrap;gap:6px 20px}
.foot__legal a,.foot__legal button{font-size:inherit;border-bottom:1px solid rgba(248,243,233,.5)}
.foot__legal a:hover,.foot__legal button:hover{color:var(--ink);border-color:currentColor}
.cookie{position:fixed;left:var(--pad);bottom:var(--pad);z-index:60;width:min(430px,calc(100vw - 2 * var(--pad)));padding:22px 24px 24px;background:var(--paper);color:var(--ink);border:1px solid var(--ink);box-shadow:0 18px 50px rgba(28,26,24,.22);animation:cookie-in .6s var(--ease) both}
.cookie[hidden]{display:none}
@keyframes cookie-in{from{opacity:0;transform:translateY(20px)}}
.cookie h2{font:500 .72rem/1.4 var(--text);letter-spacing:.14em;color:var(--red)}
.cookie p{margin-top:10px;font-size:.88rem;line-height:1.5}
.cookie p a{border-bottom:1px solid currentColor}
.cookie__go{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:18px}
.cookie .btn{min-height:46px;padding:10px 24px;font-size:.92rem}
.cookie .under{font-size:.88rem}
.docpage .top{mix-blend-mode:normal;background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line)}
.doc{max-width:calc(820px + 2 * var(--pad));margin-inline:auto;padding-top:calc(var(--top) + clamp(32px,6vw,80px));padding-bottom:clamp(56px,8vw,110px)}
.doc>.mono a{border-bottom:1px solid currentColor;padding-bottom:2px}
.doc>.mono a:hover{color:var(--red)}
.doc h1{margin-top:26px;font:400 clamp(2.2rem,5.4vw,4.4rem)/1 var(--disp);letter-spacing:-.02em;text-wrap:balance}
.doc__meta{margin-top:16px;font-size:.84rem;color:var(--mute)}
.doc__body{margin-top:clamp(28px,4vw,52px)}
.doc__body h2{margin:1.7em 0 .5em;font:400 clamp(1.5rem,2.4vw,2rem)/1.15 var(--disp);letter-spacing:0}
.doc__body p,.doc__body li{line-height:1.65}
.doc__body p+p,.doc__body ul+p,.doc__body .doc__table+p{margin-top:.9em}
.doc__body ul{display:grid;gap:.5em;margin-top:.4em}
.doc__body li{position:relative;padding-left:22px}
.doc__body li::before{content:"";position:absolute;left:0;top:.8em;width:10px;height:1px;background:var(--red)}
.doc__body a{border-bottom:1px solid var(--red)}
.doc__body a:hover{color:var(--red)}
.doc__body code{font:500 .86em ui-monospace,Menlo,Consolas,monospace;background:rgba(28,26,24,.06);padding:2px 6px}
.doc__table{overflow-x:auto;margin-top:.8em}
.doc__table table{width:100%;min-width:560px;border-collapse:collapse;font-size:.9rem;line-height:1.5}
.doc__table th{text-align:left;font:500 .7rem/1.4 var(--text);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.doc__table th,.doc__table td{padding:12px 16px 12px 0;border-bottom:1px solid var(--line);vertical-align:top}
.docfoot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;padding-block:22px 28px;border-top:1px solid var(--line);font-size:.8rem;color:var(--mute)}
.docfoot nav{display:flex;flex-wrap:wrap;gap:6px 20px}
.docfoot a,.docfoot button{font-size:inherit;border-bottom:1px solid currentColor}
.docfoot a:hover,.docfoot button:hover{color:var(--red)}
@media (max-width:899px){
  .cookie{left:10px;right:10px;bottom:10px;width:auto;padding:18px}
  .has-cookie .fab{display:none}
  .foot{row-gap:12px}
}

/* страница 404 */
.nf{display:grid;align-content:center;gap:22px;min-height:100svh;padding-block:calc(var(--top) + 40px) 60px}
.nf h1{font:400 clamp(3rem,11vw,11rem)/.9 var(--disp);letter-spacing:-.03em}
.nf>p:not(.mono){max-width:30em;color:var(--mute)}
.nf .mono{color:var(--red)}
.nf__go{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:10px}
