@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@300&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500&display=swap');
@font-face {
    font-family: "Debut";
    src: url('Debut.ttf') format('truetype');
}

@font-face {
    font-family: "Bebas Neue";
    src: url('Bebas_Neue_Cyrillic.ttf') format('truetype');
}

* {
    padding: 0%;
    margin: 0%;
    box-sizing: border-box;
}

::-webkit-scrollbar {
    width: 4px;
    color: #fd0e30;
    transition: all .4s ease;
}

::-webkit-scrollbar-thumb {
    background: #fd0e30;
    border-radius: 4px;
    width: 4px;
    transition: all .4s ease;
}

::-webkit-scrollbar-track {
    background: #101010;
    border-radius: 4px;
    width: 4px;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

html {
    background: #101010;
}

body {
    user-select: none;
    height: auto;
    overflow-x: hidden;
    width: 100%;
    background: #171717;
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

#navigation-content {
    height: 100vh;
    width: 100%;
    position: fixed;
    z-index: 20;
    background-color: #020202;
    transform: translateY(-200%);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.logo img {
    height: 80px;
    position: absolute;
    top: 3%;
    left: 2.5%;
    opacity: .8;
    z-index: 2;
    cursor: pointer;
    transition: all .4s ease;
}

    .logo img:hover {
        opacity: 1;
        transform: scale(1.1);
    }

.navigation-close {
    position: absolute;
    top: 6%;
    right: 4%;
    padding: 10px;
    cursor: pointer;
    transition: all.3s ease;
    opacity: .8;
}

    .navigation-close:hover {
        opacity: 1;
        transform: rotate(90deg);
    }

.close-first, .close-second {
    height: 2px;
    width: 35px;
    background-color: whitesmoke;
    display: block;
    margin: 4px;
    cursor: pointer;
    padding: 1px;
    border-radius: 20px;
}

.close-first {
    transform: rotate(45deg);
}

.close-second {
    transform: rotate(-45deg);
}

.navigation-links {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    font-family: 'Montserrat';
}

    .navigation-links a {
        padding: 10px;
        text-decoration: none;
        color: white;
        font-size: 30px;
        opacity: .7;
        transition: all .4s ease;
    }

        .navigation-links a:hover {
            opacity: 1;
        }

        .navigation-links a::before {
            content: "";
            position: absolute;
            top: 50%;
            left: 50%;
            display: flex;
            justify-content: center;
            transform: translate(-50%,-50%);
            align-items: center;
            font-size: 5em;
            font-weight: 400;
            font-family: 'Debut';
            color: rgb(255, 255, 255,.1);
            z-index: 1;
            pointer-events: none;
            opacity: 0;
            letter-spacing: 100px;
            transition: all .4s ease;
        }

        .navigation-links a:hover::before {
            content: attr(data-text);
            opacity: 1;
            letter-spacing: 10px;
        }

#navigation-bar {
    position: fixed;
    height: 100px;
    width: 100%;
    z-index: 3;
    padding: 10px;
    background: transparent;
    overflow: hidden;
}

    #navigation-bar img {
        height: 80px;
        position: absolute;
        top: 15%;
        left: 2.5%;
        opacity: .8;
        transition: all .4s ease;
    }

        #navigation-bar img:hover {
            opacity: 1;
            transform: scale(1.1);
        }

.menubar {
    position: absolute;
    right: 4%;
    top: 40%;
    cursor: pointer;
    opacity: .8;
    transition: all .4s ease;
}

    .menubar span {
        position: relative;
        background-color: transparent;
        height: 2px;
        width: 20px;
        display: block;
        margin: 6px;
        border-radius: 20px;
    }

    .menubar .first-span {
        width: 35px;
    }

        .menubar .first-span::before {
            content: "";
            position: absolute;
            height: 100%;
            width: 50%;
            top: 0;
            right: 0;
            background-color: whitesmoke;
            transition: all .5s ease;
        }

    .menubar .second-span {
        width: 35px;
    }

        .menubar .second-span::before {
            content: "";
            position: absolute;
            height: 100%;
            width: 75%;
            top: 0;
            right: 0;
            background-color: whitesmoke;
            transition: all .3s ease;
        }

    .menubar .third-span {
        width: 35px;
    }

        .menubar .third-span::before {
            content: "";
            position: absolute;
            height: 100%;
            width: 100%;
            top: 0;
            right: 0;
            background-color: whitesmoke;
            transition: all .3s ease;
        }

    .menubar:hover .second-span::before, .menubar:hover .first-span::before {
        width: 100%;
    }

    .menubar:hover {
        opacity: 1;
    }

