

/*СНЕГ*/
.snowflake {
color: white;
font-size: 1em;
text-shadow: 0 0 3px #000;
}

@-webkit-keyframes snowflakes-fall{0%{top:-10%}100%{top:100%}}

@-webkit-keyframes snowflakes-shake{0%{-webkit-transform:translateX(0px);transform:translateX(0px)}50%{-webkit-transform:translateX(80px);transform:translateX(80px)}100%{-webkit-transform:translateX(0px);transform:translateX(0px)}}

@keyframes snowflakes-fall{0%{top:-10%}100%{top:100%}}

@keyframes snowflakes-shake{0%{transform:translateX(0px)}50%{transform:translateX(80px)}100%{transform:translateX(0px)}}.snowflake{position:fixed;top:-10%;z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default;-webkit-animation-name:snowflakes-fall,snowflakes-shake;-webkit-animation-duration:10s,3s;-webkit-animation-timing-function:linear,ease-in-out;-webkit-animation-iteration-count:infinite,infinite;-webkit-animation-play-state:running,running;animation-name:snowflakes-fall,snowflakes-shake;animation-duration:10s,3s;animation-timing-function:linear,ease-in-out;animation-iteration-count:infinite,infinite;animation-play-state:running,running}.snowflake:nth-of-type(0){left:1%;-webkit-animation-delay:0s,0s;animation-delay:0s,0s}.snowflake:nth-of-type(1){left:10%;-webkit-animation-delay:1s,1s;animation-delay:1s,1s}.snowflake:nth-of-type(2){left:20%;-webkit-animation-delay:6s,.5s;animation-delay:6s,.5s}.snowflake:nth-of-type(3){left:30%;-webkit-animation-delay:4s,2s;animation-delay:4s,2s}.snowflake:nth-of-type(4){left:40%;-webkit-animation-delay:2s,2s;animation-delay:2s,2s}.snowflake:nth-of-type(5){left:50%;-webkit-animation-delay:8s,3s;animation-delay:8s,3s}.snowflake:nth-of-type(6){left:60%;-webkit-animation-delay:6s,2s;animation-delay:6s,2s}.snowflake:nth-of-type(7){left:70%;-webkit-animation-delay:2.5s,1s;animation-delay:2.5s,1s}.snowflake:nth-of-type(8){left:80%;-webkit-animation-delay:1s,0s;animation-delay:1s,0s}.snowflake:nth-of-type(9){left:90%;-webkit-animation-delay:3s,1.5s;animation-delay:3s,1.5s}

/*Список тренингов*/
.stream-table {
    margin: 0 0 30px !important;
}

.stream-table tbody {
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
    gap: 15px;
}

.stream-table tr {
    position: relative;
    display: block;
    flex: 1 1 100%;

    padding: 0 !important;
    width: 100%;
    height: auto;
    
    background: #FCFBF8;
    overflow: hidden;
 
    transition: all .3s;
}

.stream-table tr:hover {
    transform: translatey(-5px);
}

.stream-table tr td {
    position: relative;
    display: block !important; 
    padding: 0 !important;
    width: 100% !important;
    height: 100% !important;
    
    z-index: 100;
}

.stream-table tr td:hover {
    background: none !important;
}

.stream-table tr td a {
    position: relative;
    padding:  20px 20px 55px 20px;
}

.stream-table .stream-title {
    position: relative;
    display: block;
    
    font-family: var(--font);
    font-weight: 400;
    font-size: 23px !important;
    line-height: 120%;
    color: #2B2B2A;

    transition: all .3s;
}

.stream-table a div:not([class]) {
    position: relative;
    margin: 5px 0;
    padding-right: 0px;
    font-family: var(--font) !important;
    font-weight: 400;
    font-size: 16px;
    color: #2B2B2A;
    letter-spacing: 0.03em;
    transition: all .3s;
}

.stream-table tr a div:not([class])::after {
    content: "";
    position: absolute;
    bottom: -10px;
    left: 0;
    width: 30px;
    height: 1px;
    
    background: #D1C7BD;
    transition: all .3s;
}

.stream-table tr a b {
    position: absolute;
    bottom: -25px;
    left: 0px;
    transform: translatey(100%);
    
    font-style: normal;
  	font-family: var(--font_sub) !important;
    font-weight: 300 !important;
    font-size: 14px;
    line-height: 13px;
    color: var(--trB);
    transition: all .3s;
}

