/* svg-line@charset "UTF-8"; */
@font-face {
    font-family: 'New_Zelek';
    src: url('../fonts/new_zelek/New_Zelek.eot');
    src: local('New_Zelek'),
    url('../fonts/new_zelek/New_Zelek.eot?#iefix') format('embedded-opentype'),
    url('../fonts/new_zelek/New_Zelek.woff') format('woff'),
    url('../fonts/new_zelek/New_Zelek.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

.container--md {
    max-width: 75.125rem !important;
    margin: 0 auto;
}

@media (max-width: 1240px) {
    .container--md {
        max-width: calc(100% - 40px) !important;
    }
}

.container--sm {
    /*max-width: 67.188rem;*/
    /*max-width: max-content;*/
    /*margin: 0 auto;*/
    /* max-width: 32.9375rem !important; */
    /*max-width: 75.125rem;*/
    /*max-width: 55.75rem;*/
}

@media (max-width: 1100px) {
    .container--sm {
        max-width: 100% !important;
    }
}


.plus {
    position: relative;
    width: 1.5rem;
    height: 1.5rem;
    padding: 0;
    background-color: transparent;
    color: var(--main)
}

.plus:after, .plus:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background-color: currentColor
}

.plus:after {
    width: .875rem;
    height: .0625rem
}

.plus:before {
    width: .0625rem;
    height: .875rem;
    -webkit-transition: .5s height;
    -o-transition: .5s height;
    transition: .5s height
}

button.plus:hover {
    color: var(--f)
}

.arrow {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: .75rem;
    height: .75rem;
    background-color: transparent;
    color: inherit;
    padding: 0
}

.arrow:after {
    content: "";
    width: .5rem;
    height: .5rem;
    border-top: var(--line-current);
    border-right: var(--line-current);
    border-width: .125rem;
    border-radius: 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: .1s all;
    -o-transition: .1s all;
    transition: .1s all
}

.accordion {
    --top: 57px;
    position: relative;
    width: 100%;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content
}

@media (max-width: 800px) {
    .accordion p img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

.accordion:after {
    content: "";
    position: absolute;
    top: var(--top);
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100vw;
    background-color: var(--f)
}

.accordion:first-of-type {
    margin-top: var(--32)
}

.accordion.active .accordion--name {
    background-color: var(--f);
    color: var(--main)
}

.accordion.active .accordion--name .plus:before {
    height: 0
}

.accordion.active .accordion--name .arrow:after {
    -webkit-transform: translate(-50%, -25%) rotate(-45deg);
    -ms-transform: translate(-50%, -25%) rotate(-45deg);
    transform: translate(-50%, -25%) rotate(-45deg)
}

.accordion--name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    gap: .625rem;
    font-weight: 600;
    font-size: var(--h5);
    line-height: 120%;
    background-color: transparent;
    color: var(--clr);
    border-bottom: var(--line-grey-20);
    padding: 1rem;
    gap: .5rem;
    cursor: pointer
}

.accordion--name:hover {
    color: var(--hover)
}

.accordion--name .arrow:after {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -75%) rotate(135deg);
    -ms-transform: translate(-50%, -75%) rotate(135deg);
    transform: translate(-50%, -75%) rotate(135deg)
}

.accordion--name .name {
    margin-bottom: 0
}

.accordion--child {
    position: relative;
    overflow: hidden;
    -webkit-transition: .5s height cubic-bezier(.39, .58, .57, 1);
    -o-transition: .5s height cubic-bezier(.39, .58, .57, 1);
    transition: .5s height cubic-bezier(.39, .58, .57, 1);
    z-index: 1
}

.accordion--child .contant {
    padding-block: var(--64)
}

.accordion--child .contant h2, .accordion--child .contant h3, .accordion--child .contant h4, .accordion--child .contant h6 {
    color: var(--clr)
}

.article--header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.banner .slide .content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.product--showcase {
    position: relative;
    padding-block: var(--64)
}

.product--showcase:not(:first-child) {
    margin-top: var(--64)
}

.product--showcase:not(:last-child) {
    margin-bottom: var(--64)
}

.product--showcase::after, .product--showcase::before {
    content: "";
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100vw;
    height: .0625rem;
    background-color: var(--grey-20)
}

.product--showcase::before {
    top: 0
}

.product--showcase::after {
    bottom: 0
}

.article--header-title:not(:first-child), .article--header:not(:first-child) {
    margin-top: var(--64)
}

.article--header-title:not(:last-child), .article--header:not(:last-child) {
    margin-bottom: var(--24)
}

.article--header {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: var(--20)
}

.article--header .title {
    margin-bottom: 0
}

.article--header .title a:not(:hover) {
    color: var(--clr)
}

.article--header-title a:not(:hover) {
    color: var(--clr)
}

.article--content .btns {
    margin-top: var(--24)
}

.article--text {
    color: var(--grey-80)
}

.article--text b, .article--text h1, .article--text strong {
    color: var(--clr)
}

.article--text h2:not(:first-child) {
    margin-top: var(--32)
}

.article--text h2:not(:last-child) {
    margin-bottom: var(--24)
}

.article--text h3:not(:first-child) {
    margin-top: var(--32)
}

.article--text h3:not(:last-child) {
    margin-bottom: 1rem
}

body .article--type-1 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    background-color: var(--f);
    /*border-radius:var(--20);*/
    border-radius: 0.25rem;
    padding: var(--32);
    -webkit-column-gap: var(--24);
    -moz-column-gap: var(--24);
    column-gap: var(--24)
}

body .article--type-1 .title {
    width: 100%
}

/*.banner {*/
/*    padding-bottom: var(--64)*/
/*}*/

.banner .title {
    font-family: "New_Zelek", sans-serif;
    font-weight: 400
}

.banner .title:not(:last-child) {
    margin-bottom: .5rem
}

.banner .title span {
    color: var(--main)
}

.banner .title small {
    font-size: .8em
}

.banner .slide {
    padding-top: var(--64);
    padding-bottom: var(--64);
    width: 100%;
    background-repeat: no-repeat;
    background-size: auto 23rem;
    background-position-x: right;
    background-position-y: 50%
}

.banner .slide .content {
    width: 100%;
    height: 100%
}

.banner .slide .content > :nth-last-child(2) {
    margin-bottom: 1rem
}

.banner .slide .content > :last-child {
    margin-top: auto
}

.our--clients {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns:(1fr) [ 5 ];
    grid-template-columns:repeat(5, 1fr);
    gap: var(--20)
}

.our--clients img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    mix-blend-mode: multiply
}

.reviews--slider {
    padding-block: var(--32)
}

.reviews--slider time {
    /*display: none;*/
    font-size: .75rem;
    letter-spacing: 5%;
    color: var(--grey-40);
}

.reviews--slider time:not(:last-child) {
    margin-bottom: .5rem
}

.reviews--slider p {
    color: var(--grey-80)
}

.reviews--header {
    --ava: 4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem
}

.reviews--header:not(:last-child) {
    margin-bottom: var(--20)
}

.reviews--header .ava {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 var(--ava);
    flex: 0 0 var(--ava);
    width: var(--ava);
    height: var(--ava);
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    border-radius: var(--ava);
    overflow: hidden
}

.reviews--header .name {
    font-weight: 600;
    font-size: var(--h5)
}

.reviews--header .name:not(:last-child) {
    margin-top: 0;
    margin-bottom: .5rem
}

.reviews--header .subtitle {
    color: var(--grey-80)
}

.slide .reviews--header .name {
    margin-bottom: 0;
}

.reviews--text {
    display: -webkit-box;
    overflow: hidden;
    word-wrap: break-word;
    -webkit-line-clamp: 7;
    -webkit-box-orient: vertical
}

#preloader {
    position: fixed;
    inset: 0;
    z-index: 9999999;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background-color: var(--f);
    -webkit-transition: .5s opacity;
    -o-transition: .5s opacity;
    transition: .5s opacity
}

#preloader.conceal {
    opacity: 0;
    pointer-events: none
}

#preloader .cube-loader {
    position: relative;
    width: 4.5rem;
    height: 4.5rem;
    margin: 0 auto;
    -webkit-transform: rotateZ(45deg);
    -ms-transform: rotate(45deg);
    transform: rotateZ(45deg)
}

#preloader .cube {
    position: relative;
    -webkit-transform: rotateZ(45deg);
    -ms-transform: rotate(45deg);
    transform: rotateZ(45deg);
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
    width: 50%;
    height: 50%;
    float: left
}

#preloader .cube:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--main);
    -webkit-animation: cube-loader 2.76s infinite linear both;
    animation: cube-loader 2.76s infinite linear both;
    -webkit-transform-origin: 100% 100%;
    -ms-transform-origin: 100% 100%;
    transform-origin: 100% 100%
}

#preloader .loader-2 {
    -webkit-transform: scale(1.1) rotateZ(90deg);
    -ms-transform: scale(1.1) rotate(90deg);
    transform: scale(1.1) rotateZ(90deg)
}

#preloader .loader-2:before {
    -webkit-animation-delay: .35s;
    animation-delay: .35s
}

#preloader .loader-4 {
    -webkit-transform: scale(1.1) rotateZ(270deg);
    -ms-transform: scale(1.1) rotate(270deg);
    transform: scale(1.1) rotateZ(270deg)
}

#preloader .loader-4:before {
    -webkit-animation-delay: 1.04s;
    animation-delay: 1.04s
}

#preloader .loader-3 {
    -webkit-transform: scale(1.1) rotateZ(180deg);
    -ms-transform: scale(1.1) rotate(180deg);
    transform: scale(1.1) rotateZ(180deg)
}

#preloader .loader-3:before {
    -webkit-animation-delay: .69s;
    animation-delay: .69s
}

@media (min-width: 468px) {
    .banner .title {
        font-size: clamp(1.5rem, 3.16vw, 2.5rem)
    }
}

@media (min-width: 768px) {
    .banner .slide .content {
        max-width: 34.6875rem
    }
}

@media (min-width: 1168px) {
    .reviews--slider .slider--track .slide {
        min-width: calc(33.3333333333% - var(--20))
    }
}

@media (min-width: 1268px) {
    body .article--type-1 {
        --help: 30.75rem
    }

    body .article--type-1 .content {
        width: calc(100% - var(--help) - var(--24))
    }

    body .article--type-1 .content-help {
        width: var(--help)
    }
}

@media (max-width: 1067px) {
    .banner .slide {
        background-size: auto 10rem
    }
}

@media (max-width: 967px) {
    .article--header {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: start;
        gap: .5rem
    }
}

@media (max-width: 767px) {
    .banner .slide {
        background-size: 0
    }
}

@media (max-width: 667px) {
    .our--clients {
        -ms-grid-columns:(1fr) [ 3 ];
        grid-template-columns:repeat(3, 1fr)
    }
}

@media (max-width: 467px) {
    .banner a {
        font-size: 3vw;
        font-size: 3cqw
    }

    .banner p {
        display: none
    }

    .banner .title {
        font-size: 5.14vw;
        font-size: 5cqw
    }

    .our--clients {
        -ms-grid-columns:(1fr) [ 2 ];
        grid-template-columns:repeat(2, 1fr)
    }

    .our--clients img:last-child {
        -ms-grid-column: 1;
        grid-column-start: 1;
        -ms-grid-column-span: -2;
        grid-column-end: -1
    }
}

@media (max-width: 1167px) and (min-width: 868px) {
    .reviews--slider .slider--track .slide {
        min-width: calc(50% - var(--20))
    }
}

.section:not(:first-child) {
    margin-top: var(--64)
}

.section:not(:last-child) {
    margin-bottom: var(--64)
}

/* .section--container {
    margin-block: var(--64);
    margin-top: 2.5rem;
} */

.section--container {
	margin-block: var(--64);
	margin-top: 64px;
}

.section--flex-form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--20)
}

.section--flex-form .banner {
    display: -ms-grid;
    display: grid;
    width: 100%
}

.section--flex-form .info {
    width: 100%
}

.section--flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--20) var(--112)
}

.section--grid-4 {
    -ms-grid-columns:(1fr) [ 4 ];
    grid-template-columns:repeat(4, 1fr)
}

.section--grid-4 > .article--header, .section--grid-4 > .title {
    margin-bottom: calc(-1 * var(--gap) + var(--24))
}

.section--std {
    background-color: var(--f);
    padding-top: var(--64);
    padding-bottom: var(--64)
}

.section--std:not(:first-child) {
    margin-top: var(--64)
}

.section--std:not(:last-child) {
    margin-bottom: var(--64)
}

.column-1 {
    -webkit-column-count: 1 !important;
    -moz-column-count: 1 !important;
    column-count: 1 !important
}

.grid-column-1 .cart--section {
    --h: 9.375rem;
    -ms-grid-column-span: 1 !important;
    grid-column: span 1 !important;
    -ms-grid-columns: 1fr !important;
    grid-template-columns:1fr !important
}

.grid-column-1 .cart--section:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--h);
    background-image: var(--lg-w)
}

.grid-column-1 .cart--section .ava {
    height: var(--h) !important
}

@media (min-width: 468px) {
    .section--flex-form .form--std .grid-2 {
        -ms-grid-columns:(1fr) [ 2 ];
        grid-template-columns:repeat(2, 1fr)
    }
}

@media (min-width: 1267px) {
    .section--flex .section--links {
        min-width: 32.875rem
    }
}

@media (min-width: 1368px) {
    .section--flex-form .form--std {
        width: 21.5625rem;
        min-width: 21.5625rem
    }

    .section--flex-form .info {
        margin-block: var(--64);
        margin-left: 13.375rem
    }
}

@media (max-width: 1467px) {
    .section--flex {
        gap: var(--20)
    }

    .section--flex .article--content {
        max-width: 100%
    }
}

@media (max-width: 1367px) {
    .section--flex-form {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

@media (max-width: 1267px) {
    .section--flex {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

@media (max-width: 1167px) {
    .section--grid-4 {
        -ms-grid-columns:(1fr) [ 2 ];
        grid-template-columns:repeat(2, 1fr)
    }
}

@media (max-width: 667px) {
    .section--grid-4 {
        -ms-grid-columns: 1fr;
        grid-template-columns:1fr
    }
}

@media (max-width: 1129px) and (min-width: 768px) {
    .grid-column-1 .cart--section .content {
        -webkit-column-count: 3;
        -moz-column-count: 3;
        column-count: 3
    }
}

.form--search select {
    background-image: url('../svg/art/arrow--grey.svg');
}


.slider--radio {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 80%;

    position: absolute;
    bottom: 4rem;
}

.slider {
    position: relative;
    z-index: 1
}

.slider {
    border-radius: var(--br);
    background-color: var(--f)
}

.slider {
    position: relative;
    padding-right: var(--64);
    padding-left: var(--64)
}

.slider--window {
    cursor: -webkit-grab;
    cursor: grab;
    overflow: hidden
}

.slider--window:active {
    cursor: -webkit-grabbing;
    cursor: grabbing
}

.slider--track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: var(--20);
    -webkit-transition: .3s all;
    -o-transition: .3s all;
    transition: .3s all;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.slider--track .slide {
    min-width: 100%
}

.slider--btn {
    position: absolute;
    top: 0;
    width: var(--64);
    height: 100%;
    padding: 0;
    background-color: transparent !important;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.slider--btn[data-slide=right] {
    right: 0
}

.slider--btn[data-slide=left] {
    left: 0
}

.slider--btn:hover .arrow {
    color: var(--main)
}

.slider--btn .arrow {
    color: var(--clr)
}

.slider--radio {
    gap: .5rem;
    margin-top: 1rem
}

.slider--radio .triggers .trigger {
    --ava: 0.5rem;
    background-color: var(--grey-20);
    border: none;
    pointer-events: none
}

.slider--radio .triggers input:checked ~ .trigger:after, .slider--radio .triggers:hover .trigger:after {
    width: 100%;
    height: 100%
}

[data-slide=left] .arrow:after {
    -webkit-transform: rotate(225deg);
    -ms-transform: rotate(225deg);
    transform: rotate(225deg)
}

@-webkit-keyframes bounce {
    0%, 20%, 53%, 80%, to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    40%, 43% {
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
        animation-timing-function: cubic-bezier(.755, .05, .855, .06);
        -webkit-transform: translate3d(0, -2rem, 0);
        transform: translate3d(0, -2rem, 0)
    }
    70% {
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
        animation-timing-function: cubic-bezier(.755, .05, .855, .06);
        -webkit-transform: translate3d(0, -1rem, 0);
        transform: translate3d(0, -1rem, 0)
    }
    90% {
        -webkit-transform: translate3d(0, -.25rem, 0);
        transform: translate3d(0, -.25rem, 0)
    }
}

@keyframes bounce {
    0%, 20%, 53%, 80%, to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    40%, 43% {
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
        animation-timing-function: cubic-bezier(.755, .05, .855, .06);
        -webkit-transform: translate3d(0, -2rem, 0);
        transform: translate3d(0, -2rem, 0)
    }
    70% {
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
        animation-timing-function: cubic-bezier(.755, .05, .855, .06);
        -webkit-transform: translate3d(0, -1rem, 0);
        transform: translate3d(0, -1rem, 0)
    }
    90% {
        -webkit-transform: translate3d(0, -.25rem, 0);
        transform: translate3d(0, -.25rem, 0)
    }
}

.bounce {
    -webkit-animation-name: bounce;
    animation-name: bounce;
    -webkit-transform-origin: center bottom;
    -ms-transform-origin: center bottom;
    transform-origin: center bottom
}

@-webkit-keyframes flash {
    0%, 50%, to {
        opacity: 1
    }
    25%, 75% {
        opacity: 0
    }
}

@keyframes flash {
    0%, 50%, to {
        opacity: 1
    }
    25%, 75% {
        opacity: 0
    }
}

.flash {
    -webkit-animation-name: flash;
    animation-name: flash
}

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
    50% {
        -webkit-transform: scale3d(1.05, 1.05, 1.05);
        transform: scale3d(1.05, 1.05, 1.05)
    }
    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}

@keyframes pulse {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
    50% {
        -webkit-transform: scale3d(1.05, 1.05, 1.05);
        transform: scale3d(1.05, 1.05, 1.05)
    }
    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}

.pulse {
    -webkit-animation-name: pulse;
    animation-name: pulse
}

@-webkit-keyframes rubberBand {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
    30% {
        -webkit-transform: scale3d(1.25, .75, 1);
        transform: scale3d(1.25, .75, 1)
    }
    40% {
        -webkit-transform: scale3d(.75, 1.25, 1);
        transform: scale3d(.75, 1.25, 1)
    }
    50% {
        -webkit-transform: scale3d(1.15, .85, 1);
        transform: scale3d(1.15, .85, 1)
    }
    65% {
        -webkit-transform: scale3d(.95, 1.05, 1);
        transform: scale3d(.95, 1.05, 1)
    }
    75% {
        -webkit-transform: scale3d(1.05, .95, 1);
        transform: scale3d(1.05, .95, 1)
    }
    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}

@keyframes rubberBand {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
    30% {
        -webkit-transform: scale3d(1.25, .75, 1);
        transform: scale3d(1.25, .75, 1)
    }
    40% {
        -webkit-transform: scale3d(.75, 1.25, 1);
        transform: scale3d(.75, 1.25, 1)
    }
    50% {
        -webkit-transform: scale3d(1.15, .85, 1);
        transform: scale3d(1.15, .85, 1)
    }
    65% {
        -webkit-transform: scale3d(.95, 1.05, 1);
        transform: scale3d(.95, 1.05, 1)
    }
    75% {
        -webkit-transform: scale3d(1.05, .95, 1);
        transform: scale3d(1.05, .95, 1)
    }
    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}

.rubberBand {
    -webkit-animation-name: rubberBand;
    animation-name: rubberBand
}

@-webkit-keyframes shake {
    0%, to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    10%, 30%, 50%, 70%, 90% {
        -webkit-transform: translate3d(-.625rem, 0, 0);
        transform: translate3d(-.625rem, 0, 0)
    }
    20%, 40%, 60%, 80% {
        -webkit-transform: translate3d(.625rem, 0, 0);
        transform: translate3d(.625rem, 0, 0)
    }
}

@keyframes shake {
    0%, to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    10%, 30%, 50%, 70%, 90% {
        -webkit-transform: translate3d(-.625rem, 0, 0);
        transform: translate3d(-.625rem, 0, 0)
    }
    20%, 40%, 60%, 80% {
        -webkit-transform: translate3d(.625rem, 0, 0);
        transform: translate3d(.625rem, 0, 0)
    }
}

.shake {
    -webkit-animation-name: shake;
    animation-name: shake
}

@-webkit-keyframes headShake {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    6.5% {
        -webkit-transform: translateX(-.375rem) rotateY(-9deg);
        transform: translateX(-.375rem) rotateY(-9deg)
    }
    18.5% {
        -webkit-transform: translateX(.3125rem) rotateY(7deg);
        transform: translateX(.3125rem) rotateY(7deg)
    }
    31.5% {
        -webkit-transform: translateX(-.1875rem) rotateY(-5deg);
        transform: translateX(-.1875rem) rotateY(-5deg)
    }
    43.5% {
        -webkit-transform: translateX(.125rem) rotateY(3deg);
        transform: translateX(.125rem) rotateY(3deg)
    }
    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes headShake {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    6.5% {
        -webkit-transform: translateX(-.375rem) rotateY(-9deg);
        transform: translateX(-.375rem) rotateY(-9deg)
    }
    18.5% {
        -webkit-transform: translateX(.3125rem) rotateY(7deg);
        transform: translateX(.3125rem) rotateY(7deg)
    }
    31.5% {
        -webkit-transform: translateX(-.1875rem) rotateY(-5deg);
        transform: translateX(-.1875rem) rotateY(-5deg)
    }
    43.5% {
        -webkit-transform: translateX(.125rem) rotateY(3deg);
        transform: translateX(.125rem) rotateY(3deg)
    }
    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.headShake {
    -webkit-animation-name: headShake;
    animation-name: headShake;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out
}

@-webkit-keyframes swing {
    20% {
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg)
    }
    40% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg)
    }
    60% {
        -webkit-transform: rotate(5deg);
        transform: rotate(5deg)
    }
    80% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg)
    }
    to {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

@keyframes swing {
    20% {
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg)
    }
    40% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg)
    }
    60% {
        -webkit-transform: rotate(5deg);
        transform: rotate(5deg)
    }
    80% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg)
    }
    to {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

.swing {
    -webkit-animation-name: swing;
    animation-name: swing;
    -webkit-transform-origin: top center;
    -ms-transform-origin: top center;
    transform-origin: top center
}

@-webkit-keyframes tada {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
    10%, 20% {
        -webkit-transform: scale3d(.9, .9, .9) rotate(-3deg);
        transform: scale3d(.9, .9, .9) rotate(-3deg)
    }
    30%, 50%, 70%, 90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate(3deg)
    }
    40%, 60%, 80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg)
    }
    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}

@keyframes tada {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
    10%, 20% {
        -webkit-transform: scale3d(.9, .9, .9) rotate(-3deg);
        transform: scale3d(.9, .9, .9) rotate(-3deg)
    }
    30%, 50%, 70%, 90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate(3deg)
    }
    40%, 60%, 80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg)
    }
    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}

.tada {
    -webkit-animation-name: tada;
    animation-name: tada
}

@-webkit-keyframes wobble {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    15% {
        -webkit-transform: translate3d(-25%, 0, 0) rotate(-5deg);
        transform: translate3d(-25%, 0, 0) rotate(-5deg)
    }
    30% {
        -webkit-transform: translate3d(20%, 0, 0) rotate(3deg);
        transform: translate3d(20%, 0, 0) rotate(3deg)
    }
    45% {
        -webkit-transform: translate3d(-15%, 0, 0) rotate(-3deg);
        transform: translate3d(-15%, 0, 0) rotate(-3deg)
    }
    60% {
        -webkit-transform: translate3d(10%, 0, 0) rotate(2deg);
        transform: translate3d(10%, 0, 0) rotate(2deg)
    }
    75% {
        -webkit-transform: translate3d(-5%, 0, 0) rotate(-1deg);
        transform: translate3d(-5%, 0, 0) rotate(-1deg)
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes wobble {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    15% {
        -webkit-transform: translate3d(-25%, 0, 0) rotate(-5deg);
        transform: translate3d(-25%, 0, 0) rotate(-5deg)
    }
    30% {
        -webkit-transform: translate3d(20%, 0, 0) rotate(3deg);
        transform: translate3d(20%, 0, 0) rotate(3deg)
    }
    45% {
        -webkit-transform: translate3d(-15%, 0, 0) rotate(-3deg);
        transform: translate3d(-15%, 0, 0) rotate(-3deg)
    }
    60% {
        -webkit-transform: translate3d(10%, 0, 0) rotate(2deg);
        transform: translate3d(10%, 0, 0) rotate(2deg)
    }
    75% {
        -webkit-transform: translate3d(-5%, 0, 0) rotate(-1deg);
        transform: translate3d(-5%, 0, 0) rotate(-1deg)
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.wobble {
    -webkit-animation-name: wobble;
    animation-name: wobble
}

@-webkit-keyframes jello {
    0%, 11.1%, to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    22.2% {
        -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
        transform: skewX(-12.5deg) skewY(-12.5deg)
    }
    33.3% {
        -webkit-transform: skewX(6.25deg) skewY(6.25deg);
        transform: skewX(6.25deg) skewY(6.25deg)
    }
    44.4% {
        -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
        transform: skewX(-3.125deg) skewY(-3.125deg)
    }
    55.5% {
        -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
        transform: skewX(1.5625deg) skewY(1.5625deg)
    }
    66.6% {
        -webkit-transform: skewX(-.78125deg) skewY(-.78125deg);
        transform: skewX(-.78125deg) skewY(-.78125deg)
    }
    77.7% {
        -webkit-transform: skewX(.390625deg) skewY(.390625deg);
        transform: skewX(.390625deg) skewY(.390625deg)
    }
    88.8% {
        -webkit-transform: skewX(-.1953125deg) skewY(-.1953125deg);
        transform: skewX(-.1953125deg) skewY(-.1953125deg)
    }
}

@keyframes jello {
    0%, 11.1%, to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    22.2% {
        -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
        transform: skewX(-12.5deg) skewY(-12.5deg)
    }
    33.3% {
        -webkit-transform: skewX(6.25deg) skewY(6.25deg);
        transform: skewX(6.25deg) skewY(6.25deg)
    }
    44.4% {
        -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
        transform: skewX(-3.125deg) skewY(-3.125deg)
    }
    55.5% {
        -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
        transform: skewX(1.5625deg) skewY(1.5625deg)
    }
    66.6% {
        -webkit-transform: skewX(-.78125deg) skewY(-.78125deg);
        transform: skewX(-.78125deg) skewY(-.78125deg)
    }
    77.7% {
        -webkit-transform: skewX(.390625deg) skewY(.390625deg);
        transform: skewX(.390625deg) skewY(.390625deg)
    }
    88.8% {
        -webkit-transform: skewX(-.1953125deg) skewY(-.1953125deg);
        transform: skewX(-.1953125deg) skewY(-.1953125deg)
    }
}

.jello {
    -webkit-animation-name: jello;
    animation-name: jello;
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center
}

@-webkit-keyframes heartBeat {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    14% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3)
    }
    28% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    42% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3)
    }
    70% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes heartBeat {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    14% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3)
    }
    28% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    42% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3)
    }
    70% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