#header {
    background: #171717;
    height: 100vh;
    width: 100%;
    overflow: hidden;
    animation: scale 1.5s ease;
    position: relative;
    display: block;
}

#particles {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100vw;
    background-size: cover;
    background-position: 50% 50%;
    display: block;
}

.social-media-links {
    height: 100vh;
    position: absolute;
    z-index: 2;
    padding: 60px;
    width: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.social-media {
    color: white;
    width: 21px;
    opacity: .6;
    margin: 8px;
    transition: all .4s ease;
}

    .social-media:hover {
        opacity: 1;
        transform: scale(1.1);
    }

.header-content {
    height: 100vh;
    width: 100%;
    float: left;
    display: flex;
    position: absolute;
    align-items: center;
    justify-content: center;
    color: whitesmoke;
    font-family: 'Raleway';
    font-weight: 400;
    letter-spacing: 1px;
    flex-direction: column;
    font-size: 50px;
    z-index: 1;
}

    .header-content .firstline {
        z-index: 2;
        font-weight: 700;
        font-family: 'Montserrat';
        font-size: 65px;
    }

    .header-content .secondline {
        z-index: 2;
        font-size: 30px;
        padding-top: 20px;
        font-weight: 500;
        color: rgb(255, 255, 255,.8);
    }

.header-content-box {
    z-index: 2;
    text-align: center;
    height: auto;
    padding-right: 60px;
    width: auto;
}

.slash {
    animation-name: animateslash;
    animation-duration: .8s;
    animation-iteration-count: infinite;
    animation-play-state: running;
}

@keyframes animateslash {
    0% {
        opacity: 1;
        z-index: 2;
    }

    100% {
        opacity: 0;
        z-index: 0;
    }
}

@-webkit-keyframes animateslash {
    0% {
        opacity: 1;
        z-index: 2;
    }

    100% {
        opacity: 0;
        z-index: 0;
    }
}

.color {
    color: #fd0e30;
    transition: all .4s ease;
}

.contact {
    display: flex;
    position: absolute;
    width: 10%;
    right: 0;
    top: 0;
    height: 100%;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    z-index: 3;
}

    .contact a {
        z-index: 3;
    }

    .contact img {
        margin: 10px;
        height: 30px;
        opacity: .6;
        transition: all .4s ease;
    }

        .contact img:hover {
            opacity: 1;
            transform: scale(1.1);
        }

.header-image {
    float: right;
    height: auto;
    background-size: cover;
    background-position: center;
    width: 40%;
    height: 100vh;
}

    .header-image img {
        height: 100vh;
        float: right;
    }

#book {
    background-color: #101010;
    width: 100%;
    height: auto;
    overflow: hidden;
}

#book-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: whitesmoke;
    justify-content: center;
    height: auto;
    width: 100%;
    padding: 30px;
}

.book-header {
    height: auto;
    width: 100%;
    text-align: center;
    align-items: center;
    justify-content: center;
    font-size: 45px;
    font-family: Raleway;
    color: whitesmoke;
    padding: 10px;
    padding-bottom: 30px;
    padding-top: 60px;
    font-weight: 900;
}

.header-caption {
    opacity: .8;
    display: block;
    font-size: 30px;
    font-family: 'Raleway';
    padding: 8px;
    padding-top: 15px;
    color: whitesmoke;
    font-weight: 400;
}

.header-subcaption {
    font-size: 28px;
    padding-top: 8px;
    padding: 0;
}

.book-main {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100vw;
    height: auto;
    padding-left: 50px;
    padding-right: 50px;
    flex-direction: row;
}

.book-first-paragraph {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    color: whitesmoke;
    font-size: 20px;
    font-family: 'Montserrat';
    width: 50%;
    padding: 30px;
    font-weight: 400;
}

    .book-first-paragraph .color {
        font-size: 40px;
    }

.book-first-line {
    font-size: 35px;
    opacity: 1;
    margin-bottom: 10px;
    display: block;
}

.book-second-line {
    opacity: .8;
    font-size: 18px;
    font-weight: 200;
}

