.sfm_header{
    min-height:100vh;
    background:url(/img/pfm_bg.jpg) center center no-repeat;
    background-size:cover;
    padding-bottom:130px;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:flex-end;
    align-content:flex-end;
    -moz-box-sizing: border-box; /* Для Firefox */  
    box-sizing: border-box;
}

.sfm_header>.header_txt_1{
    text-align:center;
    color:#273753;
    width:100%;
}

.sfm_header .header_txt_2{
    line-height:2;
    border-top:1px solid #273753;
    border-bottom:1px solid #273753;
    margin:75px 0 60px;
    color:#273753;
}

.sfm_container{
    max-width:1138px;
    margin-left:auto;
    margin-right:auto;
}

.sfm_orange_block{
    background: #E2D6C0 url(/img/sfm_or_bg_en.jpg)  center 100px no-repeat;
    background-size:1920px 600px;
    padding:100px 0 170px;
}

.sfm_orange_block .sfm_container{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:0 150px;
}

.sfm_album{
    min-height:480px;
}

.sfm_orange_block .sfm_container p{
    font-family: Roboto;
    font-style: normal;
    font-weight: 300;
    font-size: 16px;
    line-height: 19px;
    color: #000000;
    margin:0 0 1.2em;
}

.sfm_orange_block .sfm_container p a{
    color:#415279;
}

.sfm_header.headers .header_butt{
    width:100%;
}

.sfm_header.headers .sfm_button{
    padding:10px 20px;
    max-width:370px;
    margin:0 auto;
}

.sfm_button{
    background: #415279;
    font-family: Roboto;
    font-style: normal;
    font-weight: 500;
    font-size: 24px;
    line-height: 28px;
    text-transform: uppercase;
    color: #FFFFFF;
    display:block;
    text-align:center;
    text-decoration:none;
    padding:10px 0;
    width:100%;
    transition:.2s all ease;
}

.sfm_button:hover,
.ev_link:hover{
    transform:scale(1.03);
}

.sfm_dop>div:last-of-type{
    border-top:1px solid black;
    padding-top:50px;
}

.sfm_dop>div:last-of-type p{
    margin:0;
}

.sfm_dop>div:first-of-type{
    display:flex!important;
    align-content:flex-end;
    flex-wrap:wrap;
}

.sfm_gallery{
    padding:170px 0 240px;
}

.sfm_events{
    padding:130px 0 0;
}

.sfm_gallery .sfm_container{
    display:flex;
    justify-content:space-between;
}

.sfm_events h2{
    color:#273753;
    font-family: Playfair Display;
    font-style: normal;
    font-weight: bold;
    font-size: 40px;
    line-height: 53px;
    margin:0 0 100px;
}

.sfm_ev_grid{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:80px 150px;
}

.smf_event{
    font-family: Roboto;
    font-style: normal;
    font-weight: normal;
    font-size: 16px;
    line-height: 19px;
}

.sfme_header{
    display:flex;
    justify-content:space-between;
    align-content:flex-end;
    padding:0;
    border-bottom:1px solid #000000;
    margin-bottom:30px;
}

.sfme_date{
    font-family: Playfair Display;
    font-style: normal;
    font-weight: bold;
    font-size: 48px;
    line-height: 64px;
}

.sfme_place{
    display:flex;
    align-content:flex-end;
    align-items:flex-end;
    padding-bottom:3px;
}

.ev_link{
    display:block;
    background: #AAA280;
    max-width:240px;
    text-transform: uppercase;
    color: #FFFFFF;
    text-align:center;
    text-decoration:none;
    padding:13px 0;
    width:100%;
    transition:.2s all ease;
    margin-top:30px;
}

.nm{display:block!important;}
.nd{display:none!important;}

@media all and (max-width:768px) {
    
    .nd{display:block!important;}
    .nm{display:none!important;}
    
    section,
    section.sfm_events{
        padding-left:15px;
        padding-right:15px;
    }
    
    .sfm_orange_block .sfm_container {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        gap: 0px 0px;
    }
    
    .sfm_header {
        height: 100vh;
        background: url(/img/pfm_bg_mob.png) center bottom -100px no-repeat;
        background-size: cover;
        padding-bottom: 100px;
        -moz-box-sizing: border-box; /* Для Firefox */  
        box-sizing: border-box;
    }
    
    .headers .header_txt_2 {
        font-size: 28px;
        padding: 0 5%;
    }
    
    .sfm_ev_grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 30px 0;
    }
    
    .sfm_orange_block {
        background: #E2D6C0 url(/img/album_mob.png) center top no-repeat;
        background-size: contain;
        padding: 30px 15px 30px;
    }
    
    .sfm_album {
        min-height: 340px;
        display:flex;
        flex-wrap:wrap;
        align-content:flex-end;
        padding-bottom:49px;
    }
    
    .sfm_album>div{
        width:100%;
    }
    
    .sfm_header.headers .sfm_button {
        padding: 10px 0;
        max-width: 100%;
        margin: 0 auto;
    }
    
    .sfm_button {
        font-size: 14px;
        line-height: 28px;
        padding: 10px 0;
        width: 100%;
        transition: none;
    }
    
    .sfm_gallery {
        padding: 80px 0;
    }
    
    .sfm_gallery .sfm_container {
        justify-content: center;
    }
    
    .sfm_gallery .sfm_container img{
        max-width:100%;
    }
    
    .sfme_date {
        font-size: 26px;
        line-height: 1.8;
    }
    
    .ev_link {
        max-width: 100%;
        padding: 13px 0;
        transition: none;
        margin-top: 30px;
    }
    
    .sfm_events {
        padding: 60px 15px 0;
    }
    
    .sfm_events h2 {
        font-size: 26px;
        line-height: 1.4;
        margin: 0 0 30px;
    }
    
    .sfm_header.headers .header_txt_2 {
        font-weight: bold;
        font-size: 40px;
        font-style: normal;
        text-align:center;
        line-height: 1.4;
        padding:1em 0;
        margin:0;
        border:0;
    }
    
}