@media all and (max-width: 500px)
{
    body
    {
        display: grid;
        grid-template-columns: repeat(1,1fr);
        grid-template-rows: 65px auto auto auto 83px;
        grid-template-areas: "header" "news_block" "right_block" "content" "footer";
    }

    body.noscroll
    {
        overflow: hidden;
    }

    body.no_right, body.no_ms
    {
        grid-template-rows: 65px max-content auto 83px;
        grid-template-areas: "header" "news_block" "content" "footer";   
    }
    .fs
    {
        display: none;
    }

    .ms
    {
        display: block;
    }
    #content
    {
        font-size:12px;
        line-height: 14px;
        letter-spacing: 0;

        padding:15px 15px 35px;
    }
    #content .no_right
    {
        grid-column: span 1;
    }
    #content p
{
    display: block;
    padding-right: 0;
}

.classes-wrapper
{
    height: 53px;
}

.label
{
    margin-right: 0;
    margin-left: 24px;
}

    .pink_cloud,.grey_cloud
    {
        font-size:12px;
        line-height: 14px;
        letter-spacing: 0;
        padding: 10px 20px;
    }
    .pink_cloud
    {
        margin:0 0 0 34px;
        border-radius: 29px;
    }
    .grey_cloud
    {
        margin:0 34px 0 0;
    }
    .label
    {
        font-size:12px;
        line-height: 14px;
    }
    #header
    {
        padding:16px 15px;
    }

    .stopper 
    {
        width: auto;
    }

    #header .stopper, #content .stopper, #content .stopper.no_right, #right_block .stopper, #footer .stopper, #news_block .stopper, #main_colomn .stopper
    {
        
        width: auto;
    }
    #content span.date, #content span.name
    {
        display: block;
        text-transform: uppercase;
        color: #FC5AAF;
        font-size: 14px;
        line-height: 22px;
        letter-spacing: 1px;
        font-weight: 300;
    }

    #content span.name
{
    color: #2E353B;
}

    .full-text
    {
        font-weight: 300;
        font-size: 12px;
        line-height: 14px;
        color: #2E353B;
        padding-top: 26px;
    }


    #header .stopper
    {
        display: block;
    }

    #header #logo_img
    {
        display: none;
    }
    #header #logo 
    {
        float: left;
        max-width:144px;
        font-size: 14px;
        line-height:16px;
        letter-spacing: 0.7px;
        padding-bottom: 0;
    }
    #header ul.menu 
    {
        display: none;
    }

    #header.open #logo {opacity: 0;}
    #header.open .icons {opacity: 0;}

    #header.open ul.menu
    {
        display: block;
        position: absolute;
        top: 63px;
        width: 100vw;
        left: 0;
        height: calc(100vh - 63px);
        background: #fff;
        z-index: 10;
    }

    ul.menu li {
        display: block;
        padding: 0 0px 0 0;
    }

    #header ul.menu a
    {
        display: block;
        text-align: center;
        padding: 13px 13px;
       /* color: #FFFFFF;*/
        font-family: ff-good-web-pro, sans-serif;
        font-weight: 600;
        font-size: 20px;
        line-height: 28px;
        letter-spacing: 1px;
        text-transform: uppercase;
    } 

    #menu_icon
    {
        float: left;
        font-size: 24px;
        width: 24px;
        height: 24px;
        margin-top: 2px;
        margin-right: 10px;
        position: relative;
    }

    #menu_icon .bline
    {
        display: block;
        position: absolute;
        height: 1px;
        left: 0;
        width: 24px;
        background: #2E353B;
        transition: all 0.2s ease;
    }

    #menu_icon .bline:nth-child(1)
    {
        top: 3px;
    }
    #menu_icon .bline:nth-child(2){top: 12px;}
    #menu_icon .bline:nth-child(3){top: 21px;}

    #menu_icon.open .bline:nth-child(2){opacity: 0;}
    #menu_icon.open .bline:nth-child(1){
        transform: rotate(45deg) translateY(6px) translateX(5px) scale(1.1);
    }
    #menu_icon.open .bline:nth-child(3){
        transform: rotate(-45deg) translateY(-7px) translateX(7px) scale(1.1);
    }

    .icons
    {
        float: right;
        font-size: 24px;
    }
    #header .icons a 
    {
        color:#3C1A63;
        font-weight: bold;
    }
    #news_block .stopper
    {
        display: grid;
        grid-gap:27px;
        grid-template-columns: repeat(2,1fr);
    }
    #main_colomn h2
    {
        margin:5px 0;
        font-size:12px;
        line-height: 14px;
        letter-spacing: 0.6px;
    }
    #main_colomn
    {

    }
    #main_colomn,#news_block
    {
        padding: 15px 35px;   
    }
    .news_item_inhead, .event_item_incolomn a
    {
        font-size: 12px;
        line-height: 14px;
        letter-spacing: 0;
    }
    .event_item_incolomn .speaker
    {
        margin-top: -5px;
        font-size:10px;
        line-height: 18px;
        letter-spacing: 0;
    }
    .news_item_inhead span,.event_item_incolomn span.date
    {
        font-size: 14px;
        line-height: 22px;
        letter-spacing: 0.7px;
    }
    #right_colomn
    {
        border-left: none;
    }

    .no_ms #right_colomn
    {
        display: none;
    }
    .news_item_inhead i,.event_item_incolomn i
    {
        font-size: 8px;
    }
    h1
    {
        font-size: 34px;
        /*font-size: 22px;*/
        line-height: 46px;
        text-align: center;
        /*text-align: left;*/
    }
    h1.olymp_h1
    {
        font-size: 20px;
        line-height: 28px;
        height:48px;
        text-align: left;
    }

    .mm-block
    {
        border-top: 1px solid #850078;
    }

    .no_mccme
    {
        font-size: 12px;
        display: block;
        margin-bottom: 10px;
    }

    .all_events
    {
        font-size:12px;
        line-height: 13px;
        margin:-10px 0 0px 30%;
    }
    #footer
    {
        padding:13px 15px;
        
    }
     #footer_icons
    {
        padding-top: 0px;
    }
    #footer #home
    {
        padding-top: 0;
    }

    #footer .stopper
    {
        grid-template-columns: 50px auto 120px;
    }
    #footer_menu 
    {
        display: none;
    }
    #footer_icons
    {

    }
    #copy
    {
        grid-column:span 3;
        font-size: 10px;
        line-height: 10px;
        letter-spacing: 0px;
        padding-right: 20px;
        padding-top: 5px;
    }