.donate {
    padding-top: 40px;
    text-align: center;
}

    .donate a button {
        background: transparent;
        border: none;
        padding: 15px 30px;
        color: whitesmoke;
        background: #fd0e30;
        outline: none;
        font-size: 20px;
        font-family: 'Montserrat';
        border-radius: 4px;
        font-weight: 400;
        cursor: pointer;
        position: relative;
        transition: all .4s ease;
    }

        .donate a button:hover {
            opacity: 1;
            transform: scale(1.05);
        }

.book-img {
    width: 550px;
    height: auto;
    padding: 30px;
    padding-top: 10px;
    border-radius: 40px;
}

    .book-img img {
        width: 100%;
        height: 380px;
        padding: 30px;
        border-radius: 40px;
    }

#steps {
    position: relative;
}

.steps-heading {
    height: auto;
    width: 100%;
    text-align: center;
    align-items: center;
    justify-content: center;
    font-size: 45px;
    font-family: 'Raleway';
    color: whitesmoke;
    padding: 10px;
    padding-bottom: 30px;
    padding-top: 30px;
    font-weight: 900;
}

.steps-content {
    height: auto;
    width: 100%;
    overflow: hidden;
    text-align: center;
    padding: 2.5%;
}

.step {
    height: 380px;
    width: 28%;
    margin: 1.5%;
    background-color: #191919;
    display: inline-block;
    box-shadow: 0px 0px 25px rgb(0,0,0,.05);
    position: relative;
    text-align: center;
    z-index: 2;
    border-radius: 10px;
    overflow: hidden;
    animation: opacity 1.4s ease;
}

.step-img {
    text-align: center;
}

    .step-img img {
        display: inline-block;
        z-index: 2;
        position: relative;
        margin: 20px;
        border-radius: 30%;
        padding: 10px;
        border: 0px solid #fd0e30;
        background: #fd0e30;
        box-shadow: 0px 0px 0px 0px #fd0e30;
        height: 100px;
        transition: all .8s ease;
    }

.step:hover .step-img img {
    box-shadow: 0px 0px 0px 400px #fd0e30;
}

.step-description {
    font-family: 'Montserrat';
    color: whitesmoke;
    position: relative;
    display: inline-block;
    z-index: 2;
}

    .step-description h2 {
        padding: 10px;
        margin: 5px;
        font-weight: 200;
        font-size: 25px;
    }

    .step-description p {
        padding: 10px;
        font-weight: 200;
        font-size: 16px;
        opacity: .8;
    }

