@import url('https://fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,400;0,500;1,400;1,500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,300;0,400;0,700;1,400;1,700&display=swap');

html, body {
    font: 400 14px/1.3 'Ubuntu', sans-serif;
    font-style: normal;
    font-variant-ligatures: normal;
    font-variant-caps: normal;
    font-variant-numeric: normal;
    font-variant-east-asian: normal;
    font-stretch: normal;
    /*letter-spacing: -0.35px;*/
    background: #f4f4f4;
    height: 100%;
    color: #333333;
}

h1 {
    text-align: center;
    color: #000;
    font-size: 2.9em;
    font-weight: 600;
    margin: .17em 0;
    font-family: "Times New Roman";
}

main {
    font-family: 'Roboto', sans-serif;
}

main img {
    max-width: 100%;
    height: auto;
}

@media (min-width: 992px) {
    section.gray {
        background: #e2e2e2;
        /*overflow: hidden;*/
    }

}

.panel {
    background: #ffffff;
    border: 1px solid #e1e1e1;
    border-radius: 3px;
    padding: 1.25rem;
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .1);
    /*min-height: 80px;*/
    /*margin: 0 0 16px;*/
}

.panel.panel-hover {
    position: relative;
    top: 0;
    transition: all 0.25s ease;
}

.panel.panel-hover:hover {
    top: -4px;
    box-shadow: 0 0 1px 0 #e1e1e1, 0 5px 6px 0 rgba(0, 0, 0, .13);
}

.wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.cont {
    width: calc(100% - 260px);
    max-width: 1060px;
    margin: 0 auto;
}

#blur {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, .3);
    z-index: 10;
}

header {
    padding: 16px 0 0;
}

main {
    flex-grow: 1;
    padding: 35px 0 0;
}

footer {
    flex-shrink: 0;
    height: 200px;
    background: #000000;
}

nav {
    margin: 0;
    padding: 0;
    z-index: 100;
}

.header {
    padding: 0;
    position: relative;
}

.header .logo {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    display: flex;
}

.header .logo a,
.header .logo span {
    display: flex;
    align-items: center;
    padding: 0 15px;
    text-decoration: none;
    transition: all .3s ease;
}

nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

@media (min-width: 992px) {
    .header .logo a:hover {
        background: #f6f6f6;
    }

    .foot-icons a {
        margin: 5px;
    }

    nav ul.left-menu {
        width: 90px;
        position: fixed;
        top: 0;
        margin: 0 0 0 -131px;
        padding: 22px 0 75px;
        color: #ffffff;
        background: #000000;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        text-align: center;
        z-index: 1;
    }

    nav ul.left-menu li {
        margin: 0;
        padding: 0 5px;
    }

    nav ul.left-menu li + li {
        margin-top: 12px;
    }

    nav ul.left-menu li a,
    nav ul.left-menu li span {
        display: block;
        border-radius: 8px;
        padding: 15px 0 14px;
        font-size: 12px;
        font-weight: 500;
        line-height: 1;
        color: #ffffff;
        text-decoration: none;
        transition: all .3s ease;
        position: relative;
    }

    nav ul.left-menu li img {
        display: block;
        margin: 0 auto 10px;
    }

    nav ul.left-menu li a:hover {
        background: rgba(255, 255, 255, .5);
    }

    nav ul.left-menu li.active span {
        background: rgba(255, 255, 255, .5);
        cursor: default;
    }

    nav ul.left-menu:before,
    nav ul.left-menu:after {
        content: '';
        width: 0;
        height: 0;
        border-style: solid;
        position: absolute;
        bottom: -45px;
    }

    nav ul.left-menu:before {
        border-width: 0 0 45px 51px;
        border-color: transparent transparent transparent #000000;
        left: 0;
    }

    nav ul.left-menu:after {
        border-width: 0 52px 45px 0;
        border-color: transparent #000000 transparent transparent;
        right: 0;
    }

    nav ul.top-menu {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-end;
        padding: 0;
    }

    nav ul.top-menu li {
    }

    nav ul.top-menu li a,
    nav ul.top-menu li span {
        display: block;
        padding: 30px 13px;
        font-weight: 500;
        text-decoration: underline;
        transition: all .3s ease;
        color: #000000;
    }

    nav ul.top-menu li a:hover,
    nav ul.top-menu li.active span {
        color: #000000;
        background: #f6f6f6;
        text-decoration: none;
    }
}