.stream-table tr a b::before {
    content: url(https://fs.getcourse.ru/fileservice/file/download/a/357714/sc/141/h/b9ac35bcc790aef56211114c684397b3.svg);
    position: relative;
    top: 3px;
    left: 0;
    margin-right: 5px; 
  	filter: invert(13%) sepia(15%) saturate(509%) hue-rotate(344deg) brightness(96%) contrast(86%);
}


.stream-table tr.withImage td a {
    padding:  20px 20px 55px 200px;
}

.stream-table tr.withImage td a .stream-img {
    position: absolute;
    top: 0;
    left: 0;
    
    width: 180px;
    height: 100%;
    
    background-size: cover;
    background-position: center;
}

.stream-table tr.withImage td a b {
    bottom: 35px;
    left: 200px;
}


@media (max-width: 520px) {
    .stream-table tr td a,
    .stream-table tr.withImage td a {
        padding:  20px 20px 55px 20px;
    }
    
    .stream-table tr.withImage td a .stream-img {
        display: none;
    } 
    
    .stream-table tr.withImage td a b {
        left: 20px;
    }
}

@media (max-width: 320px) {
	.stream-table tr::before {
		display: none;
	}
}


/* Список тренингов - карточками с фото */

.al_trCard .stream-table tbody {
    gap: 30px;
}

.al_trCard .stream-table tr {
    flex: 1 1 45%;
    max-width: calc(100% / 2 - 7px);
    margin-bottom: 20px;
    
    background: none !important;
    border-bottom: 1px solid transparent;
}

.al_trCard .stream-table tr:hover {
    border-bottom: 1px solid #D1C7BD;
}

.al_trCard .stream-table tr td a {
    padding: 0 0 40px 0!important;
    height: 100%;
}

.al_trCard .stream-table tr a div::after {
    display: none;
}

.al_trCard .stream-table tbody tr a .stream-img {
    position: relative;
    margin-bottom: 15px;

    width: 100%;
    height: 280px;
    
    background-size: cover;
    background-repeat: no-repeat !important;
    background-position: center;

  	z-index: -1;
}

.al_trCard .stream-table .stream-title {
    position: relative;
}

.al_trCard .stream-table tr td a div:not([class]) {
    font-size: 14px;
}

.al_trCard .stream-table tr td a b {
    bottom: 35px;
    left: 0px;
}

@media (max-width:1200px) and (min-width:520px), (max-width:375px){
  	.al_trCard .stream-table tbody tr a .stream-img { 
    	height: 160px;
	}
}
@media (max-width: 520px) {
    .al_trCard .stream-table tbody tr {
        flex: 1 1 100%;
        max-width: 100%;
    }
    
    .al_trCard .stream-table tr.withImage td a .stream-img {
        display: block;
    }
}

@media (max-width:320px) {
    .al_trCard .stream-table tr td a {
        padding: 20px;
    }
    
    .al_trCard .stream-table tr td a .stream-title {
        margin-bottom: 10px;
    }
    .al_trCard .stream-table tr::before {
		display: block;
	}
}


/* Список тренингов - прогрессия */
.al_trLine .stream-table {
    margin: 0 0 30px 7px !important;
}

.al_trLine .stream-table tbody {
    gap: 0;
}

.al_trLine .stream-table tbody tr {
    margin: 0 !important;
    background: none;
    overflow: visible;
}

.al_trLine .stream-table tbody tr:hover {
    transform: none;
}

.al_trLine .stream-table tbody tr::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    
    background: #AC9C8D;
    z-index: 10;
}

.al_trLine .stream-table tbody tr:first-child::before {
    height: 60%;
    top: inherit;
    bottom: 0;
}

.al_trLine .stream-table tbody tr:last-child::before {
    height: 40%;
}

.al_trLine .stream-table tbody tr:after {
    content: "";
    position: absolute;
    top: 35%;
    transform: translatey(-50%);
    left: -7px;
    
    width: 15px;
    height: 15px;
    
    background: #AC9C8D;
    border-radius: 100px;
    z-index: 10;
    
    transition: all .6s;
}

.al_trLine .stream-table tbody tr:hover:after {
    left: -4px;
    
    width: 8px;
    height: 8px;
}


.al_trLine .stream-table tbody tr td:hover {
    background: none;
}

.al_trLine .stream-table tbody tr td::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 0%;
    
    background: url(https://fs.getcourse.ru/fileservice/file/download/a/10853/sc/97/h/239398082dda045f4c9a12f511c2c98c.png) no-repeat center right,
        #AC9C8D;
    border-radius: 0px;
    z-index: 1;
    transition: all .45s;
}

.al_trLine .stream-table tbody tr:hover td::before {
    width: 100%;
}

.al_trLine .stream-table tbody tr a {
    padding: 15px 40px;
    z-index: 100;
}


.al_trLine .stream-table tbody tr a div {
    font-family: var(--font);
    font-weight: 400;
    font-size: 14px;
    line-height: 120%;
    color: rgba(0, 0, 0, .5);
    
    transition: all .3s;
}

.al_trLine .stream-table tbody tr:hover a .stream-title,
.al_trLine .stream-table tbody tr:hover a div {
    color: #fff;
}

.al_trLine .stream-table tbody tr a div::after,
.al_trLine .stream-table tbody tr a div b {
    display: none;
}

@media (max-width:320px) {
    .al_trLine .stream-table tbody tr::before {
        display: block;
    }
}