.contact-content {
    width: 90%;
    margin: auto;
    height: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.contact-form {
    height: 550px;
    padding-right: 40px;
    width: 60%;
    display: flex;
    flex-direction: column;
}

.form-header {
    font-size: 24px;
    font-family: 'Montserrat';
    font-weight: 400;
    color: whitesmoke;
    padding: 28px;
    text-align: center;
}

form {
    display: flex;
    flex-direction: column;
    height: auto;
    width: auto;
    align-items: center;
    position: relative;
}

.input-line {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.input-name {
    width: 40%;
    padding: 10px 20px;
    margin: 14px;
    border-radius: 8px;
    outline: none;
    background: #050505;
    border: none;
    color: whitesmoke;
    font-family: 'Montserrat';
    font-size: 18px;
}

.input-subject {
    width: 84%;
    padding: 10px 20px;
    margin: 24px;
    border-radius: 8px;
    outline: none;
    background: #050505;
    border: none;
    color: whitesmoke;
    font-family: 'Montserrat';
    font-size: 18px;
}

.input-textarea {
    width: 84%;
    padding: 10px 20px;
    margin: 15px;
    height: 150px;
    border-radius: 8px;
    outline: none;
    background: #050505;
    border: none;
    color: whitesmoke;
    font-family: 'Montserrat';
    font-size: 18px;
}

form button {
    padding: 8px 24px;
    font-family: 'Montserrat';
    font-size: 20px;
    color: whitesmoke;
    background: #fd0e30;
    opacity: .8;
    margin: 20px;
    cursor: pointer;
    border: none;
    border-radius: 8px;
    transition: all .4s ease;
}

    form button:hover {
        opacity: 1;
    }

.contact-info {
    width: 40%;
    height: 500px;
    background: url(../images/contact-back.jpeg);
    background-position: center;
    background-size: cover;
    border-radius: 16px;
    margin-bottom: 50px;
    position: relative;
    overflow: hidden;
}

    .contact-info::before {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: #101010;
        opacity: .8;
        pointer-events: none;
    }

.contact-info-header {
    position: relative;
    z-index: 2;
    font-size: 24px;
    font-family: 'Montserrat';
    font-weight: 400;
    color: whitesmoke;
    padding: 30px;
    text-align: center;
}

.contect-info-content-line {
    height: auto;
    padding: 10px;
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: row;
    align-items: center;
    text-align: left;
    margin-left: 100px;
}

.icon {
    height: 40px;
    opacity: .8;
}

.contact-info-icon-text {
    color: whitesmoke;
    padding: 15px;
    font-family: 'Montserrat';
}

    .contact-info-icon-text h6 {
        font-size: 15px;
        opacity: .8;
    }

    .contact-info-icon-text p {
        font-size: 14px;
        opacity: .7;
    }

.footer {
    background: #080808;
    width: 100%;
    padding: 20px;
    color: whitesmoke;
    display: flex;
    flex-direction: row;
    font-family: 'Montserrat';
    align-items: center;
    justify-content: center;
    text-align: center;
}

    .footer .footer-text {
        position: relative;
        display: inline;
        font-size: 18px;
        font-weight: 400;
        opacity: 1;
    }

#questions {
    width: 100%;
    height: auto;
    padding: 1rem;
    margin: 1rem;
}

.questions-header {
    height: auto;
    width: 100%;
    text-align: center;
    align-items: center;
    justify-content: center;
    font-size: 45px;
    font-family: 'Raleway';
    color: whitesmoke;
    padding: 10px;
    padding-bottom: 30px;
    padding-top: 30px;
    font-weight: 900;
}

.questions-content {
    height: auto;
    width: 100%;
    margin-top: 20px;
    margin-bottom: 80px;
    padding: 20px;
}

.accordion-item {
    background-color: transparent;
    border: 1px solid rgba(255, 255, 255, .125);
    color: whitesmoke;
    font-family: 'Montserrat';
}

.accordion-button:focus {
    z-index: 3;
    border-color: #fd0e30;
    outline: 0;
    box-shadow: 0 0 0 .25rem rgba(253, 14, 48, .25);
}

.accordion-button.collapsed {
    background: #080808;
    color: whitesmoke;
    font-family: 'Raleway';
}

    .accordion-button.collapsed::after {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    }

.accordion-button:not(.collapsed) {
    color: whitesmoke;
    background-color: #fd0e30;
    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, .125);
}

    .accordion-button:not(.collapsed)::after {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    }

.showvideo {
    padding: 8px 24px;
    font-family: 'Montserrat';
    font-size: 20px;
    color: whitesmoke;
    background: #fd0e30;
    opacity: .8;
    margin: 20px;
    cursor: pointer;
    border: none;
    border-radius: 8px;
    transition: all .4s ease;
}

    .showvideo:hover {
        opacity: 1;
    }

.modal {
    --bs-modal-width: 75%;
    background-color: #020202;
}

#zmist-content {
    padding-left: 1%;
    margin: 1%;
    align-self: flex-start;
}

    #zmist-content h2 a {
        font-size: 25px;
        font-family: 'Montserrat';
        font-weight: 200;
        padding: 10px;
        color: #fd0e30;
        transition: all .4s ease;
        text-decoration: none;
    }

#quote-content {
    width: 100%;
    display: flex;
    height: auto;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
}

.quote {
    height: auto;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 1.5%;
    padding-right: 2%;
    padding-top: 50px;
    padding-bottom: 40px;
}

.quote-image {
    /* height: 400px; */
    width: 40%;
    flex-grow: 0;
}

    .quote-image a,
    .quote-image div {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
    }

    .quote-image img {
        height: 400px;
        width: 100%;
        position: relative;
    }

        .quote-image img:last-of-type {
            position: absolute;
            width: 120px;
            height: 120px;
        }