.heartBeat {
    -webkit-animation-duration: 1.3s;
    animation-duration: 1.3s;
    -name: heartBeat;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out
}

@-webkit-keyframes bounceIn {
    0%, 20%, 40%, 60%, 80%, to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }
    0% {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }
    20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1)
    }
    40% {
        -webkit-transform: scale3d(.9, .9, .9);
        transform: scale3d(.9, .9, .9)
    }
    60% {
        opacity: 1;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03)
    }
    80% {
        -webkit-transform: scale3d(.97, .97, .97);
        transform: scale3d(.97, .97, .97)
    }
    to {
        opacity: 1;
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}

@keyframes bounceIn {
    0%, 20%, 40%, 60%, 80%, to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }
    0% {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }
    20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1)
    }
    40% {
        -webkit-transform: scale3d(.9, .9, .9);
        transform: scale3d(.9, .9, .9)
    }
    60% {
        opacity: 1;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03)
    }
    80% {
        -webkit-transform: scale3d(.97, .97, .97);
        transform: scale3d(.97, .97, .97)
    }
    to {
        opacity: 1;
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}

.bounceIn {
    -webkit-animation-duration: .75s;
    animation-duration: .75s;
    -name: bounceIn
}

@-webkit-keyframes bounceInDown {
    0%, 60%, 75%, 90%, to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -187.5rem, 0);
        transform: translate3d(0, -187.5rem, 0)
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, 1.5rem, 0);
        transform: translate3d(0, 1.5rem, 0)
    }
    75% {
        -webkit-transform: translate3d(0, -.625rem, 0);
        transform: translate3d(0, -.625rem, 0)
    }
    90% {
        -webkit-transform: translate3d(0, .3125rem, 0);
        transform: translate3d(0, .3125rem, 0)
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes bounceInDown {
    0%, 60%, 75%, 90%, to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -187.5rem, 0);
        transform: translate3d(0, -187.5rem, 0)
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, 1.5rem, 0);
        transform: translate3d(0, 1.5rem, 0)
    }
    75% {
        -webkit-transform: translate3d(0, -.625rem, 0);
        transform: translate3d(0, -.625rem, 0)
    }
    90% {
        -webkit-transform: translate3d(0, .3125rem, 0);
        transform: translate3d(0, .3125rem, 0)
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.bounceInDown {
    -webkit-animation-name: bounceInDown;
    animation-name: bounceInDown
}

@-webkit-keyframes bounceInLeft {
    0%, 60%, 75%, 90%, to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-187.5rem, 0, 0);
        transform: translate3d(-187.5rem, 0, 0)
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(1.5rem, 0, 0);
        transform: translate3d(1.5rem, 0, 0)
    }
    75% {
        -webkit-transform: translate3d(-.625rem, 0, 0);
        transform: translate3d(-.625rem, 0, 0)
    }
    90% {
        -webkit-transform: translate3d(.3125rem, 0, 0);
        transform: translate3d(.3125rem, 0, 0)
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes bounceInLeft {
    0%, 60%, 75%, 90%, to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-187.5rem, 0, 0);
        transform: translate3d(-187.5rem, 0, 0)
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(1.5rem, 0, 0);
        transform: translate3d(1.5rem, 0, 0)
    }
    75% {
        -webkit-transform: translate3d(-.625rem, 0, 0);
        transform: translate3d(-.625rem, 0, 0)
    }
    90% {
        -webkit-transform: translate3d(.3125rem, 0, 0);
        transform: translate3d(.3125rem, 0, 0)
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.bounceInLeft {
    -webkit-animation-name: bounceInLeft;
    animation-name: bounceInLeft
}

@-webkit-keyframes bounceInRight {
    0%, 60%, 75%, 90%, to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(187.5rem, 0, 0);
        transform: translate3d(187.5rem, 0, 0)
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(-1.5rem, 0, 0);
        transform: translate3d(-1.5rem, 0, 0)
    }
    75% {
        -webkit-transform: translate3d(.625rem, 0, 0);
        transform: translate3d(.625rem, 0, 0)
    }
    90% {
        -webkit-transform: translate3d(-.3125rem, 0, 0);
        transform: translate3d(-.3125rem, 0, 0)
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes bounceInRight {
    0%, 60%, 75%, 90%, to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(187.5rem, 0, 0);
        transform: translate3d(187.5rem, 0, 0)
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(-1.5rem, 0, 0);
        transform: translate3d(-1.5rem, 0, 0)
    }
    75% {
        -webkit-transform: translate3d(.625rem, 0, 0);
        transform: translate3d(.625rem, 0, 0)
    }
    90% {
        -webkit-transform: translate3d(-.3125rem, 0, 0);
        transform: translate3d(-.3125rem, 0, 0)
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.bounceInRight {
    -webkit-animation-name: bounceInRight;
    animation-name: bounceInRight
}

@-webkit-keyframes bounceInUp {
    0%, 60%, 75%, 90%, to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 187.5rem, 0);
        transform: translate3d(0, 187.5rem, 0)
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, -1.25rem, 0);
        transform: translate3d(0, -1.25rem, 0)
    }
    75% {
        -webkit-transform: translate3d(0, .625rem, 0);
        transform: translate3d(0, .625rem, 0)
    }
    90% {
        -webkit-transform: translate3d(0, -.3125rem, 0);
        transform: translate3d(0, -.3125rem, 0)
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes bounceInUp {
    0%, 60%, 75%, 90%, to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 187.5rem, 0);
        transform: translate3d(0, 187.5rem, 0)
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, -1.25rem, 0);
        transform: translate3d(0, -1.25rem, 0)
    }
    75% {
        -webkit-transform: translate3d(0, .625rem, 0);
        transform: translate3d(0, .625rem, 0)
    }
    90% {
        -webkit-transform: translate3d(0, -.3125rem, 0);
        transform: translate3d(0, -.3125rem, 0)
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.bounceInUp {
    -webkit-animation-name: bounceInUp;
    animation-name: bounceInUp
}

@-webkit-keyframes bounceOut {
    20% {
        -webkit-transform: scale3d(.9, .9, .9);
        transform: scale3d(.9, .9, .9)
    }
    50%, 55% {
        opacity: 1;
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1)
    }
    to {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }
}

@keyframes bounceOut {
    20% {
        -webkit-transform: scale3d(.9, .9, .9);
        transform: scale3d(.9, .9, .9)
    }
    50%, 55% {
        opacity: 1;
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1)
    }
    to {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }
}

.bounceOut {
    -webkit-animation-duration: .75s;
    animation-duration: .75s;
    -name: bounceOut
}

@-webkit-keyframes bounceOutDown {
    20% {
        -webkit-transform: translate3d(0, .625rem, 0);
        transform: translate3d(0, .625rem, 0)
    }
    40%, 45% {
        opacity: 1;
        -webkit-transform: translate3d(0, -1.25rem, 0);
        transform: translate3d(0, -1.25rem, 0)
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 125rem, 0);
        transform: translate3d(0, 125rem, 0)
    }
}

@keyframes bounceOutDown {
    20% {
        -webkit-transform: translate3d(0, .625rem, 0);
        transform: translate3d(0, .625rem, 0)
    }
    40%, 45% {
        opacity: 1;
        -webkit-transform: translate3d(0, -1.25rem, 0);
        transform: translate3d(0, -1.25rem, 0)
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 125rem, 0);
        transform: translate3d(0, 125rem, 0)
    }
}

.bounceOutDown {
    -webkit-animation-name: bounceOutDown;
    animation-name: bounceOutDown
}

@-webkit-keyframes bounceOutLeft {
    20% {
        opacity: 1;
        -webkit-transform: translate3d(1.25rem, 0, 0);
        transform: translate3d(1.25rem, 0, 0)
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-125rem, 0, 0);
        transform: translate3d(-125rem, 0, 0)
    }
}

@keyframes bounceOutLeft {
    20% {
        opacity: 1;
        -webkit-transform: translate3d(1.25rem, 0, 0);
        transform: translate3d(1.25rem, 0, 0)
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-125rem, 0, 0);
        transform: translate3d(-125rem, 0, 0)
    }
}

.bounceOutLeft {
    -webkit-animation-name: bounceOutLeft;
    animation-name: bounceOutLeft
}

@-webkit-keyframes bounceOutRight {
    20% {
        opacity: 1;
        -webkit-transform: translate3d(-1.25rem, 0, 0);
        transform: translate3d(-1.25rem, 0, 0)
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(125rem, 0, 0);
        transform: translate3d(125rem, 0, 0)
    }
}

@keyframes bounceOutRight {
    20% {
        opacity: 1;
        -webkit-transform: translate3d(-1.25rem, 0, 0);
        transform: translate3d(-1.25rem, 0, 0)
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(125rem, 0, 0);
        transform: translate3d(125rem, 0, 0)
    }
}

.bounceOutRight {
    -webkit-animation-name: bounceOutRight;
    animation-name: bounceOutRight
}

@-webkit-keyframes bounceOutUp {
    20% {
        -webkit-transform: translate3d(0, -.625rem, 0);
        transform: translate3d(0, -.625rem, 0)
    }
    40%, 45% {
        opacity: 1;
        -webkit-transform: translate3d(0, 1.25rem, 0);
        transform: translate3d(0, 1.25rem, 0)
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -125rem, 0);
        transform: translate3d(0, -125rem, 0)
    }
}

@keyframes bounceOutUp {
    20% {
        -webkit-transform: translate3d(0, -.625rem, 0);
        transform: translate3d(0, -.625rem, 0)
    }
    40%, 45% {
        opacity: 1;
        -webkit-transform: translate3d(0, 1.25rem, 0);
        transform: translate3d(0, 1.25rem, 0)
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -125rem, 0);
        transform: translate3d(0, -125rem, 0)
    }
}

.bounceOutUp {
    -webkit-animation-name: bounceOutUp;
    animation-name: bounceOutUp
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

.fadeIn {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn
}

@-webkit-keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.fadeInDown {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown
}

@-webkit-keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -125rem, 0);
        transform: translate3d(0, -125rem, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes fadeInDownBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -125rem, 0);
        transform: translate3d(0, -125rem, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.fadeInDownBig {
    -webkit-animation-name: fadeInDownBig;
    animation-name: fadeInDownBig
}

@-webkit-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.fadeInLeft {
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft
}

@-webkit-keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-125rem, 0, 0);
        transform: translate3d(-125rem, 0, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes fadeInLeftBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-125rem, 0, 0);
        transform: translate3d(-125rem, 0, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.fadeInLeftBig {
    -webkit-animation-name: fadeInLeftBig;
    animation-name: fadeInLeftBig
}

@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.fadeInRight {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight
}

@-webkit-keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(125rem, 0, 0);
        transform: translate3d(125rem, 0, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes fadeInRightBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(125rem, 0, 0);
        transform: translate3d(125rem, 0, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.fadeInRightBig {
    -webkit-animation-name: fadeInRightBig;
    animation-name: fadeInRightBig
}

@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.fadeInUp {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp
}

@-webkit-keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 125rem, 0);
        transform: translate3d(0, 125rem, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes fadeInUpBig {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 125rem, 0);
        transform: translate3d(0, 125rem, 0)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.fadeInUpBig {
    -webkit-animation-name: fadeInUpBig;
    animation-name: fadeInUpBig
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1
    }
    to {
        opacity: 0
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1
    }
    to {
        opacity: 0
    }
}

.fadeOut {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut
}

@-webkit-keyframes fadeOutDown {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0)
    }
}

@keyframes fadeOutDown {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0)
    }
}

.fadeOutDown {
    -webkit-animation-name: fadeOutDown;
    animation-name: fadeOutDown
}

@-webkit-keyframes fadeOutDownBig {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 125rem, 0);
        transform: translate3d(0, 125rem, 0)
    }
}

@keyframes fadeOutDownBig {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 125rem, 0);
        transform: translate3d(0, 125rem, 0)
    }
}

.fadeOutDownBig {
    -webkit-animation-name: fadeOutDownBig;
    animation-name: fadeOutDownBig
}

@-webkit-keyframes fadeOutLeft {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0)
    }
}

@keyframes fadeOutLeft {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0)
    }
}

.fadeOutLeft {
    -webkit-animation-name: fadeOutLeft;
    animation-name: fadeOutLeft
}

@-webkit-keyframes fadeOutLeftBig {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-125rem, 0, 0);
        transform: translate3d(-125rem, 0, 0)
    }
}

@keyframes fadeOutLeftBig {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-125rem, 0, 0);
        transform: translate3d(-125rem, 0, 0)
    }
}

.fadeOutLeftBig {
    -webkit-animation-name: fadeOutLeftBig;
    animation-name: fadeOutLeftBig
}

@-webkit-keyframes fadeOutRight {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }
}

@keyframes fadeOutRight {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }
}

.fadeOutRight {
    -webkit-animation-name: fadeOutRight;
    animation-name: fadeOutRight
}

@-webkit-keyframes fadeOutRightBig {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(125rem, 0, 0);
        transform: translate3d(125rem, 0, 0)
    }
}

@keyframes fadeOutRightBig {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(125rem, 0, 0);
        transform: translate3d(125rem, 0, 0)
    }
}

.fadeOutRightBig {
    -webkit-animation-name: fadeOutRightBig;
    animation-name: fadeOutRightBig
}

@-webkit-keyframes fadeOutUp {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0)
    }
}

@keyframes fadeOutUp {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0)
    }
}

.fadeOutUp {
    -webkit-animation-name: fadeOutUp;
    animation-name: fadeOutUp
}

@-webkit-keyframes fadeOutUpBig {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -125rem, 0);
        transform: translate3d(0, -125rem, 0)
    }
}

@keyframes fadeOutUpBig {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -125rem, 0);
        transform: translate3d(0, -125rem, 0)
    }
}

.fadeOutUpBig {
    -webkit-animation-name: fadeOutUpBig;
    animation-name: fadeOutUpBig
}

@-webkit-keyframes flip {
    0% {
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
        -webkit-transform: perspective(25rem) scaleX(1) translateZ(0) rotateY(-1turn);
        transform: perspective(25rem) scaleX(1) translateZ(0) rotateY(-1turn)
    }
    40% {
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
        -webkit-transform: perspective(25rem) scaleX(1) translateZ(150px) rotateY(-190deg);
        transform: perspective(25rem) scaleX(1) translateZ(150px) rotateY(-190deg)
    }
    50% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        -webkit-transform: perspective(25rem) scaleX(1) translateZ(150px) rotateY(-170deg);
        transform: perspective(25rem) scaleX(1) translateZ(150px) rotateY(-170deg)
    }
    80% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        -webkit-transform: perspective(25rem) scale3d(.95, .95, .95) translateZ(0);
        transform: perspective(25rem) scale3d(.95, .95, .95) translateZ(0)
    }
    to {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        -webkit-transform: perspective(25rem) scaleX(1) translateZ(0) rotateY(0);
        transform: perspective(25rem) scaleX(1) translateZ(0) rotateY(0)
    }
}

@keyframes flip {
    0% {
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
        -webkit-transform: perspective(25rem) scaleX(1) translateZ(0) rotateY(-1turn);
        transform: perspective(25rem) scaleX(1) translateZ(0) rotateY(-1turn)
    }
    40% {
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
        -webkit-transform: perspective(25rem) scaleX(1) translateZ(150px) rotateY(-190deg);
        transform: perspective(25rem) scaleX(1) translateZ(150px) rotateY(-190deg)
    }
    50% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        -webkit-transform: perspective(25rem) scaleX(1) translateZ(150px) rotateY(-170deg);
        transform: perspective(25rem) scaleX(1) translateZ(150px) rotateY(-170deg)
    }
    80% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        -webkit-transform: perspective(25rem) scale3d(.95, .95, .95) translateZ(0);
        transform: perspective(25rem) scale3d(.95, .95, .95) translateZ(0)
    }
    to {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        -webkit-transform: perspective(25rem) scaleX(1) translateZ(0) rotateY(0);
        transform: perspective(25rem) scaleX(1) translateZ(0) rotateY(0)
    }
}

.animated.flip {
    -webkit-animation-name: flip;
    animation-name: flip;
    -webkit-backface-visibility: visible;
    backface-visibility: visible
}

@-webkit-keyframes flipInX {
    0% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0;
        -webkit-transform: perspective(25rem) rotateX(90deg);
        transform: perspective(25rem) rotateX(90deg)
    }
    40% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        -webkit-transform: perspective(25rem) rotateX(-20deg);
        transform: perspective(25rem) rotateX(-20deg)
    }
    60% {
        opacity: 1;
        -webkit-transform: perspective(25rem) rotateX(10deg);
        transform: perspective(25rem) rotateX(10deg)
    }
    80% {
        -webkit-transform: perspective(25rem) rotateX(-5deg);
        transform: perspective(25rem) rotateX(-5deg)
    }
    to {
        -webkit-transform: perspective(25rem);
        transform: perspective(25rem)
    }
}

@keyframes flipInX {
    0% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0;
        -webkit-transform: perspective(25rem) rotateX(90deg);
        transform: perspective(25rem) rotateX(90deg)
    }
    40% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        -webkit-transform: perspective(25rem) rotateX(-20deg);
        transform: perspective(25rem) rotateX(-20deg)
    }
    60% {
        opacity: 1;
        -webkit-transform: perspective(25rem) rotateX(10deg);
        transform: perspective(25rem) rotateX(10deg)
    }
    80% {
        -webkit-transform: perspective(25rem) rotateX(-5deg);
        transform: perspective(25rem) rotateX(-5deg)
    }
    to {
        -webkit-transform: perspective(25rem);
        transform: perspective(25rem)
    }
}

.flipInX {
    -webkit-animation-name: flipInX;
    animation-name: flipInX;
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important
}

@-webkit-keyframes flipInY {
    0% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0;
        -webkit-transform: perspective(25rem) rotateY(90deg);
        transform: perspective(25rem) rotateY(90deg)
    }
    40% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        -webkit-transform: perspective(25rem) rotateY(-20deg);
        transform: perspective(25rem) rotateY(-20deg)
    }
    60% {
        opacity: 1;
        -webkit-transform: perspective(25rem) rotateY(10deg);
        transform: perspective(25rem) rotateY(10deg)
    }
    80% {
        -webkit-transform: perspective(25rem) rotateY(-5deg);
        transform: perspective(25rem) rotateY(-5deg)
    }
    to {
        -webkit-transform: perspective(25rem);
        transform: perspective(25rem)
    }
}

@keyframes flipInY {
    0% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0;
        -webkit-transform: perspective(25rem) rotateY(90deg);
        transform: perspective(25rem) rotateY(90deg)
    }
    40% {
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        -webkit-transform: perspective(25rem) rotateY(-20deg);
        transform: perspective(25rem) rotateY(-20deg)
    }
    60% {
        opacity: 1;
        -webkit-transform: perspective(25rem) rotateY(10deg);
        transform: perspective(25rem) rotateY(10deg)
    }
    80% {
        -webkit-transform: perspective(25rem) rotateY(-5deg);
        transform: perspective(25rem) rotateY(-5deg)
    }
    to {
        -webkit-transform: perspective(25rem);
        transform: perspective(25rem)
    }
}

.flipInY {
    -webkit-animation-name: flipInY;
    animation-name: flipInY;
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important
}

@-webkit-keyframes flipOutX {
    0% {
        -webkit-transform: perspective(25rem);
        transform: perspective(25rem)
    }
    30% {
        opacity: 1;
        -webkit-transform: perspective(25rem) rotateX(-20deg);
        transform: perspective(25rem) rotateX(-20deg)
    }
    to {
        opacity: 0;
        -webkit-transform: perspective(25rem) rotateX(90deg);
        transform: perspective(25rem) rotateX(90deg)
    }
}

@keyframes flipOutX {
    0% {
        -webkit-transform: perspective(25rem);
        transform: perspective(25rem)
    }
    30% {
        opacity: 1;
        -webkit-transform: perspective(25rem) rotateX(-20deg);
        transform: perspective(25rem) rotateX(-20deg)
    }
    to {
        opacity: 0;
        -webkit-transform: perspective(25rem) rotateX(90deg);
        transform: perspective(25rem) rotateX(90deg)
    }
}

.flipOutX {
    -webkit-animation-duration: .75s;
    animation-duration: .75s;
    -name: flipOutX;
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important
}

@-webkit-keyframes flipOutY {
    0% {
        -webkit-transform: perspective(25rem);
        transform: perspective(25rem)
    }
    30% {
        opacity: 1;
        -webkit-transform: perspective(25rem) rotateY(-15deg);
        transform: perspective(25rem) rotateY(-15deg)
    }
    to {
        opacity: 0;
        -webkit-transform: perspective(25rem) rotateY(90deg);
        transform: perspective(25rem) rotateY(90deg)
    }
}

@keyframes flipOutY {
    0% {
        -webkit-transform: perspective(25rem);
        transform: perspective(25rem)
    }
    30% {
        opacity: 1;
        -webkit-transform: perspective(25rem) rotateY(-15deg);
        transform: perspective(25rem) rotateY(-15deg)
    }
    to {
        opacity: 0;
        -webkit-transform: perspective(25rem) rotateY(90deg);
        transform: perspective(25rem) rotateY(90deg)
    }
}

.flipOutY {
    -webkit-animation-duration: .75s;
    animation-duration: .75s;
    -name: flipOutY;
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important
}

@-webkit-keyframes lightSpeedIn {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
        transform: translate3d(100%, 0, 0) skewX(-30deg)
    }
    60% {
        opacity: 1;
        -webkit-transform: skewX(20deg);
        transform: skewX(20deg)
    }
    80% {
        -webkit-transform: skewX(-5deg);
        transform: skewX(-5deg)
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes lightSpeedIn {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
        transform: translate3d(100%, 0, 0) skewX(-30deg)
    }
    60% {
        opacity: 1;
        -webkit-transform: skewX(20deg);
        transform: skewX(20deg)
    }
    80% {
        -webkit-transform: skewX(-5deg);
        transform: skewX(-5deg)
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.lightSpeedIn {
    -webkit-animation-name: lightSpeedIn;
    animation-name: lightSpeedIn;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out
}

@-webkit-keyframes lightSpeedOut {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
        transform: translate3d(100%, 0, 0) skewX(30deg)
    }
}

@keyframes lightSpeedOut {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
        transform: translate3d(100%, 0, 0) skewX(30deg)
    }
}

.lightSpeedOut {
    -webkit-animation-name: lightSpeedOut;
    animation-name: lightSpeedOut;
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in
}

@-webkit-keyframes rotateIn {
    0% {
        opacity: 0;
        -webkit-transform: rotate(-200deg);
        transform: rotate(-200deg);
        -webkit-transform-origin: center;
        transform-origin: center
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        -webkit-transform-origin: center;
        transform-origin: center
    }
}

@keyframes rotateIn {
    0% {
        opacity: 0;
        -webkit-transform: rotate(-200deg);
        transform: rotate(-200deg);
        -webkit-transform-origin: center;
        transform-origin: center
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        -webkit-transform-origin: center;
        transform-origin: center
    }
}

.rotateIn {
    -webkit-animation-name: rotateIn;
    animation-name: rotateIn
}

