@import url('https://fonts.googleapis.com/css2?family=Barlow+Semi+Condensed:wght@400;500;700&family=Montserrat:wght@400;500;600&display=swap');


*,
*::after,
*::before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}

body {
    background-color: #f6e9f0;
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    color: #3f3b3d;
}

ul {
    padding: 0;
}

li {
    list-style-type: none;
}

img {
    display: block;
    width: 100%;
}

.uppercase {
    text-transform: uppercase;
}

.np__container {
    padding-left: 16px;
    padding-right: 16px;
    margin-left: auto;
    margin-right: auto;
    max-width: 600px;
}

.np__section {
    padding-top: 46px;
    padding-bottom: 46px;
}

.np__logo {
    max-width: 230px;
    width: 100%;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 46px;
}

.np__heading {
    font-family: 'Barlow Semi Condensed', sans-serif;
    color: #3f3b3d;
    text-align: center;
    text-transform: uppercase;
    font-weight: 400;
    font-size: 33px;
    margin-top: 29px;
    margin-bottom: 29px;
    line-height: 1.3;
    letter-spacing: normal;
    font-style: normal;
}

.np__heading--bold {
    font-weight: 700;
}

.np__heading--md {
    font-size: 31px;
}

.np__heading--sm {
    font-size: 25px;
}

.np__heading--highlighted {
    color: #d9608a;
}
.content__form input[type=submit] {
    background-color: #d9608a;
    border: none;
    display: block;
    width: 100%;
    color: #ffffff;
    text-transform: uppercase;
    padding: 12px;
    border-radius: 3px;
    font-size: 14px;
    cursor: pointer;
}

.content__form input[type=submit] {
    background-color: #c3567c;
}
.np__desc {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #3f3b3d;
    text-align: center;
    margin-top: 16px;
    margin-bottom: 16px;
    line-height: 1.5;
}

.np__desc--bold {
    font-weight: 600;
}


.np__btn {
    background-color: #d9608a;
    border: none;
    display: block;
    width: 100%;
    color: #ffffff;
    text-transform: uppercase;
    padding: 12px;
    border-radius: 3px;
    font-size: 14px;
    cursor: pointer;
}

.np__btn:hover {
    background-color: #c3567c;
}

.np__img--space {
    margin-top: 29px;
    margin-bottom: 29px;
}

.np__divider {
    border: 2px solid #ffffff;
}

.np__arrow {
    margin-left: auto;
    margin-right: auto;
    height: 32px;
}

.np__fw--500 {
    font-weight: 500;
}

.np__input {
    background-color: #ffffff;
    display: block;
    padding: 12px;
    width: 100%;
    border: none;
    border-radius: 3px;
    margin-bottom: 12px;
    font-weight: 500;
    font-size: 14px;
    color: #000000;
}

.np__mb-0 {
    margin-bottom: 0;
}

.np__mt-0 {
    margin-top: 0;
}

.np__center {
    margin-left: auto;
    margin-right: auto;
}

.np__input::-webkit-input-placeholder {
    color: #cccccc;
    text-transform: uppercase;
}

.np__input::-moz-placeholder {
    color: #cccccc;
    text-transform: uppercase;
}

.np__input:-ms-input-placeholder {
    color: #cccccc;
    text-transform: uppercase;
}

.np__input::-ms-input-placeholder {
    color: #cccccc;
    text-transform: uppercase;
}

.np__input::placeholder {
    color: #cccccc;
    text-transform: uppercase;
}

.np__agreement {
    color: #323232;
    font-size: 12px;
    line-height: 18px;
    font-weight: 500;
    text-align: justify;
    margin-bottom: 12px;
}

.np__agreement-link {
    color: #a6777e;
}

.np__benefits__wrapper {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.np__benefits {
    background-color: #fbf4f8;
    padding-top: 29px;
    padding-bottom: 29px;
    padding-left: 16px;
    padding-right: 16px;

}

.np__item {
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 16px;
}

.np__item-img {
    height: 19px;
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: 12px;
}

.np__item-txt {
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 14px;
    font-weight: 400;
    color: #3f3b3d;
}

.np__printable-cards-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.np__printable-cards-item {
    padding-right: 6px;
    padding-left: 6px;
    border-right: 1px solid;
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 500;
}

.np__printable-cards-item:first-child {
    padding-left: 0;
}

.np__printable-cards-item:last-child {
    border: none;
    padding-right: 0;
}

.np__printable-cards-icon-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 16px;
    margin-top: 36px;
    margin-bottom: 46px;

}

