/* inter-regular - cyrillic_latin */
@font-face {
    font-display: swap; 
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    src: url('fonts/inter-v18-cyrillic_latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
  
/* inter-500 - cyrillic_latin */
@font-face {
    font-display: swap; 
    font-family: 'Inter';
    font-style: normal;
    font-weight: 500;
    src: url('fonts/inter-v18-cyrillic_latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
  
/* inter-600 - cyrillic_latin */
@font-face {
    font-display: swap; 
    font-family: 'Inter';
    font-style: normal;
    font-weight: 600;
    src: url('fonts/inter-v18-cyrillic_latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
  
/* inter-700 - cyrillic_latin */
@font-face {
    font-display: swap; 
    font-family: 'Inter';
    font-style: normal;
    font-weight: 700;
    src: url('fonts/inter-v18-cyrillic_latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
  
/* inter-800 - cyrillic_latin */
@font-face {
    font-display: swap; 
    font-family: 'Inter';
    font-style: normal;
    font-weight: 800;
    src: url('fonts/inter-v18-cyrillic_latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
  
  
@keyframes pulse {
    from {
        transform: scale(1);
    }

    to {
        transform: scale(1.1);
    }
}

:root {
    --col-brown: #7A6055;
    --col-orange: #F49716;
    --col-foma-red: #A61E22;
    --shift: 0;
    --x: 0;
    --y: 0;
}

html {
    font-size: 20px;
    box-sizing: border-box;
}

*, 
*:before, 
*:after {
    box-sizing: inherit;
}

body {
    font-family: Inter;
    line-height: 1.5;
    font-weight: 400;
    padding: 0;
    margin: 0;
    border: 0;
    outline: 0;
    color: #fff;
    overflow-x: hidden;
}

#main {
    padding: 0;
    background-color: transparent;
}

#page-wrapper {
    background-image: url('img/family_fon_bottom.png');
    background-position: bottom;
    /* background-color: #B4D3DB; */
    background-color: #D9F2FE;
    background-repeat: no-repeat;
}

.full-container {
    overflow-x: hidden;
}

input, button {
    font-family: Inter;
}

a {
    text-decoration: underline;
    color: var(--col-orange);
}

p {
    font-family: Inter;
    font-weight: 400;
    font-size: 22px;
    line-height: 1.5;
    color: #544F4F;
}

h1, h2, h3, h4 {
    font-family: Inter;
    text-transform: uppercase;
}

h1 {
    font-size: 42px;
    line-height: 1.3;
    font-weight: 700;
    margin: 10px 0 20px;
    text-align: center;
    color: #AD7686;
}

h2 {
    font-size: 40px;
    line-height: 1.2;
    font-weight: 700;
    text-align: center;
    color: #AD7686;
}

h3 {
    font-size: 20px;
    line-height: 1.5;
    font-weight: 700;
    text-align: center;
    /* color: var(--col-brown); */
    color: #AD7686;
}

.btn {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    border-radius: 30px;
    text-transform: uppercase;
    background: var(--foma-red);
    padding: 20px 40px;
    margin: 0 auto;
    margin-top: 70px;
    width: fit-content;
    max-height: 64px;
    cursor: pointer;
    z-index: 3;
    position: relative;
}

.floating-bg {
    position: absolute;
    /* z-index: 2; */
    background-repeat: no-repeat;
    transition: .5s cubic-bezier(.25,.46,.45,.94);
}

.floating-bg.left {
    left: 0;
}

.floating-bg.right {
    right: 0;
    background-position-x: right;
}

.floating-bg.top {
    top: 0;
    bottom: unset !important;
    background-position-y: top;
}

.floating-bg.bottom {
    top: unset !important;
    bottom: 0;
    background-position-y: bottom;
}

.head-section .floating-bg.flower.left {
    width: 528px;
    height: 1136px;
    background-image: url('img/family_top_left.png');
}

.head-section .floating-bg.flower.right {
    width: 500px;
    height: 1132px;
    background-image: url('img/family_top_right.png');
}

.floating-bg.bird.left {
    width: 321px;
    height: 276px;
    background-image: url('img/family_bird_top_left.png');
    background-size: contain;
    bottom: 10px;
    left: 80px;
}

.floating-bg.bird.right {
    width: 232px;
    height: 220px;
    background-image: url('img/family_bird_top_right.png');
    background-size: contain;
    bottom: -240px;
    right: 170px;
    top: 90px;
}

.donate-section .floating-bg.bird.left {
    width: 146px;
    height: 125px;
    background-image: url('img/family_bird_bottom_left.png');
    background-size: contain;
    bottom: 10px;
    left: 250px;
    top: 220px;
}

.donate-section .floating-bg.bird.right {
    width: 279px;
    height: 240px;
    background-image: url('img/family_bird_bottom_right.png');
    background-size: contain;
    bottom: -240px;
    right: 170px;
    top: -120px;
}

section {
    background-color: transparent;
}

#main {
    background-image: url('img/family_top_sky_orig.png');
    background-position: top;
    background-repeat: no-repeat;
}

.head-section {
    position: relative;
    height: 100vh;
}

.head-logo {
    margin: 0px auto 90px;
    width: fit-content;
    padding-top: 20px;
    position: relative;
    z-index: 3;
}

.head-logo a {
    display: block;
}

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

.head-block {
    max-width: 1030px;
    margin: 0 auto;
}

.head-desc {
    text-align: center;
    position: relative;
    z-index: 2;
    background: #fff;
    border: 1pz solid black;
    border-radius: 20px;
    outline: 1px solid #fff;
    outline-offset: 15px;
    /* width: calc(100% - 120px); */
    /* max-width: 510px; */
    padding: 30px;
    text-align: center;
    /* position: relative; */
}

.scroll-btn {
    width: 60px;
    height: 80px;
    background-image: url('img/family_scroll_btn.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    margin: 40px auto;
    transition: .3s;
    cursor: pointer;
    z-index: 3;
    position: relative;
    animation: pulse 1.4s;
    animation-iteration-count: infinite;
    animation-direction: alternate-reverse;
    animation-delay: 1s;
    animation-timing-function: ease-out;
}

.howto-section {
    position: relative;
    padding: 200px 120px 250px;
    min-height: 100vh;
    display: flex;
    justify-content: center;
    flex-direction: column;
    background-image: url('img/family_center_sky_cr1.png');
    background-repeat: no-repeat;
    background-position: bottom center;
}

.howto-section h2 {
    font-size: 40px;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 50px;
}

.steps {
    display: flex;
    justify-content: space-between;
    gap: 50px;
    position: relative;
    z-index: 1;
}

.step {
    background: #fff;
    border-radius: 20px;
    outline: 1px solid #fff;
    outline-offset: 15px;
    width: calc(100% - 120px);
    max-width: 510px;
    padding: 30px;
    text-align: center;
    position: relative;
}

.step .num {
    display: flex;
    justify-content: center;
}

.step .step-text {
    color: #3b3b3b;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.5;
}

.donate-section {
    position: relative;
    /* padding: 210px 0 0; */
}

.donate-block {
    position: relative;
    z-index: 2;
}

.donate-block h2 {
    max-width: 660px;
    margin: 0 auto 40px;
    /* color: var(--col-brown); */
}

.mail-section {
    padding: 290px 0 170px;
    position: relative;
}

.mail-section h2 {
    color: white;
}

.mail-block {
    max-width: 880px;
    margin: 0 auto;
    text-align: center;
}

.mail-block .add-text {
    padding: 0 55px;
}

/* Foma Footer styles
 * -------------
 */

.layout-full #colophon {
    padding: 40px 70px;
    margin-bottom: 0;
    margin-top: 0;
    background-color: transparent;
    font-weight: 400;
}

#colophon {
    margin-bottom: 20px;
    padding: 30px;
}

#colophon p,
#colophon a {
    font-size: 18px;
    color: white;
}

#colophon #theme-attribution {
    display: none;
}

.footer-logo img {
    width: 106px !important;
    height: auto;
}

/* Footer widgets
----------------------------------------------- */
#footer-widgets .widget {
    margin-bottom: 40px;
    font-size: 13px;
}
#footer-widgets .widget:last-child {
    margin-bottom: 0;
}
#footer-widgets .widget .widget-title {
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 15px;
}
#footer-widgets .widget ul,
#footer-widgets .widget ol {
    list-style: none;
    padding: 0;
    margin: 0;
}
#footer-widgets .widget ul ul,
#footer-widgets .widget ol ul,
#footer-widgets .widget ul ol,
#footer-widgets .widget ol ol {
    margin-left: 1em;
}
#footer-widgets .widget ul li,
#footer-widgets .widget ol li {
    padding-bottom: 7px;
}
#footer-widgets .widget ul li a,
#footer-widgets .widget ol li a {
    text-decoration: none;
}
#footer-widgets .widget ul li ul.children,
#footer-widgets .widget ol li ul.children {
    padding-top: 7px;
    margin-bottom: -7px;
}
#footer-widgets {
    margin: 0 -5px;
    max-width: 100%;
}
#footer-widgets:before {
    content: '';
    display: block;
}
#footer-widgets:after {
    content: '';
    display: table;
    clear: both;
}
#footer-widgets .widget {
    box-sizing: border-box;
    float: left;
    padding: 0 15px;
    margin-bottom: 0;
}
#footer-widgets .widget.panel,
#footer-widgets .widget.widget_siteorigin-panels-builder {
    padding: 0;
}
#footer-widgets .widget a {
    color: #fff;
}
#footer-widgets .widget .widget-title {
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 20px;
}