@media (max-width: 991px) {
    .cont {
        width: 100%;
    }



    main {
        padding-left: 15px;
        padding-right: 15px;
    }

    header {
        padding-top: 0;
    }

    .header {
        display: flex;
        justify-content: center;
        align-items: center;
        min-height: 62px;
    }

    .header .logo {
        position: static;
        transform: none;
    }

    .header .logo img {
        max-width: 100%;
    }

    .header .burger {
        width: 48px;
        height: 48px;
        background: rgba(220, 220, 220, 1);
        border-radius: 5px;
        position: absolute;
        right: -53px;
        top: 6px;
        cursor: pointer;
    }

    .header .burger span {
        display: block;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 60%;
        height: 3px;
        background: #aaaaaa;
    }

    .header .burger:before,
    .header .burger:after {
        content: "";
        display: block;
        position: absolute;
        width: 60%;
        height: 3px;
        background: #aaaaaa;
        left: 50%;
        transform: translateX(-50%);
    }

    .header .burger:before {
        top: 33%;
    }

    .header .burger:after {
        bottom: 33%;
    }

    nav {
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        min-width: 240px;
        text-align: left;
        background: #ffffff;
        box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .1);
        transform: translate(-100%, 0);
        transition: all 0.5s ease;
    }

    nav.active {
        transform: translate(0, 0);
    }

    nav + .nav-blur {
        background: rgba(0, 0, 0, 0.5);
        position: fixed;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        z-index: 99;
        opacity: 0;
        visibility: hidden;
        transition: all 0.5s ease;
    }

    nav.active + .nav-blur {
        opacity: 1;
        visibility: visible;
    }

    nav ul {
    }

    nav ul li {
        border-bottom: 1px solid #dddddd;
    }

    nav ul li a,
    nav ul li span {
        display: block;
        padding: 10px 15px;
        color: #333333;
        max-width: 100%;
    }

    nav ul li.active span {
    }

    nav ul.left-menu li img {
        display: none;
    }

}


footer {
    color: #ffffff;
    padding: 50px 0;
}

footer .copyright {
    margin-top: 16px;
}

footer .links a {
    display: inline-block;
    position: relative;
    color: #ffffff;
    text-decoration: none;
    padding: 5px 10px;
    border-radius: 2px;
    transition: all .2s ease;
}

footer .links a:after {
    content: "";
    display: block;
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 4px;
    height: 1px;
    background: #ffffff;
}

footer .links a:hover {
    color: #000000;
    background: #ffffff;
}

footer .links a + a {
    margin-left: 15px;
}

.filter-block {
    margin: 25px 0;
}

.row.gut-10,
.webinar-list {
    margin-left: -10px;
    margin-right: -10px;
}

.row.gut-10 > div,
.webinar-list .item {
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 20px;
}

.row.gut-10 > div > .panel {
    height: 100%;
}

.webinar-list .item a {
    display: block;
    height: 100%;
    color: #000000;
    text-decoration: none;
}

.webinar-list .item a span {
    display: block;
}

.webinar-list .item a .image-dummy {
    padding-top: 32%;
    position: relative;
    margin: 0 0 10px;
}

.webinar-list .item a .image-dummy img {
    width: 100%;
    display: block;
    position: absolute;
    top: 0;
}

.webinar-list .item a .name {
    font-weight: bold;
    margin: 5px 0;
}

.webinar-list .item a .description {
    font-size: 0.9rem;
    color: #999999;
}

.webinar-list .item a > hr {
    margin: 15px -10px;
}

.webinar-list .item a .info {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}

.webinar-list .item a .info .speakers {
    font-style: italic;
    padding: 0 15px 0 0;
    margin-right: auto;
}

.webinar-list .item a .info .available {
    line-height: 1;
    text-align: right;
    max-width: 90px;
}

.calendar {
    margin-left: 15px;
    background: #eaeaea;
    border-radius: 2px;
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
}

.calendar span {
    display: block;
}

.calendar .lines {
    background: repeating-linear-gradient(to bottom, rgba(146, 146, 146, .1), rgba(146, 146, 146, .1) 1px, transparent 1px, transparent 5px);
    padding: 0 0 5px;
}

.calendar.old {
    border-top: 10px solid #02d980;
    padding: 6px 3px 5px;
}

.calendar.old .icon {
    width: 24px;
    height: 21px;
    background: url("../images/sprite.svg") -125px -220px no-repeat;
    display: block;
    margin: 1px auto 2px;
}

.calendar.new {
    border-top: 10px solid #2570bc;
    padding: 6px 13px 5px;
    text-align: center;
}