@-webkit-keyframes rotateInDownLeft {
    0% {
        opacity: 0;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
}

@keyframes rotateInDownLeft {
    0% {
        opacity: 0;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
}

.rotateInDownLeft {
    -webkit-animation-name: rotateInDownLeft;
    animation-name: rotateInDownLeft
}

@-webkit-keyframes rotateInDownRight {
    0% {
        opacity: 0;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
}

@keyframes rotateInDownRight {
    0% {
        opacity: 0;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
}

.rotateInDownRight {
    -webkit-animation-name: rotateInDownRight;
    animation-name: rotateInDownRight
}

@-webkit-keyframes rotateInUpLeft {
    0% {
        opacity: 0;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
}

@keyframes rotateInUpLeft {
    0% {
        opacity: 0;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
}

.rotateInUpLeft {
    -webkit-animation-name: rotateInUpLeft;
    animation-name: rotateInUpLeft
}

@-webkit-keyframes rotateInUpRight {
    0% {
        opacity: 0;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
}

@keyframes rotateInUpRight {
    0% {
        opacity: 0;
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
}

.rotateInUpRight {
    -webkit-animation-name: rotateInUpRight;
    animation-name: rotateInUpRight
}

@-webkit-keyframes rotateOut {
    0% {
        opacity: 1;
        -webkit-transform-origin: center;
        transform-origin: center
    }
    to {
        opacity: 0;
        -webkit-transform: rotate(200deg);
        transform: rotate(200deg);
        -webkit-transform-origin: center;
        transform-origin: center
    }
}

@keyframes rotateOut {
    0% {
        opacity: 1;
        -webkit-transform-origin: center;
        transform-origin: center
    }
    to {
        opacity: 0;
        -webkit-transform: rotate(200deg);
        transform: rotate(200deg);
        -webkit-transform-origin: center;
        transform-origin: center
    }
}

.rotateOut {
    -webkit-animation-name: rotateOut;
    animation-name: rotateOut
}

@-webkit-keyframes rotateOutDownLeft {
    0% {
        opacity: 1;
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
    to {
        opacity: 0;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
}

@keyframes rotateOutDownLeft {
    0% {
        opacity: 1;
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
    to {
        opacity: 0;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
}

.rotateOutDownLeft {
    -webkit-animation-name: rotateOutDownLeft;
    animation-name: rotateOutDownLeft
}

@-webkit-keyframes rotateOutDownRight {
    0% {
        opacity: 1;
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
    to {
        opacity: 0;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
}

@keyframes rotateOutDownRight {
    0% {
        opacity: 1;
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
    to {
        opacity: 0;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
}

.rotateOutDownRight {
    -webkit-animation-name: rotateOutDownRight;
    animation-name: rotateOutDownRight
}

@-webkit-keyframes rotateOutUpLeft {
    0% {
        opacity: 1;
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
    to {
        opacity: 0;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
}

@keyframes rotateOutUpLeft {
    0% {
        opacity: 1;
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
    to {
        opacity: 0;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom
    }
}

.rotateOutUpLeft {
    -webkit-animation-name: rotateOutUpLeft;
    animation-name: rotateOutUpLeft
}

@-webkit-keyframes rotateOutUpRight {
    0% {
        opacity: 1;
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
    to {
        opacity: 0;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
}

@keyframes rotateOutUpRight {
    0% {
        opacity: 1;
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
    to {
        opacity: 0;
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom
    }
}

.rotateOutUpRight {
    -webkit-animation-name: rotateOutUpRight;
    animation-name: rotateOutUpRight
}

@-webkit-keyframes hinge {
    0% {
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        -webkit-transform-origin: top left;
        transform-origin: top left
    }
    20%, 60% {
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left;
        transform-origin: top left
    }
    40%, 80% {
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        opacity: 1;
        -webkit-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left;
        transform-origin: top left
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 43.75rem, 0);
        transform: translate3d(0, 43.75rem, 0)
    }
}

@keyframes hinge {
    0% {
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        -webkit-transform-origin: top left;
        transform-origin: top left
    }
    20%, 60% {
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        -webkit-transform: rotate(80deg);
        transform: rotate(80deg);
        -webkit-transform-origin: top left;
        transform-origin: top left
    }
    40%, 80% {
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        opacity: 1;
        -webkit-transform: rotate(60deg);
        transform: rotate(60deg);
        -webkit-transform-origin: top left;
        transform-origin: top left
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 43.75rem, 0);
        transform: translate3d(0, 43.75rem, 0)
    }
}

.hinge {
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -name: hinge
}

@-webkit-keyframes jackInTheBox {
    0% {
        opacity: 0;
        -webkit-transform: scale(.1) rotate(30deg);
        transform: scale(.1) rotate(30deg);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom
    }
    50% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg)
    }
    70% {
        -webkit-transform: rotate(3deg);
        transform: rotate(3deg)
    }
    to {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes jackInTheBox {
    0% {
        opacity: 0;
        -webkit-transform: scale(.1) rotate(30deg);
        transform: scale(.1) rotate(30deg);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom
    }
    50% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg)
    }
    70% {
        -webkit-transform: rotate(3deg);
        transform: rotate(3deg)
    }
    to {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

.jackInTheBox {
    -webkit-animation-name: jackInTheBox;
    animation-name: jackInTheBox
}

@-webkit-keyframes rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0) rotate(-120deg);
        transform: translate3d(-100%, 0, 0) rotate(-120deg)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0) rotate(-120deg);
        transform: translate3d(-100%, 0, 0) rotate(-120deg)
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.rollIn {
    -webkit-animation-name: rollIn;
    animation-name: rollIn
}

@-webkit-keyframes rollOut {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0) rotate(120deg);
        transform: translate3d(100%, 0, 0) rotate(120deg)
    }
}

@keyframes rollOut {
    0% {
        opacity: 1
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0) rotate(120deg);
        transform: translate3d(100%, 0, 0) rotate(120deg)
    }
}

.rollOut {
    -webkit-animation-name: rollOut;
    animation-name: rollOut
}

@-webkit-keyframes zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }
    50% {
        opacity: 1
    }
}

@keyframes zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }
    50% {
        opacity: 1
    }
}

.zoomIn {
    -webkit-animation-name: zoomIn;
    animation-name: zoomIn
}

@-webkit-keyframes zoomInDown {
    0% {
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -62.5rem, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, -62.5rem, 0)
    }
    60% {
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 3.75rem, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, 3.75rem, 0)
    }
}

@keyframes zoomInDown {
    0% {
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -62.5rem, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, -62.5rem, 0)
    }
    60% {
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 3.75rem, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, 3.75rem, 0)
    }
}

.zoomInDown {
    -webkit-animation-name: zoomInDown;
    animation-name: zoomInDown
}

@-webkit-keyframes zoomInLeft {
    0% {
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(-62.5rem, 0, 0);
        transform: scale3d(.1, .1, .1) translate3d(-62.5rem, 0, 0)
    }
    60% {
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(.625rem, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(.625rem, 0, 0)
    }
}

@keyframes zoomInLeft {
    0% {
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(-62.5rem, 0, 0);
        transform: scale3d(.1, .1, .1) translate3d(-62.5rem, 0, 0)
    }
    60% {
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(.625rem, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(.625rem, 0, 0)
    }
}

.zoomInLeft {
    -webkit-animation-name: zoomInLeft;
    animation-name: zoomInLeft
}

@-webkit-keyframes zoomInRight {
    0% {
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(62.5rem, 0, 0);
        transform: scale3d(.1, .1, .1) translate3d(62.5rem, 0, 0)
    }
    60% {
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(-.625rem, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(-.625rem, 0, 0)
    }
}

@keyframes zoomInRight {
    0% {
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(62.5rem, 0, 0);
        transform: scale3d(.1, .1, .1) translate3d(62.5rem, 0, 0)
    }
    60% {
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(-.625rem, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(-.625rem, 0, 0)
    }
}

.zoomInRight {
    -webkit-animation-name: zoomInRight;
    animation-name: zoomInRight
}

@-webkit-keyframes zoomInUp {
    0% {
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 62.5rem, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, 62.5rem, 0)
    }
    60% {
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -3.75rem, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, -3.75rem, 0)
    }
}

@keyframes zoomInUp {
    0% {
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 62.5rem, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, 62.5rem, 0)
    }
    60% {
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -3.75rem, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, -3.75rem, 0)
    }
}

.zoomInUp {
    -webkit-animation-name: zoomInUp;
    animation-name: zoomInUp
}

@-webkit-keyframes zoomOut {
    0% {
        opacity: 1
    }
    50% {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }
    to {
        opacity: 0
    }
}

@keyframes zoomOut {
    0% {
        opacity: 1
    }
    50% {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }
    to {
        opacity: 0
    }
}

.zoomOut {
    -webkit-animation-name: zoomOut;
    animation-name: zoomOut
}

@-webkit-keyframes zoomOutDown {
    40% {
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -3.75rem, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, -3.75rem, 0)
    }
    to {
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 125rem, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, 125rem, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom
    }
}

@keyframes zoomOutDown {
    40% {
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -3.75rem, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, -3.75rem, 0)
    }
    to {
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 125rem, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, 125rem, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom
    }
}

.zoomOutDown {
    -webkit-animation-name: zoomOutDown;
    animation-name: zoomOutDown
}

@-webkit-keyframes zoomOutLeft {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(2.625rem, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(2.625rem, 0, 0)
    }
    to {
        opacity: 0;
        -webkit-transform: scale(.1) translate3d(-125rem, 0, 0);
        transform: scale(.1) translate3d(-125rem, 0, 0);
        -webkit-transform-origin: left center;
        transform-origin: left center
    }
}

@keyframes zoomOutLeft {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(2.625rem, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(2.625rem, 0, 0)
    }
    to {
        opacity: 0;
        -webkit-transform: scale(.1) translate3d(-125rem, 0, 0);
        transform: scale(.1) translate3d(-125rem, 0, 0);
        -webkit-transform-origin: left center;
        transform-origin: left center
    }
}

.zoomOutLeft {
    -webkit-animation-name: zoomOutLeft;
    animation-name: zoomOutLeft
}

@-webkit-keyframes zoomOutRight {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(-2.625rem, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(-2.625rem, 0, 0)
    }
    to {
        opacity: 0;
        -webkit-transform: scale(.1) translate3d(125rem, 0, 0);
        transform: scale(.1) translate3d(125rem, 0, 0);
        -webkit-transform-origin: right center;
        transform-origin: right center
    }
}

@keyframes zoomOutRight {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(-2.625rem, 0, 0);
        transform: scale3d(.475, .475, .475) translate3d(-2.625rem, 0, 0)
    }
    to {
        opacity: 0;
        -webkit-transform: scale(.1) translate3d(125rem, 0, 0);
        transform: scale(.1) translate3d(125rem, 0, 0);
        -webkit-transform-origin: right center;
        transform-origin: right center
    }
}

.zoomOutRight {
    -webkit-animation-name: zoomOutRight;
    animation-name: zoomOutRight
}

@-webkit-keyframes zoomOutUp {
    40% {
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 3.75rem, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, 3.75rem, 0)
    }
    to {
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -125rem, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, -125rem, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom
    }
}

@keyframes zoomOutUp {
    40% {
        -webkit-animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        animation-timing-function: cubic-bezier(.55, .055, .675, .19);
        opacity: 1;
        -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 3.75rem, 0);
        transform: scale3d(.475, .475, .475) translate3d(0, 3.75rem, 0)
    }
    to {
        -webkit-animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        animation-timing-function: cubic-bezier(.175, .885, .32, 1);
        opacity: 0;
        -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -125rem, 0);
        transform: scale3d(.1, .1, .1) translate3d(0, -125rem, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom
    }
}

.zoomOutUp {
    -webkit-animation-name: zoomOutUp;
    animation-name: zoomOutUp
}

@-webkit-keyframes slideInDown {
    0% {
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
        visibility: visible
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes slideInDown {
    0% {
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
        visibility: visible
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.slideInDown {
    -webkit-animation-name: slideInDown;
    animation-name: slideInDown
}

@-webkit-keyframes slideInLeft {
    0% {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        visibility: visible
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes slideInLeft {
    0% {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        visibility: visible
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.slideInLeft {
    -webkit-animation-name: slideInLeft;
    animation-name: slideInLeft
}

@-webkit-keyframes slideInRight {
    0% {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
        visibility: visible
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes slideInRight {
    0% {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
        visibility: visible
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.slideInRight {
    -webkit-animation-name: slideInRight;
    animation-name: slideInRight
}

@-webkit-keyframes slideInUp {
    0% {
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
        visibility: visible
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

@keyframes slideInUp {
    0% {
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
        visibility: visible
    }
    to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.slideInUp {
    -webkit-animation-name: slideInUp;
    animation-name: slideInUp
}

@-webkit-keyframes slideOutDown {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    to {
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
        visibility: hidden
    }
}

@keyframes slideOutDown {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    to {
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
        visibility: hidden
    }
}

.slideOutDown {
    -webkit-animation-name: slideOutDown;
    animation-name: slideOutDown
}

@-webkit-keyframes slideOutLeft {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    to {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        visibility: hidden
    }
}

@keyframes slideOutLeft {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    to {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        visibility: hidden
    }
}

.slideOutLeft {
    -webkit-animation-name: slideOutLeft;
    animation-name: slideOutLeft
}

@-webkit-keyframes slideOutRight {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    to {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
        visibility: hidden
    }
}

@keyframes slideOutRight {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    to {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
        visibility: hidden
    }
}

.slideOutRight {
    -webkit-animation-name: slideOutRight;
    animation-name: slideOutRight
}

@-webkit-keyframes slideOutUp {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    to {
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
        visibility: hidden
    }
}

@keyframes slideOutUp {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
    to {
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
        visibility: hidden
    }
}

.slideOutUp {
    -webkit-animation-name: slideOutUp;
    animation-name: slideOutUp
}

.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.animated.infinite {
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

.animated.delay-1s {
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

.animated.delay-2s {
    -webkit-animation-delay: 2s;
    animation-delay: 2s
}

.animated.delay-3s {
    -webkit-animation-delay: 3s;
    animation-delay: 3s
}

.animated.delay-4s {
    -webkit-animation-delay: 4s;
    animation-delay: 4s
}

.animated.delay-5s {
    -webkit-animation-delay: 5s;
    animation-delay: 5s
}

.animated.fast {
    -webkit-animation-duration: .8s;
    animation-duration: .8s
}

.animated.faster {
    -webkit-animation-duration: .5s;
    animation-duration: .5s
}

.animated.slow {
    -webkit-animation-duration: 2s;
    animation-duration: 2s
}

.animated.slower {
    -webkit-animation-duration: 3s;
    animation-duration: 3s
}

@media (prefers-reduced-motion) {
    .animated {
        -webkit-animation: unset !important;
        animation: unset !important;
        -webkit-transition: none !important;
        -o-transition: none !important;
        transition: none !important
    }
}

.footer--end {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.footer {
    background: var(--lg);
    padding-block: var(--64)
}

.footer .logo {
    display: block;
    max-width: 15.875rem;
    width: 100%;
    margin-bottom: 1rem
}

.footer .title {
    color: var(--f)
}

.footer .title:not(:last-child) {
    margin-bottom: 1rem
}

.footer .social {
    margin-top: var(--32)
}

.footer--map {
    display: block;
    width: 100%;
    min-height: 17.625rem;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    /*background-image: url("../img/map.png");*/
    background-image: url("../img/map-new.png");
}

.footer--pre {
    background-color: var(--clr);
    position: relative
}

.footer--end {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-top: var(--line-grey-80);
    margin-top: var(--32);
    padding-top: var(--32);
    gap: .5rem
}

.footer--end .text {
    font-size: .75rem;
    line-height: 150%;
    letter-spacing: .05em;
    color: var(--grey-60)
}

.footer--end a.text:hover {
    color: var(--main)
}

@media (min-width: 668px) {
    .footer--map {
        height: calc(100vh - 6.5rem)
    }

    .footer--pre .footer {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0
    }
}

.btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.social {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.contain, .cover {
    background-repeat: no-repeat;
    background-position: center
}

.article--container, .article--content, .container, .section--container {
    width: 100%;
    padding-inline: var(--container)
}

.container, .section--container {
    max-width: var(--width-container);
    margin-inline: auto
}

.container .article--container, .container .article--content, .section--container .article--container, .section--container .article--content {
    padding: 0
}

.article--content {
    max-width: 50.0625rem
}

.article--container {
    max-width: 70rem;
    margin-inline: auto
}

.article--width {
    /*max-width: 67.1875rem;*/
    max-width: 70.75rem !important;
    width: 100%;
    margin-inline: auto
}

@media (max-width: 73rem) {
    .article--width {
        max-width: calc(100% - 40px) !important;
    }
}

.no-scroll {
    height: 100vh;
    overflow: hidden !important
}

.hide {
    display: none !important
}

.max-line-3 {
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    overflow: hidden;
    -ms-line-clamp: 3;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    display: box;
    word-wrap: break-word;
    box-orient: vertical
}

.cover {
    background-size: cover
}

.contain {
    background-size: contain
}

.btns {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: var(--24)
}

.breadcrumbs {
    margin: 1rem 0 var(--64);
    margin-bottom: 4rem;
}

.breadcrumbs .bc-list {
    list-style: none;
    margin: 0;
    padding: 0;
    overflow-x: auto
}

.breadcrumbs .bc-list li {
    font-size: .75rem;
    line-height: 150%;
    min-width: -webkit-max-content;
    min-width: -moz-max-content;
    min-width: max-content;
    color: var(--grey-40)
}

.breadcrumbs .bc-list li:not(:last-child):after {
    content: "";
    width: .0625rem;
    height: 100%;
    background: currentColor
}

.breadcrumbs .bc-list, .breadcrumbs .bc-list li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: .5rem
}

.social {
    gap: .75rem
}

.full--grid {
    -ms-grid-column: 1;
    grid-column-start: 1;
    -ms-grid-column-span: -2;
    grid-column-end: -1
}

.header--menu .info .icon--img {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.header--help {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    /*-webkit-box-align: center;*/
    /*-ms-flex-align: center;*/
    /*align-items: center;*/
    flex-direction: row;
}

.header {
    --top: 0;
    background-color: var(--f);
    -webkit-box-shadow: 0 .25rem .625rem rgba(0, 0, 0, .1);
    box-shadow: 0 .25rem .625rem rgba(0, 0, 0, .1)
}

.header .container {
    position: relative
}

.header .logo {
    display: block;
    max-width: 15.875rem;
    width: 100%
}

.header--menu {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns:(auto) [ 2 ];
    grid-template-columns:repeat(2, auto);
    z-index: 1
}

.header--menu::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100vw;
    height: 100%;
    background-color: var(--clr);
    opacity: .8;
    pointer-events: none;
    z-index: -1
}

.header--menu .info {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0 1.25rem
}

.header--menu .info .icon--img {
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 1.5rem;
    overflow: hidden
}

.header--help {
    padding-block: 1.5rem 0.875rem;
    /*padding-block: var(--24);*/
    gap: var(--20)
}

@media (min-width: 968px) {
    .header--help .triggers.btn--search {
        display: none
    }

    .header--help .triggers.btn--search + .label--element {
        display: none
    }
}

@media (min-width: 1268px) {
    .header .burger {
        display: none
    }

    .header--menu .info {
        border-radius: .25rem;
        /*padding: .5rem 0 .5rem 2rem*/
    }

    .header--menu .info::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 33vw;
        height: 100%;
        background-color: var(--main);
        border-radius: .25rem;
        opacity: .2;
        pointer-events: none;
        z-index: -1
    }
}

@media (max-width: 1267px) {
    .header--menu {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding-top: .5rem;
        padding-bottom: .5rem
    }

    .header--menu .info {
        max-width: -webkit-fit-content;
        max-width: -moz-fit-content;
        max-width: fit-content;
        top: 70%;
    }
}

@media (max-width: 967px) {
    .header--help {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .header--help .form--search {
        position: absolute;
        top: 0;
        left: 0;
        -webkit-box-shadow: var(--box-shadow);
        box-shadow: var(--box-shadow)
    }

    .header--help .triggers.btn--search + .label--element:checked ~ .form--search {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        border: var(--line-grey-20)
    }

    .header--help .triggers.btn--search + .label--element:not(:checked) ~ .form--search {
        display: none
    }
}

@media (max-width: 350px) {
    .header--menu .social {
        display: none
    }
}

@media (max-width: 1467px) and (min-width: 1268px) {
    .header--menu .info {
        /*max-width: 12.5rem;*/
        gap: 0.5rem;
        flex-direction: column-reverse;
        padding-top: 1rem;
        padding-bottom: 1rem;
        max-width: 100%;
        width: 100%;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: end
    }
}

.logo svg {
    --ava: 100%
}

a.logo svg {
    -webkit-transition: .1s scale;
    -o-transition: .1s scale;
    transition: .1s scale
}

a.logo:hover svg {
    scale: 1.1
}

.menu, .menu--item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.menu--item .item--link {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.hidden-child .child {
    display: none !important
}

.menu {
    list-style: none;
    width: 100%;
    margin: 0 !important;
    padding: 0
}

.menu--item {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    height: 100%;
    padding: .5rem .625rem;
    gap: .5rem;
    -webkit-transition: .1s background-color;
    -o-transition: .1s background-color;
    transition: .1s background-color
}

.menu--item .arrow {
    color: var(--f)
}

.menu--item .arrow:after {
    border-width: .0625rem
}

.menu--item .item--link {
    gap: 1rem;
}

.menu--item .child {
    display: -ms-grid;
    display: grid;
    grid-template-columns:repeat(auto-fit, minmax(15rem, 1fr));
    gap: var(--20);
    width: 100%;
    overflow-y: auto;
    background-color: var(--bg);
    padding: var(--32) var(--64);
}

.menu--item .child.column-gap-80 {
    -webkit-column-gap: var(--80);
    -moz-column-gap: var(--80);
    column-gap: var(--80)
}

.menu--item .child .title {
    font-weight: 600;
    font-size: var(--h5);
    line-height: 120%;
    color: var(--grey-80);
    margin-bottom: 0
}

.menu--item .child .title:not(:first-child) {
    margin-top: .5rem
}

.menu--link {
    color: var(--f)
}

.menu--link:hover {
    color: var(--main)
}

.menu--link:hover ~ .arrow {
    color: var(--main)
}

@media (min-width: 768px) {
    .menu--item .child .btn--back {
        display: none
    }
}

@media (min-width: 1168px) {
    .menu--item .child .grid-3 {
        -ms-grid-columns:(1fr) [ 3 ];
        grid-template-columns:repeat(3, 1fr)
    }
}

@media (min-width: 1268px) {
    .menu--item {
        border-radius: .25rem .25rem 0 0
    }

    .menu--item:not(:hover) .child {
        opacity: 0 !important;
        pointer-events: none !important;
        /*display: none !important*/
    }

    .menu--item:hover {
        background-color: var(--bg)
    }

    .menu--item:hover .menu--link {
        color: var(--main)
    }

    .menu--item:hover .arrow {
        color: var(--main)
    }

    .menu--item:hover .arrow:after {
        -webkit-transform: translateY(50%) rotate(-45deg);
        -ms-transform: translateY(50%) rotate(-45deg);
        transform: translateY(50%) rotate(-45deg)
    }

    .menu--item .arrow:after {
        -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
        transform: rotate(135deg)
    }

    .menu--item .child {
        position: absolute;
        top: 100%;
        right: 0;
        max-width: 100%;
        max-height: 90vh;
        border-radius: 0 0 .25rem .25rem
    }

    .menu--item .child::before {
        content: "";
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        background-color: var(--black-5);
        z-index: -1;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.5s ease;
    }

    .menu--item:hover .child::before {
        opacity: 1;
    }

    .menu--item .child.grid-3 {
        max-width: calc(var(--width-container) - var(--item-width))
    }
}

@media (max-width: 1267px) {
    .menu {
        --w-menu: 20rem;
        position: fixed;
        top: var(--top);
        left: 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: start;
        /*width:var(--w-menu);*/
        height: 100vh;
        background: var(--clr);
        z-index: 9;
        overflow-y: auto;
        -webkit-transition: .3s opacity;
        -o-transition: .3s opacity;
        transition: .3s opacity;
        width: 100% !important;
    }

    .menu::before {
        content: "";
        position: fixed;
        /*top:var(--top);*/
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        background-color: var(--black-5);
        z-index: -1
    }

    .menu:not(.active) {
        opacity: 0;
        pointer-events: none
    }

    .menu--item {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        width: 100%;
        height: -webkit-fit-content;
        height: -moz-fit-content;
        height: fit-content
    }

    .menu--item:not(.active) .child {
        display: none !important
    }

    .menu--item.active {
        background-color: var(--bg)
    }

    .menu--item.active .menu--link {
        color: var(--main)
    }

    .menu--item.active .arrow {
        color: var(--main)
    }

    .menu--item .child {
        position: fixed;
        top: var(--top);
        left: var(--w-menu);
        max-width: calc(100vw - var(--w-menu));
        height: 100vh;
        grid-auto-rows: -webkit-max-content;
        grid-auto-rows: max-content
    }

    .menu--item .child.m-column {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        left: 140px;;
        width: calc(100vw - 140px);
        padding: 1.25rem 3rem 10rem 3rem !important;
    }

    .menu--item .child.m-column > .item--link {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .menu--item .child.m-column > .item--link .title {
        width: 100%
    }
}

@media (max-width: 899px) {
    .menu--item .item--link {
        -ms-grid-column: 1;
        grid-column-start: 1;
        -ms-grid-column-span: -2;
        grid-column-end: -1
    }

    .menu--item .child .grid-3 {
        -ms-grid-columns:(1fr) [ 1 ];
        grid-template-columns:repeat(1, 1fr)
    }
}

@media (max-width: 767px) {
    .menu--item .child {
        left: 0;
        max-width: 100vw
    }

    .menu--item .child .btn--back {
        position: sticky;
        top: 0;
        -webkit-transform: translateX(calc(-1.2 * (1rem + var(--64) / 2)));
        -ms-transform: translateX(calc(-1.2 * (1rem + var(--64) / 2)));
        transform: translateX(calc(-1.2 * (1rem + var(--64) / 2)));
        z-index: 2;
        margin-top: calc(-1 * (var(--w) + var(--20)))
    }

    .menu--item .child .icon--cart {
        -ms-grid-column: 1;
        grid-column-start: 1;
        -ms-grid-column-span: -2;
        grid-column-end: -1
    }

    .menu--item .child.m-column {
        left: 0;
        width: 100vw;
        max-width: unset;
    }
}

@media (max-width: 367px) {
    .menu {
        --w-menu: 100%
    }
}

@media (max-width: 1167px) and (min-width: 900px) {
    .menu--item .child .grid-3 {
        -ms-grid-columns:(1fr) [ 2 ];
        grid-template-columns:repeat(2, 1fr)
    }

    .menu--item .child .grid-3 > :last-child {
        grid-column-start: span 2;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .menu--item .child .grid-3 > :last-child .title {
        width: 100%
    }
}

.is--safari .menu--item .child::before {
    pointer-events: none
}

.is--safari .footer--pre {
    position: relative
}

@media (min-width: 668px) {
    .is--safari .footer--pre .footer {
        position: absolute;
        left: 0;
        right: 0
    }
}

@-webkit-keyframes cube-loader {
    0%, 10% {
        -webkit-transform: perspective(8.5rem) rotateX(-180deg);
        transform: perspective(8.5rem) rotateX(-180deg);
        opacity: 0
    }
    25%, 75% {
        -webkit-transform: perspective(8.5rem) rotateX(0);
        transform: perspective(8.5rem) rotateX(0);
        opacity: 1
    }
    100%, 90% {
        -webkit-transform: perspective(8.5rem) rotateY(180deg);
        transform: perspective(8.5rem) rotateY(180deg);
        opacity: 0
    }
}

@keyframes cube-loader {
    0%, 10% {
        -webkit-transform: perspective(8.5rem) rotateX(-180deg);
        transform: perspective(8.5rem) rotateX(-180deg);
        opacity: 0
    }
    25%, 75% {
        -webkit-transform: perspective(8.5rem) rotateX(0);
        transform: perspective(8.5rem) rotateX(0);
        opacity: 1
    }
    100%, 90% {
        -webkit-transform: perspective(8.5rem) rotateY(180deg);
        transform: perspective(8.5rem) rotateY(180deg);
        opacity: 0
    }
}

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

html {
    scrollbar-color: var(--main) var(--bg);
    scrollbar-width: thin;
    scroll-behavior: smooth !important;
}

::-webkit-scrollbar {
    width: .625rem;
    height: .125rem;
    background-color: var(--bg)
}

::-webkit-scrollbar-thumb {
    background-color: var(--main)
}

body :disabled {
    background-color: var(--bg);
    color: var(--grey-40);
    pointer-events: none
}

body :disabled::-webkit-input-placeholder {
    color: var(--grey-40)
}

body :disabled::-moz-placeholder {
    color: var(--grey-40)
}

body :disabled:-ms-input-placeholder {
    color: var(--grey-40)
}

body :disabled::-ms-input-placeholder {
    color: var(--grey-40)
}

body :disabled::placeholder {
    color: var(--grey-40)
}

:required ~ .name::after {
    content: " *";
    color: var(--main)
}

::-webkit-input-placeholder {
    font-weight: 400;
    font-size: 1rem;
    line-height: 150%;
    color: var(--grey-40)
}

::-moz-placeholder {
    font-weight: 400;
    font-size: 1rem;
    line-height: 150%;
    color: var(--grey-40)
}

:-ms-input-placeholder {
    font-weight: 400;
    font-size: 1rem;
    line-height: 150%;
    color: var(--grey-40)
}

::-ms-input-placeholder {
    font-weight: 400;
    font-size: 1rem;
    line-height: 150%;
    color: var(--grey-40)
}

::placeholder {
    font-weight: 400;
    font-size: 1rem;
    line-height: 150%;
    color: var(--grey-40)
}

::marker {
    color: var(--main);
    /*font-size:var(--f12)*/
    font-size: 1.125rem;
}

::-moz-selection {
    background-color: var(--main);
    color: var(--f)
}

::selection {
    background-color: var(--main);
    color: var(--f)
}

input::-webkit-inner-spin-button, input::-webkit-outer-spin-button {
    -webkit-appearance: none
}

input[type=search]::-webkit-search-cancel-button {
    -webkit-appearance: none;
    appearance: none;
    height: 1rem;
    width: 1rem;
    background-image: url(data:image/svg+xml; base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMCAxNC40NzZMMS41MjM3OSAxNS45OTk4TDcuOTk5OTUgOS41MjM2OEwxNC40NzYyIDE1Ljk5OTlMMTYgMTQuNDc2MUw5LjUyMzc0IDcuOTk5ODlMMTUuOTk5OCAxLjUyMzc5TDE0LjQ3NiAwTDcuOTk5OTUgNi40NzYwOUwxLjUyMzk2IDAuMDAwMTAwMjY3TDAuMDAwMTYyODM3IDEuNTIzODlMNi40NzYxNiA3Ljk5OTg5TDAgMTQuNDc2WiIgZmlsbD0iI0E1QTVBNSIvPg0KPC9zdmc+DQo=);
    background-size: 1rem;
    cursor: pointer
}

:root {
    --main: #e02a1c;
    --hover: #bd2b1f;
    --clr: #141414;
    --grey-80: #434343;
    --grey-60: #727272;
    --grey-40: #a1a1a1;
    --grey-20: #d0d0d0;
    --grey-10: #e8e8e8;
    --bg: #f3f3f3;
    --f: #fff;
    --stop: #ff0000;
    --black-1: rgba(0, 0, 0, 0.1);
    --black-4: rgba(0, 0, 0, 0.4);
    --black-5: rgba(0, 0, 0, 0.5);
    --white-4: rgba(255, 255, 255, 0.4);
    --lg: linear-gradient(0deg, var(--black-4), var(--black-4)), linear-gradient(360deg, var(--clr) 0%, transparent 100%);
    --lg-w: linear-gradient(0deg, var(--white-4), var(--white-4));
    --line: 0.0625rem var(--bg) solid;
    --line-clr: 0.0625rem var(--clr) solid;
    --line-current: 0.0625rem currentColor solid;
    --line-grey-80: 0.0625rem var(--grey-80) solid;
    --line-grey-40: 0.0625rem var(--grey-40) solid;
    --line-grey-20: 0.0625rem var(--grey-20) solid;
    --line-grey-10: 0.0625rem var(--grey-10) solid;
    --box-shadow: 0px 0.25rem 0.625rem var(--black-1);
    --br: 0.25rem;
    --base: 1rem;
    --18: 1.125rem;
    --20: 1.25rem;
    --f12: 0.75rem;
    --f14: 0.875rem;
    --f18: var(--18);
    --h3: 1.5rem;
    --h4: 1.25rem;
    --h5: 1.125rem;
    --container: 0.9375rem;
    --width-container: 91.875rem
}

@media (min-width: 1267px) {
    :root {
        --24: 1.5rem;
        --28: 1.75rem;
        --32: 2rem;
        --36: 2.25rem;
        --40: 2.5rem;
        --44: 2.75rem;
        --48: 3rem;
        --52: 3.25rem;
        --56: 3.5rem;
        --60: 3.75rem;
        --64: 4rem;
        --68: 4.25rem;
        --72: 4.5rem;
        --76: 4.75rem;
        --80: 5rem;
        --84: 5.25rem;
        --88: 5.5rem;
        --92: 5.75rem;
        --96: 6rem;
        --100: 6.25rem;
        --104: 6.5rem;
        --108: 6.75rem;
        --112: 7rem;
        --116: 7.25rem;
        --120: 7.5rem;
        --124: 7.75rem;
        --128: 8rem;
        --h1: 3rem;
        --h2: 2rem;
        --h3: 1.25rem;
        --f20: 1.25rem;
        --f24: 1.5rem;
        --f48: 3rem
    }
}

@media (max-width: 1320px) {
    :root {
        --fake-con: var(--con)
    }
}

@media (max-width: 367px) {
    :root {
        --24: 1.25rem;
        --28: 1.295rem;
        --32: 1.42rem;
        --36: 1.53rem;
        --40: 1.625rem;
        --44: 1.705rem;
        --48: 1.77rem;
        --52: 1.82rem;
        --56: 1.855rem;
        --60: 1.875rem;
        --64: 2rem;
        --68: 2.125rem;
        --72: 2.25rem;
        --76: 2.375rem;
        --80: 2.5rem;
        --84: 2.625rem;
        --88: 2.75rem;
        --92: 2.875rem;
        --96: 3rem;
        --100: 3.125rem;
        --104: 3.25rem;
        --108: 3.375rem;
        --112: 3.5rem;
        --116: 3.625rem;
        --120: 3.75rem;
        --124: 3.875rem;
        --128: 4rem;
        --h1: 2rem;
        --h2: 1.625rem;
        --f20: var(--base);
        --f24: 1.25rem;
        --f48: 1.5rem
    }
}

@media (max-width: 1267px) and (min-width: 367px) {
    :root {
        --24: calc(18.3688888889px + 0.4444444444vw);
        --28: calc(17.7513777778px + 0.8088888889vw);
        --32: calc(18.9358222222px + 1.0311111111vw);
        --36: calc(19.7824px + 1.28vw);
        --40: calc(20.2911111111px + 1.5555555556vw);
        --44: calc(20.4619555556px + 1.8577777778vw);
        --48: calc(20.2949333333px + 2.1866666667vw);
        --52: calc(19.7900444444px + 2.5422222222vw);
        --56: calc(18.9472888889px + 2.9244444444vw);
        --60: calc(17.7666666667px + 3.3333333333vw);
        --64: calc(18.9511111111px + 3.5555555556vw);
        --68: calc(20.1355555556px + 3.7777777778vw);
        --72: calc(21.32px + 4vw);
        --76: calc(22.5044444444px + 4.2222222222vw);
        --80: calc(23.6888888889px + 4.4444444444vw);
        --84: calc(24.8733333333px + 4.6666666667vw);
        --88: calc(26.0577777778px + 4.8888888889vw);
        --92: calc(27.2422222222px + 5.1111111111vw);
        --96: calc(28.4266666667px + 5.3333333333vw);
        --100: calc(29.6111111111px + 5.5555555556vw);
        --104: calc(30.7955555556px + 5.7777777778vw);
        --108: calc(31.98px + 6vw);
        --112: calc(33.1644444444px + 6.2222222222vw);
        --116: calc(34.3488888889px + 6.4444444444vw);
        --120: calc(35.5333333333px + 6.6666666667vw);
        --124: calc(36.7177777778px + 6.8888888889vw);
        --128: calc(37.9022222222px + 7.1111111111vw);
        --h1: calc(25.4755555556px + 1.7777777778vw);
        --h2: calc(23.5533333333px + 0.6666666667vw);
        --f20: calc(14.3688888889px + 0.4444444444vw);
        --f24: calc(18.3688888889px + 0.4444444444vw);
        --f48: calc(14.2133333333px + 2.6666666667vw)
    }
}

@media (max-width: 1440px) and (min-width: 1320px) {
    :root {
        --fake-con: calc(-640px + 50vw)
    }
}

body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.fit-contain img, .fit-contain svg, a img, a svg, button img, button svg {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.btn, body, button, input, textarea {
    font-style: normal;
    font-weight: 400;
    line-height: 150%
}

html {
    font-size: 16px;
    scroll-behavior: smooth
}

.btn, body, button, input, textarea {
    font-family: Inter, sans-serif;
    font-size: 1rem;
    color: var(--clr)
}

body, html {
    max-width: 100vw;
    width: 100%;
    overflow-x: hidden;
    overflow-x: clip
}

body {
    background: var(--bg);
    min-height: 100vh
}

main {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	margin-top: 20px;
}

.fit-contain img, .fit-contain svg, a img, a svg, button img, button svg {
    display: block
}

.btn, a, audio, button, form, iframe, img, svg, video {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

@media (min-width: 1999px) {
    html {
        font-size: calc(16px + .2vw)
    }
}

@media (min-width: 2067px) {
    html {
        font-size: calc(16px + .4vw)
    }
}

@media (min-width: 3067px) {
    html {
        font-size: calc(16px + .6vw)
    }
}

@media (max-width: 1267px) {
    main {
        overflow: hidden
    }
}

.clr-main {
    color: var(--main) !important
}

.clr-hover {
    color: var(--hover) !important
}

.clr-clr {
    color: var(--clr) !important
}

.clr-grey-80 {
    color: var(--grey-80) !important
}

.clr-grey-60 {
    color: var(--grey-60) !important
}

.clr-grey-40 {
    color: var(--grey-40) !important
}

.clr-grey-20 {
    color: var(--grey-20) !important
}

.clr-grey-10 {
    color: var(--grey-10) !important
}

.clr-bg {
    color: var(--bg) !important
}

.clr-f {
    color: var(--f) !important
}

.clr-stop {
    color: var(--stop) !important
}

.bg-main {
    background-color: var(--main) !important
}

.bg-hover {
    background-color: var(--hover) !important
}

.bg-clr {
    background-color: var(--clr) !important
}

.bg-grey-80 {
    background-color: var(--grey-80) !important
}

.bg-grey-60 {
    background-color: var(--grey-60) !important
}

.bg-grey-40 {
    background-color: var(--grey-40) !important
}

.bg-grey-20 {
    background-color: var(--grey-20) !important
}

.bg-grey-10 {
    background-color: var(--grey-10) !important
}

.bg-bg {
    background-color: var(--bg) !important
}

.bg-f {
    background-color: var(--f) !important
}

.bg-stop {
    background-color: var(--stop) !important
}

.cart--link, a.cart, form.cart {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.cart, .cart--section {
    position: relative;
    z-index: 1
}

.cart, .cart--section {
    border-radius: var(--br);
    background-color: var(--f)
}

.cart {
    display: block;
    padding: var(--24)
}

.cart[class*=before-] {
    padding-left: calc(var(--64) + var(--24) + 1rem);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.cart[class*=before-]:before {
    --ava: var(--64);
    position: absolute;
    top: var(--24);
    left: var(--24)
}

.cart--link {
    min-height: 12.5rem;
    background-size: auto;
    background-repeat: no-repeat;
    background-position: bottom right;
    overflow: hidden
}

.cart--link .title {
    margin-bottom: .5rem
}

.cart--link .subtitle {
    font-size: 1rem;
    color: var(--grey-80)
}

.cart--link .svg-line {
    margin-top: auto;
    -webkit-transform: translateX(calc(-1 * (100% + var(--24))));
    -ms-transform: translateX(calc(-1 * (100% + var(--24))));
    transform: translateX(calc(-1 * (100% + var(--24))));
    -webkit-transition: .1s background-image, .1s -webkit-transform cubic-bezier(.22, .61, .36, 1);
    transition: .1s background-image, .1s -webkit-transform cubic-bezier(.22, .61, .36, 1);
    -o-transition: .1s transform cubic-bezier(.22, .61, .36, 1), .1s background-image;
    transition: .1s transform cubic-bezier(.22, .61, .36, 1), .1s background-image;
    transition: .1s transform cubic-bezier(.22, .61, .36, 1), .1s background-image, .1s -webkit-transform cubic-bezier(.22, .61, .36, 1)
}

.cart--link:hover .svg-line {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0)
}

.cart--info .title:not(:last-child) {
    margin-bottom: .5rem
}

.cart--info .title a:hover {
    text-decoration: underline
}

.cart--new {
    position: relative;
    border: var(--line-grey-10);
    border-radius: .25rem;
    overflow: hidden
}

.cart--new .ava {
    width: 100%;
    aspect-ratio: 69/40;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.cart--new .content {
    padding: var(--24);
    overflow: hidden
}

.cart--new .max-line-3 {
    display: -webkit-box;
    overflow: hidden;
    word-wrap: break-word;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical
}

.cart--new .title {
    font-weight: 600;
    font-size: var(--h3);
    line-height: 120%;
    word-wrap: break-word;
    overflow-wrap: break-word;

    display: -webkit-box;
    -webkit-line-clamp: 3; /* Limit to 3 lines */
    -webkit-box-orient: vertical;
    overflow: hidden; /* Hide the text that overflows */
    text-overflow: ellipsis; /* Add ellipsis (…) for truncated text */
}

.cart--new .title:not(:last-child) {
    margin-top: 0;
    margin-bottom: .5rem
}

.cart--new p {
    color: var(--grey-80)
}

.cart--new {
    display: grid;
    grid-template-rows: 12.5rem 12.25rem;
}

.cart--new > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cart--new time {
    display: inline-block;
    margin-bottom: 0.5rem;
}

.cart--section-grid-4 {
    -ms-grid-columns:(1fr) [ 4 ];
    grid-template-columns:repeat(4, 1fr)
}

.cart--section .ava {
    width: 100%;
    height: 16.375rem;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.cart--section .title {
    font-weight: 600;
    -webkit-column-span: all;
    -moz-column-span: all;
    column-span: all
}

.cart--section .title:not(:last-child) {
    margin-bottom: 1rem
}

.cart--section a {
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    color: var(--grey-80);
    margin-bottom: .5rem
}

.cart--section a:hover {
    color: var(--hover)
}

.cart--section .content {
    padding: var(--32);
    -webkit-column-count: auto;
    -moz-column-count: auto;
    column-count: auto
}

.cart--warning {
    position: relative;
    background-color: var(--bg);
    color: var(--grey-80);
    padding: var(--32)
}

.cart--warning:not(:first-child) {
    margin-top: 1rem
}

.cart--warning:not(:last-child) {
    margin-bottom: 1rem
}

.cart--warning:before {
    content: "";
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(../svg/art/warning.svg)
}

a.cart {
    font-weight: 600;
    font-size: var(--h5);
    line-height: 120%;
    color: var(--clr);
    gap: .5rem
}

a.cart--link {
    gap: 0
}

a.cart:not(:hover) .svg-line {
    background-image: url(../svg/art/line-deactive.svg)
}

form.cart {
    padding: var(--32);
    gap: .5rem
}

form.cart [class*=grid-] {
    gap: .5rem
}

@media (min-width: 568px) {
    .cart--warning {
        padding-left: calc(var(--32) + var(--64) + 1rem)
    }

    .cart--warning:before {
        position: absolute;
        top: var(--32);
        left: var(--32);
        width: var(--64);
        height: var(--64)
    }
}

@media (min-width: 668px) {
    .cart--info .title[class*=before-]::before {
        --ava: 4rem;
        margin-bottom: 1rem
    }
}

@media (min-width: 1168px) {
    .cart--new .content {
        width: 100%;
        aspect-ratio: 69/40;
        max-height: 11rem;
    }

    body .cart--section:nth-child(7n) .content {
        -webkit-column-count: 3;
        -moz-column-count: 3;
        column-count: 3
    }
}

@media (min-width: 1268px) {
    body .cart--section:nth-child(7n) {
        display: -ms-grid;
        display: grid;
        /*-ms-grid-columns:(1fr) [ 2 ];*/
        /*grid-template-columns:repeat(2, 1fr);*/
        grid-column: span 2
    }
}

@media (min-width: 1368px) {
    .cart--section:nth-child(3n+1) {
        -ms-grid-column-span: 2;
        grid-column: span 2
    }

    .cart--section:nth-child(3n+1) .content {
        -webkit-column-count: 2;
        -moz-column-count: 2;
        column-count: 2;
    }
}

@media (max-width: 1367px) {
    .cart--section-grid-4 {
        -ms-grid-columns:(1fr) [ 3 ];
        grid-template-columns:repeat(3, 1fr)
    }
}

@media (max-width: 1267px) {
    .cart--section-grid-4 {
        -ms-grid-columns:(1fr) [ 2 ];
        grid-template-columns:repeat(2, 1fr)
    }
}

@media (max-width: 667px) {
    .cart--info .title[class*=before-]::before {
        --ava: 3rem
    }

    .cart--section-grid-4 {
        -ms-grid-columns: 1fr;
        grid-template-columns:1fr
    }

    .cart--section .ava {
        height: auto;
        aspect-ratio: 345/262
    }
}

@media (max-width: 567px) {
    .cart--warning {
        text-align: center
    }

    .cart--warning:before {
        width: 4rem;
        height: 4rem;
        margin: 0 auto 1rem
    }
}

@media (max-width: 467px) {
    .cart--section .content {
        -webkit-column-count: 1;
        -moz-column-count: 1;
        column-count: 1
    }
}

@media (min-width: 1268px) and (max-width: 1367px) {
    .cart--section:nth-child(2n+1) {
        -ms-grid-column-span: 2;
        grid-column: span 2
    }

    .cart--section:nth-child(2n+1) .content {
        -webkit-column-count: 2;
        -moz-column-count: 2;
        column-count: 2
    }
}

@media (max-width: 1267px) and (min-width: 768px) {
    body .cart--section:nth-child(3n+1) {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns:(1fr) [ 2 ];
        grid-template-columns:repeat(2, 1fr);
        grid-column: 1/-1
    }
}

@media (max-width: 1267px) and (min-width: 768px) and (max-width: 967px) {
    body .cart--section:nth-child(3n+1) .content {
        height: 100%
    }

    body .cart--section:nth-child(3n+1) .ava {
        height: 100%
    }
}

.two-end {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

[class*=grid-] {
    --gap: 1.25rem;
    display: -ms-grid;
    display: grid;
    grid-auto-rows: -webkit-max-content;
    grid-auto-rows: max-content;
    gap: var(--gap)
}

.two-end {
    -ms-grid-column: 2;
    grid-column-start: 2;
    -ms-grid-column-span: -3;
    grid-column-end: -1;
    gap: var(--32)
}

.two-end > .item:not(:last-child) {
    padding-bottom: var(--32);
    border-bottom: var(--line-grey-40)
}

@media (min-width: 367px) {
    .grid-3 {
        --grid-step: 5.625rem;
        grid-template-columns:repeat(auto-fit, minmax(calc(var(--grid-step) * 4), 1fr))
    }

    .grid-4 {
        --grid-step: 5.625rem;
        grid-template-columns:repeat(auto-fit, minmax(calc(var(--grid-step) * 3), 1fr))
    }

    .grid-5 {
        --grid-step: 5.625rem;
        grid-template-columns:repeat(auto-fit, minmax(calc(var(--grid-step) * 2.4), 1fr))
    }

    .grid-6 {
        --grid-step: 5.625rem;
        grid-template-columns:repeat(auto-fit, minmax(calc(var(--grid-step) * 2), 1fr))
    }

    .grid-7 {
        --grid-step: 5.625rem;
        grid-template-columns:repeat(auto-fit, minmax(calc(var(--grid-step) * 1.7142857143), 1fr))
    }

    .grid-8 {
        --grid-step: 5.625rem;
        grid-template-columns:repeat(auto-fit, minmax(calc(var(--grid-step) * 1.5), 1fr))
    }

    .grid-9 {
        --grid-step: 5.625rem;
        grid-template-columns:repeat(auto-fit, minmax(calc(var(--grid-step) * 1.3333333333), 1fr))
    }

    .grid-10 {
        --grid-step: 5.625rem;
        grid-template-columns:repeat(auto-fit, minmax(calc(var(--grid-step) * 1.2), 1fr))
    }

    .grid-11 {
        --grid-step: 5.625rem;
        grid-template-columns:repeat(auto-fit, minmax(calc(var(--grid-step) * 1.0909090909), 1fr))
    }

    .grid-12 {
        --grid-step: 5.625rem;
        grid-template-columns:repeat(auto-fit, minmax(calc(var(--grid-step) * 1), 1fr))
    }
}

@media (min-width: 540px) {
    .grid-2 {
        --grid-step: 5.625rem;
        grid-template-columns:repeat(auto-fit, minmax(calc(var(--grid-step) * 6), 1fr))
    }
}

@media (max-width: 1180px) {
    .grid-3 [class*=grid-] {
        -ms-grid-column: 1;
        grid-column-start: 1;
        -ms-grid-column-span: -2;
        grid-column-end: -1
    }
}

@media (max-width: 540px) {
    .grid-2 {
        -ms-grid-columns: 1fr;
        grid-template-columns:1fr
    }
}

@media (max-width: 367px) {
    [class*=grid-] {
        -ms-grid-columns: 1fr;
        grid-template-columns:1fr
    }
}

.form {
    position: relative;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: .5rem
}

.form--search {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    background-color: var(--bg);
    border-radius: .25rem;
    overflow: hidden
}

.form--search input, .form--search select {
    background-color: transparent;
    border-color: transparent
}

.form--search input {
    height: 100%
}

.form--search select {
    /*width:8.75rem;*/
    width: 10rem;
    height: auto;
    white-space: nowrap;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    color: #727272;
}

.form--search .modified--search {
    width: 100%
}

.form--std .title {
    font-weight: 600;
    font-size: var(--h3);
    margin-bottom: .75rem
}

.form--std .title.before-rub {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    width: 100%;
    gap: .5rem
}

.form--output:not(:first-child) {
    margin-top: var(--24)
}

@media (min-width: 468px) {
    .form--std .title.before-rub::before {
        --ava: 4rem
    }
}

/*@media (min-width:668px) {*/
/*    .form--search .modified--search {*/
/*        margin-left:3.5rem*/
/*    }*/
/*}*/
@media (max-width: 467px) {
    .form--search {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .form--search select {
        width: 100%;
        border-bottom-color: var(--grey-20)
    }

    .form--search .modified--search {
        width: calc(100% - 3rem)
    }
}

.before-contract:before, .before-date-time:before, .before-delivery:before, .before-design:before, .before-pay:before, .before-printer:before, .before-rub:before, .before-work:before, .svg-calc, .svg-line, .svg-loc, .svg-mail, .svg-phone {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 var(--ava);
    flex: 0 0 var(--ava);
    width: var(--ava);
    height: var(--ava)
}

.before-contract:before, .before-date-time:before, .before-delivery:before, .before-design:before, .before-pay:before, .before-printer:before, .before-rub:before, .before-work:before, .svg-calc, .svg-line, .svg-loc, .svg-mail, .svg-phone {
    background-repeat: no-repeat;
    background-position: center
}

.before-contract:before, .before-date-time:before, .before-delivery:before, .before-design:before, .before-pay:before, .before-printer:before, .before-rub:before, .before-work:before, .svg-calc, .svg-line, .svg-loc, .svg-mail, .svg-phone {
    --ava: 1.5rem;
    display: block;
    background-size: contain
}

.icon--element {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    letter-spacing: .05em;
    gap: .625rem;
    color: var(--f)
}

.icon--element:not(:last-child) {
    margin-bottom: .5rem
}

.icon--cart {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    margin: auto;
    gap: .625rem
}

.icon--cart .svg-calc {
    --ava: 2.5rem
}

a.icon--cart {
    color: var(--main)
}

.svg-phone {
    background-image: url(../svg/art/phone.svg)
}

.svg-mail {
    background-image: url(../svg/art/mail.svg)
}

.svg-loc {
    background-image: url(../svg/art/loc.svg)
}

.svg-line {
    background-image: url(../svg/art/line.svg)
}

.svg-calc {
    background-image: url(../svg/art/calc.svg)
}

.before-rub {
    --ava: 1.5rem
}

.before-rub:before {
    content: "";
    background-image: url(../svg/art/rub.svg)
}

.before-printer {
    --ava: 1.5rem
}

.before-printer:before {
    content: "";
    background-image: url(../svg/art/printer.svg)
}

.before-delivery {
    --ava: 1.5rem
}

.before-delivery:before {
    content: "";
    background-image: url(../svg/art/delivery.svg)
}

.before-design {
    --ava: 1.5rem
}

.before-design:before {
    content: "";
    background-image: url(../svg/art/design.svg)
}

.before-pay {
    --ava: 1.5rem
}

.before-pay:before {
    content: "";
    background-image: url(../svg/art/pay.svg)
}

.before-date-time {
    --ava: 1.5rem
}

.before-date-time:before {
    content: "";
    background-image: url(../svg/art/date-time.svg)
}

.before-work {
    --ava: 1.5rem
}

.before-work:before {
    content: "";
    background-image: url(../svg/art/work.svg)
}

.before-contract {
    --ava: 1.5rem
}

.before-contract:before {
    content: "";
    background-image: url(../svg/art/contract.svg)
}

.svg-line {
    position: relative;
    width: 2.625rem;
    height: .5625rem;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    background-position-x: left;
    -webkit-transition: .1s all;
    -o-transition: .1s all;
    transition: .1s all
}

.p18 {
    padding-top: var(--18) !important;
    padding-bottom: var(--18) !important
}

.p18.scroll--inset {
    scroll-margin-block-start: var(--18)
}

.pt18 {
    padding-top: var(--18) !important
}

.pt18.scroll--inset {
    scroll-margin-block-start: var(--18)
}

.pb18 {
    padding-bottom: var(--18) !important
}

.pb18.scroll--inset {
    scroll-margin-block-start: var(--18)
}

.p20 {
    padding-top: var(--20) !important;
    padding-bottom: var(--20) !important
}

.p20.scroll--inset {
    scroll-margin-block-start: var(--20)
}

.pt20 {
    padding-top: var(--20) !important
}

.pt20.scroll--inset {
    scroll-margin-block-start: var(--20)
}

.pb20 {
    padding-bottom: var(--20) !important
}

.pb20.scroll--inset {
    scroll-margin-block-start: var(--20)
}

.p24 {
    padding-top: var(--24) !important;
    padding-bottom: var(--24) !important
}

.p24.scroll--inset {
    scroll-margin-block-start: var(--24)
}

.pt24 {
    padding-top: var(--24) !important
}

.pt24.scroll--inset {
    scroll-margin-block-start: var(--24)
}

.pb24 {
    padding-bottom: var(--24) !important
}

.pb24.scroll--inset {
    scroll-margin-block-start: var(--24)
}

.p28 {
    padding-top: var(--28) !important;
    padding-bottom: var(--28) !important
}

.p28.scroll--inset {
    scroll-margin-block-start: var(--28)
}

.pt28 {
    padding-top: var(--28) !important
}

.pt28.scroll--inset {
    scroll-margin-block-start: var(--28)
}

.pb28 {
    padding-bottom: var(--28) !important
}

.pb28.scroll--inset {
    scroll-margin-block-start: var(--28)
}

.p30 {
    padding-top: var(--30) !important;
    padding-bottom: var(--30) !important
}

.p30.scroll--inset {
    scroll-margin-block-start: var(--30)
}

.pt30 {
    padding-top: var(--30) !important
}

.pt30.scroll--inset {
    scroll-margin-block-start: var(--30)
}

.pb30 {
    padding-bottom: var(--30) !important
}

.pb30.scroll--inset {
    scroll-margin-block-start: var(--30)
}

.p32 {
    padding-top: var(--32) !important;
    padding-bottom: var(--32) !important
}

.p32.scroll--inset {
    scroll-margin-block-start: var(--32)
}

.pt32 {
    padding-top: var(--32) !important
}

.pt32.scroll--inset {
    scroll-margin-block-start: var(--32)
}

.pb32 {
    padding-bottom: var(--32) !important
}

.pb32.scroll--inset {
    scroll-margin-block-start: var(--32)
}

.p36 {
    padding-top: var(--36) !important;
    padding-bottom: var(--36) !important
}

.p36.scroll--inset {
    scroll-margin-block-start: var(--36)
}

.pt36 {
    padding-top: var(--36) !important
}

.pt36.scroll--inset {
    scroll-margin-block-start: var(--36)
}

.pb36 {
    padding-bottom: var(--36) !important
}

.pb36.scroll--inset {
    scroll-margin-block-start: var(--36)
}

.p40 {
    padding-top: var(--40) !important;
    padding-bottom: var(--40) !important
}

.p40.scroll--inset {
    scroll-margin-block-start: var(--40)
}

.pt40 {
    padding-top: var(--40) !important
}

.pt40.scroll--inset {
    scroll-margin-block-start: var(--40)
}

.pb40 {
    padding-bottom: var(--40) !important
}

.pb40.scroll--inset {
    scroll-margin-block-start: var(--40)
}

.p44 {
    padding-top: var(--44) !important;
    padding-bottom: var(--44) !important
}

.p44.scroll--inset {
    scroll-margin-block-start: var(--44)
}

.pt44 {
    padding-top: var(--44) !important
}

.pt44.scroll--inset {
    scroll-margin-block-start: var(--44)
}

.pb44 {
    padding-bottom: var(--44) !important
}

.pb44.scroll--inset {
    scroll-margin-block-start: var(--44)
}

.p48 {
    padding-top: var(--48) !important;
    padding-bottom: var(--48) !important
}

.p48.scroll--inset {
    scroll-margin-block-start: var(--48)
}

.pt48 {
    padding-top: var(--48) !important
}

.pt48.scroll--inset {
    scroll-margin-block-start: var(--48)
}

.pb48 {
    padding-bottom: var(--48) !important
}

.pb48.scroll--inset {
    scroll-margin-block-start: var(--48)
}

.p52 {
    padding-top: var(--52) !important;
    padding-bottom: var(--52) !important
}

.p52.scroll--inset {
    scroll-margin-block-start: var(--52)
}

.pt52 {
    padding-top: var(--52) !important
}

.pt52.scroll--inset {
    scroll-margin-block-start: var(--52)
}

.pb52 {
    padding-bottom: var(--52) !important
}

.pb52.scroll--inset {
    scroll-margin-block-start: var(--52)
}

.p56 {
    padding-top: var(--56) !important;
    padding-bottom: var(--56) !important
}

.p56.scroll--inset {
    scroll-margin-block-start: var(--56)
}

.pt56 {
    padding-top: var(--56) !important
}

.pt56.scroll--inset {
    scroll-margin-block-start: var(--56)
}

.pb56 {
    padding-bottom: var(--56) !important
}

.pb56.scroll--inset {
    scroll-margin-block-start: var(--56)
}

.p60 {
    padding-top: var(--60) !important;
    padding-bottom: var(--60) !important
}

.p60.scroll--inset {
    scroll-margin-block-start: var(--60)
}

.pt60 {
    padding-top: var(--60) !important
}

.pt60.scroll--inset {
    scroll-margin-block-start: var(--60)
}

.pb60 {
    padding-bottom: var(--60) !important
}

.pb60.scroll--inset {
    scroll-margin-block-start: var(--60)
}

.p64 {
    padding-top: var(--64) !important;
    padding-bottom: var(--64) !important
}

.p64.scroll--inset {
    scroll-margin-block-start: var(--64)
}

.pt64 {
    padding-top: var(--64) !important
}

.pt64.scroll--inset {
    scroll-margin-block-start: var(--64)
}

.pb64 {
    padding-bottom: var(--64) !important
}

.pb64.scroll--inset {
    scroll-margin-block-start: var(--64)
}

.p72 {
    padding-top: var(--72) !important;
    padding-bottom: var(--72) !important
}

.p72.scroll--inset {
    scroll-margin-block-start: var(--72)
}

.pt72 {
    padding-top: var(--72) !important
}

.pt72.scroll--inset {
    scroll-margin-block-start: var(--72)
}

.pb72 {
    padding-bottom: var(--72) !important
}

.pb72.scroll--inset {
    scroll-margin-block-start: var(--72)
}

.p75 {
    padding-top: var(--75) !important;
    padding-bottom: var(--75) !important
}

.p75.scroll--inset {
    scroll-margin-block-start: var(--75)
}

.pt75 {
    padding-top: var(--75) !important
}

.pt75.scroll--inset {
    scroll-margin-block-start: var(--75)
}

.pb75 {
    padding-bottom: var(--75) !important
}

.pb75.scroll--inset {
    scroll-margin-block-start: var(--75)
}

.p80 {
    padding-top: var(--80) !important;
    padding-bottom: var(--80) !important
}

.p80.scroll--inset {
    scroll-margin-block-start: var(--80)
}

.pt80 {
    padding-top: var(--80) !important
}

.pt80.scroll--inset {
    scroll-margin-block-start: var(--80)
}

.pb80 {
    padding-bottom: var(--80) !important
}

.pb80.scroll--inset {
    scroll-margin-block-start: var(--80)
}

.p128 {
    padding-top: var(--128) !important;
    padding-bottom: var(--128) !important
}

.p128.scroll--inset {
    scroll-margin-block-start: var(--128)
}

.pt128 {
    padding-top: var(--128) !important
}

.pt128.scroll--inset {
    scroll-margin-block-start: var(--128)
}

.pb128 {
    padding-bottom: var(--128) !important
}

.pb128.scroll--inset {
    scroll-margin-block-start: var(--128)
}

.m18 {
    margin-top: var(--18) !important;
    margin-bottom: var(--18) !important
}

.m18.scroll--inset {
    scroll-margin-block-start: var(--18)
}

.mt18 {
    margin-top: var(--18) !important
}

.mt18.scroll--inset {
    scroll-margin-block-start: var(--18)
}

.mb18 {
    margin-bottom: var(--18) !important
}

.mb18.scroll--inset {
    scroll-margin-block-start: var(--18)
}

.m20 {
    margin-top: var(--20) !important;
    margin-bottom: var(--20) !important
}

.m20.scroll--inset {
    scroll-margin-block-start: var(--20)
}

.mt20 {
    margin-top: var(--20) !important
}

.mt20.scroll--inset {
    scroll-margin-block-start: var(--20)
}

.mb20 {
    margin-bottom: var(--20) !important
}

.mb20.scroll--inset {
    scroll-margin-block-start: var(--20)
}

.m24 {
    margin-top: var(--24) !important;
    margin-bottom: var(--24) !important
}

.m24.scroll--inset {
    scroll-margin-block-start: var(--24)
}

.mt24 {
    margin-top: var(--24) !important
}

.mt24.scroll--inset {
    scroll-margin-block-start: var(--24)
}

.mb24 {
    margin-bottom: var(--24) !important
}

.mb24.scroll--inset {
    scroll-margin-block-start: var(--24)
}

.m28 {
    margin-top: var(--28) !important;
    margin-bottom: var(--28) !important
}

.m28.scroll--inset {
    scroll-margin-block-start: var(--28)
}

.mt28 {
    margin-top: var(--28) !important
}

.mt28.scroll--inset {
    scroll-margin-block-start: var(--28)
}

.mb28 {
    margin-bottom: var(--28) !important
}

.mb28.scroll--inset {
    scroll-margin-block-start: var(--28)
}

.m30 {
    margin-top: var(--30) !important;
    margin-bottom: var(--30) !important
}

.m30.scroll--inset {
    scroll-margin-block-start: var(--30)
}

.mt30 {
    margin-top: var(--30) !important
}

.mt30.scroll--inset {
    scroll-margin-block-start: var(--30)
}

.mb30 {
    margin-bottom: var(--30) !important
}

.mb30.scroll--inset {
    scroll-margin-block-start: var(--30)
}

.m32 {
    margin-top: var(--32) !important;
    margin-bottom: var(--32) !important
}

.m32.scroll--inset {
    scroll-margin-block-start: var(--32)
}

.mt32 {
    margin-top: var(--32) !important
}

.mt32.scroll--inset {
    scroll-margin-block-start: var(--32)
}

.mb32 {
    margin-bottom: var(--32) !important
}

.mb32.scroll--inset {
    scroll-margin-block-start: var(--32)
}

.m36 {
    margin-top: var(--36) !important;
    margin-bottom: var(--36) !important
}

.m36.scroll--inset {
    scroll-margin-block-start: var(--36)
}

.mt36 {
    margin-top: var(--36) !important
}

.mt36.scroll--inset {
    scroll-margin-block-start: var(--36)
}

.mb36 {
    margin-bottom: var(--36) !important
}

.mb36.scroll--inset {
    scroll-margin-block-start: var(--36)
}

.m40 {
    margin-top: var(--40) !important;
    margin-bottom: var(--40) !important
}

.m40.scroll--inset {
    scroll-margin-block-start: var(--40)
}

.mt40 {
    margin-top: var(--40) !important
}

.mt40.scroll--inset {
    scroll-margin-block-start: var(--40)
}

.mb40 {
    margin-bottom: var(--40) !important
}

.mb40.scroll--inset {
    scroll-margin-block-start: var(--40)
}

.m44 {
    margin-top: var(--44) !important;
    margin-bottom: var(--44) !important
}

.m44.scroll--inset {
    scroll-margin-block-start: var(--44)
}

.mt44 {
    margin-top: var(--44) !important
}

.mt44.scroll--inset {
    scroll-margin-block-start: var(--44)
}

.mb44 {
    margin-bottom: var(--44) !important
}

.mb44.scroll--inset {
    scroll-margin-block-start: var(--44)
}

.m48 {
    margin-top: var(--48) !important;
    margin-bottom: var(--48) !important
}

.m48.scroll--inset {
    scroll-margin-block-start: var(--48)
}

.mt48 {
    margin-top: var(--48) !important
}

.mt48.scroll--inset {
    scroll-margin-block-start: var(--48)
}

.mb48 {
    margin-bottom: var(--48) !important
}

.mb48.scroll--inset {
    scroll-margin-block-start: var(--48)
}

.m52 {
    margin-top: var(--52) !important;
    margin-bottom: var(--52) !important
}

.m52.scroll--inset {
    scroll-margin-block-start: var(--52)
}

.mt52 {
    margin-top: var(--52) !important
}

.mt52.scroll--inset {
    scroll-margin-block-start: var(--52)
}

.mb52 {
    margin-bottom: var(--52) !important
}

.mb52.scroll--inset {
    scroll-margin-block-start: var(--52)
}

.m56 {
    margin-top: var(--56) !important;
    margin-bottom: var(--56) !important
}

.m56.scroll--inset {
    scroll-margin-block-start: var(--56)
}

.mt56 {
    margin-top: var(--56) !important
}

.mt56.scroll--inset {
    scroll-margin-block-start: var(--56)
}

.mb56 {
    margin-bottom: var(--56) !important
}

.mb56.scroll--inset {
    scroll-margin-block-start: var(--56)
}

.m60 {
    margin-top: var(--60) !important;
    margin-bottom: var(--60) !important
}

.m60.scroll--inset {
    scroll-margin-block-start: var(--60)
}

.mt60 {
    margin-top: var(--60) !important
}

.mt60.scroll--inset {
    scroll-margin-block-start: var(--60)
}

.mb60 {
    margin-bottom: var(--60) !important
}

.mb60.scroll--inset {
    scroll-margin-block-start: var(--60)
}

.m64 {
    margin-top: var(--64) !important;
    margin-bottom: var(--64) !important
}

.m64.scroll--inset {
    scroll-margin-block-start: var(--64)
}

.mt64 {
    margin-top: var(--64) !important
}

.mt64.scroll--inset {
    scroll-margin-block-start: var(--64)
}

.mb64 {
    margin-bottom: var(--64) !important
}

.mb64.scroll--inset {
    scroll-margin-block-start: var(--64)
}

.m72 {
    margin-top: var(--72) !important;
    margin-bottom: var(--72) !important
}

.m72.scroll--inset {
    scroll-margin-block-start: var(--72)
}

.mt72 {
    margin-top: var(--72) !important
}

.mt72.scroll--inset {
    scroll-margin-block-start: var(--72)
}

.mb72 {
    margin-bottom: var(--72) !important
}

.mb72.scroll--inset {
    scroll-margin-block-start: var(--72)
}

.m75 {
    margin-top: var(--75) !important;
    margin-bottom: var(--75) !important
}

.m75.scroll--inset {
    scroll-margin-block-start: var(--75)
}

.mt75 {
    margin-top: var(--75) !important
}

.mt75.scroll--inset {
    scroll-margin-block-start: var(--75)
}

.mb75 {
    margin-bottom: var(--75) !important
}

.mb75.scroll--inset {
    scroll-margin-block-start: var(--75)
}

.m80 {
    margin-top: var(--80) !important;
    margin-bottom: var(--80) !important
}

.m80.scroll--inset {
    scroll-margin-block-start: var(--80)
}

.mt80 {
    margin-top: var(--80) !important
}

.mt80.scroll--inset {
    scroll-margin-block-start: var(--80)
}

.mb80 {
    margin-bottom: var(--80) !important
}

.mb80.scroll--inset {
    scroll-margin-block-start: var(--80)
}

.m128 {
    margin-top: var(--128) !important;
    margin-bottom: var(--128) !important
}

.m128.scroll--inset {
    scroll-margin-block-start: var(--128)
}

.mt128 {
    margin-top: var(--128) !important
}

.mt128.scroll--inset {
    scroll-margin-block-start: var(--128)
}

.mb128 {
    margin-bottom: var(--128) !important
}

.mb128.scroll--inset {
    scroll-margin-block-start: var(--128)
}

.mt32-auto {
    margin: var(--32) auto 0
}

.modal {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.modal--body {
    position: relative;
    z-index: 1
}

.modal--body {
    border-radius: var(--br);
    background-color: var(--f)
}

.modal {
    position: fixed;
    inset: 0;
    overflow: hidden;
    z-index: 9;
    -ms-scroll-chaining: none;
    overscroll-behavior: none
}

.modal::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--bg);
    opacity: .5
}

.modal--body {
    max-width: 50rem;
    width: 100%;
    max-height: 100%;
    padding: var(--64);
    overflow: hidden auto
}

.modal--name {
    font-weight: 700;
    font-size: var(--h2);
    line-height: 120%;
    color: var(--clr)
}

.modal .btns {
    margin-top: var(--32)
}

.modified--search {
    position: relative
}

.modified--search:before {
    content: "";
    position: absolute;
    top: 50%;
    left: .0625rem;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: .0625rem;
    height: calc(100% - 1rem);
    background-color: var(--grey-20)
}

.modified--search ::-webkit-search-cancel-button {
    display: none
}

.modified--search input {
    width: 100%;
    padding: .625rem 2.75rem .625rem 1.375rem
}

.modified--search .btn--close {
    width: 1.5rem;
    top: 50%;
    right: .625rem;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.modified--search .btn--close:after, .modified--search .btn--close:before {
    top: 51%
}

.triggers .trigger--rating {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.triggers .trigger {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 var(--ava);
    flex: 0 0 var(--ava);
    width: var(--ava);
    height: var(--ava)
}

.triggers {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    gap: .625rem;
    cursor: pointer
}

.triggers:hover .trigger {
    border-color: var(--hover)
}

.triggers .trigger {
    --ava: 1.5rem;
    position: relative;
    background-color: transparent;
    border: var(--line);
    border-color: currentColor;
    overflow: hidden;
    -webkit-transition: .1s all;
    -o-transition: .1s all;
    transition: .1s all;
    cursor: pointer
}

.triggers .trigger:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 0;
    height: 0;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: .1s all;
    -o-transition: .1s all;
    transition: .1s all;
    background-color: var(--hover)
}

.triggers .trigger.small {
    --ava: 1rem;
    margin-top: .25rem
}

.triggers .trigger--point {
    position: relative;
    min-width: 4rem;
    width: 4rem;
    height: 2rem;
    background-color: var(--bg);
    border-radius: 2rem;
    cursor: pointer;
    -webkit-transition: .1s all;
    -o-transition: .1s all;
    transition: .1s all
}

.triggers .trigger--point:after {
    content: "";
    position: absolute;
    top: 50%;
    left: .375rem;
    width: 1.25rem;
    height: 1.25rem;
    background: var(--grey-60);
    border-radius: 1.25rem;
    -webkit-transition: .3s all ease-out;
    -o-transition: .3s all ease-out;
    transition: .3s all ease-out;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.triggers .trigger--rating {
    width: 1.5rem;
    height: 1.5rem;
    border: var(--line);
    border-radius: .25rem;
    cursor: pointer;
    -webkit-transition: .1s all;
    -o-transition: .1s all;
    transition: .1s all
}

.triggers .trigger--rating:active, .triggers .trigger--rating:hover {
    background: var(--main);
    color: var(--clr)
}

.triggers .trigger--rating:hover {
    border-color: currentColor
}

.triggers .trigger--rating:active {
    border-color: var(--hover)
}

.triggers input {
    position: absolute !important;
    top: .25rem;
    left: .25rem;
    opacity: 0;
    z-index: -1;
    pointer-events: none
}

.triggers input[type=radio] ~ .trigger {
    border-radius: var(--24)
}

.triggers input[type=radio] ~ .trigger:after {
    border-radius: 50%
}

.triggers input[type=checkbox] ~ .trigger {
    border-radius: .25rem
}

.triggers input[type=checkbox] ~ .trigger:after {
    border-radius: .125rem
}

.triggers input:checked ~ .trigger {
    border-color: var(--hover)
}

.triggers input:checked ~ .trigger:after {
    width: 50%;
    height: 50%;
    background-color: var(--hover)
}

.triggers input:checked ~ .trigger--point:after {
    left: calc(100% - 1.625rem)
}

.triggers input:checked ~ .trigger--rating {
    background: var(--main);
    color: var(--f);
    border-color: var(--hover)
}

.triggers.btn--search {
    cursor: pointer
}

.triggers.btn--search + .label--element {
    position: absolute !important;
    top: .25rem;
    left: .25rem;
    opacity: 0;
    z-index: -1;
    pointer-events: none
}

.btn, [type=button], [type=reset], [type=submit], button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.burger {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    z-index: 10;
    top: -10px;
}

.btn, [type=button], [type=reset], [type=submit], button {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: .625rem var(--32);
    color: var(--f);
    background-color: var(--main);
    border: var(--main);
    border-radius: var(--br);
    gap: .625rem;
    font-weight: 600;
    font-size: 1.125rem;
    text-align: center;
    -webkit-box-pack: center;
    place-content: center;
    -webkit-transition: .1s all;
    -o-transition: .1s all;
    transition: .1s all;
    cursor: pointer
}

.btn:focus, [type=button]:focus, [type=reset]:focus, [type=submit]:focus, button:focus {
    outline: 0
}

.btn:hover, [type=button]:hover, [type=reset]:hover, [type=submit]:hover, button:hover {
    background-color: var(--hover);
    color: var(--f)
}

.burger {
    position: relative;
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
    min-width: 2rem;
    width: 2rem;
    height: 2rem;
    color: var(--f);
    background: var(--main);
    padding: .25rem;
    gap: 0
}

.burger .line {
    position: relative;
    width: 1.5rem;
    height: .125rem;
    background: currentColor;
    overflow: hidden;
    pointer-events: none
}

.burger.close:hover .line:after {
    background: var(--main)
}

.burger.close .line {
    position: absolute;
    top: 50%;
    left: 50%
}

.burger.close .line:after {
    background: var(--main)
}

.burger.close .line:nth-child(3) {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    -ms-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg)
}

.burger.close .line:nth-child(2) {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg)
}

.burger.close .line:nth-child(1) {
    display: none
}

.btn--close {
    position: absolute;
    top: var(--24);
    right: var(--24);
    width: 1.5rem;
    height: 1.5rem;
    background-color: var(--grey-20);
    border: none;
    padding: .25rem;
    border-radius: .25rem
}

.btn--close:after, .btn--close:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    -ms-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg);
    border-radius: .25rem;
    background-color: var(--f)
}

.btn--close::after {
    width: .875rem;
    height: .125rem
}

.btn--close::before {
    width: .125rem;
    height: .875rem
}

.btn--search {
    --w: 3rem;
    width: var(--w);
    /* height: var(--w); */
    -webkit-box-flex: 0;
    -ms-flex: 0 0 var(--w);
    flex: 0 0 var(--w);
    background-image: url(../svg/art/search.svg);
    background-size: 1.25rem;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #F3F3F3;
    border: var(--line-grey-20);
    padding: 0
}

.btn--search:hover {
    background-color: var(--grey-20)
}

.btn--back {
    --w: 2rem !important;
    width: var(--w);
    height: var(--w);
    min-width: var(--w);
    min-height: var(--w);
    padding: 0
}

.btn--back .arrow {
    color: var(--f) !important
}

.btn--back .arrow:after {
    -webkit-transform: translateX(45%) rotate(225deg);
    -ms-transform: translateX(45%) rotate(225deg);
    transform: translateX(45%) rotate(225deg)
}

@media (max-width: 375px) {
    .btn, [type=button], [type=reset], [type=submit], button {
        width: 100%
    }
}

input, select, textarea {
    width: 100%;
    padding: .5rem .625rem;
    border: var(--line-grey-10);
    color: var(--grey-80);
    background-color: var(--f);
    border-radius: var(--br);
    -webkit-transition: all .1s linear;
    -o-transition: all .1s linear;
    transition: all .1s linear
}

input:focus, input:focus-visible, select:focus, select:focus-visible, textarea:focus, textarea:focus-visible {
    outline: 0;
    border-color: var(--grey-60)
}

input:hover:not(:focus,:focus-visible,:invalid,:disabled), select:hover:not(:focus,:focus-visible,:invalid,:disabled), textarea:hover:not(:focus,:focus-visible,:invalid,:disabled) {
    border-color: var(--grey-40)
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding-right: 2.25rem;
    background-image: url(../svg/art/arrow.svg);
    background-repeat: no-repeat;
    background-size: 1rem;
    background-position-y: center;
    background-position-x: calc(100% - 1rem)
}

option {
    background-color: var(--bg)
}

option:checked {
    background-color: var(--grey-20);
    color: var(--f)
}

textarea {
    height: 7rem;
    border-radius: var(--br);
    resize: none
}

fieldset {
    padding: 0;
    margin: 0;
    border: 0
}

fieldset legend {
    font-size: var(--f20);
    line-height: 150%;
    margin-bottom: 1rem
}

.link--arrow, .link--line, a[download] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

a.full {
    position: absolute;
    inset: 0
}

a {
    color: var(--main);
    text-decoration: none;
    -webkit-transition: .1s all;
    -o-transition: .1s all;
    transition: .1s all;
    cursor: pointer
}

a:hover {
    color: var(--hover)
}

a[download] {
    font-weight: 700;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    background-color: var(--f);
    border-radius: var(--br);
    padding: .5rem 1rem;
    gap: .5rem
}

a[download]:not(:first-child) {
    margin-top: 1rem
}

a[download]:not(:last-child) {
    margin-bottom: 1rem
}

a[download].pdf {
    position: relative
}

a[download].pdf:before {
    content: "";
    display: block;
    width: 2rem;
    height: 2rem;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(../svg/art/download-pdf.svg)
}

a.full {
    z-index: 1
}

a.full .ava, a.full .title {
    -webkit-transition: .1s all;
    -o-transition: .1s all;
    transition: .1s all
}

a.full:hover ~ .ava, a.full:hover ~ .content .ava {
    scale: 1.1
}

a.full:hover ~ .content .title, a.full:hover ~ .title {
    color: var(--main)
}

.link {
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    color: var(--grey-80)
}

.link--arrow, .link--line {
    color: var(--grey-80);
    gap: 1rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer
}

.link--arrow:hover, .link--line:hover {
    color: var(--hover)
}

.link--line .line {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 1rem;
    flex: 0 0 1rem;
    width: 1rem;
    height: 1rem
}

.link--line .line circle[fill], .link--line .line path[fill], .link--line .line rect[fill] {
    fill: currentColor;
    -webkit-transition: .1s fill;
    -o-transition: .1s fill;
    transition: .1s fill
}

.link--line .line circle[stroke], .link--line .line path[stroke], .link--line .line rect[stroke] {
    stroke: currentColor;
    -webkit-transition: .1s stroke;
    -o-transition: .1s stroke;
    transition: .1s stroke
}

.link--nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    color: var(--f)
}

.link--nav:not(:last-child) {
    margin-bottom: .5rem
}

.link--nav:hover {
    color: var(--hover)
}

svg {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 var(--ava);
    flex: 0 0 var(--ava);
    width: var(--ava);
    height: var(--ava)
}

svg {
    --ava: 1.5rem
}

.svg--current circle[fill], .svg--current path[fill], .svg--current rect[fill] {
    fill: currentColor;
    -webkit-transition: .1s fill;
    -o-transition: .1s fill;
    transition: .1s fill
}

.svg--current circle[stroke], .svg--current path[stroke], .svg--current rect[stroke] {
    stroke: currentColor;
    -webkit-transition: .1s stroke;
    -o-transition: .1s stroke;
    transition: .1s stroke
}

.chips, .regular, .subtitle, small {
    font-style: normal;
    font-weight: 400;
    line-height: 150%
}

.h1, .h2, .h3, .h4, .h5, h1, h2, h3, h4, h5 {
    line-height: 120%;
    margin: 0
}

.h2:not(:last-child), .h3:not(:last-child), .h4:not(:last-child), h2:not(:last-child), h3:not(:last-child), h4:not(:last-child) {
    margin-top: var(--24);
    margin-bottom: var(--24);
}

.h4, .h5, h4, h5 {
    font-weight: 600
}

.h1, .h2, .h3, h1, h2, h3 {
    font-weight: 700
}

.h1, h1 {
    font-size: var(--h1)
}

.h1:not(:last-child), h1:not(:last-child) {
    margin-bottom: var(--32)
}

.h1 {
    margin-bottom: 1rem !important;
    color: #141414;
    font-size: clamp(2.25rem, 1.6667rem + 1.4815vw, 3rem);
    font-weight: 700;
}

.h2, h2 {
    font-size: var(--h2)
}

.h3, h3 {
    font-size: var(--h3)
}

.h4, h4 {
    font-size: var(--h4)
}

.h5, h5 {
    font-size: var(--h5)
}

.chips, small {
    display: block;
    font-size: .75rem;
    line-height: 150%;
    letter-spacing: .05em
}

p:not(:last-child) {
    margin-bottom: .5rem
}

p:empty {
    display: none
}

p a:hover, span a:hover {
    text-decoration: underline
}

ol, ul {
    margin: 0;
    -webkit-padding-start: 1.5rem;
    padding-inline-start: 1.5rem
}

/*ol:not(:first-child),ul:not(:first-child) {*/
/*    margin-top:1rem*/
/*}*/
ol:not(:last-child), ul:not(:last-child) {
    margin-bottom: 1rem
}

ol ol, ol ul, ul ol, ul ul {
    margin: .5rem 0 1rem
}

time {
    color: var(--grey-80);
    font-size: 1rem;
    line-height: 150%
}

address {
    font-style: normal
}

.tall {
    font-weight: 600;
    line-height: 150%
}

.bold {
    font-weight: 700
}

.subtitle {
    font-size: .875rem;
    letter-spacing: .05em;
    text-transform: uppercase
}

.regular {
    font-size: 1rem
}

.text--left {
    text-align: left
}

.text--center {
    text-align: center
}

.text--right {
    text-align: right
}

.line {
    list-style: none;
    -webkit-padding-start: 0;
    padding-inline-start: 0
}

.line li {
    position: relative;
    letter-spacing: .05em
}

.line li:not(:last-child) {
    margin-bottom: 1rem
}

.line > li {
    -webkit-padding-start: var(--24);
    padding-inline-start: var(--24)
}

.line > li:before {
    content: "";
    position: absolute;
    top: .625rem;
    left: 0;
    display: block;
    width: 1rem;
    height: .125rem;
    background: var(--main)
}

output:empty:after {
    content: "—";
    font-weight: 600;
    color: var(--main)
}

h1.title {
    font-size: var(--h1)
}

/*@media (max-width: 420px) {*/
/*    h1.title {*/
/*        font-size: 2rem;*/
/*    }*/
/*}*/


/* Калькуляторы */

.container--calc {
    max-width: 75rem;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-top: 2.5rem;
}

.container--calc > img {
    max-width: max-content;
    max-height: 25rem;
    margin: 0 auto;
}

.uslugi__container {
    display: flex;
    align-items: flex-start;
    /*margin-top: 6.25rem;*/
    justify-content: center;
    max-width: 75.125rem;
    margin: 0 auto;
    gap: 1.25rem;

    /* display: grid; */
    /* grid-template-columns: 1fr 18.125rem; */
}

.uslugi__calc {
    flex-shrink: 0;
    /*max-width: 55.75rem;*/
    max-width: 70.75rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    /*gap: 16px;*/
    padding: 2rem 2rem 0 2rem;
    border-radius: 0.25rem;
    background: #fff;
    margin: 0 auto;
}

.uslugi__calc .calc__row:not(:first-child) {
    padding-top: 2rem;
}

/*.calc__container h1,*/
/*.calc__container h2,*/
/*.calc__container h3,*/
/*.calc__container h4,*/
/*.calc__container h5,*/
/*.calc__container h6 {*/
/*    margin: 0;*/
/*}*/

.calc__title {
    font-size: 3rem;
}

@media (max-width: 576px) {
    .calc__title {
        font-size: 2rem;
    }
}

@media (max-width: 480px) {
    .calc__title {
        font-size: 1.7rem;
    }
}

.calc__item-container {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.calc__item {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    white-space: nowrap;
    /*//justify-content: space-between;*/
    gap: 0.5rem;
}

.calc__item p {
    white-space: wrap;
}

.calc__row {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem 1.25rem;
    /* max-height: 100px; */
    /* align-items: center; */
}

.calc__row--left,
.calc__row--right {
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: space-between;
}

.row--grid {
    display: grid;
    grid-template-columns: 40% 55%;
}

.border-bottom {
    padding-bottom: 2rem;
    border-bottom: 1px solid #D0D0D0;
}


.calc__item-title {
    font-size: 1rem;
    font-weight: 700;
    color: #141414;
    white-space: nowrap;
    margin: 0;
}

.calc__select {
    height: 2.75rem;
    padding: 0.625rem 3rem 0.625rem 1rem;
    border: 1px solid #D0D0D0;
    border-radius: 0.25rem;
    font-size: 1rem;
    background-color: #fff;
}

.calc__radio {
    display: grid;
    grid-template-columns: repeat(3, min-content);
    gap: 0.5rem;
}

.calc__radio--max {
    grid-template-columns: repeat(3, max-content);
}

@media (min-width: 1220px) {
    .calc__radio--max {
        display: flex;
        flex-wrap: wrap;
    }
}


@media (max-width: 750px) {
    .calc__radio {
        justify-content: flex-end;
        grid-template-columns: repeat(3, 1fr);
    }
}

.calc__input {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    height: 2.75rem;
    padding: 0.625rem 0.625rem 0.625rem 1rem;
    /*max-width: 128px;*/
    width: 100%;
    font-size: 1rem;
    border: 1px solid #D0D0D0;
    border-radius: 0.25rem;
}

.calc__radio-item {
    /*max-height: 2.75rem;*/
    line-height: 1.375rem;
    border: 1px solid #D0D0D0;
    border-radius: 0.25rem;
    gap: 0.625rem;
    padding: 0.625rem 1rem;
    position: relative;
    white-space: wrap;

    display: grid;
    grid-template-columns: max-content 1fr;
}

.radio__inputs-text {
    display: flex;
    gap: 0.25rem;
    align-items: center;
    grid-column: 2;
}

.radio__inputs-text > input {
    width: 3.625rem;
    height: 2.75rem;
    border-radius: 0.25rem;
    text-align: center;
    border: 1px solid #D0D0D0;
}

.radio__inputs-text > input::placeholder {
    color: #D0D0D0;
}

.radio__inputs-text > input:focus {
    outline: 1px solid #D0D0D0;
}


.calc__radio-item:hover {
    cursor: pointer;
}

.calc__radio-input {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.checkmark {
    /*position: absolute;*/
    /*top: 50%;*/
    /*left: 1rem;*/
    position: relative;
    height: 1.25rem;
    width: 1.25rem;
    background-color: #fff;
    border-radius: 50%;
    border: 1px solid #D0D0D0;
    /*transform: translateY(-50%);*/
}

.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

.calc__radio-input:checked ~ .checkmark {
    background-color: #fff;
    border: 1px solid #E02A1C;
}

.calc__radio-item:has(.calc__radio-input:checked) {
    border: 1px solid #E02A1C;
}

.calc__radio-input:checked ~ .checkmark::after {
    display: block;
}

.calc__radio-item:has(.calc__radio-input:checked) .checkmark::after {
    display: block;
}

.checkmark:after {
    top: 0.325rem;
    left: 50%;
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
    background: #E02A1C;
    transform: translate(-50%);
}

.calc__radio-item input[type='radio'] {
    visibility: hidden;
}

.calc__subtitle {
    font-size: 1.25rem;
    margin: 0 !important;
    width: 100%;
}

.calc__footer {
    display: flex;
    /*grid-template-columns: 1.5fr 1fr 1fr;*/
    gap: 1rem;
    padding: 1.5rem 0 2rem 0;
}

.calc__footer-info {
    display: flex;
    color: #434343;
    gap: 1rem;
}

.calc__footer-info svg {
    --ava: 2.5rem;
}

.calc__total {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem;
    font-size: 1.25rem;
    font-weight: 600;
    color: #434343;
}

.calc__total-sum {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: -5px;
    white-space: nowrap;
}

.calc__print-size {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.calc__footer-btn {
    padding: 0.5rem 4.25rem;
    font-size: 1.125rem;
    width: max-content;
    height: 2.688rem;
    color: #727272;
    border-radius: 0.25rem;
    border: 1px solid #E8E8E8;
    background: #E8E8E8;
    align-self: center;
}

.calc__footer-btn:hover {
    cursor: pointer;
    color: #000;
    background: #e8e8e8cd;
    transition: all 0.5s;
}

.calc__footer-btn.red {
    color: #fff;
    background: #E02A1C;
}

.calc__footer-btn.red:hover {
    background: #e0291cbe;
    transition: all 0.5s;
}

@media (max-width: 660px) {
    .calc__footer {
        flex-direction: column;
    }
}

.calc__didnt-find {
    display: grid;
    grid-template-columns: 2fr 1fr;
    border-radius: 0 0 0.25rem 0.25rem;
    background: #E8E8E8;
    margin: 0 -2rem;
    padding: 2rem;
    gap: 2rem;
}

.calc__didnt-find--1 {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.calc__didnt-find--1 > h6 {
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 600;
}

.calc__didnt-find--1 > p {
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    color: #434343;
}

.calc__prof-calc {
    padding: 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    border: 2px solid #fff;
    border-radius: 0.25rem;
    margin-top: auto;
}

.calc__prof-calc:hover {
    cursor: pointer;
    border: 2px solid #E02A1C;
    transition: 1s all;
}


.calc__prof-calc > img {
    width: 2.563rem;
    height: 2.563rem;
}

.calc__prof-calc > a {
    font-weight: 600;
    font-size: 1.125rem;
    text-align: center;
    color: #E02A1C;
    text-decoration: none;
}

.calc__checkboxes {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    /*margin-top: 2rem;*/
    margin-top: 1rem;
}

.calc__checkboxes > input {
    width: 1.5rem;
    height: 1.5rem;
    border: 1px solid #D0D0D0;
    border-radius: 0.25rem;
}


@media (max-width: 1220px) {
    .calc__item {
        align-items: center;
        justify-content: space-between;
    }

    .calc__title {
        text-align: center;
    }

    .uslugi__container {
        flex-direction: column;
        margin: 0.625rem 0 0 0;
        gap: 1.25rem;
        place-items: center;
    }

    .calc__row {
        display: flex !important;
        flex-direction: column !important;
        max-height: fit-content;
    }

    .calc__item {
        flex-direction: row;
        width: 100%;
    }

    .calc__footer {
        grid-template-columns: 1fr;
    }

    .calc__input {
        max-width: 100% !important;
    }
}

@media (max-width: 800px) {
    .calc__didnt-find {
        grid-template-columns: 1fr;
        gap: 1.25rem;
    }

    .calc__footer {
        gap: 1.25rem;
    }
}

@media (max-width: 700px) {
    .calc__radio {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .calc__radio > label {
        grid-column: span 1 !important;
    }

    .info.services__header h1 {
        font-size: 30px;
        /*margin-top: 4rem;*/
    }
}

@media (max-width: 800px) {
    .calc__didnt-find {
        margin: -0.625rem;
        padding: 2.5rem;
    }

    .calc__select {
        padding: 0.625rem 0.313rem;
        width: 100%;
    }

    .calc__row {
        width: 100%;
        gap: 1rem;
    }

    .calc__row .calc__checkboxes:not(:first-child) {
        margin-top: 0;
    }

    .calc__item {
        flex-direction: column;
        align-items: flex-start;
    }

    .uslugi__calc {
        padding: 1.75rem 1.25rem;
        max-width: 100%;
        /*width: -webkit-fill-available;*/
    }
}

.how-works__footer {
    background: #fff;
    padding: 4rem 5rem;
}

.how-works--title {
    font-weight: 700;
    font-size: 2rem;
    line-height: 2.375rem;
}

.how-works__item-list {
    display: flex;
    gap: 1.313rem;
    margin-top: 2rem;
    justify-content: flex-start;
}

.how-works__item {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    max-width: 21.563rem;
}

.how-works__item-top {
    display: flex;
    align-items: center;
    gap: 2rem;
}

.how-works__item-title {
    font-weight: 600;
    font-size: 1.25rem;
    max-width: 19.7rem;
    margin: 0 !important;
}

.how-works__item-text {
    margin-top: 0.5rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5rem;
    color: #434343;
}

.how-works__arrow {
    width: 100%;
}

@media (max-width: 1400px) {
    .how-works__item {
        max-width: 15.625rem;
    }
}

@media (max-width: 1100px) {
    .how-works__item {
        max-width: 100%;
    }

    .how-works__arrow {
        display: none;
    }

    .how-works__item-list {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 2.5rem;
    }
}


@media (max-width: 1000px) {
    .how-works__footer {
        margin: 4rem 0;
    }
}

@media (max-width: 850px) {
    .how-works__item-list {
        grid-template-columns: 1fr;
        place-items: flex-start;
    }

    .how-works__footer {
        margin: 1rem 0;
        padding: 2rem;
    }
}

.calc__checkboxes input[type='checkbox'] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
}

.calc__checkboxes input[type='checkbox']:hover {
    cursor: pointer;
}

.calc__checkboxes input[type='checkbox']:after {
    position: relative;
    display: block;
    left: 0;
    top: 0;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 0.25rem;
    border-width: 1px;
    border-style: solid;
    border-color: #D0D0D0;
    content: "";
    background-repeat: no-repeat;
    background-position: center;
}

.calc__checkboxes input[type='checkbox']:checked:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='11' viewBox='0 0 15 11' fill='none'%3E%3Cpath d='M14.5 1L6 10L1 5' stroke='%23E02A1C'/%3E%3C/svg%3E");
}

.calc__bottom-text {
    /*line-height: 24px;*/
    font-weight: 400;
    font-size: 1rem;
    max-width: 66.875rem;
    /*max-width: 1070px;*/
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    /*padding: 0 10px;*/
    margin-top: 2rem;
}

.calc__bottom-text a {
    text-decoration: none;
    color: #E02A1C;
}

.calc__bottom-text a:hover {
    color: rgba(224, 42, 28, 0.78);
}

/*.calc__container .calc__bottom-text {*/
/*    max-width: 100%;*/
/*}*/

.calc__container {
    padding-bottom: 4rem;
}

.calc__container > h1 {
    font-size: 3rem;
    margin-left: 2.5rem;
    margin-top: 2.5rem;
    margin-bottom: 2rem;
}

.how-works__footer-inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin: 0 auto;
}

@media (max-width: 1400px) {
    .how-works__footer-inner {
        align-items: center;
    }
}

@media (max-width: 450px) {
    .how-works__item-top {
        flex-direction: column-reverse;
        align-items: flex-start;
    }

    .calc__container {
        padding-bottom: 1rem;
    }

    .info.services__header h1 {
        font-size: 24px;
    }
}

.how-works__item-list .how-works__item:last-of-type .how-works__item-top img:nth-of-type(2) {
    display: none;
}


/* убрал верхний отступ у стандартного меню битрикса */
#cont_catalog_menu_LkGdQn {
    margin-top: 0;
}

div .bx-breadcrumb {
    margin-top: 1rem;
    margin-left: 5rem;
    margin-bottom: 0;
}

.bx-breadcrumb {
    margin-top: 1rem !important;
    margin-bottom: 2.5rem !important;
}

.bx-breadcrumb .bx-breadcrumb-item span {
    font-size: 0.75rem !important;
}

.bx-breadcrumb .bx-breadcrumb-item {
    gap: 1rem !important;
    margin-right: 0.625rem !important;
}


.top-view {
    border: 1px solid #dcdcdc;
    background: #f9f9f9;
    padding: 1.25rem;
    text-align: center;
    margin: 0 auto;
}

.top-view .row-total {
    border-bottom: 1px solid #ececec;
    overflow: hidden;
    margin: 1.125rem 0 1.875rem;
    padding-bottom: 1.875rem;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}

.top-view .row-total .name span {
    font-size: 0.875rem;
    font-weight: bold;
    display: block;
    margin-bottom: 0.625rem;
}

.top-view .row-total .name {
    font-size: 1.25rem;
}

.priceList {
    width: 100%;
    margin-bottom: 1.5rem;
}

.priceList tr:nth-child(odd) {
    background-color: #fff;
    font-weight: bold;
}

.priceList tr:hover td {
    background-color: #d82c1e;
    color: #fff;
}

.scroll-x {
    width: 100%;
    overflow-x: auto;

}

.top-view .to-order:hover, .buttons-block a:hover {
    background: #bd2b1f;
    color: #e9e7e7;
}

.top-view .to-order {
    padding: 20px 46px;
    color: #fff;
    border-radius: 4px;
    background: #d82c1e;
    font-size: 15px;
    line-height: 1.4;
    text-decoration: none;
    display: inline-block;
    margin: 10px 0;
}

.priceList td, .priceList th {
    padding: 6px 1px;
    text-align: center;
    white-space: nowrap;
}

.buttons-block {
    text-align: center;
    margin: 2rem auto;
    color: #fff;
}

.buttons-block .btn-calc2 {
    width: 100%;
    color: #fff;
}

.product-row {
    padding: 40px 0;
    margin: 25px 0 20px;
    position: relative;
}

.vizitki-row {
    margin: 25px 0 0 0;
    position: relative;
    display: flex;
    align-items: center;
    gap: 20px;
}

.product-row .img-block {
    max-width: 80px;
    width: 100%;
}

.vizitki-row .img-block {
    max-width: 80px;
    width: 100%;
}

.product-row img {
    /*position: absolute;*/
    position: static;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    /*margin: 0;*/
    max-width: 80px;
    -webkit-transition: all .3s;
    -moz-transition: all .3s;
    -ms-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
    margin-bottom: 0 !important;
}


.vizitki-row img {
    max-width: 80px;
    margin: 0;
}

.product-row .name {
    font-size: 17px;
    line-height: 1.6;
    display: inline-block;
    margin: 0;
}

.vizitki-row .name {
    font-size: 17px;
    line-height: 1.6;
    display: inline-block;
    margin: 0;
}

@media (max-width: 540px) {
    .vizitki-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
    }
}


.ul-icons li {
    list-style-type: none;
    display: grid;
    grid-template-columns: 1fr 7fr;
    align-items: center;
}

.ul-icons li .img {
    text-align: center;
}

.text-center {
    margin: 0 auto;
}

/*.vizitki-row img:hover {*/
/*    width: auto;*/
/*    max-width: 600px;*/
/*}*/

.new-view {
    /*margin: 50px -25px 30px;*/
    /*padding: 40px;*/

    margin: 30px 0;
    padding: 32px;
    background: #eceff1;
    border-radius: 4px;
}

.new-view .red {
    color: #d82c1e;
    font-size: 18px;
    font-weight: bold;
}

.info-view .profit span {
    height: 67px;
    width: 67px;
    box-shadow: -8px 2px 15px 2px rgba(0, 0, 0, 0.2);
    background: #fff url(/upload/img/evrobuklet-onfo.png) center no-repeat;
    -webkit-background-size: auto 41px;
    background-size: auto 41px;
    margin: 15px;
}

.info-view .profit > * {
    display: inline-block;
    vertical-align: middle;
}

.info-view .profit .st1 {
    -ms-background-position-x: 13px;
    background-position-x: 13px;
}

.info-view .profit .st3 {
    -ms-background-position-x: -119px;
    background-position-x: -119px;
}

.info-view {
    padding: 30px 6px;
    background: #eceff1;
    /*margin: 20px -20px;*/
}

.cart.form--std {
    display: none;
}

.cart .subtitle {
    text-transform: unset;
}

.col-lg-4 {
    position: relative;
}

.col-lg-4::before {
    max-width: 4rem !important;
    max-height: 4rem !important;;
    left: 0 !important;;
    top: 50% !important;
    transform: translateY(-50%);
}

.calc__bottom-text h2 {
    margin-top: 2rem;
}

.section-third {
    counter-reset: list-tech;
}

.section-third .col-lg-4 {
    position: relative;
}

.section-third .wrap-card {
    padding: 1.5rem 1.25rem 1.5rem 6rem !important;
}

.section-third .col-lg-4::before {
    content: counter(list-tech);
    font-family: "New Zelek", Arial, sans-serif;
    counter-increment: list-tech;
    position: absolute;
    left: 0.625rem;
    top: -35px;
    width: 120px;
    height: 120px;
    background-color: unset !important;
    color: #d82b1e !important;
    font-size: 48px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.section-where .wrap-where-imgs {
    justify-content: unset !important;
    gap: 0.25rem;
    row-gap: 0;
    margin-top: 2rem;
}

.menu--item {
    position: relative;
}

.menu--item .child {
    width: max-content;
    max-width: 90vw;
    left: 0;
    right: unset;
    padding: 4rem !important;
}

.menu--item .child ol:not(:last-child),
.menu--item .child ul:not(:last-child) {
    margin-bottom: 0;
}

#main_menu_nav {
    z-index: 10;
}

.our-clients__images img {
    width: 100%;
    height: 100%;
    -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
    filter: grayscale(100%);
    transition: filter 0.2s linear;
}

.our-clients__images img:hover {
    -webkit-filter: grayscale(0); /* Safari 6.0 - 9.0 */
    filter: grayscale(0);
}

.our-clients__images {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.375rem;
    max-width: 100%;
    /*max-width: 40rem;*/
}

.offerta-page__image {
    object-position: -0.5rem;
    margin-bottom: 0.5rem;
    max-width: 100%;
}

/*.menu--item:has(.child.m-column) > .menu--link {*/
/*    pointer-events: none;*/
/*}*/

@media (max-width: 670px) {
    .footer .logo svg path {
        fill: #FFF;
    }
}

@media (max-width: 460px) {
    .menu--item .child.m-column a.cart {
        width: 100%;
    }
}

.product--showcase a.cart--link {
    background-size: 7.5rem;
}

.services__header {
    max-width: 67.3rem !important;
    margin: 0 !important;
}

.menu_level2 {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

.calc-config {
    display: block;
    position: relative;
    width: 18.125rem;
    align-self: flex-start;
    margin: 0 auto;
}

.calc-config > svg {
    width: 15rem;
    height: 13.625rem;
}

.calc-config__image,
.calc-config__image-1,
.calc-config__image-2 {
    position: absolute;
    width: auto;
    height: auto;
    transition: 0.5s all;
}

.calc-config__image-2 {
    opacity: 0;
}

.calc-config__active-image {
    position: absolute;
    top: 4.563rem;
    left: 5.688rem;
    width: 11.6937rem;
    height: 15.0556rem;
}

.calc-config__image {
    top: 3rem !important;
    left: 4rem !important;
    width: 10.1875rem;
    height: 10.1875rem;
}

.calc-config__active-image.width-100 .calc-config__image {
    width: 100%;
    height: 100%;
}

.calc-config__amount {
    padding: 0.625rem 1rem;
    background: #fff;
    color: #434343;
    text-align: center;
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 120%;
    /* 21.6px */
    width: max-content;
    margin: 0 auto 4rem auto;
}

.calc-config__height-wrapper,
.calc-config__width-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.calc-config__height-title,
.calc-config__width-title {
    color: #434343;
    font-size: 0.75rem;
    font-weight: 400;
    line-height: 150%;
    /* 18px */
    letter-spacing: 0.6px;
}

.calc-config__height-wrapper {
    position: absolute;
    top: 50%;
}

.calc-config__width-wrapper {
    position: absolute;
    right: 33%;
    bottom: 0;
}

.calc-config__height-num,
.calc-config__width-num {
    max-width: 4.6875rem;
}

.calc-item__additional-info {
    /* color: #434343; */
    color: #727272;
    font-size: 0.75rem;
    font-weight: 400;
    line-height: 150%;
    /* 18px */
    letter-spacing: 0.6px;
    display: flex;
    gap: 0;
}

.calc__item-additional-measurement {
    display: flex;
    gap: 4px;
}

.calc__item-additional-info--measurement {
    display: flex;
    align-items: center;
    gap: 0;
}

.config-image__input-image {
    flex-shrink: 0;
    /*margin-left: 40px;*/
}

.config-image__input-image.filter-red path {
    stroke: #E02A1C;
}

.uslugi-calc .additional-buttons {
    display: none;
    flex-direction: column;
    gap: 16px;
    transform: scaleY(0);
    transform-origin: top;
    transition: transform 0.5s ease;
}

.calc-image__choose {
    display: flex;
    flex-direction: row;
    gap: 8px;
    width: 100%;
}

.calc-radio__item .calc-item__additional-info {
    gap: 0;
    color: #727272;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.3125rem;
    text-align: left;
}

@media (max-width: 960px) {
    .calc-image__choose {
        flex-direction: column;
    }

    .calc-image__choose .calc-radio__item {
        flex-direction: row;
        align-items: center;
    }
}

@media (max-width: 500px) {
    .calc-item__additional-info {
        gap: 20px;
    }

    .calc__item-additional-measurement {
        flex-direction: column;
        gap: 0;
    }
}

.chosen-sizes {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 24px 0;
    border-top: 1px solid #D0D0D0;
}

.chosen-sizes__item {
    display: flex;
    gap: 16px;
    text-align: center;

    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}

.chosen-sizes__item-delete {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17 7L12 12L7 7' stroke='%23E02A1C'/%3E%3Cpath d='M7 17L12 12L17 17' stroke='%23E02A1C'/%3E%3C/svg%3E");
    width: 24px;
    height: 24px;
    cursor: pointer;
}

.calc-total__size {
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}

.calc__container svg {
    --ava: unset !important;
}

.calc__input[type=number]::-webkit-inner-spin-button,
.calc__input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
}

.calc__input[type=number] {
    -moz-appearance: textfield
}

.calc__btn--add {
    gap: 1rem;
    display: flex;
    color: #434343;
    width: max-content;
    border-radius: 4px;
    padding: 0.625rem 1.5rem;
    background-color: #F3F3F3;
    justify-content: space-between;
}

.calc__btn--add::after {
    content: '';
    width: 1.5rem;
    height: 1.5rem;
    display: inline-block;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M12 13V19H13V13H19V12H13V6H12V12H6V13H12Z" fill="%23E02A1C"/></svg>');
}

.calc__text--sm {
    color: #727272;
    line-height: 150%;
    font-size: 0.875rem;
}

.container.header--help:has(.search-page--separate) {
    flex-direction: column;
    align-items: flex-start;
}

.header--help:has(input[type="search"]:not([value=""])) {
    flex-direction: column;
    align-items: flex-start;
}

.gallery-container {
    display: grid;
    /*grid-template-columns: repeat(5, 1fr);*/

    grid-template-columns: repeat(auto-fit, minmax(20.625rem, 1fr));
}

@media (max-width: 1360px) {
    .gallery-container {
        grid-template-columns: repeat(4, 1fr);
    }
}

.gallery-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gallery-container .img-wrapper {
    cursor: pointer;
    position: relative;
    transition: 0.25s all ease;
    width: 100%;
    max-width: 100%;
    height: 21rem;
    overflow: hidden;
}

.gallery-container .img-wrapper::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    display: inline-block;
    inset: 0;
    transition: 0.25s all ease;
    opacity: 0;
    pointer-events: none;
    background-color: rgba(17, 17, 17, 0.25);
}

.gallery-container .img-wrapper:hover::after {
    opacity: 1;
}

.gallery-container .img-wrapper img {
    transition: 0.25s all ease;
}

.gallery-container .img-wrapper:hover img {
    transform: scale(1.2);
}

@media (max-width: 1060px) {
    .gallery-container {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 800px) {
    .gallery-container {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }


    .gallery-container .img-wrapper {
        width: 100%;
        height: 12.5rem;
        object-fit: cover;
    }
}

@media (max-width: 600px) {
    .gallery-container .img-wrapper {
        height: 9.375rem;
    }
}

@media (max-width: 420px) {
    .gallery-container .img-wrapper {
        height: 7.8125rem;
    }
}

.item-otk {
    width: 9.375rem;
    text-align: center;
}

.item-otk img {
    max-width: 100%;
}

.space-around {
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem;
    width: 100%;
    height: 100%;
}

.section-examples .btn-calc2 {
    margin-top: 0.5rem;
}

.nav-item a {
    display: inline-block;
}

.calc__container video {
    object-fit: contain;
    width: max-content;
    max-width: 100%;
}

.gallery-block {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-top: 4rem;
}

.gallery-block h3 {
    margin: 0;
}

.contacts {
    padding-top: 4rem;
    padding-bottom: 3.5rem;
    display: flex;
    flex-direction: column;
    gap: 2rem
}

.contacts__inner {
    display: grid;
    grid-template-columns: 1.05fr 1fr;
    gap: 1.25rem
}

.contacts__left {
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
    color: #434343;
}

.title--lg {
    margin: 0 !important;
    color: #141414;
    font-weight: 700;
    font-size: clamp(2.5rem, 2rem + 2.2222vw, 4rem);
}

.contacts__desc {
    font-weight: 400;
    max-width: 580px;
}

.contacts__right {
    gap: 1.5rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.info-col {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    color: #434343;
}

.info-col-wrapper--row {
    flex-wrap: wrap;
    display: flex;
    gap: 2.625rem;
    row-gap: 2rem;
}

.info-col__title {
    /*margin-bottom: 0.5rem !important;*/
    /*color: #434343;*/
    margin-bottom: 0 !important;
    color: #A1A1A1;
}

.contacts__left b {
    font-size: 1.125rem;
}


.info-col__result {
    color: #E02A1C;
    font-weight: 600;
    font-size: 1.25rem;
}

.info-col__result--lg {
    font-size: 1.5rem;
    font-weight: 600;
    color: #E02A1C;
}

.info-col__icons {
    display: flex;
    gap: 1rem;
}

.info-col__icons svg {
    width: 2rem;
    height: 2rem;
}

@media (max-width: 1100px) {
    .contacts__inner {
        display: flex;
        flex-direction: column;
        gap: 2rem;
    }
}

@media (max-width: 1268px) {
    #menu > .menu--item .menu--link {
        pointer-events: none;
    }
}

@media (max-width: 970px) {
    .header--help .search-page {
        width: 100%;
    }

    .header .container {
        display: flex;
    }

    .header .container.header--help {
        display: flex;
        flex-direction: column;
    }

    .header--menu .burger {
        position: absolute;
        left: 1.25rem;
        top: 50%;
        transform: translateY(-50%);
    }

    .header--help {
        margin-bottom: 0.5rem;
    }
}

.uslugi-top__desc {
    margin-top: 2rem;
    color: #434343;
}

.page-nav {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(auto, 32.9375rem) minmax(0, 21.5625rem);
    gap: 1.25rem;
}

@media (max-width: 800px) {
    .page-nav {
        grid-template-columns: 1fr;
    }
}

.page-nav__links {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    width: 100%;
}

.page-nav__links a {
    color: #141414;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    position: relative;
    padding: 0.625rem;
    transition: 0.25s ease all;
    background-color: #FFF;
}

.page-nav__links a::after {
    display: inline-block;
    content: '';
    width: 1.25rem;
    height: 0.5rem;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url('data:image/svg+xml,<svg width="21" height="9" viewBox="0 0 21 9" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M20.3536 4.85356C20.5488 4.65829 20.5488 4.34171 20.3536 4.14645L17.1716 0.964468C16.9763 0.769205 16.6597 0.769205 16.4645 0.964468C16.2692 1.15973 16.2692 1.47631 16.4645 1.67157L19.2929 4.5L16.4645 7.32843C16.2692 7.52369 16.2692 7.84027 16.4645 8.03554C16.6597 8.2308 16.9763 8.2308 17.1716 8.03554L20.3536 4.85356ZM0 4.5L-4.37114e-08 5L20 5L20 4.5L20 4L4.37114e-08 4L0 4.5Z" fill="%23A1A1A1"/></svg>');
}

.page-nav__links a:hover {
    gap: 1rem;
}

.page-nav__links a.active {
    font-weight: bold;
}

@media (max-width: 860px) {
    .page-nav {
        grid-template-columns: 1fr;
    }
}

.services p,
.services ul,
.services ol {
    color: #434343;
}

/*.section-header {*/
/*    display: grid;*/
/*    grid-template-columns: 1fr 1fr;*/
/*    gap: 1.25rem;*/
/*    margin-bottom: 1.25rem;*/
/*}*/

.section-block {
    margin-top: 2.5rem;
}

@media (max-width: 800px) {
    .section-block {
        margin-top: 1.625rem;
    }
}

.section-block:nth-of-type(1) {
    margin-top: 4rem;
}

.section-block > img {
    float: right;
    width: 100%;
    max-width: 15.9375rem;
    margin-left: 2rem;
    margin-bottom: 1.25rem;
    height: 15rem;
    object-fit: cover;
    object-fit: contain;
}

@media (max-width: 600px) {
    .section-block img {
        margin: 0 0 1.25rem 0;
        max-width: 100%;
        object-fit: contain;
    }
}

.section-block h3 {
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 1.25rem;
}

@media (max-width: 800px) {
    .section-block h3 {
        margin-bottom: 0.625rem;
    }
}

.section-block ul {
    display: flex;
    flex-direction: column;
    margin-top: 0.5rem;
    margin-left: 2.5rem;
    padding-right: 2.5rem;
    gap: 1rem;
    width: 100%;
}

.gallery-wrapper {
    margin-top: 4rem;
    margin-bottom: 4rem;
}

@media (max-width: 1000px) {
    .gallery-wrapper {
        margin-top: 2rem;
        margin-bottom: 2rem;
    }
}

.gallery-wrapper h2 {
    margin-top: 0;
    margin-bottom: 2rem;
}

.gallery-wrapper button {
    padding: 1rem 2rem;
    margin: 2rem auto 0 auto;
}

@media (max-width: 800px) {
    .section-block ul {
        align-items: flex-start;
        gap: 0.5rem;
        margin-left: 0;
    }

    .ul-icons li {
        display: flex;
        align-items: center;
    }

    .ul-icons li .img {
        flex-shrink: 0;
        width: 2rem;
        height: 2rem;
    }
}

.service-info {
    max-width: 70.75rem;
    margin: 4rem auto 4rem auto;
    display: grid;
    grid-template-columns: 1fr 0.65fr;
    gap: 1.25rem;
}

@media (max-width: 1100px) {
    .service-info {
        /*margin-left: 0;*/
        /*margin-right: 0;*/
        max-width: calc(100% - 2.5rem);
    }

    .service-info {
        display: flex;
        flex-direction: column;
        gap: 1.25rem;
    }
}

.service-info__right {
    position: sticky;
    top: 8rem;
    right: 0;
    height: max-content;
}

.service-info__left {
    overflow: hidden;
}

.table-scroll {
    overflow-x: auto;
}

.service-info__left .section-block:nth-of-type(1) {
    margin-top: 0;
}

.section-block img {
    max-width: 100%;
}

@media (max-width: 800px) {
    .service-info {
        display: flex;
        flex-direction: column;
        gap: 1.25rem;
    }
}

.header-col {
    max-width: 38rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-left: 11.25rem;
    margin-bottom: 1.25rem !important;
    gap: 1rem;
}

@media (max-width: 1060px) {
    .header-col {
        margin-left: 0;
    }
}

.blog-wrapper {
    margin-bottom: clamp(2rem, 1.3333rem + 2.963vw, 4rem);
}

@media (min-width: 971px) {
    .search-page > .header--help {
        padding-block: 0 !important;
    }
}

.news-detail {
    margin-top: 2.5rem;
    margin-bottom: 4rem;
    display: flex;
    flex-direction: column;
    max-width: 55.625rem !important;
}

.news-detail img {
    object-fit: contain;
    max-width: 100%;
    margin: 0 auto;
}

.news-navigation {
    margin-top: 2rem;
    display: flex;
    justify-content: space-between;
}

.news-navigation:has(.news-navigation__prev-btn.disabled) {
    justify-content: flex-end;
}

.news-navigation:has(.news-navigation__next-btn.disabled) {
    justify-content: flex-start;
}

.news-navigation a {
    display: flex;
    align-items: center;
    gap: 1rem;
    font-size: 1rem;
    font-weight: 700;
    line-height: 150%;
    color: #434343;
    position: relative;
    opacity: 1 !important;
    transition: all 0.6s ease;
    background: #fff;
    padding: 10px 20px;
    border-radius: 4px;
}

.news-navigation a:hover {
    background-color: #E02A1C;
    color: #fff;
}

.news-navigation .news-navigation__prev-btn::before {
    display: inline-block;
    content: '';
    width: 1rem;
    height: 0.5rem;
    background-size: cover;
    background-image: url('data:image/svg+xml,<svg width="17" height="8" viewBox="0 0 17 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.646446 3.64645C0.451185 3.84171 0.451185 4.15829 0.646446 4.35355L3.82843 7.53553C4.02369 7.73079 4.34027 7.73079 4.53553 7.53553C4.7308 7.34027 4.7308 7.02369 4.53553 6.82843L1.70711 4L4.53553 1.17157C4.7308 0.97631 4.7308 0.659727 4.53553 0.464465C4.34027 0.269203 4.02369 0.269203 3.82843 0.464465L0.646446 3.64645ZM17 4L17 3.5L1 3.5L1 4L1 4.5L17 4.5L17 4Z" fill="%23434343"/></svg>');
    transition: background-image 0.6s ease;
}

.news-navigation .news-navigation__prev-btn:hover::before {
    background-image: url('data:image/svg+xml,<svg width="17" height="8" viewBox="0 0 17 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.646446 3.64645C0.451185 3.84171 0.451185 4.15829 0.646446 4.35355L3.82843 7.53553C4.02369 7.73079 4.34027 7.73079 4.53553 7.53553C4.7308 7.34027 4.7308 7.02369 4.53553 6.82843L1.70711 4L4.53553 1.17157C4.7308 0.97631 4.7308 0.659727 4.53553 0.464465C4.34027 0.269203 4.02369 0.269203 3.82843 0.464465L0.646446 3.64645ZM17 4L17 3.5L1 3.5L1 4L1 4.5L17 4.5L17 4Z" fill="%23ffffff"/></svg>');
}

.news-navigation .news-navigation__next-btn::after {
    display: inline-block;
    content: '';
    width: 1rem;
    height: 0.5rem;
    background-size: cover;
    background-image: url('data:image/svg+xml,<svg width="17" height="8" viewBox="0 0 17 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.3536 4.35355C16.5488 4.15829 16.5488 3.84171 16.3536 3.64645L13.1716 0.464466C12.9763 0.269204 12.6597 0.269204 12.4645 0.464466C12.2692 0.659728 12.2692 0.976311 12.4645 1.17157L15.2929 4L12.4645 6.82843C12.2692 7.02369 12.2692 7.34027 12.4645 7.53553C12.6597 7.7308 12.9763 7.7308 13.1716 7.53553L16.3536 4.35355ZM0 4L0 4.5L16 4.5V4V3.5L0 3.5L0 4Z" fill="%23434343"/></svg>');
}

.news-navigation .news-navigation__next-btn:hover::after {
    background-image: url('data:image/svg+xml,<svg width="17" height="8" viewBox="0 0 17 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.3536 4.35355C16.5488 4.15829 16.5488 3.84171 16.3536 3.64645L13.1716 0.464466C12.9763 0.269204 12.6597 0.269204 12.4645 0.464466C12.2692 0.659728 12.2692 0.976311 12.4645 1.17157L15.2929 4L12.4645 6.82843C12.2692 7.02369 12.2692 7.34027 12.4645 7.53553C12.6597 7.7308 12.9763 7.7308 13.1716 7.53553L16.3536 4.35355ZM0 4L0 4.5L16 4.5V4V3.5L0 3.5L0 4Z" fill="%23ffffff"/></svg>');
}


@media (max-width: 460px) {
    .news-navigation a {
        font-size: 0.875rem;
        gap: 0.5rem;
    }

    .news-navigation .news-navigation__prev-btn {
        flex-direction: column;
    }

    .news-navigation .news-navigation__next-btn {
        flex-direction: column-reverse;
    }
}

.slider.banner .slide .content p:nth-of-type(1) {
    display: none;
}

.slider.banner .slide p,
.slider.banner .slide a,
.slider.banner .slide h2 {
    margin: 0 !important;
}

.slider.banner .slide .content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.service-info h4 {
    margin-bottom: 0.5rem;
}

.service-info h5 {
    margin-top: 1rem;
    margin-bottom: 1rem;
    font-size: 1rem;
    color: #434343;
    font-weight: 700;
}

@media (max-width: 1300px) {
    .slider--radio {
        width: 35%;
        bottom: 2rem;
    }

    .banner .slide {
        background-size: auto 17rem;
    }
}

@media (max-width: 1000px) {
    .banner .slide {
        background-size: auto 14rem;
    }
}

@media (max-width: 800px) {
    .slider--radio {
        width: 100%;
    }

    .banner .slide {
        position: relative;
        background-size: cover;
    }

    .banner .slide .content {
        z-index: 10;
        position: relative;
    }

    .banner .slide::before {
        content: '';
        display: inline-block;
        width: 100%;
        height: 100%;
        background-color: rgba(255, 255, 255, 0.75);
        position: absolute;
        inset: 0;
        z-index: 1;
    }

    .slider--radio {
        bottom: 1rem;
    }

    .slider.banner .slide .content {
        justify-content: center;
    }
}

@media (max-width: 440px) {
    .slider--radio {
        bottom: 0.5rem;
    }
}

.news-detail h1,
.news-detail h3 {
    margin-top: 0;
    margin-bottom: 1rem;
}

.news-detail article:not(:last-child) {
    margin-bottom: 2rem;
}

.news-detail ul {
    padding-inline-start: 3rem;
}

@media (max-width: 600px) {
    .news-detail ul {
        padding-inline-start: 1.25rem;
    }
}

.section-block h3 {
    scroll-margin-top: 10rem;
}

.service-info .page-nav__content {
    margin-bottom: 2rem;
}

@media (max-width: 600px) {
    .space-around {
        margin-top: 1.5rem;
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .space-around .item-otk {
        width: 100%;
        height: 100%;
    }
}

.texture-gallery > div {
    max-width: 50%;
}

.cookie-banner {
    opacity: 0;
    pointer-events: none;
    display: grid;
    grid-template-columns: 1fr 37.25rem;
    align-items: flex-end;
    gap: 5.5rem;
    border-radius: 16px;
    padding: 1.5rem 4rem 2rem 4rem;
    background: linear-gradient(360deg, #141414 0%, rgba(20, 20, 20, 0) 100%),
    linear-gradient(0deg, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.8));

    max-width: 90rem;
    position: fixed;
    bottom: 2rem;
    z-index: 100;
    left: 50%;
    transform: translateX(-50%);
    width: max-content;
    transition: opacity 0.5s ease;
}


.cookie-banner.active {
    opacity: 1;
    pointer-events: all;
}

.cookie-banner__info {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.cookie-banner__title {
    color: #FFFFFF;
    font-weight: 600;
    font-size: 1rem;
    margin: 0 !important;
}

.cookie-banner__desc {
    color: #FFF;
    font-size: 0.875rem;
    line-height: 150%;
}

.cookie-banner__link {
    white-space: nowrap;
    color: #E02A1C;
    position: relative;
    text-decoration: none !important;
    margin-left: 0.375rem;
    /*border-bottom: 2px solid #E02A1C;*/
}

.cookie-banner__link::after {
    content: '';
    background-color: #E02A1C;
    position: absolute;
    display: inline-block;
    width: 100%;
    height: 1px;
    left: 0;
    bottom: -6px;
}

.cookie-banner__btns {
    width: 100%;
    gap: 1.25rem;
    display: grid;
    height: max-content;
    grid-template-columns: 1fr 1fr;
}

.accept-all {
    text-align: center;
    font-size: 0.875rem;
    font-weight: 700;
    color: #FFFFFF;
    padding: 0.625rem 2rem;
    border-radius: 4px;
    border: 1px solid #E02A1C;
    background-color: #E02A1C;
    transition: all 0.25s ease;
    line-height: 150%;
    height: max-content;
}

.accept-all:hover {
    color: #FFF;
    background-color: transparent;
}

.accept-necessary {
    text-align: center;
    font-size: 0.875rem;
    font-weight: 700;
    color: #FFF;
    padding: 0.625rem 2rem;
    border: 1px solid #E02A1C;
    border-radius: 4px;
    transition: all 0.25s ease;
    background-color: transparent;
    line-height: 150%;
    height: max-content;
}

.accept-necessary:hover {
    color: #FFF;
    background-color: #E02A1C;
}

@media (max-width: 920px) {
    .cookie-banner {
        gap: 2rem;
        padding: 2rem;
        display: flex;
        flex-direction: column;
        bottom: 1rem;
        max-width: calc(100vw - 40px);
    }
}

@media (max-width: 600px) {
    .cookie-banner {
        max-width: calc(100vw - 20px);
        padding: 2rem 1.25rem;
    }
}

.header-block {
    gap: 1rem;
    display: flex;
    max-width: 38rem;
    margin-bottom: 1.75rem;
    flex-direction: column;
    padding-inline: var(--container);
}

@media (min-width: 1200px) {
    .header-block {
        margin-left: 16.25rem;
        margin-bottom: 2.5rem;
    }
}

.header-block h2 {
    margin: 0 !important;
}

.header-block p {
    color: #434343;
}

.news-list {
    /*margin-top: 4rem;*/
    margin-bottom: 4rem;
}

.news-list .cart--new {
    border: none;
}

.docs {
    gap: 1.25rem;
    display: flex;
    list-style-type: none;
    flex-wrap: wrap;
    padding: 0;
    margin-top: 2rem;
}

.download-btn {
    width: max-content;
    border-radius: 4px;
    padding: 16px;
    color: #141414;
    display: flex;
    gap: 0.5rem;
    background-color: #FFFFFF;
}

.download-btn::after {
    content: url('data:image/svg+xml,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_1541_2461)"><path d="M8 12.088L3.95543 8.04457L4.76457 7.22171L7.42857 9.88571V0H8.57143V9.88571L11.2343 7.22286L12.0446 8.04457L8 12.088ZM1.84686 16C1.32038 16 0.881143 15.824 0.529143 15.472C0.177143 15.12 0.000761905 14.6804 0 14.1531V11.384H1.14286V14.1531C1.14286 14.3291 1.216 14.4907 1.36229 14.6377C1.50857 14.7848 1.66971 14.8579 1.84571 14.8571H14.1543C14.3295 14.8571 14.4907 14.784 14.6377 14.6377C14.7848 14.4914 14.8579 14.3299 14.8571 14.1531V11.384H16V14.1531C16 14.6796 15.824 15.1189 15.472 15.4709C15.12 15.8229 14.6804 15.9992 14.1531 16H1.84686Z" fill="%23E02A1C"/></g><defs><clipPath id="clip0_1541_2461"><rect width="16" height="16" fill="white"/></clipPath></defs></svg>');
    width: 1rem;
    height: 1rem;
    display: inline-block;
}

.blog-detail__block {
    display: flex;
    flex-direction: column;
    margin-top: 2rem;
}

.blog-detail__block p,
.blog-detail__block ul {
    color: #434343;
}

.blog-detail__block:has(h3 + ul) h3 {
    margin-bottom: 1rem;
}

.blog-detail__block ul {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.news-detail__date {
    color: #A1A1A1;
    font-size: 0.75rem;
    margin-bottom: 0;
}

.news-detail > h2 {
    margin-bottom: 1rem !important;
}

.blog-detail__block img {
    border-radius: 4px;
    width: 33rem;
    max-width: 100%;
    height: 23.875rem;
    max-height: 100%;
    object-fit: cover;
    margin: 1rem auto 0 auto;
}

@media (max-width: 600px) {
    .blog-detail__block img {
        width: max-content;
        height: max-content;
    }
}

.news-detail h3 {
    font-weight: 600;
}

#title-search {
    width: 100%;
}

#title-search form {
    display: flex;
}

table.title-search-result {
    width: 100% !important;
}

.title-search-item a img {
    display: none;
}

#title-search-input {
    background: #F3F3F3;
    border: none;
    color: #A1A1A1;
    font-weight: 400;
    font-size: 1rem;
    height: 2.8125rem;
    padding: 0.625rem 1.375rem;
}

.header--help {
    display: flex;
    align-items: center;
}

.title-search > form > input[type="submit"] {
    background-color: transparent;
    border: 1px solid #D0D0D0;
    border-radius: 4px;
}

.search-page {

}

.search-page a {
    font-weight: 700;
    font-size: 1.25rem;
    color: #000;
}

.search-page small a {
    font-size: 0.75rem;
}

font.notetext {
    color: #141414;
    font-size: 1.25rem;
    margin-bottom: 64px;
    display: flex;
}

.search-page form {
    display: none;
}

.search-result-item {
    border-bottom: 1px solid #D0D0D0;
    padding: 20px 0;
}

.search-result-item h2 {
    margin-top: 0;
    margin-bottom: 0;
}

.table-vis td, .table-vis th {
    /* border: 1px solid #161616; */
    padding: 10px;
}

.table-vis {
    border-collapse: collapse;
    border-spacing: 0;
}

.cart--col {
    display: flex;
}

.cart--col .cart--section {
    height: max-content;
    width: 600px;
}

.cart--col .cart--section .content {
    column-count: 1;
}


.service-info .cart--section .content {
    column-count: 1;
}

.sroll-b .priceList td, .priceList th {
    white-space: normal !important;
}

.m-t0 {
    margin-top: 0;
}

.search-sorting a {
    font-size: 1rem !important;
}

.search-result-item a:hover {
    color: #e02a1c !important;
}

#main_menu_nav > .info > .menu--link {
    font-size: 1.25rem;
}

.header--menu .info {
    padding-left: 2.375rem;
}

.main-page__news-block > .breadcrumbs {
    display: none !important;
}

.main-page__news-block .header-block {
    max-width: var(--width-container);
    margin-inline: auto;
}

.main-page__news-block .header-block p {
    display: none;
}

.main-page__news-block .pagination-container {
    display: none;
}

.calc__title {
    /* font-size: 2rem; */
    text-align: left !important;
    max-width: 70.75rem !important;
}

@media (min-width: 1600px) or (max-width: 1480px) {
    .cookie-banner {
        max-width: calc(100% - 40px);
    }
}

@media (min-width: 1600px) {
    .cookie-banner {
        align-items: center;
        max-width: calc(100% - 40px);
        padding: 2rem 4rem;
    }
}

@media (max-width: 1300px) {
    .cookie-banner {
        gap: 1.5rem;
    }
}

@media (max-width: 1220px) {
    .uslugi__container {
        display: flex;
        flex-direction: column-reverse !important;
    }
}

@media (max-width: 1200px) {
    .cookie-banner {
        align-items: center;
        grid-template-columns: 2fr 1fr;
    }

    .cookie-banner__btns {
        display: flex;
        flex-direction: column;
    }
}

@media (max-width: 600px) {
    .cookie-banner {
        max-width: calc(100% - 20px);
    }
}

@media (max-width: 500px) {
    .cookie-banner__link {
        white-space: wrap;
    }

    .cookie-banner__link::after {
        display: none;
    }
}

.menu--item .child.js-limit_width {
    left: 24.1rem !important;
}

.checalc {
    margin-left: calc((100vw - 70rem) / 2);
}

@media (max-width: 1200px) {
    .checalc {
        margin-left: 1.25rem;
    }

    .calc__title {
        margin-left: 1.25rem;
    }
}

@media (max-width: 1000px) {
    .checalc {
        margin-left: auto;
    }
}

.news-detail__image {
    margin: 0 0 1rem 0 !important;
    max-width: 30rem !important;
}

.item-link {
    display: flex;
    flex-direction: column;
    background-color: #FFF;
    border-radius: 10px;
    overflow: hidden;
}

.item-link__image {
    width: 100%;
    height: 11rem;
    object-fit: cover;
    flex-shrink: 0;
}

.item-link__content {
    height: 100%;
    padding: 1.25rem;
    gap: 0.625rem;
    display: flex;
    flex-direction: column;
}

.item-link__title {
    font-weight: 600;
    font-size: 1.25rem;
    color: #141414;
    margin-bottom: 0 !important;
    transition: all 0.25s ease;
}

.item-link__desc {
    color: #434343;
    font-weight: 400;
    font-size: 0.75rem;
    line-height: 1.4;
    margin-bottom: 0.2rem !important;
}

.item-link__arrow {
    width: 1rem;
    height: 0.5rem;
    margin-top: auto;
    --ava: unset;
}

.item-link .item-link__arrow path {
    transition: all 0.25s ease;
}

.item-link:hover .item-link__arrow path {
    fill: var(--main);
}


.item-link:hover .item-link__title {
    color: var(--main);
}

.menu2--landing_block_inner {
    width: 100%;
}

@media (min-width: 1268px) {
    .menu--mb {
        display: none;
    }
}

@media (max-width: 1267px) {
    .menu {
        display: none;
    }

    .menu--mb {
        display: flex;
    }

    .menu {
        background-color: #F3F3F3;
    }

    .menu::before {
        display: none;
    }

    .menu-item {
        width: 100%;
    }

    .menu--mb .menu-item .menu-item__button {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }

    .menu-item .child .title {
        font-weight: 600;
        font-size: 1rem;
        line-height: 120%;
        color: #111;
        margin-left: 1.25rem;
        margin-bottom: 0.5rem;
    }

    .item--link .link {
        font-size: 1rem;
        padding: .2rem 0;
    }

    .menu-item__links {
        gap: 1.125rem;
        transition: all 0.3s ease;
        max-height: 0;
        overflow: hidden;
        padding: 1.25rem 1.5rem;
        display: none;
        flex-direction: column;
        opacity: 0;
        background-color: #FFF;
    }

    .menu-item__links.active {
        opacity: 1;
    }

    .menu-item__links .child {
        gap: 2rem;
        display: flex;
        flex-direction: column;
    }

    .menu-item__links .link {
        font-size: 1rem;
        font-weight: 400;
    }

    .item--link:has(.title) .link {
        margin-left: 3rem;
    }

    .header--menu_inner .menu {
        padding-top: 0;
        padding-bottom: 4rem;
    }

    .menu-item__button,
    .menu-item__link {
        display: flex;
        align-items: center;
        width: 100%;
        color: #111;
        font-weight: 600;
        font-size: 1.125rem;
        margin-bottom: 0 !important;
        padding: 1rem 1.25rem;
        transition: all 0.25s ease;
        background-color: transparent;
    }

    .menu-item__button::after {
        content: '';
        display: inline-block;
        width: 1.5rem;
        height: 1.5rem;
        transition: all 0.25s ease;
        background-size: cover;
        background-image: url('data:image/svg+xml,<svg width="24" height="22" viewBox="0 0 24 22" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M17 10L12 15L7 10" stroke="%23434343"/></svg>');
    }

    .menu-item__button.active::after {
        transform: rotate(180deg);
    }

    .menu-item__popular-list .cart {
        gap: 1.625rem;
        padding: 0.5rem;
        display: grid;
        align-items: center;
        grid-template-columns: 2rem 1fr;
        font-size: 0.875rem;
    }

    .menu-item__popular-list .cart svg {
        width: 2rem;
        height: 2rem;
    }

    .menu .menu-item > .menu-item__button,
    .menu .menu-item > .menu-item__link {
        border-bottom: 1px solid #D0D0D0;
    }

    .calc-btn--sm {
        gap: 0.5rem;
        color: #FFF;
        border-radius: 0.25rem;
        font-size: 0.875rem;
        max-width: calc(100% - 40px);
        margin: 0 auto;
        display: flex;
        align-items: center;
        padding: 0.625rem 2rem;
        justify-content: center;
        background-color: #E02A1C;
    }

    .calc-btn--sm::before {
        content: '';
        width: 1.25rem;
        height: 1.25rem;
        display: inline-block;
        background-size: cover;
        background-repeat: no-repeat;
        background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.83329 1.66663H14.1666C14.6087 1.66663 15.0326 1.84222 15.3451 2.15478C15.6577 2.46734 15.8333 2.89127 15.8333 3.33329V16.6666C15.8333 17.1087 15.6577 17.5326 15.3451 17.8451C15.0326 18.1577 14.6087 18.3333 14.1666 18.3333H5.83329C5.39127 18.3333 4.96734 18.1577 4.65478 17.8451C4.34222 17.5326 4.16663 17.1087 4.16663 16.6666V3.33329C4.16663 2.89127 4.34222 2.46734 4.65478 2.15478C4.96734 1.84222 5.39127 1.66663 5.83329 1.66663ZM5.83329 3.33329V6.66663H14.1666V3.33329H5.83329ZM5.83329 8.33329V9.99996H7.49996V8.33329H5.83329ZM9.16663 8.33329V9.99996H10.8333V8.33329H9.16663ZM12.5 8.33329V9.99996H14.1666V8.33329H12.5ZM5.83329 11.6666V13.3333H7.49996V11.6666H5.83329ZM9.16663 11.6666V13.3333H10.8333V11.6666H9.16663ZM12.5 11.6666V13.3333H14.1666V11.6666H12.5ZM5.83329 15V16.6666H7.49996V15H5.83329ZM9.16663 15V16.6666H10.8333V15H9.16663ZM12.5 15V16.6666H14.1666V15H12.5Z" fill="white"/></svg>');
    }
}


.menu--mb .calc-btn--sm {
    margin-top: 2rem;
}

.reviews {
    display: flex;
    flex-direction: column;
}

.reviews__item {
    gap: 1.25rem;
    display: grid;
    padding: 2rem 0;
    border-bottom: 1px solid #E8E8E8;
    grid-template-columns: 15.75rem 1fr;
}

.reviews__info {
    gap: 1rem;
    display: flex;
    flex-direction: column;
}

.reviews__image {
    border-radius: 100px;
    width: 4.0625rem;
    height: 4.0625rem;
}

.reviews__person-info {
    gap: 0.5rem;
    display: flex;
    flex-direction: column;
}

.reviews__name {
    margin-bottom: 0 !important;
    font-weight: 600;
    font-size: 1.125rem;
}

.nav__arrow svg {
    max-width: 0.3125rem !important;
    max-height: 0.625rem !important;
}

.reviews__company {
    font-size: 1rem;
    color: #434343;
}

.reviews__data {
    color: #A1A1A1;
    font-size: 0.75rem
}

.reviews__text {
    color: #434343;
    display: flex;
    align-items: center;
}

.leave-review {
    gap: 1.25rem;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}

.leave-review textarea {
    height: 5.75rem;
}

.leave-review__col {
    gap: 1rem;
    display: flex;
    flex-direction: column;
}

.leave-review__col button {
    width: 100%;
    margin-top: 0.625rem;
}

.label-wrapper {
    gap: 0.5rem;
    display: flex;
    flex-direction: column;
}

.label-wrapper label {
    font-size: 1rem;
    font-weight: 700;
    position: relative;
    width: max-content;
    max-width: 100%;
}

.add-file {
    gap: 1rem;
    display: flex;
    max-width: 100%;
    border-radius: 4px;
    width: max-content;
    position: relative;
    padding: 0.625rem 1.5rem;
    align-items: center;
    justify-content: center;
    transition: all 0.25s ease;
    background-color: #F3F3F3;
}

.add-file:hover {
    color: #FFF;
    background-color: var(--hover);
}

.add-file::after {
    content: '';
    width: 1.5rem;
    height: 1.5rem;
    transition: filter 0.25s ease;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13 12H19V13H13V19H12V13H6V12H12V6H13V12Z" fill="%23E02A1C"/></svg>');
}

.add-file:hover::after {
    filter: brightness(0) invert(1);
}

.add-file input {
    inset: 0;
    opacity: 0;
    position: absolute;
}

#review_logo {
    z-index: 2;
    cursor: pointer;
}

.checkbox-wrapper {
    gap: 0.5rem;
    display: grid;
    color: #434343;
    font-size: 0.625rem;
    grid-template-columns: 1.25rem 1fr;
}

.checkbox-wrapper input {
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 4px;
    border: 1px solid #D0D0D0;
}

.checkbox-wrapper label {
    line-height: 1.3;
}

.nav--simple {
    gap: 0.25rem;
    display: flex;
    margin-top: 2rem;
    align-items: center;
    justify-content: center;
}

.nav--simple a:not(.nav__arrow),
.nav--simple .nav-current-page {
    width: 1.25rem;
    height: 1.5rem;
    text-align: center;
}

.nav--simple .nav__arrow--prev {
    margin-right: 0.25rem;
}

.nav--simple .nav__arrow--next {
    margin-left: 0.25rem;
}

.nav--simple .nav-current-page {
    color: #E02A1C;
}

.nav--simple a:not(.nav__arrow) {
    color: #434343;
}

.nav--simple .nav__arrow {
    width: 1.5rem !important;
    height: 1.5rem !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

.add-file__name {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 11ch;
}

@media (max-width: 1000px) {
    .leave-review {
        gap: 1.5rem;
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .reviews__item {
        display: flex;
        flex-direction: column;
    }
}

.route-map {
    gap: 1rem;
    display: flex;
    flex-direction: column;
}

.route-map__title {
    color: #434343;
}

.working-hours b {
    font-size: 1rem;
}

.menu-item__popular-list {
    padding: 1.25rem;
    gap: 1rem 1.25rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.section-header {
    gap: 1rem;
    display: flex;
    flex-direction: column;
}

.section-header .title {
    margin: 0;
}

.section-header__desc {
    max-width: 33rem;
}

.grid-2-wrapper {
    gap: 2rem;
    padding-top: 4rem;
    padding-bottom: 4rem;
    border-top: 1px solid #D0D0D0;
    border-bottom: 1px solid #D0D0D0;
}

.grid-2-wrapper .h2 {
    margin: 0 0 1rem 0;
}

.grid-2-section {
    gap: 7rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
}

@media (max-width: 1240px) {
    .grid-2-section {
        gap: 2rem;
        grid-template-columns: 1fr;
    }

    .grid-2-wrapper {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }
}

.grid-2__item {
    gap: 0;
    display: flex;
    flex-direction: column;
}

.grid-2__item .h2 {
    color: #141414;
    margin-top: 0 !important;
    margin-bottom: 2rem !important;
}

.grid-2__item .h3 {
    color: #141414 !important;
    margin-top: 0 !important;
    margin-bottom: 1rem !important;
}

.double-list {
    padding-left: 0;
    list-style-type: none;
    display: flex;
    flex-direction: column;
}

.double-list__item {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 6.5625rem;
    padding: 0.625rem 1rem;
}

.double-list__item:not(:last-child) {
    border-bottom: 1px solid #A1A1A1;
}

.double-list__item:not(:last-child) {
    border-bottom: 1px solid #A1A1A1;
}

.double-list__name {
    font-weight: 500;
    color: #141414;
    font-size: 1.125rem;
    line-height: 120%;
}

.double-list__result {
    color: #E02A1C;
    font-size: 1rem;
    font-weight: 700;
    line-height: 150%;
}

.bank-details {
    gap: 0.625rem;
    padding-left: 0;
    display: flex;
    flex-direction: column;
}

.bank-details__item {
    gap: 0.875rem;
    display: grid;
    grid-template-columns: 10.5625rem 1fr;
}

.bank-details__name {
    color: #A1A1A1;
}

.bank-details__result {
    color: #000000;
}

.mini-info {
    display: flex;
    flex-direction: column;
    margin-bottom: 2rem;
}

.mini-info__title {
    color: #A1A1A1;
}

.mini-info__result {
    font-weight: 600;
    font-size: 1.25rem;
    color: #E02A1C;
}

.mb-64 {
    margin-bottom: clamp(2rem, 1.2rem + 3.2vw, 4rem);
}

.website-reviews {
    gap: 1.25rem;
    display: flex;
    flex-wrap: wrap;
    max-width: 32.875rem;
}

@media (max-width: 1000px) {
    .website-reviews {
        gap: 0.5rem;
    }
}

.website-reviews a {
    width: calc(33.33% - 1.25rem);
}

.website-reviews a:nth-child(1),
.website-reviews a:nth-child(2) {
    width: calc(50% - 1.25rem);
}

.mt-32 {
    margin-top: clamp(1rem, 0.6rem + 1.6vw, 2rem);
}

.otzivy-widget {
    width: 28rem;
    height: 28rem;
    flex-shrink: 0;
    overflow: hidden;
    position: relative;
}

.container:has(.leave-review) .title {
    margin-top: 0;
}

@media (max-width: 1280px) {
    .otzivy-widget {
        width: 40rem;
        height: 40rem;
    }
}

@media (max-width: 800px) {
    .otzivy-widget {
        width: 100%;
    }
}

.btn--acc {
    display: flex;
    flex-direction: row !important;
}

.btn--acc .text {
    color: #141414 !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    line-height: 150% !important;
}

.btn--acc::before {
    content: '';
    width: 1.5rem;
    height: 1.5rem;
    display: inline-block;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M19.5 20.5C19.025 11.167 4.975 11.167 4.5 20.5M15 7.5C15 8.29565 14.6839 9.05871 14.1213 9.62132C13.5587 10.1839 12.7956 10.5 12 10.5C11.2044 10.5 10.4413 10.1839 9.87868 9.62132C9.31607 9.05871 9 8.29565 9 7.5C9 6.70435 9.31607 5.94129 9.87868 5.37868C10.4413 4.81607 11.2044 4.5 12 4.5C12.7956 4.5 13.5587 4.81607 14.1213 5.37868C14.6839 5.94129 15 6.70435 15 7.5Z" stroke="%23E02A1C" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

.menu--mb .btn--acc {
    width: calc(100% - 2.5rem) !important;
    gap: 0.5rem;
    padding: 0.625rem;
    border-radius: 4px;
    align-items: center;
    justify-content: center;
    margin: 1.5rem auto 2rem auto;
    background-color: #FFF !important;
}


.calc-btn--red {
    gap: 0.625rem;
    color: #FFF;
    display: grid;
    padding: 1.5rem;
    background-color: #E02A1C;
    border-radius: 4px;
    transition: opacity 0.25s ease;
    overflow: hidden;
    text-align: center;
    grid-template-columns: 2.5625rem 1fr;
}

.calc-btn--red:hover {
    opacity: 0.75;
}

.btn-icon--white {
    gap: 1rem;
    display: flex;
    align-items: center;
    padding: 0.625rem 1.25rem;
    font-size: 1.125rem;
    font-weight: 600;
    background-color: #FFF;
    border-radius: 4px;
}

.btn-icon--white svg {
    --ava: 2.5rem;
    width: 2.5rem;
    height: 2.5rem;
}

.menu--mb .btn-icon--white {
    font-size: 0.875rem;
    justify-content: center;
    max-width: calc(100% - 40px);
    margin: 1rem auto 0 auto;
}

.menu--mb .btn-icon--white svg {
    --ava: 1.25rem;
    width: 1.25rem;
    height: 1.25rem;
}

.header--help .calc-btn--red {
    width: 100%;
    max-width: 24rem;
    padding: 0.625rem 1.5rem;
    align-items: center;
    grid-template-columns: 1.5rem 1fr;
}

.header--help .calc-btn--red .icon {
    width: 1.5rem;
    height: 1.5rem;
}

.menu--item .child .item--link:has(.calc-btn--red) {
    width: 17.5rem;
}

.calc-btn--red .text {
    color: #FFF;
    font-weight: 600;
    font-size: 1.125rem;
    line-height: 1.3rem;
}

.calc-btn--red .icon {
    width: 2.5625rem;
    height: 2.5625rem;
}

.menu__popular-list .cart {
    padding: 1.25rem;
}

@media (max-width: 1300px) {
    .header--help .calc-btn--red {
        max-width: max-content;
        position: relative;
        padding: 0.625rem 1.25rem;
    }

    .header--help .calc-btn--red .icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .header--help .calc-btn--red .text {
        font-size: 0;
    }
}

@media (max-width: 970px) {
    .header--help .calc-btn--red {
        display: none;
    }
}

.cart--section-grid-4 .cart--section .content .h3 {
    margin-top: 0;
}

.leave-review-wrapper {
    max-width: 68rem;
}

.leave-review-wrapper #review_text {
    height: 5.75rem;
}

.leave-review .button {
    line-height: 150%;
}

.label-wrapper:has(input:required) label::after {
    content: '*';
    position: absolute;
    right: -8px;
    top: 0;
    color: #E02A1C;
}

.error-page {
    min-height: 59rem;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url('../img/404.png');
}

@media (max-width: 1000px) {
    .error-page {
        min-height: 54.8125rem;
        background-position: bottom;
        background-image: url('../img/404_mb.png');
    }
}

.error-page__info {
    gap: 1rem;
    color: #FFF;
    display: flex;
    flex-direction: column;
    max-width: 33rem;
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
}

.error-page__info .h1 {
    color: #FFF;
    margin-bottom: 0 !important;
}

.error-page__info p {
    margin-bottom: 0;
    max-width: 33rem;
}

.error-page__info .btn {
    margin-top: 1rem;
}

@media (max-width: 600px) {
    .error-page {
        min-height: clamp(40.1875rem, 9.875rem + 97vw, 46.25rem);
    }

    .error-page__info {
        padding-top: 4rem;
        padding-bottom: 4rem;
        text-align: center;
        align-items: center;
        max-width: 22.125rem !important;
    }

    .error-page__info .h1 {
        font-size: 2rem;
    }

    .error-page__info p {
        max-width: 21.25rem;
    }

    .error-page__info .btn {
        width: 100%;
    }
}


@media (max-height: 1000px) {
    #map {
        height: 60vh !important;
    }
}


span.title {
    line-height: 120%;
}

.menu2 .menu--item .child {
    overflow-x: hidden;
}

.version__web {
	display: flex;
	align-items: center;
	gap: 9px;
	color: #141414;
	font-weight: 400;
	font-size: 14px;
	/* line-height: 100%; */
	padding: 10px;
	background: #fff;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	width: 100%;
	max-width: 211px;
	margin: 0;
	position: absolute !important;
	box-shadow: 0px 4px 10px 0px #0000001A;
	height: 36px;
	line-height: 130%;
	justify-content: center;
}

.version__web svg {
	min-width: 16px;
	max-width: 16px;
}

.b24-window-close {
    padding: 0 !important;
}

.b24-form-control-container > input {
    width: max-content;
}

.b24-form {
    z-index: 2;
}