.fancybox-bg {
    background: linear-gradient(180deg, rgba(12, 50, 66, 0.92) -144.06%, rgba(8, 28, 51, 0.92) 100%);
}

.fancybox-slide--html {
    padding: 36px 15px;
}

.fancybox-close-small {
    display: block;
    width: 50px;
    height: 50px;
    padding: 0 !important;
    top: 8px !important;
    right: 8px !important;
    color: transparent !important;
    background-image: url(/local/templates/webcom_2018/images/vendor/fancybox/fancy-close-light-blue.svg);
    background-size: 18px;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 1;
    visibility: visible;
}

.fancybox-close-small:hover {
    background-image: url(/local/templates/webcom_2018/images/vendor/fancybox/fancy-close-red.svg);
}

.fancybox-close-small svg {
    display: none;
}

.fancybox-thumbs__list a:before {
    border: 4px solid #e2291c;
}

.fancybox-progress {
    background: #e2291c;
}

.fancybox-infobar {
    color: #eee;
    mix-blend-mode: unset;
}

/* Do not set "display: none;" for dynamic popups, to prevent bugs with positioning */
.b-popup:not(.b-popup--dynamic) {
    display: none;
}

.b-popup {
    max-width: 970px;
    padding: 48px;
    background-color: #fff;
    border-radius: 12px;
    box-shadow: 0 20px 20px rgba(0, 0, 0, 0.25);
}

.b-popup__inner--flex {
    display: flex;
}

.b-popup__img-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    width: 168px;
    height: 168px;
    margin-right: 48px;
    background-color: #00B9FF;
    border: 4px solid #F3FAFF;
    border-radius: 50%;
}

.b-popup__img-wrap--red {
    background-color: #e2291c;
    border: 4px solid #fff2f1;
}

.b-popup__img {
    max-width: 60px;
}

.b-popup__text--center {
    text-align: center;
}

.b-popup__title,
.fancybox-error .b-popup__title {
    margin: 0 0 28px;
    font-weight: 500;
    font-size: 24px;
    line-height: 28px;
    letter-spacing: 0.01em;
    text-transform: uppercase;
}

.b-popup__title--large {
    font-size: 32px;
    line-height: 38px;
}

.b-popup__title--orange {
    color: #FF9800;
}

.b-popup__title--blue {
    color: #008EC4;
}

.b-popup__title--red,
.fancybox-error .b-popup__title--red {
    color: #e2291c;
}

.b-popup__desc,
.fancybox-error .b-popup__desc,
.fancybox-error .b-popup__desc p {
    font-weight: 300;
    font-size: 16px;
    line-height: 1.4;
}

.b-popup__desc--large {
    font-size: 18px;
    line-height: 23px;
}

.b-popup__desc > :first-child,
.fancybox-error .b-popup__desc > :first-child {
    margin-top: 0;
}

.b-popup__desc > :last-child,
.fancybox-error .b-popup__desc > :last-child {
    margin-bottom: 0;
}

.b-popup__desc h2,
.b-popup__desc h3,
.b-popup__desc h4,
.b-popup__desc h5,
.b-popup__desc h6 {
    font-weight: 500;
}

.b-popup__desc p,
.fancybox-error .b-popup__desc p {
    margin: 0 0 24px;
}

.b-popup__desc b {
    font-weight: 500;
}

.b-popup__desc ul,
.b-popup__desc ol {
    margin: 0 0 24px;
    padding: 0;
}

.b-popup__desc ul > :last-child,
.b-popup__desc ol > :last-child {
    margin-bottom: 0;
}

.b-popup__desc ul li {
    display: block;
    margin: 0 0 16px;
    padding-left: 32px;
    position: relative;
}

.b-popup__desc ul li:before {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    position: absolute;
    top: 8px;
    left: 0;
    background-color: #ff9800;
    border-radius: 50%;
}

.b-popup__desc ol {
    counter-reset: int;
    list-style: none;
}

.b-popup__desc ol li {
    position: relative;
    margin: 0 0 20px;
    padding-left: 57px;
}

.b-popup__desc ol li:before {
    counter-increment: int;
    content: counter(int);
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 32px;
    height: calc(100% + 12px);
    min-height: 32px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
    font-weight: 900;
    border-radius: 8px;
    color: #ff9800;
    background-color: #f3faff;
}

.b-popup__desc .text-extra-large {
    font-size: 32px;
    line-height: 38px;
    font-weight: 500;
}