.calendar.new .day {
    font-size: 1.5rem;
}

.calendar.new .month {
    font-size: 1rem;
}

.calendar.new hr {
    margin: 5px -13px;
}

@media (max-width: 576px) {
    .webinar-list .item a .info {
        flex-direction: column;
        align-items: flex-end;
    }

    .webinar-list .item a .info > span + span {
        margin-top: 10px;
    }

    .webinar-list .item a .info .available {
        max-width: none;
    }

    .foot-icons {
        display: inline-grid;
    }
}


.filter-block {
    font-size: 1.2rem;
}

.filter-block .filter-reset {
    color: #0056b3;
    text-decoration: underline;
    margin: 10px 0 0;
    display: inline-block;
}

.filter-block .filter-reset:hover {
    color: #007bff;
    text-decoration: none;
}

.filter-block .filter-theme {
    margin-right: 25px;
    position: relative;
    z-index: 20;
}

.filter-block .filter-type {
    /*margin-right: 25px;*/
    /*display: inline-block;*/
}

.filter-block .filter-type .chosen-container-multi .chosen-choices {
    padding: 10px;
}

.filter-theme {
    position: relative;
    border: 1px solid #dddddd;
    border-radius: 2px;
    display: inline-block;
    background: #ffffff;
    cursor: pointer;
}


.filter-theme .placeholder {
    padding: 10px 15px;
}

.filter-theme .placeholder span {
    margin-left: 0.5rem;
}

.filter-theme .placeholder:after {
    display: inline-block;
    margin-left: .5em;
    vertical-align: .15em;
    content: "";
    border-top: .3em solid;
    border-right: .3em solid transparent;
    border-bottom: 0;
    border-left: .3em solid transparent;
}

.filter-theme .drop-area {
    position: absolute;
    background: #ffffff;
    z-index: 20;
    left: -1px;
    right: -1px;
    top: calc(100% + 5px);
    border: 1px solid #dddddd;
    cursor: default;
    box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .1);
    display: none;
}

.filter-theme.opened .drop-area {
    display: block;
}

.filter-theme .drop-area ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.filter-theme .drop-area ul li {
    padding: 8px 13px;
}

.filter-theme .drop-area ul li:hover {
    background: #eeeeee;
}

.filter-theme .drop-area ul li label {
    display: block;
}


.webinar-view {
}

.webinar-view .image {
    padding: 0;
    background: center center no-repeat transparent;
    background-size: cover;
}

.webinar-view .image .info {
    width: 50%;
    background: rgba(0, 0, 0, 0.5);
    color: #ffffff;
    padding: 25px;
    min-height: 25vw;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    overflow: hidden;
}

.webinar-view .image .info h1 {
    margin: 0;
    padding: 0;
    text-align: left;
    color: #ffffff;
    line-height: 1;
    font-weight: 400;
}

.webinar-view .image .info .event-type {
    background: #28a745;
    padding: 5px 10px;
    display: inline-block;
    border-radius: 2px;
    margin-top: 35px;
}

.webinar-view .webinar-content {
    margin-top: 93px;
}

.webinar-view .webinar-content .cont {
    position: relative;
    top: -93px;
}

.webinar-view .cols {
    margin-left: -10px;
    margin-right: -10px;
}

.webinar-view .cols > div {
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 20px;
}

.webinar-view .cols .panel {
    height: 100%;
    padding: 30px;
}

.webinar-view .cols .panel .title {
    font-size: 2rem;
    margin-bottom: 10px;
}

.webinar-view .cols2 {
    display: flex;
}

.webinar-view .cols2 > div {
}

.webinar-view .cols2 > div + div {
    margin-left: auto;
}

.webinar-view .cols .panel .calendar {
    display: inline-block;
}

@media (max-width: 991px) {
    .webinar-view .image .info {
        width: 100%;
    }

    
}


ul.pgwSlider.narrow > li,
.pgwSlider.narrow > .ps-list > li {
    min-height: auto;
}

.slider-block {
    overflow: hidden;
    margin-bottom: 29px;
}

.slider-block a {
    color: #fff;
}

.main-content {
    margin: 0 0 38px;
}

.main-content h1 {
}

.main-content .text {
    margin-bottom: 18px;
    color: #999999;
}

@media (min-width: 1200px) {
    .infographic-block {
        margin: 0 85px;
    }

    .foot-icons a {
        margin: 5px;
    }
}

.infographic-block {
    color: #666666;
}

.infographic-block .item {
    text-align: center;
}

