h1{
    margin:0;
    padding:8px 0 8px 0;
    color:#e95153;
    font-size:2em;
    line-height: 1.2;
}

h2{
    margin:0;
    padding:8px 0 8px 0;
    color:#e95153;
    font-size:1.5em;
    line-height: 1.2;
}

p {
    margin:0;
    padding:0;
    color:black;
    font-size:1em;
    line-height: 1.6;
}

a {
    text-decoration: none;
    color:black;
}

textarea {
    height: 96px;
    padding: 8px;
}

input::placeholder {
    color:#d6d6d6;
}

.required {
    font-weight: 800;
    color: #e95153;
}

body{
    margin:0;
    padding:0;
    font-family: "Outfit", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    background-color: #f7f7f7;
    overflow-x: hidden;
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.header {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    background-color: white;
}

.header .logo img {
    position: relative;
    top: 3px;
    max-width: 320px;
}

.cta, .btn-submit, .btn-next {
    padding: 22px 0 22px 0;
    background-color: #e95153;
    width: 100%;
    color:white;
    text-align: center;
    transition: background-color 0.3s ease, color 0.3s ease;
    font-weight: 600;
    letter-spacing: .1rem;
    text-transform: uppercase;
}

.cta:hover, .btn-submit:hover, .btn-next:hover {
    filter: drop-shadow(0 0 0.75rem rgba(233, 81, 83, 0.25));
    border: 1px solid #e95153;
    background-color: white;
    color: #e95153;
    font-weight: 800;
}

.cta:disabled,
.btn-submit:disabled,
.btn-next:disabled {
    filter: none;
    border: none;
    background-color: #ccc;
    cursor: not-allowed;
    color: white;
    font-weight: 600;
}

.cta:disabled:hover,
.btn-submit:disabled:hover,
.btn-next:disabled:hover {
    filter: none;
    border: none;
    background-color: #ccc;
    color: white;
    font-weight: 600;
}

.cta-div {
    max-width: 320px;
    height: 64px;
    cursor:pointer;
    display: flex;
}

.btn-next, .btn-submit {
    font-family: "Outfit", sans-serif;
    font-weight: 600;
    width:100%;
    padding: 22px 64px 22px 64px;
    border-style: none;
    cursor:pointer;
}

.btn-prev {
    background: none;
    color: #f19394;
    border-style: none;
    text-transform: uppercase;
    font-weight: 600;
    cursor:pointer;
    letter-spacing: .1rem;
}

.filet {
    display: flex;
    justify-content:space-between;
    align-items: center;
    flex-direction: column;
}

.filet > div {
    height: 1px;
    width: 80px;
    background-color: #f19394;
    transform:translateY(-50px);
}

.separator__block .block .icon,  
.separator__block .block h2, 
.separator__block .block p {
    transform:translateY(0px);
}

.separator__block {
    padding-top: 132px;
    position: relative;
}


.separator__block > .block {
    height: auto!important;
    background: transparent!important;
}

.separator__block::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: #f19394;
    top: 65px;
}

.title__point {
    transform: translateY(0)!important;
    position: relative;
    margin-top: 48px;
    color: #e95153;
}

.title__point::before {
    content: '';
    position: absolute;
    height: 32px;
    width: 32px;
    background-color: #e95153;
    left: 50%;
    transform: translate(-50%, calc(-100% - 16px));
    top: 0;
    border-radius: 50%;
}

footer {
    height: 96px;
    padding: 0 16px;
    background-color: white;
    display: flex;
    align-items: center;
    justify-content: center;
}

footer img {
    max-width:64px;
}


footer > div {
    width: 960px;
    align-items: center;
    display: flex;
    justify-content: space-between;  
}

.back-cta {
    display: flex;
    flex-direction: row;
    gap:32px;
    height: 16px;
    align-items:center;
    margin: 64px 0 0 0;
    color:#f19394;
}

.back-cta a {
    color:#f19394;
}

@media (max-width: 1020px) {
    .header {
        width: 100%;
        display: flex;
        justify-content: space-between;
    }

    footer > div {
        width: 720px;
    }
}

@media (max-width: 790px) {
    footer > div {
        width: 90%;
        text-align: right;
    }
}

@media (max-width: 400px) {
    .header .logo img {
        width: 220px
    }
}
