// Colors

$dark: #333333;
$blue: #0055A7;
$orange: #FCB13E;
$red: #DF3011;
$light-blue: #E6F2F4;

// Functions

@function get-desktop-vw($target) {
    $vw-context: (1500 * 0.01) * 1px;
    @return ($target/$vw-context) * 1vw;
}

@function get-mobile-vw($target) {
    $vw-context: (320 * 0.01) * 1px;
    @return ($target/$vw-context) * 1vw;
}

body {
    margin: 0;
    padding: 0;
    font-family: 'Open Sans';
    overscroll-behavior: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, p, span {
    margin: 0;
    padding: 0;
}

.orange {
    color: $orange;
}

.italic {
    font-style: italic;
}

.bold {
    font-weight: 800;
}

.extra-bold {
    font-weight: 800;
}

.button {
    background: $red;
    font-size: 32px;
    font-weight: 800;
    width: 416px;
    height: 80px;
    line-height: 80px;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    border-radius: 8px;
    border-bottom: 4px solid #942B19;
    display: inline-block;
    letter-spacing: -0.05em;
    color: white;

    @media (max-width: 1500px) {
        font-size: get-desktop-vw(32px);
        width: get-desktop-vw(416px);
        height: get-desktop-vw(80px);
        line-height: get-desktop-vw(80px);
        border-radius: get-desktop-vw(8px);
        border-width: get-desktop-vw(4px);
    }

    @media (max-width: 960px) {
        font-size: get-mobile-vw(16px);
        width: get-mobile-vw(128px);
        height: get-mobile-vw(40px);
        line-height: get-mobile-vw(40px);
        border-radius: get-mobile-vw(4px);
        border-bottom: get-mobile-vw(2px) solid #942B19;
    }
}

.hero-section {
    background: linear-gradient(#013783,#001E42);
    text-align: center;
    padding: 32px 0 0 0;

    @media (max-width: 1500px) {
        padding: get-desktop-vw(32px) 0 0 0;
    }

    @media (max-width: 960px) {
        padding: get-mobile-vw(32px) 0 0 0;
    }

    &__logo {
        display: block;
        margin: 0 auto 41px auto;

        @media (max-width: 1500px) {
            margin: 0 auto get-desktop-vw(41px) auto;
            height: get-desktop-vw(120px);
        }

        @media (max-width: 960px) {
            width: get-mobile-vw(60px);
            height: get-mobile-vw(40px);
            margin: 0 auto get-mobile-vw(21px) auto;
        }
    }

    &__name {
        font-size: 24px;
        line-height: 20px;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: -0.02em;
        color: white;
        position: relative;
        width: 652px;
        display: inline-block;

        @media (max-width: 1500px) {
            font-size: get-desktop-vw(24px);
            line-height: get-desktop-vw(20px);
            width: get-desktop-vw(652px);
        }

        @media (max-width: 960px) {
            font-size: get-mobile-vw(13px);
            line-height: get-mobile-vw(20px);
            width: get-mobile-vw(288px);
        }

        &::before {
            width: 156px;
            height: 2px;
            background: $orange;
            display: block;
            position: absolute;
            content: '';
            left: 0;
            top: 8px;

            @media (max-width: 1500px) {
                width: get-desktop-vw(156px);
                height: get-desktop-vw(2px);
                top: get-desktop-vw(8px);
            }

            @media (max-width: 960px) {
                width: get-mobile-vw(56px);
                height: get-mobile-vw(2px);
                top: get-mobile-vw(9px);
            }
        }

        &::after {
            width: 156px;
            height: 2px;
            background: $orange;
            display: block;
            position: absolute;
            content: '';
            right: 0;
            top: 9px;

            @media (max-width: 1500px) {
                width: get-desktop-vw(156px);
                height: get-desktop-vw(2px);
                top: get-desktop-vw(9px);
            }

            @media (max-width: 960px) {
                width: get-mobile-vw(56px);
                height: get-mobile-vw(2px);
                top: get-mobile-vw(9px);
            }
        }
    }

    &__title {
        font-size: 128px;
        line-height: 100%;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: -0.05em;
        color: white;
        margin: -4px 0 0 0;

        @media (max-width: 1500px) {
            font-size: get-desktop-vw(128px);
            margin: get-desktop-vw(-4px) 0 0 0;
        }

        @media (max-width: 960px) {
            font-size: get-mobile-vw(40px);
            line-height: get-mobile-vw(36px);
            margin: get-mobile-vw(4px) 0 0 0;
        }
    }

    &__button {

        &:hover {
            background: #F04E31;
        }
    }

    &__description {
        font-size: 28px;
        line-height: 32px;
        font-weight: 600;
        color: white;
        width: 992px;
        margin: 0 auto 25px auto;

        @media (max-width: 1500px) {
            font-size: get-desktop-vw(28px);
            line-height: get-desktop-vw(32px);
            width: get-desktop-vw(992px);
            margin: 0 auto get-desktop-vw(25px) auto;
        }

        @media (max-width: 960px) {
            font-size: get-mobile-vw(12px);
            line-height: get-mobile-vw(16px);
            width: get-mobile-vw(288px);
            margin: get-mobile-vw(6px) auto get-mobile-vw(21px) auto;
        }
    }

    .infographics{
        color: white;
        border-top: 1px solid rgba(255, 255, 255, 0.24);
        padding-top: 45px;
        margin-top: 96px;

        @media (max-width: 1500px) {
            padding-top: get-desktop-vw(45px);
            margin-top: get-desktop-vw(96px);
        }

        @media (max-width: 960px) {
            padding: get-mobile-vw(40px) 0 get-mobile-vw(16px) 0;
            margin-top: get-mobile-vw(40px);
        }

        &-list {

            &__item {

                &:nth-child(1), &:nth-child(2) {
                
                    .infographics-list__picture {
                        border-right: 1px solid rgba(255, 255, 255, 0.24);

                        @media (max-width: 960px) {
                            border: none;
                        }
                    }
                }

                @media (max-width: 960px) {
                    &:nth-child(1), &:nth-child(2) {
                        border-bottom: 1px solid rgba(255, 255, 255, 0.24);
                        padding-bottom: get-mobile-vw(21px);
                    }
                }
            }

            &__copy {
                color: white!important;
            }

            &__picture {
                height: 216px;

                @media (max-width: 1500px) {
                    height: get-desktop-vw(216px);
                }

                @media (max-width: 960px) {
                    height: get-mobile-vw(64px);
                }
            }

            &__icon {
                height: 216px;
                width: auto;

                @media (max-width: 1500px) {
                    height: get-desktop-vw(216px);
                }

                @media (max-width: 960px) {
                    height: get-mobile-vw(64px);
                }
            }
        }
    }
}

.infographics {
    text-align: center;
    padding: 116px 0 128px 0;

    @media (max-width: 1500px) {
        padding: get-desktop-vw(116px) 0 get-desktop-vw(128px) 0;
    }

    @media (max-width: 960px) {
        padding: get-mobile-vw(35px) 0 get-mobile-vw(40px) 0;
    }

    &__title {
        font-size: 56px;
        line-height: 100%;
        font-weight: 800;
        letter-spacing: -0.05em;
        text-transform: uppercase;
        color: $blue;

        @media (max-width: 1500px) {
            font-size: get-desktop-vw(56px);
        }

        @media (max-width: 960px) {
            font-size: get-mobile-vw(24px);
            line-height: get-mobile-vw(24px);
            margin-bottom: get-mobile-vw(14px);
        }

        &_small {
            font-size: 28px;
            line-height: 32px;
            margin-bottom: 34px;

            @media (max-width: 1500px) {
                font-size: get-desktop-vw(28px);
                line-height: get-desktop-vw(32px);
                margin-bottom: get-desktop-vw(34px);
            }

            @media (max-width: 960px) {
                font-size: get-mobile-vw(20px);
                line-height: get-mobile-vw(20px);
                margin: 0 auto get-mobile-vw(14px) auto;
                text-transform: uppercase;
                font-weight: 800;
                letter-spacing: -0.05em;
                width: get-mobile-vw(288px);
            }
        }
    }

    &-list {
        display: flex;
        justify-content: center;
        margin: 18px 0 19px 0;

        @media (max-width: 1500px) {
            margin: get-desktop-vw(18px) 0 get-desktop-vw(19px) 0; 
        }

        @media (max-width: 960px) {
            flex-direction: column;
            width: get-mobile-vw(288px);
            margin: 0 auto 0 auto;
        }

        &__item {
            width: 432px;

            @media (max-width: 1500px) {
                width: get-desktop-vw(432px);
            }

            @media (max-width: 960px) {
                width: get-mobile-vw(288px);
                margin-bottom: get-mobile-vw(23px);
            }

            &:nth-child(1), &:nth-child(2) {
                
                .infographics-list__picture {
                    border-right: 1px solid rgba(0, 0, 0, 0.24);

                    @media (max-width: 960px) {
                        border-right: none;
                    }
                }
            }

            @media (max-width: 960px) {
                &:nth-child(1), &:nth-child(2) {
                    border-bottom: 1px solid rgba(0, 0, 0, 0.24);
                    padding-bottom: get-mobile-vw(21px);
                }
            }

        }

        &__picture {
            width: 100%;
            height: 160px;
            margin-bottom: 29px;
            display: flex;
            justify-content: center;
            align-items: center;

            @media (max-width: 1500px) {
                height: get-desktop-vw(160px);
                margin-bottom: get-desktop-vw(29px);
            }

            @media (max-width: 960px) {
                height: get-mobile-vw(64px);
                margin-bottom: get-mobile-vw(11px);
            }
        }

        &__icon {
            height: 108px;
            width: auto;

            @media (max-width: 1500px) {
                height: get-desktop-vw(108px);
            }

            @media (max-width: 960px) {
                height: get-mobile-vw(64px);
            }
        }

        &__copy {
            width: 416px;
            margin: 0 auto;
            font-size: 28px;
            line-height: 32px;
            font-weight: 400;
            letter-spacing: -0.04em;
            color: $dark;

            @media (max-width: 1500px) {
                width: get-desktop-vw(416px);
                font-size: get-desktop-vw(28px);
                line-height: get-desktop-vw(32px);
            }

            @media (max-width: 960px) {
                width: 100%;
                font-size: get-mobile-vw(13px);
                line-height: get-mobile-vw(16px);
            }
        }
    }

    &__button {
        background: $red;
        font-size: 32px;
        font-weight: 800;
        width: 416px;
        height: 80px;
        line-height: 80px;
        text-align: center;
        text-decoration: none;
        text-transform: uppercase;
        border-radius: 8px;
        border-bottom: 4px solid #942B19;
        display: inline-block;
        letter-spacing: -0.05em;
        color: white;

        &:hover {
            background: #F04E31;
        }

        @media (max-width: 1500px) {
            font-size: get-desktop-vw(32px);
            width: get-desktop-vw(416px);
            border-radius: get-desktop-vw(8px);
            border-width: get-desktop-vw(4px);
        }

        @media (max-width: 960px) {
            width: get-mobile-vw(288px);
            height: get-mobile-vw(40px);
            line-height: get-mobile-vw(40px);
            font-size: get-mobile-vw(16px);
            border-radius: get-mobile-vw(4px);
        }
    }
}

.video-section {
    background: black;
    width: 100%;
    height: 1000px;
    text-align: center;
    color: white;
    background: url(../img/video-donation-background.jpg);
    background-size: cover;
    background-position: center;

    @media (max-width: 1500px) {
        height: get-desktop-vw(1000px);
    }

    @media (max-width: 960px) {
        height: get-mobile-vw(320px);
    }

    &-copy {
        text-align: center;
        margin: 118px auto 0 auto;
        display: inline-block;
        width: 1280px;

        @media (max-width: 1500px) {
            margin: get-desktop-vw(118px) auto 0 auto;
            width: get-desktop-vw(1280px);
        }

        @media (max-width: 960px) {
            width: get-mobile-vw(288px);
            margin: get-mobile-vw(35px) auto 0 auto;
        }

        &__title {
            font-size: 56px;
            font-weight: 800;
            line-height: 100%;
            text-transform: uppercase;
            margin: 0 0 15px 0;

            @media (max-width: 1500px) {
                font-size: get-desktop-vw(56px);
                margin: 0 0 get-desktop-vw(15px) 0;
            }

            @media (max-width: 960px) {
                font-size: get-mobile-vw(24px);
                margin: 0 0 get-mobile-vw(8px) 0;
            }
        }

        &__description {
            font-size: 28px;
            line-height: 32px;
            font-weight: 600;

            @media (max-width: 1500px) {
                font-size: get-desktop-vw(28px);
                line-height: get-desktop-vw(32px);
            }

            @media (max-width: 960px) {
                font-size: get-mobile-vw(13px);
                line-height: get-mobile-vw(16px);
                width: get-mobile-vw(280px);
            }
        }

        &__icon {
            margin: 51px 0 0 0;

            @media (max-width: 1500px) {
                margin: get-desktop-vw(51px) 0 0 0;

                & img {
                    height: get-desktop-vw(144px);
                }
            }

            @media (max-width: 960px) {
                margin: get-mobile-vw(21px) 0 0 0;

                & img {
                    height: get-mobile-vw(48px);
                }
            }

            &:hover {
                cursor: pointer;
            }
        }
    }
}

.volunteers-section {
    text-align: center;
    width: 991px;
    margin: 0 auto 0 auto;
    padding: 118px 0 152px 0;

    @media (max-width: 1500px) {
        width: get-desktop-vw(991px);
        padding: get-desktop-vw(118px) 0 get-desktop-vw(152px) 0;
    }

    @media (max-width: 960px) {
        width: get-mobile-vw(288px);
        padding: get-mobile-vw(43px) 0 get-mobile-vw(48px) 0;
    }

    &__title {
        font-size: 56px;
        line-height: 100%;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: -0.05em;
        color: $blue;
        margin: 0 auto 34px auto;

        @media (max-width: 1500px) {
            font-size: get-desktop-vw(56px);
            margin: 0 auto get-desktop-vw(34px) auto;
        }

        @media (max-width: 960px) {
            font-size: get-mobile-vw(24px);
            margin: 0 auto get-mobile-vw(13px) auto;
        }
    }

    &__button {
        background: $orange;
        border-color: #A36A14;
        color: $blue;

        &:hover {
            background: #FFBD59;
        }
    }
}

.footer {
    height: 128px;
    background: linear-gradient(#013783,#001E42);
    color: white;
    display: flex;
    align-items: center;
    padding: 0 40px;

    @media (max-width: 1500px) {
        height: get-desktop-vw(128px);
        padding: 0 get-desktop-vw(40px);
    }

    @media (max-width: 960px) {
        flex-direction: column;
        height: auto;
        padding: get-mobile-vw(19px) get-mobile-vw(20px) get-mobile-vw(20px) get-mobile-vw(20px);
    }

    &__caption {
        font-size: 24px;
        line-height: 100%;
        text-transform: uppercase;
        font-weight: 600;
        letter-spacing: -0.05em;

        @media (max-width: 1800px) {
            font-size: get-desktop-vw(18px);
        }

        @media (max-width: 960px) {
            font-size: get-mobile-vw(16px);
            line-height: get-mobile-vw(20px);
            text-align: center;
        }
    }

    &-social-list {
        display: flex;
        margin: 0 0 0 auto;

        @media (max-width: 960px) {
            margin: get-mobile-vw(12px) auto 0 auto;
        }

        &__item {
            width: 48px;
            height: 48px;
            border-radius: 100%;
            display: flex;
            justify-content: center;
            align-items: center;
            border: 1px solid rgba(255, 255, 255, 0.24);

            @media (max-width: 1500px) {
                width: get-desktop-vw(48px);
                height: get-desktop-vw(48px);
            }

            @media (max-width: 960px) {
                width: get-mobile-vw(40px);
                height: get-mobile-vw(40px);
            }

            &:not(:last-child) {
                margin-right: 8px;

                @media (max-width: 1500px) {
                    margin-right: get-desktop-vw(8px);
                }

                @media (max-width: 960px) {
                    margin-right: get-mobile-vw(4px);
                }
            }
        }

        &__icon {
            width: 24px;
            height: 24px;

            @media (max-width: 1500px) {
                width: get-desktop-vw(24px);
                height: get-desktop-vw(24px);
            }

            @media (max-width: 960px) {
                width: get-mobile-vw(20px);
                height: get-mobile-vw(20px);
            }
        }
    }
}

/* Стили для поп-ап окна */
.popup-wrapper {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 9999;
    overflow: hidden; /* Отключаем скролл */
}
.popup-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #fff;
    padding: 0;
    border-radius: 8px;
    height: 540px;

    @media (max-width: 960px) {
        height: get-mobile-vw(160px);
    }

    iframe {
        width: 960px;
        height: 540px;
        border: none;

        @media (max-width: 960px) {
            width: get-mobile-vw(288px);
            height: get-mobile-vw(160px);
        }
    }
}
.close-btn {
    position: absolute;
    top: -32px;
    right: -32px;
    font-size: 24px;
    color: white;
    cursor: pointer;

    @media (max-width: 960px) {
        top: get-mobile-vw(-32px);
        right: 0;
        font-size: get-mobile-vw(24px);
    }
}
.close-btn:hover {
    color: $orange;
}