.quote-text {
    width: 40%;
    padding-left: 1%;
    margin: 1%;
    /* margin-left: -40px;
    margin-top: 50px; */
    z-index: 3;
    opacity: 1;
    background: #080808;
    /* padding-top: 10px;
    padding-bottom: 10px; */
    align-self: center;
}

    .quote-text h2 {
        font-size: 35px;
        font-family: 'Montserrat';
        font-weight: 200;
        padding: 20px;
        color: #fd0e30;
        transition: all .4s ease;
    }

    .quote-text button {
        font-size: 16px;
        opacity: .8;
        font-family: 'Montserrat';
        font-weight: 200;
        padding: 10px 20px;
        background: transparent;
        color: #fd0e30;
        transition: all .4s ease;
        outline: none;
        margin: 20px;
        border: 1.5px solid #fd0e30;
        cursor: pointer;
        overflow: hidden;
        position: relative;
        transition: all .4s ease;
    }

        .quote-text button::before {
            content: "";
            position: absolute;
            width: 0%;
            height: 200%;
            transform: rotate(-15deg) translateY(-20px);
            top: 0;
            left: 0;
            z-index: 3;
            background: #fd0e30;
            transition: all .7s ease;
        }

        .quote-text button:hover {
            opacity: 1;
            color: whitesmoke;
        }

.quote-context {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}

.qrcode {
    margin: 10px 1rem 10px 1rem;
    text-align: end;
    width: 150px;
    text-wrap: nowrap;
}

.room_content {
    overflow: hidden;
}

.room_container {
    display: flex;
    align-items: center;
}

.room_container-full, .room_content {
    width: 1000px;
    height: 562px;
}

.room_backgroundImage {
    position: absolute;
    width: 1000px;
}

.womanImage {
    position: absolute;
    width: 1000px;
    z-index: 2;
    animation: 200s linear infinite blur;
}

.room_content {
    border-radius: 40px;
    animation: 200s linear infinite brightness;
}

.room_container {
    justify-content: center;
}

.room_container-full, .face {
    display: flex;
    align-items: center;
    overflow: hidden;
}

.room_container-full {
    margin: 0;
    justify-content: center;
    transform: scale(1);
    animation: 200s linear infinite zoom-in;
}

.cube, .face {
    width: 870px;
    height: 190px;
}

.cube {
    position: relative;
    transform-style: preserve-3d;
    perspective: 480px;
    transform-style: preserve-3d;
    perspective-origin: 51% 70%;
}

.face, .hue {
    position: absolute;
}

.face {
    background: 0 0;
    border: 0 solid #000;
    opacity: 0.5;
}

.bottom, .top {
    width: 870px;
    height: 870px;
}

.front {
    transform: translateZ(435px);
    display: none;
}

.back {
    transform: translateZ(-435px) rotateY(180deg) scaleX(-1);
}

.left {
    transform: translateX(-435px) rotateY(-90deg) scaleX(-1);
}

.right {
    transform: translateX(435px) rotateY(90deg) scaleX(-1);
}

.top {
    transform: translateY(-435px) rotateX(90deg) scaleY(-1);
}

.bottom {
    transform: translateY(-245px) rotateX(-90deg) scaleY(-1);
}

.left .anim_p {
    margin-left: 480px;
    animation: 200s linear infinite left;
}

.back .anim_p {
    margin-left: -390px;
    animation: 200s linear infinite back;
}

.right .anim_p {
    margin-left: -1260px;
    animation: 200s linear infinite right;
}

@keyframes left {
    100% {
        margin-left: -54000px;
    }
}

@keyframes back {
    100% {
        margin-left: -54870px;
    }
}

@keyframes right {
    100% {
        margin-left: -55740px;
    }
}

.hue {
    top: 0;
    left: 0;
    z-index: 3;
    width: 100%;
    height: 100%;
    mix-blend-mode: overlay;
    background: #1e5799;
    background: radial-gradient(ellipse at center, #1e5799 0, #7db9e8 100%);
    opacity: 1;
}

    .hue.animated {
        -webkit-animation: 8s infinite filter-animation;
        animation: 8s infinite filter-animation;
    }

.room_container-reflect {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 380px;
    filter: blur(10px);
}

    .room_container-reflect .cube {
        perspective-origin: 51% -30%;
    }

    .room_container-reflect .back {
        transform: translateZ(-435px) rotateY(180deg) scaleX(-1) scaleY(-1);
    }

    .room_container-reflect .left {
        transform: translateX(-435px) rotateY(-90deg) scaleX(-1) scaleY(-1);
    }

    .room_container-reflect .right {
        transform: translateX(435px) rotateY(90deg) scaleX(-1) scaleY(-1);
    }

    .room_container-reflect .anim_p {
        transform: scaleY(70%);
    }

.anim_p {
    white-space: nowrap;
    overflow: hidden;
    font-family: "Bebas Neue", sans-serif;
    font-weight: 400;
    font-size: calc(6em + (190px / 10) * 0.7);
    padding-top: 20px;
    color: #fff;
}

    .anim_p span {
        color: red;
    }

@keyframes filter-animation {
    0%, 100% {
        filter: hue-rotate(0deg);
    }

    50% {
        filter: hue-rotate(100deg);
    }
}

@keyframes zoom-in {
    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(2.5);
    }
}