.ya-informer,
.footer-share {
    display: none;
}

/* Custom Menu Widget in Footer Area
----------------------------------------------- */
#colophon .widget_nav_menu .sub-menu {
    margin-left: 0;
}
#colophon .widget_nav_menu .menu-item {
    padding-bottom: 0;
}
#colophon .widget_nav_menu .menu-item a {
    display: block;
    padding-bottom: 3px;
    margin-bottom: 3px;
    border-bottom: 1px solid #b9b9b9;
}

/*
* Donate form styles
*/

#payment {
    position: relative;
    background-color: transparent;
}

.payment-title,
.payment__type {
    display: none !important;
}

.payment__content {
    border-radius: 30px !important;
    outline: 1px solid #fff;
    outline-offset: 15px;
}

@media (min-width: 1400px) {
    .payment {
      width: 720px !important;
    }
}

/*
* END Donate form styles
*/

@media screen and (max-width:1366px) {

    .head-logo {
        margin-bottom: 70px;
    }

    .head-logo a {
        max-width: 150px;
    }

    .head-desc {
        font-size: 1rem;
        outline-offset: 8px;
    }

    .floating-bg.angel.left,
    .floating-bg.angel.right {
        background-size: 85%;
    }

    .howto-block .step {
        width: 100%;
    }

    #footer-widgets #block-3 {
        width: 0px;
    }

}