#content .event_item_incolomn
{
    margin: 8px 0 0;
    font-size: 14px;
    line-height: 14px;
}
    .pink_cloud:before
{
    content: " ";
    display: block;
    position: absolute;
    right: -9px;
    bottom: -2px;
    background-image: url('/images/message_pink_right_320.png');
    background-size: cover;
    width: 36px;
    height: 23px;

}
.grey_cloud:before
{
    content: " ";
    display: block;
    position: absolute;
    left: -5px;
    bottom: 0px;
    background-image: url('/images/message_gray_left_360.png');
    width: 27px;
    height: 21px;

}

.olymps
{
    display: block;
    padding: 15px 30px;
    box-sizing: border-box;
}

.olymps .row
{
    display: grid;
    grid-template-columns: repeat(12,1fr);
    grid-gap: 12px;
    margin-bottom: 12px;
}

.olymps .row:nth-child(2n) a:first-child, .olymps .row:nth-child(2n+1) a:last-child
{
    grid-column: span 12;
}

.olymps .row:nth-child(2n) a:last-child, .olymps .row:nth-child(2n+1) a:first-child
{
    grid-column: span 12;
}

.olymps .row.one-block a
{
    grid-column: span 12 !important;
}

#content .olymps .row.one-block a.big
{
    line-height: 17px;
}

#content .olymps .row a
{
    display: grid;
    background-color: #fff;
    box-shadow: 0px 6px 24px #00000017;
    grid-template-columns: auto 42px;
    grid-gap: 10px;
    height: auto;
    border-radius: 8px;
    font-size: 14px;
    line-height: 17px;
    font-weight: 300;
    color: #2E353B;
    padding: 12px 13px 12px 20px;
    text-decoration: none;
    letter-spacing: 1.1px;
    box-sizing: border-box;
}

#content .olymps .row a.big
{
    font-size: 14px;
    line-height: 17px;
}

#content .olymps .row a span
{
    box-sizing: border-box;
}

#content .olymps .row a div
{
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
}

#content .olymps .row a div img
{
    max-width: 30px;
}

#content .types a
{
    margin-right: 15px;
   padding: 0px 9px;
    font-size: 12px;
    line-height: 24px;
    
}

.photoblock
{
    display: grid;
    grid-template-columns: repeat(1,1fr);
    grid-gap: 20px;
    padding: 20px 0;
}

.photolabel
{
    color: #979BA3;
    font-size: 10px;
    line-height: 10px;
}

.upper
{
    display: none;
    box-sizing: border-box;
    border-radius: 12px;
    width: 24px;
    height: 24px;
    background: #B9B9B9;
    color:#fff;
    position: fixed;
    bottom: 99px;
    right: 15px;
    text-align: center;
    line-height: 27px;
    font-size: 15px;
}

#content .traditional
{
    display: grid;
    grid-template-columns:repeat(1,1fr);
    padding-top: 14px;
}