.b-popup__desc .text-large {
    font-size: 24px;
    line-height: 36px;
}

.b-popup__desc .text-medium {
    font-size: 20px;
    line-height: 24px;
}

.b-popup__desc .text-small {
    font-size: 14px;
    line-height: 17px;
}

.b-popup__btn-wrap {
    margin-top: 40px;
}

.b-popup__btn-wrap--center {
    display: flex;
    justify-content: center;
}

.b-popup__btn {
    display: block;
    min-width: 222px;
    padding: 12px 48px;
    text-align: center;
    border: 0;
}

.b-popup__link-wrap {
    margin: 0;
    font-size: 17px;
    font-weight: 400;
    line-height: 22px;
    text-align: center;
    color: #595959;
}

.b-popup__flex-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-top: 24px;
}

.b-popup__flex-wrap .b-popup__link {
    margin-right: 32px;
}


/* Modals with custom text-colors */
.b-popup--text-white {
    color: #fff;
}


/* Modals with custom backgrounds */
.b-popup--gr-dark-blue {
    background: linear-gradient(180deg, #1C364A -2.33%, #486E91 79.08%);
}


/* Response-modals */
.b-popup--response .b-popup__inner {
    display: flex;
    align-items: center;
}

.b-popup--response .b-popup__img {
    max-width: 100px;
}


/* Modals with forms */
.b-popup--form {
    width: 970px;
    padding: 30px 48px 26px;
}


/* Review modal */
.b-popup--review {
    padding: 48px 48px 36px;
}

.b-popup--review .b-popup__inner {
    position: relative;
}

.b-popup__review,
.b-popup__review .b-review__info,
.b-popup__review .b-review__rating {
    display: flex
}

.b-popup__review {
    align-items: flex-start
}

.b-popup__review .b-review__rating {
    align-items: center;
    margin-bottom: 13px
}

.b-popup__review .b-review__rating .b-rating__star {
    margin-left: -1px;
    margin-right: 8px;
}

.b-popup__review .b-review__rating .b-rating__star,
.b-popup__review .b-review__rating .b-rating__star span {
    display: inline-block;
    width: 103px;
    height: 18px;
    background: url(/local/templates/webcom_2018/images/reviews-new/item/stars.svg) repeat-x 0 0;
    background-size: 21px 36px;
}

.b-popup__review .b-review__rating .b-rating__star span {
    background-position: 0 -18px
}

.b-popup__review .b-review__rating .b-rating__value {
    margin: 0;
    font-size: 17px;
    line-height: 22px;
    font-weight: 300;
}

.b-popup__review .b-review__info {
    flex-direction: column;
    flex-grow: 1;
    width: 100%;
}

.b-popup__review .b-review__img-wrap {
    flex-shrink: 0;
    width: 170px;
    margin-right: 30px;
}

.b-popup__review .b-review__img {
    width: 100%;
    border-radius: 6px;
    box-shadow: 0 6px 12px rgba(113, 124, 130, .22);
    transition: box-shadow .3s;
}

.b-popup__review .b-review__img-wrap:hover img {
    box-shadow: 0 6px 12px rgba(113, 124, 130, .4);
}

.b-popup__review .b-review__author {
    margin: 0 0 4px;
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    letter-spacing: 0.01em;
    color: #1C1C1C;
}

.b-popup__review .b-review__company {
    margin: 0 0 24px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
    color: #8a979f;
}

.b-popup__review .b-review__company-post {
    margin: 0;
    font-weight: 300;
}

.b-popup__review .b-review__textual {
    flex-direction: column;
    margin: 0 0 24px;
    font-size: 17px;
    font-weight: 300;
    line-height: 22px;
    color: #576a75;
}

.b-popup__review .b-review__textual > :first-child {
    margin-top: 0;
}

.b-popup__review .b-review__textual > :last-child {
    margin-bottom: 0;
}

.b-popup__review .b-review__textual p {
    margin: 0 0 24px;
}

.b-popup__review .b-review__textual b {
    font-weight: 500;
}


/* Bonus-modal with form */
.b-popup--bonus .b-popup__form {
    max-width: 970px;
    margin: 42px auto 0;
    padding: 24px 40px;
    position: relative;
    background-color: #fff;
    border-radius: 10px;
}

.b-popup--bonus .b-form__preloader {
    box-shadow: none !important;
}


/* Default fancybox error-modal */
.fancybox-error {
    max-width: 970px;
    padding: 0;
    background-color: #fff;
    border-radius: 12px;
    box-shadow: none;
}


/* Custom preloder (to show before opening ajax-modals) */
.custom-preloader {
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 100000;
    text-align: center;
    background: linear-gradient(180deg, rgba(12, 50, 66, 0.92) -144.06%, rgba(8, 28, 51, 0.92) 100%);
    opacity: .9;
}

.custom-preloader__img {
    display: block;
    width: 200px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}


/* Media queries */
@media only screen and (max-width: 1199px) {
    .fancybox-slide--html {
        padding: 16px 24px;
    }

    .b-popup {
        padding: 40px;
    }

    .b-popup__img-wrap {
        width: 128px;
        height: 128px;
        margin-right: 40px;
    }

    .b-popup__img {
        max-width: 46px;
    }

    .b-popup--response .b-popup__img {
        max-width: 76px;
    }

    .b-popup--response-error .b-popup__img {
        max-width: 52px;
    }

    .b-popup__desc ul li:before {
        top: 6px;
    }

    .b-popup__btn-wrap {
        margin-top: 32px;
    }

    .b-popup--form {
        padding: 24px 40px 21px;
    }

    .b-popup--review {
        padding: 40px 40px 36px;
    }

    .b-popup__review .b-review__img-wrap {
        margin-right: 24px;
    }

    .b-popup__desc,
    .b-popup__link-wrap,
    .b-popup__review .b-review__rating .b-rating__value,
    .b-popup__review .b-review__textual,
    .fancybox-error .b-popup__desc,
    .fancybox-error .b-popup__desc p {
        font-size: 16px;
        line-height: 20px;
    }

    .b-popup__desc--large {
        font-size: 18px;
        line-height: 23px;
    }

    .b-popup--bonus .b-popup__form {
        margin: 32px auto 0;
    }
}

@media only screen and (max-width: 1023px) {
    .b-popup__img-wrap {
        width: 94px;
        height: 94px;
        margin-right: 24px;
    }

    .b-popup__img {
        max-width: 30px;
    }

    .b-popup--response .b-popup__img {
        max-width: 54px;
    }

    .b-popup--response-error .b-popup__img {
        max-width: 38px;
    }

    .b-popup__title,
    .fancybox-error .b-popup__title {
        margin-bottom: 24px;
        font-size: 20px;
        line-height: 24px;
    }

    .b-popup__title--large {
        font-size: 24px;
        line-height: 32px;
    }

    .b-popup__desc ul li {
        padding-left: 24px;
    }

    .b-popup__desc ol li {
        padding-left: 49px;
    }

    .b-popup__desc .text-extra-large {
        font-size: 24px;
        line-height: 32px;
    }

    .b-popup__desc .text-large {
        font-size: 20px;
        line-height: 28px;
    }

    .b-popup__desc .text-medium {
        font-size: 16px;
        line-height: 22px;
    }

    .b-popup__btn-wrap {
        margin-top: 24px;
    }

    .b-popup__btn {
        padding: 14px 16px;
    }

    .b-popup__flex-wrap .b-popup__link {
        margin-right: 24px;
    }

    .b-popup--form {
        width: 100%;
        padding: 24px 32px 21px;
    }

    .b-popup__review .b-review__img-wrap {
        margin-right: 16px;
    }

    .b-popup__review .b-review__rating .b-rating__value {
        margin-top: 1px;
    }

    .b-popup__review .b-review__author {
        font-size: 16px;
        line-height: 20px;
    }

    .b-popup__review .b-review__company {
        margin: 0 0 18px;
    }

    .b-popup__desc,
    .b-popup__link-wrap,
    .b-popup__review .b-review__rating .b-rating__value,
    .b-popup__review .b-review__textual,
    .fancybox-error .b-popup__desc,
    .fancybox-error .b-popup__desc p {
        font-size: 15px;
        line-height: 19px;
    }

    .b-popup__desc--large {
        font-size: 16px;
        line-height: 22px;
    }

    .b-popup--bonus .b-popup__form {
        padding: 24px;
    }
}

@media only screen and (max-width: 767px) {
    .fancybox-slide--html {
        padding: 16px;
    }

    .fancybox-close-small {
        top: 8px !important;
        right: 50% !important;
        background-size: 16px;
        transform: translateX(50%);
    }

    .b-popup {
        padding: 60px 16px 21px;
    }

    .b-popup__img-wrap {
        display: none;
    }

    .b-popup__title,
    .fancybox-error .b-popup__title {
        margin-bottom: 16px;
        font-size: 18px;
        line-height: 22px;
        text-transform: none;
    }

    .b-popup__title br {
        display: none;
    }

    .b-popup__desc ul li,
    .b-popup__desc ol li {
        margin-bottom: 12px;
    }

    .b-popup__desc ul li {
        padding-left: 10px;
    }

    .b-popup__desc ul li:before {
        width: 2px;
        height: calc(100% - 6px);
        top: 4px;
        border-radius: 0;
    }

    .b-popup__desc ol li {
        padding-left: 24px;
    }

    .b-popup__desc ol li:before {
        min-width: 0;
        min-height: 0;
        height: auto;
        padding: 0;
        top: 0;
        background: none;
        transform: none;
    }

    .b-popup__desc ol li:after {
        display: block;
        content: '';
        position: absolute;
        top: 20px;
        left: 4px;
        width: 2px;
        height: calc(100% - 20px);
        background: #EFF2F7;
    }

    .b-popup__desc .text-extra-large {
        font-size: 18px;
        line-height: 22px;
    }

    .b-popup__desc .text-large,
    .b-popup__desc .text-medium {
        font-size: 14px;
        line-height: 17px;
    }

    .b-popup__desc .text-small {
        font-size: 12px;
        line-height: 14px;
    }

    .b-popup__btn-wrap {
        margin-top: 16px;
    }

    .b-popup__flex-wrap {
        flex-direction: column;
        align-items: center;
        flex-wrap: nowrap;
        margin-top: 16px;
    }

    .b-popup__flex-wrap .b-popup__link {
        margin-right: 0;
        margin-bottom: 10px;
    }

    .b-popup__flex-wrap > :last-child {
        margin-bottom: 0;
    }

    .b-popup--response .b-popup__text {
        text-align: center;
    }

    .b-popup__review {
        flex-wrap: wrap;
        align-items: stretch;
    }

    .b-popup__review .b-review__img-wrap {
        width: 90px;
        margin-right: 12px;
    }

    .b-popup__review .b-review__img {
        border-radius: 4px;
    }

    .b-popup__review .b-review__info {
        width: calc(100% - 90px - 18px);
        justify-content: center;
        position: relative;
    }

    .b-popup__review .b-review__rating .b-rating__star {
        margin-right: 10px;
    }

    .b-popup__review .b-review__rating .b-rating__star,
    .b-popup__review .b-review__rating .b-rating__star span {
        width: 89px;
        height: 15px;
        background-size: 18px 32px;
    }

    .b-popup__review .b-review__rating .b-rating__star span {
        background-position: 0 -17px;
    }

    .b-popup__review .b-review__rating .b-rating__value {
        margin-top: 0;
    }

    .b-popup__review .b-review__author {
        font-size: 15px;
        line-height: 19px;
    }

    .b-popup__review .b-review__company {
        margin: 0;
        line-height: 17px;
    }

    .b-popup__review .b-review__textual {
        width: 100%;
        margin-top: 24px;
    }

    .b-popup__desc p,
    .b-popup__desc ul,
    .b-popup__desc ol,
    .b-popup__review .b-review__textual p,
    .fancybox-error .b-popup__desc p {
        margin: 0 0 16px;
    }

    .b-popup__desc,
    .b-popup__desc--large,
    .b-popup__link-wrap,
    .b-popup__review .b-review__rating .b-rating__value,
    .b-popup__review .b-review__textual,
    .fancybox-error .b-popup__desc,
    .fancybox-error .b-popup__desc p {
        font-size: 14px;
        line-height: 17px;
    }

    .b-popup--bonus {
        padding: 60px 16px 16px;
    }

    .b-popup--bonus .b-popup__title {
        text-transform: uppercase;
    }

    .b-popup--bonus .b-popup__form {
        margin: 24px auto 0;
        padding: 24px 16px 16px;
    }

    .b-popup--bonus .b-form__head {
        align-items: flex-start;
    }

    .b-popup--bonus .b-popup__form .b-form__head-img-wrap {
        display: flex;
        margin-right: 8px;
    }

    .b-popup--bonus .b-popup__form .b-form__head-text {
        text-align: left;
    }

    .b-popup--bonus .b-form__title {
        font-size: 14px;
        line-height: 19px;
    }

    .b-popup--bonus .b-form__desc {
        font-size: 12px;
        line-height: 17px;
    }
}

@media only screen and (max-width: 360px) {
    .b-popup__btn {
        width: 100%;
    }
}