.infographic-block .item img {
}

.infographic-block .item .title {
    font-weight: bold;
    margin: 33px 0 9px;
}

.infographic-block .item p {
}

.main-webinar-list {
    padding: 27px 0 41px;
}

h2.main-h2 {
    text-align: center;
    color: #000;
    font-size: 2.9em;
    font-weight: 300;
    margin: 0 0 27px;
}

.infographic-block.ib-2 {
    padding: 36px 0 25px;
}

.infographic-block.ib-2 h2 {
    margin-bottom: 27px;
}


.main-widgets {
    padding: 40px 0;
}

.main-widgets .row {
    margin-left: -10px;
    margin-right: -10px;
}

.main-widgets .row > div {
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 20px;
}

.main-widgets .row > div .panel {
    height: 100%;
}

/*******************************************************************************/
.testimonials-widget {
    padding: 25px 0;
}

.testimonials-widget h2 {
    margin: 0;
}

.testimonials-widget ul {
    list-style: none;
    margin: 0;
    padding: 30px;
}

.testimonials-widget ul li {
}

.testimonials-widget ul li + li {
    margin-top: 29px;
}

.testimonials-widget ul li .info {
    display: flex;
    align-items: center;
}

.testimonials-widget ul li .info .avatar {
    overflow: hidden;
    border-radius: 50%;
    margin-right: 15px;
    flex-shrink: 0;
}

.testimonials-widget ul li .info .avatar img {
}

.testimonials-widget ul li .info .params {
    color: #000000;
}

.testimonials-widget ul li .info .params .name {
    font-weight: bold;
}

.testimonials-widget ul li .info .params .date {
    color: #999999;
    font-size: 0.9rem;
}

.testimonials-widget ul li .description {
    margin: 7px 0 0;
    font-size: 14px;
    color: #666666;
    font-weight: 400;
}

.testimonials-widget .buttons {
}


/*********************************************************************/
.last-news-widget {
    padding: 25px 0;
}

.last-news-widget h2 {
    margin: 0;
}

.last-news-widget ul {
    list-style: none;
    margin: 0;
    padding: 30px;
}

.last-news-widget ul li {
}

.last-news-widget ul li + li {
    margin-top: 29px;
}

.last-news-widget ul li .info {
    display: flex;
    align-items: center;
}

.last-news-widget ul li .info .image {
    overflow: hidden;
    border-radius: 50%;
    margin-right: 15px;
    flex-shrink: 0;
}

.last-news-widget ul li .info .image img {
}

.last-news-widget ul li .info .params {
    color: #000000;
}

.last-news-widget ul li .info .params .date {
    color: #000000;
    font-weight: bold;
}

.last-news-widget ul li .info .params .date:after {
    content: "|";
    display: inline-block;
    margin: 0 5px;
    position: relative;
    top: -1px;
}

.last-news-widget ul li .info .params .name {
    font-weight: bold;
}

.last-news-widget ul li .description {
    margin: 7px 0 0;
    font-size: 12px;
    color: #666666;
    font-weight: 400;
}

.last-news-widget .buttons {
}


.request {
    padding: 35px 0;
}

.request input,
.request select,
.request textarea {
    border-width: 2px;
    border-color: #cccccc;
    padding: 20px;
    border-radius: 0;
}

.request textarea {
    resize: vertical;
}

.section-request {
    margin-top: 35px;
}

@media (min-width: 1200px) {
    .request {
        margin: 0 85px;
    }
}


/*******************************************************/
.has-error input,
.has-error select,
.has-error textarea {
    border-color: #dc3545;
    padding-right: calc(1.5em + .75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns= 'http://www.w3.org/2000/svg' fill= '%23dc3545' viewBox= '-2 -2 7 7' %3e%3cpath stroke= '%23dc3545' d= 'M0 0l3 3m0-3L0 3' /%3e%3ccircle r= '.5' /%3e%3ccircle cx= '3' r= '.5' /%3e%3ccircle cy= '3' r= '.5' /%3e%3ccircle cx= '3' cy= '3' r= '.5' /%3e%3c/svg%3E");
    background-repeat: no-repeat;
    background-position: center right calc(.375em + .1875rem);
    background-size: calc(.75em + .375rem) calc(.75em + .375rem);
}

.has-error input:focus,
.has-error select:focus,
.has-error textarea:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, .25);
}

/*******************************************************/


.theme-list {
    margin-top: 30px;
}

.theme-list a {
    display: block;
    text-decoration: none;
    color: #000000;

}

