.texts{
    display: flex;
    flex-direction: column;
    align-items: center;
}

.textContainer{
    display: flex;
    flex-direction: column;
    width: 50vw;
    height: auto;
    gap: 4rem;
    margin-top: 128px;
    z-index: 10;
}

.textContainer .title{
    display: flex;
    flex-direction: column;
}

.textContainer .title span{
    font-family: nr;
    font-size: 32px;
}

.textContainer .title .line{
    width: 100%;
    height: 8px;
    background: var(--Pink-Lighter);
    border-radius: 2px;
}

.sections{
    display: flex;
    flex-direction: column;
    gap: 48px;
}

.section{
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.section h5{
    font-family: nb;    
}

.section p{
    font-size: 22px;
}

.section a{
    font-family: nr;
    font-size: 22px;
    color: var(--Purple-Lighter);
    text-decoration: underline;
}

ul{
    margin: 0;
}

li{
    font-family: nr;
    font-size: 20px;
}

.textContainer .btn{
    display: flex;
    align-items: center;
    justify-content: center;
    width: max-content;
    height: 88px;
    padding-inline: 48px;
    border: 4px solid transparent;
    border-radius: 24px;
    background: var(--Green-VibrantNeutral);
    color: #fff;
    font-family: nb;
    font-size: 32px;
}

.textContainer .btn:hover{
    border-color: #fff;
}

.textContainer .form{
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.textContainer .form span{
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.textContainer .form span label{
    font-family: nb;
    font-size: 24px;
}

.textContainer .form span .input{
    width: calc(100% - 8px - 16px);
    height: calc(64px - 8px);
    background: transparent;
    border: 4px solid #d9d9d9;
    border-radius: 1rem;
    padding: 0;
    padding-left: 16px;
    outline: none;
    color: #fff;
    font-family: nr;
    font-size: 24px;
}

.textContainer .form span fieldset{
    width: calc(100% - 22px - 16px);
    padding-left: 16px;
    border: 4px solid #d9d9d9;
    border-radius: 1rem;
}

.textContainer .form span fieldset legend{
    font-family: nb;
    font-size: 24px;
}

.textContainer .form .checkbox-label{
    display: flex;
    align-items: center;
    gap: 8px;
}

fieldset .checkbox-label input {
    display: none;
}

fieldset .checkbox-label svg {
    overflow: visible;
}

fieldset .checkbox-label-path {
    fill: none;
    stroke: #d9d9d9;
    stroke-width: 6;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: stroke-dasharray 0.5s ease;
    stroke-dasharray: 0 0 240 9999999;
    stroke-dashoffset: 1;
    scale: -1 1;
    transform-origin: center;
    animation: checkbox 0.5s;
}

fieldset .checkbox-label input:checked ~ svg .checkbox-label-path {
    stroke-dasharray: 0 262 70 9999999;
    transition-delay: 0s;
    scale: 1 1;
    animation: none;
}

@keyframes checkbox {
    0% {
        stroke-dashoffset: 20;
    }
    to {
        stroke-dashoffset: 1;
    }
}

fieldset.invalid {
    border-color: #633838;
}

.checkbox-label-path.invalid {
    stroke: #a33;
}

.error-message {
    color: #fbb;
    font-family: nr;
    font-size: 14px;
    margin-top: 8px;
    padding: 8px;
    background-color: #633838;
    border: 1px solid #ffeaea;
    border-radius: 4px;
    animation: error-message 2s linear;
}

@keyframes error-message {
    0%{
        box-shadow: none;
    }
    20%{
        box-shadow: 0 0 25px #f00;
    }
    100%{
        box-shadow: none;
    }
}

.textContainer .form span select{
    width: calc(100%);
    height: calc(64px - 8px);
    background: transparent;
    border: 4px solid #d9d9d9;
    border-radius: 1rem;
    padding: 0;
    padding-left: 16px;
    outline: none;
    color: #fff;
    font-family: nr;
    font-size: 24px;
}

.textContainer .form span option{
    background: #1b1436;
}

label text{
    font-size: 16px;
}

.input::file-selector-button{
    border: 3px solid #f9f9a9;
    outline: none;
    margin-top: 10px;
    padding-left: 10px;
    padding-right: 10px;
    border-radius: 5px;
    color: #fff;
    background-color: transparent;
    cursor: url(/assets/cursors/pointer_unicontour.png), pointer ;
}

textarea{
    width: calc(100% - 24px - 16px);
    height: calc(144px - 8px);
    background: transparent;
    border: 4px solid #d9d9d9;
    border-radius: 1rem;
    padding: 16px;
    outline: none;
    color: #fff;
    font-family: nr;
    font-size: 24px;
    resize: vertical;
}


.texts footer{
    background: linear-gradient(180deg, transparent, #0F0B20);
}


@media screen and (max-width: 959px) {
    .textContainer{
        width: 80vw;
    }
    h5{
        font-size: 24px;
    }
    .textContainer .btn{
        padding-inline: 24px;
        height: 64px;
    }
}