#content .t-content, #content .t-content p, #content .t-right p
{
    padding-right: 0;
}
.t-content p, #prizes_text
{
    line-height: 18px;
}
.t-content p
{
    margin-bottom:0;
}
#content .traditional .t-menu
{
    display: flex;
    margin:0 -20px 14px;
    padding:0 10px;
    justify-content: space-between;
    flex-wrap: wrap;
    border-top:1px solid #850078;
    border-bottom:1px solid #850078;
}

#content .traditional .t-menu a
{
    font-size: 12px;
    padding: 7px 10px;
    margin-bottom: 0;
}

#content .traditional .t-right
{
    padding: 10px 0 0;
}
.arrow_link.p24
{
    display: inline-block;
    font-size: 12px;
    line-height: 14px;
    margin-top: 4px;
    font-weight: 700 !important;
    font-family: ff-good-web-pro, sans-serif !important;
}
#content .c-title, #content .t-content h2
{
    font-size: 12px;
    margin-top:30px !important;
    padding-bottom: 0 !important;
    letter-spacing: 0.6px;
}

#content .t-content .t-right
{
    line-height: 10px;
}

#content .t-right .c-title
{
    line-height: 12px;
}

#content .t-right p .event_item_incolomn
{
    display: block !important;
    margin-top: 0;
    padding-top:3px;
}

#content span.event_item_incolomn a:after,  .all_events i, .arrow_link:after
{
    font-size: 8px;   
}
#content .c-title.link:after, .arrow_link.p24:after
{
    font-size:10px;
}
#content a.hider
{
    display: block;
    margin-top: -4px;
    font-size: 12px;
    line-height: 15px;
    font-weight: 500;
}
#content a.hider .icon-arrow_bottom
{
    padding-left:6px;
    font-size:9px;
}
.cities
{
    font-size:10px;
    line-height: 14px;
    font-weight: 400;
}
.to-left
{
    text-align: left !important;
    margin:8px 0 0;
    font-weight:400;
}
.t-right>p:first-child
{
    margin:0
}

#classes
{
    margin:14px 0 15px;
}
#classes a.anchor 
{
    padding:5px 6px;
    font-size:10px;
    line-height:10px;
    letter-spacing: 0.5px;
    margin-right: 14px;
}
h3, h4
{

    font-size:12px;
    line-height:12px;
    letter-spacing: 0.6px;
}
.t-content #prizes_text h3
{
    margin:14px 0 -6px;
}
.t-content #prizes_text h4
{ 
    margin:14px 0 8px;
}
#select_ol_period a.select_a
{

    margin-left:0px;
    padding:11px 10px 10px 6px;
}
#select_ol_period a.select_a,#select_ol_period #all_ol_periods a.period_link
{
    font-size:12px;
    line-height: 12px;
    letter-spacing: 0.6px;
}
#select_ol_period #all_ol_periods
{
    width: calc(100%);
    top:35px;
    grid-template-columns: auto 32px;
    max-height: 102px;
    padding:10px 0;
    margin-left:0;
}
#select_ol_period #all_ol_periods a.period_link
{
    padding:1px 6px;
}
#all_ol_periods_list
{
    max-height: 84px;
}
#select_ol_period a.select_a .icon-arrow_bottom
{
    margin-top: 2px;
}
#select_ol_period a.select_a .icon-arrow_bottom, .scroll-arrow i
{
    font-size: 10px;
}
#scroll_all_ol_periods
{
    width:32px;
    height: calc(100% + 24px);
    margin:-12px 0;
}

#content .cities_links a
{
    font-size:10px;
    line-height:14px;
}
.city_info_with_icons i
{
    font-size: 18px;
    line-height: 22px;
}
.cities_links a i
{
    font-size: 8px;
}
.city_info_with_icons font   
{
    padding:1px 0 0 4px;
}
.t-content .event_item_incolomn
{
    margin: 8px 0 0px !important;
}
#content .cities_links 
{
    padding-bottom: 14px;
}
.city_info_with_icons
{
    padding-bottom: 10px;
}
.city_info_div h3
{
    margin-top: 14px;
}
.padding
{
    display: block;
    height: 25px;
}
.tc-block>p:first-child .event_item_incolomn, .tc-block>.event_item_incolomn:first-child {margin-top:5px !important}
#content .t-content>*:first-child {margin-top:0 !important;}
#select_ol_period {
    margin-top: 12px;
}
#content table thead tr, #content table caption
{
    font-size: 14px;
}
.back 
{
    margin-top: 0px;
    font-size: 12px;
}
.back i 
{
    font-size: 8px;
}
.small_olymp_h1 
{
    text-align: left;
    text-transform: uppercase;
    font-size: 15px;
    line-height: 21px;
    margin:7px 0 5px;
}
.for_small_h1 {
    font-size: 10px;
    margin-top: -7px;
    margin-bottom: -4px;
    }
#content .traditional .t-menu
}