@font-face{font-family:Inter;src:url('assets/fonts/Inter.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:CHEKHOV;src:url('assets/fonts/Chekhov.ttf') format('truetype');font-weight:400;font-display:swap}
*{box-sizing:border-box}html{background:#151515;color:#fffefd;scroll-behavior:smooth}body{margin:0;font-family:Inter,sans-serif;font-weight:300}p{margin:0}img,video{display:block}img{user-select:none}a{color:inherit}button{font:inherit;color:inherit}#app{position:relative;margin:auto;overflow:clip;min-height:100svh}.design{position:relative;overflow:clip;margin:auto}.design.mobile{display:none}.design.desktop{display:block}.action{cursor:pointer;transition:opacity .25s ease;outline-offset:7px}.action:focus-visible,.carousel-viewport:focus-visible{outline:1px solid #fffefd}.nav-action:hover{opacity:1!important}.back-action:hover{opacity:.5!important}.action::selection{background:transparent}.carousel-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab;touch-action:pan-x pan-y;outline-offset:5px}.carousel-viewport::-webkit-scrollbar{display:none}.carousel-viewport.dragging{cursor:grabbing;scroll-behavior:auto!important}.carousel-viewport img{pointer-events:none}.arrow-action{cursor:pointer;transition:opacity .2s}.arrow-action:hover{opacity:.65}.arrow-action:after{content:'';position:absolute;inset:-12px}.arrow-action[aria-disabled=true]{opacity:.2;cursor:default}.envelope-card{transition:opacity .35s ease}.envelope-card [data-name='image 10'],.envelope-card [data-name='image 11']{transition:transform .45s cubic-bezier(.2,.7,.2,1);transform-origin:50% 90%}.envelope-card.is-hover [data-name='image 10']{transform:rotate(8deg)}.envelope-card.is-hover [data-name='image 11']{transform:rotate(-5deg)}.envelope-card.dimmed{opacity:.2}.portfolio-arrow{transition:transform .3s ease}.portfolio-hover .portfolio-arrow{transform:rotate(-45deg)}.mobile-envelope-stage{position:absolute;overflow:hidden;touch-action:pan-y}.mobile-envelope-stage .slide{position:absolute;inset:0;transition:opacity .4s ease,translate .4s cubic-bezier(.2,.7,.2,1);pointer-events:none;opacity:0;translate:35px 0}.mobile-envelope-stage .slide.active{opacity:1;translate:0 0;pointer-events:auto}.video-slot{background:#000;overflow:hidden}.video-slot video{width:100%;height:100%;object-fit:contain;pointer-events:auto}.video-slot video:fullscreen{object-fit:contain;background:#000}.video-changing{animation:video-in .35s ease}@keyframes video-in{from{opacity:.3;transform:translateX(12px)}to{opacity:1;transform:translateX(0)}}@media(max-width:767px){.design.mobile{display:block}.design.desktop{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.mobile-envelope-stage .slide:not(.active) *{pointer-events:none!important}
body.preview-desktop .design.desktop{display:block}body.preview-desktop .design.mobile{display:none}

body.preview-mobile #app{max-width:390px}body.preview-mobile .design.desktop{display:none}body.preview-mobile .design.mobile{display:block}

.arrow-action{z-index:10;pointer-events:auto}

.design [data-name="1 экран"] .action{z-index:20}.design [data-name="текстура"],.design [data-name="фото"],.design [data-name="фото без фона"]{pointer-events:none}

.hero-shell{position:relative;width:100%;overflow:hidden;z-index:1}.hero-canvas{position:relative;width:1200px;height:2581px}.hero-shell .action{z-index:20}.hero-shell .portfolio-arrow{transition:transform .3s ease}
@media(max-width:767px){.hero-shell{display:none}}
body.preview-mobile .hero-shell{display:none}body.preview-desktop .hero-shell{display:block}

.hero-foreground{position:absolute;top:0;width:1200px;height:2581px;pointer-events:none}.hero-foreground .action{pointer-events:auto}.design .write-button:hover{opacity:.5!important}

/* Keep the monochrome hero neutral before the repeated Overlay text blends. */
.hero-canvas img,
.design.mobile [data-name="фото"] img,
.design.mobile [data-name="фото без фона"] img,
.design.mobile [data-name="текстура"] img{filter:grayscale(1)}