.np__printable-cards-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.np__printable-cards-icon span {
    font-family: 'Barlow Semi Condensed', sans-serif;
    margin-top: 16px;
    color: #3f3b3d;
    font-weight: 500;
    font-size: 24px;
    text-align: center;
}

.np__printable-cards-icon {
    -ms-flex-preferred-size: 130px;
    flex-basis: 130px;
}


.np__printable-cards-icon-ampersand {
    font-size: 32px;
    color: #ffffff;
    -ms-flex-item-align: end;
    align-self: flex-end;
    font-family: 'Barlow Semi Condensed', sans-serif;
    font-weight: 500;
}

.np__printable-cards-img {
    max-width: 325px;
}

.np__instagram {
    color: #555555;
    text-transform: lowercase;
    font-weight: 500;
}

.np__modal-overlay {
    background-color: rgba(0,0,0,.65);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.np__modal-overlay--hide {
    display: none;
}

.np__modal {
    position: relative;
    background-color: #ffffff;
    max-width: 540px;
    width: 100%;
    padding: 40px;
    text-align: center;
    border-radius: 8px;
}

.np__modal-heading {
    font-size: 16px;
    font-weight: 600;
    margin-top: 22px;
    margin-bottom: 22px;
}

.np__modal-desc {
    font-size: 14px;
    font-weight: 400;
    color: #606673;
    font-style: italic;
    line-height: 1.4;
    margin-bottom: 22px;
}

.np__modal-icon svg path {
    fill: #86B761;
}

@media (min-width: 1100px) {

    .np__container {
        max-width: 1200px;
    }

    .np__section-xl {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        gap: 32px;
        padding-top: 32px;
        padding-bottom: 32px;
    }

    .np__heading {
        margin-top: 33px;
        margin-bottom: 33px;
        font-size: 36px;
    }

    .np__heading--sm {
        font-size: 26px;
    }

    .np__heading--md {
        font-size: 34px;
    }

    .d-xl-flex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 16px;
    }

    .flex-xl-wrap {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .justify-content-xl-center {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .np__flex-basis-xl-50 {
        -ms-flex-preferred-size: calc(50% - 16px);
        flex-basis: calc(50% - 16px);
    }

    .np__mt-xl-0 {
        margin-top: 0;
    }

    .np__mb-xl-0 {
        margin-bottom: 0;
    }

    .np__pb-xl-0 {
        padding-bottom: 0;
    }

    .np__hero-form {
        -ms-flex-preferred-size: 460px;
        flex-basis: 460px;
    }

    .np__hero-img {
        -ms-flex-preferred-size: 500px;
        flex-basis: 500px;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        max-width: 600px;
    }

    .np__hero-txt {
        margin-top: 32px;
        margin-bottom: 32px;
        max-width: 830px;
        margin-left: auto;
        margin-right: auto;
    }

    .np__benefits__wrapper {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
    }

    .np__benefits {
        padding: 29px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .np__benefits-col {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    }

    .np__benefits-img {
        margin-top: 0;
        -o-object-fit: cover;
        object-fit: cover;
    }

    .np__item-txt {
        line-height: 1.3;
        font-size: 15px;
    }

    .np__img--space {
        margin-top: 0;
        margin-bottom: 0;
    }

    .np__printable-cards-icon-wrapper {
        margin-top: 46px;
    }

    .np__printable-cards-img {
        max-width: 460px;
    }

    .np__printable-cards-icon {
        -ms-flex-preferred-size: 180px;
        flex-basis: 180px;
    }

    .np__printable-cards-item {
        font-size: 16px;
        padding-left: 8px;
        padding-right: 8px;
    }

    .np__printable-cards-icon span {
        margin-top: 20px;
        font-size: 28px;
    }

    .np__printable-cards-icon-ampersand {
        font-size: 50px;
        position: relative;
        top: 13px;
    }

    .np__footer {
        background-color: #fbf4f8;
    }

    .np__footer-txt-wrapper {
        max-width: 395px;
        margin-left: auto;
        margin-right: auto;
    }

    .np__modal-heading {
        font-size: 20px;
        margin-top: 26px;
        margin-bottom: 26px;
    }

    .np__modal-desc {
        font-size: 15px;
        margin-bottom: 26px;
    }
}
