/* вырисовка вектора */
/* вырисовка надписи вектором */
.draw-svg {
    animation: draw 1s linear forwards;
}
@keyframes draw {
    to {
        stroke-dashoffset: 0;
    }
}

/* шум на фоне */
.bg-noise {
    pointer-events: none;
    width: 100vw !important;
    height: 100vh !important;
    position: fixed;
    top: 0 !important;
    left: 0 !important;
}

/* ссылки италиком */
.it-links:hover {
    font-style: italic;
}

/* универсальный бургер */
.burgerWrapper {
    position: fixed;
    overflow: hidden;
    top: 0;
    right: 0;
}
.triggerBlock {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 999;
    pointer-events: none;
}
.triggerBlock a {
    pointer-events: auto;
}
.burgerToggler,
.burgerBlock {
    position: fixed;
    width: 100vw;
    top: 0;
    left: 0;
}
.burgerToggler {
    z-index: 99999 !important;
}
.burgerBlock {
    height: 100vh;
}
.burgerBlock > div > div{
    height: 100vh;
}
.burgerButton {
    cursor: pointer;
}
.burgerHidden {
    opacity: 0;
    z-index: 0 !important;
    pointer-events: none;
}
.burgerShown {
    opacity: 1;
    z-index: 9999 !important;
    pointer-events: auto;
}

/* кнопка для бургера */
#nav-icon {
    width: 50px;
    height: 36px;
    position: relative;
    transition: .5s ease-in-out;
    cursor: pointer;
}
#nav-icon span {
    position: absolute;
    height: 4px;
    width: 100%;
    background: #BDBDBD;
    border-radius: 1em;
    opacity: 1;
    transform: rotate(0deg);
    transition: .25s ease-in-out;
    transform-origin: center center;
}
#nav-icon span:nth-child(1) {
    top: 0%;
    transform: translate(0, 100%);
}
#nav-icon span:nth-child(2) {
    top: 50%;
}
#nav-icon span:nth-child(3) {
    top: 100%;
    transform: translate(0, -100%);
}
#nav-icon.open {
    display: grid;
    place-items: center;
}
#nav-icon.open span {
    top: 50%;
}
#nav-icon.open span:nth-child(1) {
    transform: rotate(45deg);
}
#nav-icon.open span:nth-child(2) {
    transform: scale(0);
}
#nav-icon.open span:nth-child(3) {
    transform: rotate(-45deg);
}

/* замена курсора */
.cursor-changed {
    position: fixed;
    top: 0;
    left: -100px;
    overflow: visible;
    z-index: 10000000000;
    pointer-events: none;
}
.cursor-active,
.cursor-disactive {
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-50%, -50%);
    transition: opacity 0.3s ease;
}

/* смена экранов шторкой */
.curtainPage {
    width: 100vw;
    overflow: hidden;
    position: fixed;
}

/* объенинение элементов */
.leftTop {
    left: 0 !important;
    top: 0 !important;
}

/* бегущая строка в кнопке */
.runningLineBtn > span {
    display: inline-block;
}

.runningLineBtn:hover > span {
    opacity: 0;
}

.runningLine {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    pointer-events: none;
}

.runningLine__inner {
    display: flex;
    position: relative;
    height: 100%;
    animation: run-the-line 1s linear infinite;
    animation-play-state: paused;
    opacity: 0;
}

.runningLineBtn:hover .runningLine__inner {
    animation-play-state: running;
    opacity: 1;
    transition-duration: 0.4s;
}

.runningLine span {
    text-align: center;
    white-space: nowrap;
    height: 100%;
    display: grid;
    place-items: center;
}

.runningLineInitialTxt {
    height: 100%;
    display: grid !important;
    place-items: center;
}

@keyframes run-the-line {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        -webkit-transform: translateX(var(--move-final));
        transform: translateX(var(--move-final));
    }
}

/* 3d карточки */
body:not(.t-body_popupshowed) .ddd-cards-body {
    perspective: 5000px;
}

/* градиент вокруг курсора */
.cursor-halo {
    position: fixed;
    top: 0;
    left: 0;
    pointer-events: none;
    opacity: 0;
    transition: opacity .25s;
}

/* курсор на canvas */
.easy-cursor {
    position: fixed;
    top: 0;
    left: 0;
    pointer-events: none;
    z-index: 9999999;
}
.hideCursor * {
    cursor: none !important;
}

/* переворачивающийся текст */
.text-flipped span {
    transform: translateY(-120%);
}

/* фоновое аудио */
.audio-on,
.audio-off {
    cursor: pointer;
}
.audio-on.hidden,
.audio-off.hidden {
    display: none;
}

/* верхний и нижний блок шторкой */
#allrecords.has-bg-block > div {
    z-index: 2;
    position: relative;
}
.bg-block {
    position: fixed !important;
    width: 100%;
    z-index: 1 !important;
}
.bg-block.fix-top {
    top: 0;
}
.bg-block.fix-bottom {
    bottom: 0;
}

/* прячущийся хедер */
.hiding-header {
    --animTime: .25s;
    --top: 0;
    position: fixed;
    top: var(--top);
    width: 100%;
    top: 0;
    z-index: 99999;
    transform: translateY(0);
    transition: transform .4s ease;
}
.hiding-header-lose {
    position: absolute;
    top: var(--top);
}
.hiding-header-anim {
    transition: var(--animTime);
}
.hiding-header-lose.make-transparent .t396__artboard {
    background-color: transparent !important;
}
.hiding-header.hidden {
    transform: translateY(-100%);
}
.hiding-header.hiding-header-lose .fixed-element {
    opacity: 0;
}
.hiding-header:not(.hiding-header-lose) .lose-element {
    opacity: 0;
}


/* темная тема */
.dark-mode,
.light-mode,
.dark-trigger,
.light-trigger {
    transition: opacity var(--transitionTime, 0);
}
.dark-trigger,
.light-trigger,
.common-trigger {
    cursor: pointer;
}
body.light-mode .dark-mode,
body.dark-mode .light-mode,
body.light-mode .dark-trigger,
body.dark-mode .light-trigger {
    opacity: 0;
    pointer-events: none;
}