.theme-list .popup-video {
    position: relative;
}

.theme-list .popup-video:after {
    content: "";
    display: block;
    width: 85px;
    height: 85px;
    background: url("../images/playicon.png") center center no-repeat rgba(255, 255, 255, 0.7);
    border-radius: 50%;
    box-shadow: 0 0 10px -5px #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.theme-list img {
    display: block;
    width: 100%;
}

.theme-list .name {
    font-size: 21px;
    font-weight: bold;
    display: block;
    padding: 15px;
    color: #000000;
    background-color: white;
    font-family: "Times New Roman";
}

.h3, h3, .h2, h2 {
    font-family: "Times New Roman";
    font-weight: bold;
}


.theme-list hr {
    margin: 0;
}

.theme-list .announce {
    margin: 15px 0 5px;
    font-size: 0.9em;
    color: #999;
}

.theme-list ul {
    margin-top: 24px;
    list-style-type: square;
}


.yt-video-wrapper {
    width: 100%;
    padding-top: 56.25%;
    position: relative;
}

.yt-video-container {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
}

.yt-popup-blur {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.85);
    z-index: 1000;
    display: none;
}

.yt-popup {
    width: calc(100% - 100px);
    max-width: 960px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.yt-popup .close {
    position: absolute;
    top: -9px;
    right: -54px;
    padding: 10px;
    cursor: pointer;
}

.yt-popup .close:before {
    transition: all .2s;
    display: block;
    content: '';
    width: 23px;
    height: 23px;
    background: url("../images/sprite.svg") -274px -2px no-repeat;
}


.article-list {
}

.article-list .name {
    text-transform: uppercase;
    font-weight: bold;
}

.article-list .coauthors {
    font-style: italic;
}

.article-list .patent {
}


/************************************************************/
.content-popup-blur {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.85);
    z-index: 1000;
    display: none;
}

.content-popup {
    max-width: calc(100% - 100px);
    padding: 25px;
    background: #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.content-popup .close {
    position: absolute;
    top: -9px;
    right: -54px;
    padding: 10px;
    cursor: pointer;
}

.content-popup .close:before {
    transition: all .2s;
    display: block;
    content: '';
    width: 23px;
    height: 23px;
    background: url("../images/sprite.svg") -274px -2px no-repeat;
}

.popup-article-request {
    width: 400px;
    max-width: 100%;
}

/*********************************************************************/
.general-list {
}

.general-list .item {
    display: flex;
    padding: 25px;
    border-top: 1px solid #e1e1e1;
}

.general-list .item .image {
    flex-shrink: 0;
    margin-right: 15px;
}

.general-list .item .image img {
    border-radius: 50%;
}

.general-list .item .info {
}

.general-list .item .info .name {
    font-weight: bold;
}

.general-list .item .info .date {
    margin-top: 5px;
    opacity: 0.5;
    font-weight: 400;
}

.general-list .item .info .content {
    margin-top: 12px;
}

@media (max-width: 575px) {
    .general-list .item {
        padding: 25px 0;
    }

    .foot-icons a {
        margin: 5px;
    }

    .general-list .item .info .name {
        margin-top: 7px;
    }

    .general-list .item .info .content {
        margin-top: 20px;
        margin-left: -68px;
    }

    .news-list .item .image img {
        width: 52px;
    }
}


.js-up {
    position: fixed;
    right: 40px;
    bottom: 132px;
    cursor: pointer;
    text-align: center;
    color: #aaa;
    transition: all .2s;
    opacity: 0;
    visibility: hidden;
}

.js-up.show {
    opacity: 1;
    visibility: visible;
}

.js-up:hover {
    color: #004f9f;
}

.js-up span {
    display: block;
    margin-top: 3px;
}

.js-up i {
    font-size: 1.6rem;
}

@media (max-width: 991px) {
    .js-up {
        display: none;
    }

    .foot-icons a {
        margin: 5px;
    }
}


/*****************************************************************/
.news-view {
}

.news-view .panel {
    overflow: hidden;
}

.news-view .news-date {
    text-align: center;
    font-size: 1.5rem;
}

.news-view .news-image {
    float: left;
    margin: 0 10px 10px 0;
}


/*******************************************************************/
article.wysiwyg {
}

article.wysiwyg table {
    width: 100%;
}

article.wysiwyg table tr:nth-child(2n + 1) {
    background: rgba(0, 0, 0, .05);
}

article.wysiwyg table tr:hover {
    background: rgba(0, 0, 0, .075);
}