.popup {
    z-index: 999;
    opacity: 0;
    pointer-events: none;
    background-color: #000 80;
    width: 100%;
    height: 100%;
    transition: all 0.4s ease-in-out;
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}
.popup__content {
    display: block;
    width: 500rem;
    background-color: var(--secondary);
    color: var(--primary);
    position: relative;
    height: 699rem;
    overflow-y: auto;
    padding: 160rem 60rem 80rem;
}
@media only screen and (max-width: 480px) {
    .popup__content {
        width: 345rem;
        height: 550rem;
        padding: 69rem 30rem 50rem;
   }
}
.popup__header {
    margin-bottom: 60rem;
    font-family: var(--second-font);
    font-weight: 400;
    font-size: 36rem;
    line-height: 120%;
}
@media only screen and (max-width: 480px) {
    .popup__header {
        font-size: 30rem;
        margin-bottom: 35rem;
   }
}
.popup__form {
    font-weight: 400;
    font-size: 20rem;
    line-height: 140%;
    color: var(--primary);
}
.popup__form form {
    display: grid;
    gap: 20rem;
}
.popup__form label {
    display: flex;
    align-items: center;
}
.popup__form label a {
    color: var(--primary);
    transition: 0.2s ease-in;
}
.popup__form label a:hover {
    opacity: 0.5;
}
.popup__form .input-wrapper {
    position: relative;
    padding-bottom: 10rem;
    border-bottom: 1px solid var(--primary);
}
.popup__form .input-wrapper input {
    cursor: pointer;
    transition: 0.2s ease-in;
}
.popup__form .input-wrapper input::placeholder {
    color: var(--primary);
}
.popup__form .input-wrapper input:hover {
    opacity: 0.5;
}
.popup__form .input-wrapper .just-validate-error-label {
    top: -20rem;
}
.popup__form .checkbox-wrapper {
    margin-top: 20rem;
    font-weight: 400;
    font-size: 16rem;
    line-height: 140%;
    text-wrap: nowrap;
}
.popup__form .custom-checkbox {
    margin-right: 10rem;
}
@media only screen and (max-width: 480px) {
    .popup__form .checkbox-wrapper {
        text-wrap: wrap;
   }
    .popup__form label {
        display: flex;
        align-items: center;
   }
    .popup__form label .custom-checkbox {
        flex-shrink: 0;
   }
    .popup__form .contact__btn {
        margin-top: 40rem;
        color: var(--secondary);
        background-color: var(--primary);
   }
    .popup__form .contact__btn:hover {
        color: var(--primary);
        background-color: var(--secondary);
   }
}
.popup__close {
    display: inline-block;
    position: absolute;
    top: 40rem;
    right: 40rem;
    width: 76rem;
    height: 56rem;
    border-radius: 100rem;
    border: 1rem solid var(--primary);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: 0.2s ease-in;
}
.popup__close svg {
    transition: 0.2s ease-in;
    width: 28rem;
    height: 22rem;
}
.popup__close svg path {
    transition: 0.2s ease-in;
}
.popup__close:hover {
    background-color: var(--primary);
}
.popup__close:hover svg * {
    stroke: var(--secondary);
}
@media only screen and (max-width: 480px) {
    .popup__close {
        top: 24rem;
        right: 15rem;
        width: 38rem;
        height: 32rem;
   }
    .popup__close svg {
        width: 24rem;
        height: 24rem;
   }
}
.popup-opened {
    opacity: 1;
    pointer-events: all;
}
.success__popup .popup__content {
    font-weight: 300;
    padding: 24rem;
    text-align: center;
}
.success__popup .popup__content .popup__header {
    margin-bottom: 50rem;
}
.success__popup .popup__content .popup__message {
    font-size: 30rem;
}
@media only screen and (max-width: 480px) {
    .success__popup .popup__content {
        padding-top: 191rem;
   }
    .success__popup .popup__content .popup__header {
        font-size: 30rem;
   }
    .success__popup .popup__content .popup__message {
        font-size: 20rem;
   }
}
.offer__popup .popup__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20rem 20rem 40rem;
}
.offer__popup .popup__content .offer__image {
    margin-bottom: 31rem;
    width: 460rem;
    height: 350rem;
}
.offer__popup .popup__content .offer__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.offer__popup .popup__content .offer__text {
    text-align: center;
    font-family: var(--second-font);
    text-transform: uppercase;
}
.offer__popup .popup__content .offer__text p {
    font-weight: 700;
    font-size: 50rem;
    line-height: 120%;
    margin-bottom: 20rem;
}
.offer__popup .popup__content .offer__text span {
    font-weight: 400;
    font-size: 35rem;
    line-height: 140%;
}
.offer__popup .popup__content .offer__btn {
    border: 1px solid var(--primary);
    border-radius: 29rem;
    margin-top: auto;
    width: 184rem;
    height: 58rem;
    font-weight: 600;
    font-size: 16rem;
    line-height: 140%;
    transition: 0.2s ease-in;
}
.offer__popup .popup__content .offer__btn:hover {
    background-color: var(--primary);
    color: var(--secondary);
}
.offer__popup .popup__close {
    border-color: var(--secondary);
}
.offer__popup .popup__close svg path {
    stroke: var(--secondary);
}
.offer__popup .popup__close:hover {
    background-color: var(--secondary);
}
.offer__popup .popup__close:hover svg path {
    stroke: var(--primary);
}
@media only screen and (max-width: 480px) {
    .offer__popup .popup__content {
        padding: 10rem 10rem 30rem;
   }
    .offer__popup .popup__content .offer__image {
        width: 325rem;
        height: 280rem;
        margin-bottom: 22rem;
   }
    .offer__popup .popup__content .offer__text p {
        font-size: 36rem;
        margin-bottom: 13rem;
   }
    .offer__popup .popup__content .offer__text span {
        font-size: 28rem;
   }
    .offer__popup .popup__content .offer__btn {
        font-size: 20rem;
   }
}