@media screen and (max-width:1024px) {
    html {
        font-size: 16px;
    }

    .floating-bg.angel.right,
    .floating-bg.angel.left {
        display: none;
    }

    .howto-block .steps {
        flex-direction: column;
        align-items: center;
        gap: 40px;
    } 

    .mail-block .add-text {
        padding: 10px 0;
    }

    .layout-full #colophon {
        padding: 30px;
    }
}

@media (max-width: 640px) {

    #main {
        background-image: url('img/family_top_sky_mobile.png');
    }

    #page-wrapper {
        background-image: url('img/family_fon_mobile.png');
    }

    #colophon p,
    #colophon a {
        font-size: 16px !important;
    }

    .footer-logo img {
        width: 68px !important;
    }

    h1, h2 {
        font-size: 24px !important;
        line-height: 1.3 !important;
        font-weight: 800;
    }

    h3 {
        font-size: 16px !important;
    }

    p {
        font-weight: 500;
        font-size: 16px;
        line-height: 1.5;
    }

    .scroll-btn {
        max-width: 42px;
        animation: none;
    }

    .head-logo a {
        max-width: 68px;
    }

    .head-section {
        background-image: none;
        height: auto;
    }

    .head-block {
        background: none;
    }

    .head-section .floating-bg.flower.left {
        background-image: url('img/family_flower_left_mob.png');
        width: 433px;
        height: 389px;
    }
    
    .head-section .floating-bg.flower.right {
        background-image: url('img/family_flower_right_mob.png');
        width: 394px;
        height: 546px;
        top: 90%;
        
    }

    .head-desc {
        font-size: 16px;
        padding: 16px 12px;
    }

    .howto-section .floating-bg.flower.left.bottom {
        background-image: url('img/family_flower_left_mob_2.png');
        width: 427px;
        height: 546px;
        bottom: -426px;
    }

    .floating-bg.bird.right,
    .floating-bg.bird.left {
        display: none;
    }
    
    .head-section .floating-bg.cloud.left.top {
        background-image: url('img/pasha_cloud_top_mob.png');
        width: 360px;
        height: 178px;
        background-position: left center;
        z-index: 1;
    }

    .steps {
        gap: 36px;
    }

    .step {
        border-radius: 16px;
        outline-offset: 8px;
        padding: 16px 12px;
    }

    .step .step-text {
        font-size: 16px !important;
    }

    .step img {
        max-height: 56px;
    }

    .howto-section {
        padding: 340px 16px 16px;
    }

    .howto-section .floating-bg.vasa {
        display: none;
    }

    .howto-block {
        margin-bottom: 60px;
    }

    .donate-section .floating-bg.flower.right.top {
        display: none;
    }

    section.donate-section {
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-top: 300px;
        padding-bottom: 480px;
    }

    .payment {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .payment__content {
        outline: none;
        padding: 20px 16px !important;
    }

    .payment-checkbox {
        font-size: 14px !important;
        line-height: 1.4;
    }

    .pm-icon {
        background-size: 60% !important;
    }
    
    .layout-full #colophon {
        padding: 30px 16px;
    }

    body.responsive #footer-widgets .widget {
        display: block;
        margin-bottom: 25px;
        float: none;
        width: auto;
        padding: 0;
    }

    body.responsive #footer-widgets .widget:last-child {
        margin-bottom: 0;
    }

    body.responsive #footer-widgets aside:nth-child(2) {
        display: none;
    }

    body.responsive #footer-widgets .widget figure {
        width: fit-content;
        margin: 0 auto;
    }
}

@media screen and (max-width:400px) {
    .floating-bg.flower.right {
        scale: 0.8;
        transform: translateX(49px);
    }

    .floating-bg.flower.left {
        scale: 0.8;
        transform: translateX(-54px) translateY(-49px);
    }
}

@media screen and (max-width:480px) {
    section {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }
    
    .howto-section .kulich-mob {
        background-size: 120%;
    }

    .head-logo {
        margin-bottom: 20px;
    }

    .howto-block .num {
        display: block;
    }

    .donate-block h2 {
        padding: 0 20px;
        margin-bottom: 30px;
    }

    section.mail-section {
        padding-bottom: 110px;
    }
}
