@import url('https://fonts.googleapis.com/css2?family=Montserrat+Alternates:wght@500&family=Raleway:wght@800&display=swap');
.nav h2 {
    font-family: 'Montserrat Alternates', sans-serif;
    font-size: 1.8em;
    padding: .5em;
    margin: 0;
    font-weight: bold;
    color: #7F02D6;
}
.banner {
    width: 100%;
    height: 40vh;
    background-image: url("../images/background.png");
    display: flex;
    justify-content: center;
    align-items: center;
}
.banner h1 {
    font-family: 'Raleway', sans-serif;
    font-weight: 800;
    color: #FFF;
    text-shadow: 2px 2px 2px rgba(0, 0, 0, .7);
    text-align: center;
}
.noselect {
    -webkit-touch-callout: none;-webkit-user-select: none;-khtml-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;
}

.stepper-wrapper {
    font-family: 'Montserrat Alternates', sans-serif;
    margin-top: 50px;
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}
.stepper-item {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    @media (max-width: 768px) {
        font-size: 12px;
    }
}

.stepper-item::before {
    position: absolute;
    content: "";
    border-bottom: 2px solid #ccc;
    width: 100%;
    top: 20px;
    left: -50%;
    z-index: 2;
}

.stepper-item::after {
    position: absolute;
    content: "";
    border-bottom: 2px solid #ccc;
    width: 100%;
    top: 20px;
    left: 50%;
    z-index: 2;
}

.stepper-item .step-counter {
    position: relative;
    z-index: 5;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #ccc;
    margin-bottom: 6px;
}

.stepper-item.active {
    font-weight: bold;
}
.stepper-item.active .step-counter {
    border: 2px solid #5209ED;
}
.stepper-item.completed .step-counter {
    background-color: #7E02D6;
    color: #FFF;
    font-weight: bold;
}

.stepper-item.completed::after {
    position: absolute;
    content: "";
    border-bottom: 2px solid #7E02D6;
    width: 100%;
    top: 20px;
    left: 50%;
    z-index: 3;
}

.stepper-item:first-child::before {
    content: none;
}
.stepper-item:last-child::after {
    content: none;
}
.title {
    font-weight: bold;
}

*:focus {
    outline: none!important;
    -webkit-box-shadow: none!important;
    box-shadow: none!important;
}

.input {
    position: relative;
}
.input input {
    border: 1px solid #9e9e9e;
    border-radius: 3px;
    height: 36px !important;
    font-size: 15px !important;
    padding: 0 0 0 10px;
    width: 100%;
}

.input input:focus {
    border: 1px solid #D702F7;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}
.input input:focus + label {
    color: #D702F7;
}
.input label {
    position: absolute;
    top: -.7em;
    left: .7em;
    font-size: .7em;
    background-color: #FFFFFF;
    padding: 0 .5em;
    color: #9e9e9e;
}
.input span {
    font-size: .7em;
    color: #9e9e9e;
}
.input p {
    font-size: .7em;
    color: #9e9e9e;
    margin: 0;
}


.input-select {
    position: relative;
}
.input-select select {
    border: 1px solid #9e9e9e;
    background-color: #FFFFFF;
    border-radius: 3px;
    height: 36px !important;
    font-size: 15px !important;
    padding: 0 0 0 10px;
    width: 100%;
}
.input-select label {
    position: absolute;
    top: -.7em;
    left: .7em;
    font-size: .7em;
    background-color: #FFFFFF;
    padding: 0 .5em;
    color: #9e9e9e;
}

button {
    width: 100%;
    padding: .5em;
    font-size: 1em;
    font-family: 'Raleway', sans-serif;
    border: none;
    border-radius: .3em;
    background-color: #D702F7;
    color: #FFFFFF;
    transition: background .3s;
}
button:hover {
    background-color: #7E02D6;
}
button:disabled {
    background-color:rgba(0, 0, 0, .7);
    cursor: not-allowed;
}

.buttonfinish {
    width: 100%;
    padding: .5em;
    font-size: 1em;
    font-family: 'Raleway', sans-serif;
    border: none;
    border-radius: .3em;
    background-color: #df180a;
    color: #FFFFFF;
    transition: background .3s;
}

.buttonfinish:hover {
    background-color: #000000;
}   



.notification {
    margin-top: 2em;
    padding: 1em;
    background: rgb(253, 61, 61);
    box-shadow: 0 8px 32px 0 rgba( 31, 38, 135, 0.37 );
    border-radius: 1em;
    font-family: 'Euclid Flex Bold', Arial, Helvetica, sans-serif;
    color: #FFF;
}

.notification_hide {
    font-size: 0;
    margin: 0;
    opacity: 0;
    padding: 0;
    transition: opacity .25s,
                font-size .5s .25s,
                margin .5s .25s,
                padding .5s .25s;
}
.notification_show {
    transition: font-size .25s,
                margin .25s,
                padding .25s,
                opacity .5s .25s;
}
.notification .message {
    font-size: .9em;
    padding: .5em;
}

.imgerr {
    text-align: center;
    margin-top: 20px;
}

.h3err {
    text-align: center;
    margin-top: 10px;
    font-family: 'Montserrat Alternates', sans-serif;
}

.perr {
    text-align: center;
    font-size: 14px;
    font-family: 'Montserrat Alternates', sans-serif;
    color: gray;
}