@keyframes blur {
    0% {
        filter: blur(0px);
    }

    100% {
        filter: blur(3px);
    }
}

@keyframes brightness {
    0% {
        filter: brightness(1) contrast(1);
    }

    100% {
        filter: brightness(0.8) contrast(1.3);
    }
}

/* scrollUp */
.scroll-top {
    background: #fd0e30;
    width: 50px;
    height: 50px;
    position: fixed;
    bottom: 105%;
    right: 50px;
    border-radius: 50%;
    z-index: 99;
    text-align: center;
    cursor: pointer;
    transition: 1s ease;
    border: none;
    opacity: 0;
}

    .scroll-top.open {
        bottom: 30px;
        opacity: 1;
    }

    .scroll-top::after {
        position: absolute;
        z-index: -1;
        content: '';
        top: 100%;
        left: 5%;
        height: 10px;
        width: 90%;
        opacity: 1;
        background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%);
    }

    .scroll-top:hover {
        background: #666;
        color: #fff;
    }

.partitions {
    height: auto;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-around;
}

    .partitions a {
        color: #fd0e30;
        text-decoration: none;
        font-size: 20px;
    }

.pager {
    margin-top: 1rem;
}

.pagination {
    --bs-pagination-bg: rgba(0, 0, 0, 0.25);
    --bs-pagination-hover-color: #fd0e30;
    --bs-pagination-color: #fd0e30;
    --bs-pagination-focus-color: #fd0e30;
}

.page-link {
    color: #aaa;
}

    .page-link:hover {
        color: #fd0e30;
    }

    .page-link:focus {
        color: #fd0e30;
    }

.active > .page-link, .page-link.active {
    --bs-pagination-active-bg: #fd0e30;
    --bs-pagination-active-border-color: #fd0e30;
    z-index: 3;
    color: var(--bs-pagination-active-color);
    background-color: var(--bs-pagination-active-bg);
    border-color: var(--bs-pagination-active-border-color);
}

.searchbar {
    position: absolute;
    right: 7%;
    top: 40%;
    cursor: pointer;
}

.search-icon {
    display: inline-block;
    width: 2em;
    height: 2em;
    font-size: 15px;
}

.search-form-control {
    width: 0;
    position: absolute;
    top: 25%;
    overflow: hidden;
    margin: 0;
    transform: translateY(-50%);
    height: 38px;
    right: 18px;
    border: none;
    box-shadow: none;
    font-size: 22px;
    color: #000;
    letter-spacing: 1px;
}

.label-wrap {
    opacity: 0;
    overflow: hidden;
    position: absolute;
    transform: translateY(-25%);
    top: 25%;
    width: 100%;
    height: 36px;
    z-index: 4;
    pointer-events: none;
}

.icon-wrap {
    border-radius: 50%;
    box-shadow: 0px 6px 6px rgba(0,0,0,.28);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: 70px;
    cursor: pointer;
}

svg {
    position: absolute;
    left: 20px;
    top: 3px;
}

.form-group {
    margin: 0;
    position: relative;
}

label {
    position: absolute !important;
    transform: translateY(-50%);
    top: 25%;
    right: 18px;
    z-index: 10;
    font-size: 22px;
    margin: 0;
    width: 0;
    overflow: hidden;
    pointer-events: none;
    white-space: nowrap;
    letter-spacing: 1px;
}

.newsletter-bg {
    background-position: center;
    background-size: cover;
}

.newsletter-inner-wrap {
    padding: 45px 80px;
}

.newsletter-content h4 {
    font-size: 30px;
    text-transform: uppercase;
    color: #171d22;
    margin-bottom: 0;
}

.newsletter-content p {
    margin-bottom: 0;
    color: #171d22;
}

.newsletter-form {
    position: relative;
}

    .newsletter-form input {
        width: 100%;
        border: 2px solid #faf9f7;
        background: #fff;
        box-shadow: 0px 3px 4px 0px rgba(30, 30, 30, 0.17);
        padding: 17px 25px;
        padding-right: 215px;
        border-radius: 4px;
    }

        .newsletter-form input::placeholder {
            color: #a0a0a0;
        }

    .newsletter-form button {
        position: absolute;
        right: 2px;
        top: 2px;
        bottom: 2px;
        border-radius: 4px;
        background: #171d22;
        border-color: #171d22;
        color: #fd0e30;
        font-size: 14px;
        padding: 15px 34px;
    }

.butn {
    user-select: none;
    -moz-user-select: none;
    background: #12151e none repeat scroll 0 0;
    border: 2px solid #fd0e30;
    border-radius: 50px;
    color: #e3dfdf;
    cursor: pointer;
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 1.5;
    margin-bottom: 0;
    padding: 16px 34px;
    text-align: center;
    text-transform: uppercase;
    touch-action: manipulation;
    transition: all 0.3s ease 0s;
    vertical-align: middle;
    white-space: nowrap;
    max-width: 200px;
    text-decoration: none;
    outline: none;
    box-shadow: none;
}

    .butn > i {
        margin-right: 7px;
    }

    .butn:hover,
    .butn:hover {
        color: #1e1b29;
    }

    .butn:focus {
        text-decoration: none;
        outline: none;
        box-shadow: none;
    }

    .butn:hover {
        color: #fd0e30;
        text-decoration: none;
    }


@media only screen and (max-width: 550px) {
    .header-content {
        height: 100vh;
        width: 100%;
        float: left;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        color: whitesmoke;
        font-family: 'Raleway';
        font-weight: 500;
        letter-spacing: 2px;
        font-size: 40px;
    }

    .contact {
        display: none;
    }

    .header-image {
        float: right;
        height: auto;
        width: 0%;
    }

    .social-media-links {
        width: 100%;
        left: 0;
        bottom: 0;
        position: absolute;
        padding: 10px;
        height: auto;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
    }

    .header-content-box {
        padding-left: 0px;
        z-index: 2;
        text-align: center;
    }

    .header-content-box {
        z-index: 2;
        text-align: center;
        height: auto;
        padding-right: 0px;
        width: auto;
    }

    #book-content {
        display: flex;
        flex-direction: column;
        align-items: center;
        color: whitesmoke;
        justify-content: center;
        height: auto;
        width: 100%;
        padding: 30px;
    }

    .book-header {
        color: whitesmoke;
        justify-content: center;
        font-size: 25px;
        font-family: 'Raleway';
        font-weight: 900;
    }

    .book-main {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100vw;
        height: auto;
        padding-left: 10px;
        padding-right: 10px;
        flex-direction: column-reverse;
    }

    .book-first-paragraph {
        color: whitesmoke;
        justify-content: center;
        font-size: 20px;
        font-family: 'Montserrat';
        width: 95%;
        padding: 10px;
        font-weight: 400;
    }

        .book-first-paragraph .color {
            font-size: 20px;
        }

    .book-first-line {
        font-size: 20px;
        opacity: 1;
        margin-bottom: 10px;
        display: block;
    }

    .header-caption {
        font-size: 23px;
    }

    .header-subcaption {
        font-size: 21px;
    }

    .book-second-line {
        opacity: .8;
        font-size: 15px;
    }

    .donate a button {
        border: none;
        padding: 20px 30px;
        color: whitesmoke;
        outline: none;
        font-size: 20px;
        font-family: 'Montserrat';
        border-radius: 8px;
        font-weight: 400;
        cursor: pointer;
        position: relative;
        transition: all .4s ease;
        margin: 5px;
    }

    .book-img {
        width: 100%;
        height: 250px;
        text-align: center;
        overflow: hidden;
        border-radius: 10%;
    }

        .book-img img {
            width: 280px;
            height: 220px;
            padding: 5px;
            border-radius: 10%;
        }

    .steps-heading {
        font-size: 25px;
    }

    .step {
        height: 320px;
        width: 90%;
        margin: 1.5%;
        background-color: #191919;
        display: inline-block;
        box-shadow: 0px 0px 25px rgb(0,0,0,.1);
        position: relative;
        text-align: center;
        z-index: 2;
        border-radius: 10px;
        overflow: hidden;
    }

    .step-img img {
        display: inline-block;
        z-index: 2;
        position: relative;
        margin: 20px;
        border-radius: 30%;
        padding: 10px;
        height: 80px;
        transition: all .8s ease;
    }

    .step:hover .step-img img {
        box-shadow: 0px 0px 0px 0px #fd0e30;
    }

    .contact-content {
        width: 90%;
        margin: auto;
        height: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .contact-form {
        height: auto;
        width: 90%;
        display: flex;
        padding-bottom: 40px;
        padding-right: 0px;
        flex-direction: column;
    }

    .form-header {
        font-size: 22px;
        font-family: 'Montserrat';
        font-weight: 400;
        color: whitesmoke;
        padding: 20px;
        padding-top: 0px;
        text-align: center;
    }

    form {
        display: flex;
        flex-direction: column;
        height: auto;
        width: auto;
        align-items: center;
        position: relative;
    }

    .input-line {
        width: 100%;
        height: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .input-name {
        width: 90%;
        padding: 10px 20px;
        margin: 14px;
        border-radius: 8px;
        outline: none;
        background: #050505;
        border: none;
        color: whitesmoke;
        font-family: 'Montserrat';
        font-size: 16px;
    }

    .input-subject {
        width: 90%;
        padding: 10px 20px;
        margin: 24px;
        border-radius: 8px;
        outline: none;
        background: #050505;
        border: none;
        color: whitesmoke;
        font-family: 'Montserrat';
        font-size: 16px;
    }

    .input-textarea {
        width: 90%;
        padding: 10px 20px;
        margin: 15px;
        height: 140px;
        border-radius: 8px;
        outline: none;
        background: #050505;
        border: none;
        color: whitesmoke;
        font-family: 'Montserrat';
        font-size: 16px;
    }

    form button {
        padding: 8px 24px;
        font-family: 'Montserrat';
        font-size: 20px;
        color: whitesmoke;
        opacity: .8;
        margin: 20px;
        cursor: pointer;
        border: none;
        border-radius: 8px;
        transition: all .4s ease;
    }

        form button:hover {
            opacity: 1;
        }

    .contact-info {
        width: 90%;
        height: 500px;
        background-position: center;
        background-size: cover;
        border-radius: 16px;
        margin-bottom: 25px;
        position: relative;
        overflow: hidden;
    }

        .contact-info::before {
            content: "";
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
            background: #101010;
            opacity: .7;
            pointer-events: none;
        }

    .contact-info-header {
        position: relative;
        z-index: 2;
        font-size: 24px;
        font-family: 'Montserrat';
        font-weight: 400;
        color: whitesmoke;
        padding: 20px;
    }

    .contect-info-content-line {
        height: auto;
        padding: 10px;
        position: relative;
        z-index: 2;
        display: flex;
        flex-direction: row;
        align-items: center;
        text-align: left;
        margin-left: 5%;
    }

    .contact-info-icon-text {
        color: whitesmoke;
        padding: 15px;
        font-family: 'Montserrat';
    }

        .contact-info-icon-text h6 {
            font-size: 15px;
            opacity: .8;
        }

        .contact-info-icon-text p {
            font-size: 14px;
            opacity: .7;
        }

    #questions {
        padding: 0;
        margin: 0;
    }

    .questions-content {
        font-size: 25px;
    }

    .questions-content {
        height: auto;
        width: 100%;
        margin-top: 20px;
        margin-bottom: 15px;
    }

    .accordion-body {
        font-size: 1rem;
    }

    #quote-content {
        width: 100%;
        display: flex;
        height: auto;
        flex-direction: column;
        justify-content: center;
        overflow: hidden;
    }

    .quote {
        height: auto;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 1.5%;
        padding-right: 2%;
        padding-top: 50px;
        padding-bottom: 40px;
    }

    .quote-image {
        position: relative;
        width: 100%;
        height: auto;
    }

    .quote-text {
        width: 100%;
        padding-left: 0%;
        margin: 0%;
        margin-left: 0px;
        margin-top: 0px;
        z-index: 1;
        background: #070707;
        padding-top: 10px;
        padding-bottom: 10px;
    }

        .quote-text h2 {
            font-size: 22px;
            font-family: 'Montserrat';
            font-weight: 200;
            padding: 10px;
        }

        .quote-text p {
            font-size: 15px;
            opacity: .8;
            font-family: 'Montserrat';
            font-weight: 200;
            padding: 15px;
        }

    .quote-context {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .qrcode {
        margin: 10px 1rem 10px 1rem;
        text-align: center;
        width: 100%;
    }

    .partitions a {
        font-size: 16px;
    }

    .searchbar {
        right: 12%;
    }

    .butn {
        margin-top: 20px;
    }
}