/***
* Animation
*/

@keyframes slide-in {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes slide-out {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.quotation-wrapper {
    position: relative;
    padding: 0;
    overflow-x: clip;
}

.quotation-wrapper .top-header {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.quotation-wrapper .top-header h3 {
    margin-bottom: 2.5rem;
    color: var(--brand-black);
    text-align: center;
    font-family: var(--font-family-2);
    font-size: var(--text-sl);
    /* font-style: normal; */
    font-weight: var(--weight-normal);
    line-height: 25.82px;
    margin-top: 6.25rem;
}

.quotation-wrapper .steps-wrapper {
    display: flex;
    gap: 0;
    width: 100%;
    max-width: 38%;
    justify-content: space-between;
}

/*** Grey Line in the back of steps ***/
.quotation-wrapper .steps-wrapper .step::before {
    content: "";
    position: absolute;
    height: 2px;
    width: 100%;
    left: -50%;
    top: calc((35px / 2) + 10px );
    z-index: -1;
    border-bottom: 2px #000;
    border-bottom-style: dashed;
}

.quotation-wrapper .steps-wrapper .step {
    display: flex;
    align-items: center;
    flex-direction: column;
    position: relative;
    width: 25%;
}

.quotation-wrapper .steps-wrapper .step:not(:last-child).active label::after {
    /* content: ""; */
    position: absolute;
    height: 2px;
    width: 5.3rem;
    left: 104.5%;
    background-color: var(--gray-dark-7);
}

/*** Circle brother next from active circle brother in base status ***/
.quotation-wrapper .steps-wrapper .step.active~.step::before {
    content: "";
    position: absolute;
    height: 2px;
    width: 100%;
    left: -50%;
    top: calc((35px / 2) + 10px );
    z-index: -2;
    background-color: var(--gray-dark-7);
}
.quotation-wrapper .steps-wrapper .step:nth-child(1)::before {
    content: initial;
}
.quotation-wrapper .steps-wrapper .step.active~.step label {
    position: relative;
    width: 3rem;
    height: 3rem;
    background-color: var(--gray-light-1);
    border-radius: 2rem;
    border: 1px solid var(--gray-dark-7);
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--gray-dark-7);
    font-family: var(--font-family-3);
    font-size: var(--text-sl);
    font-style: normal;
    font-weight: var(--weight-bolder);
    line-height: normal;
}
.quotation-wrapper .steps-wrapper .step svg {
    margin: 10px;
    width: 56px;
    background: #fff;
}
.quotation-wrapper .steps-wrapper .step .empty {
    display: none;
}
.quotation-wrapper .steps-wrapper .step.active~.step .empty {
    display: block;
}
.quotation-wrapper .steps-wrapper .step.active~.step .filled {
    display: none;
}

@media (max-width: 768px) {
    .quotation-wrapper .steps-wrapper .step label {
        position: relative;
        width: 1.625rem !important;
        height: 1.625rem !important;
        background-color: var(--gray-dark-10);
        border-radius: 2rem;
        border: var(--border-sm) var(--gray-dark-10);
        margin-bottom: 1rem;
        display: flex;
        justify-content: center;
        align-items: center;
        font-family: var(--font-family-3);
        font-weight: var(--weight-normal);
        color: var(--gray-light-1);
        font-size: var(--text-sm) !important;
    }
    .quotation-wrapper .steps-wrapper .step::before {
        top: calc((24px / 2) + 6px );
    }
}

/*** Circle in base status ***/
.quotation-wrapper .steps-wrapper .step label {
    position: relative;
    width: 3rem;
    height: 3rem;
    background-color: var(--brand);
    border-radius: 2rem;
    border: var(--border-sm) var(--brand);
    margin-bottom: 1rem;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: var(--font-family-3);
    font-weight: var(--weight-normal);
    color: var(--gray-light-1);
    font-size: 1.1rem;
}

.quotation-wrapper .steps-wrapper .step.active label {
    background-color: var(--brand);
    color: var(--gray-light-1);
    border: var(--border-sm) var(--brand);
    font-family: var(--font-family-3);
    font-size: var(--text-sl);
    font-style: normal;
    font-weight: var(--weight-bolder);
    line-height: normal;
}

/* .quotation-wrapper .steps-wrapper .step.active + .step label::before {
    content: "";
    position: absolute;
    height: 2px;
    width: 170%;
    left: -170%;
    z-index: -1;
    background-color: var(--gray-dark);
} */

.quotation-wrapper .steps-wrapper .step .description {
    font-family: var(--font-family-2);
    font-size: var(--text-sm);
    text-align: center;
    color: var(--gray-dark);
    font-weight: var(--weight-normal);
    line-height: 1.25rem;
}
.quotation-wrapper .steps-wrapper .step.active~.step .description {
    color: #00000099;
}
/***
*
*   Article
*   
***/
.step-content {
    width: 26.125rem;
    padding-bottom: 6.25rem;
}

.step-content-xxl {
    width: 38rem;
}

.step-content {
    width: 28rem;
}

.step-content-xxl {
    width: 38rem;
}

.flex-base,
.quotation-wrapper .content-wrapper.active {
    display: flex;
    justify-content: center;
    align-items: center;
}

.quotation-wrapper .content-wrapper.active {
    margin-top: 2rem;
    padding-bottom: 6.25rem;
    animation: slide-in .5s forwards;
}

.quotation-wrapper .content-wrapper.closing {
    animation: slide-out .5s forwards;
}

.quotation-wrapper .content-wrapper:not(active) {
    display: none;
}

.quotation-wrapper .content-wrapper {
    display: none;
    padding-bottom: 2rem;
}

.quotation-wrapper .content-wrapper li {
    width: auto;
    /* margin-bottom: 2rem; */
    margin: 0;
}

.flex-columns {
    flex-direction: column;
}

.hidden {
    display: none;
}

.title-1,
.title-1 p {
    font-family: var(--font-family-3);
    font-size: var(--text-2xl);
    font-style: normal;
    font-weight: var(--weight-normal);
    line-height: normal;
    text-transform: uppercase;
    text-align: center;
}

.title-1 p {
    margin-bottom: 0;
    font-family: var(--font-family-3);
    font-weight: var(--weight-bolder);
    font-size: var(--text-2xl);
    line-height: 2.375rem;
    color: var(--gray-dark);
}

.content-wrapper .title-1 {
    margin-bottom: 1.75rem;
}

.title-1 span, .title-1 strong {
    font-family: var(--font-family-3);
    font-weight: var(--weight-bolder);
}

.radio-group-type-form {
    width:100%;
    display: flex;
    gap: 3.75rem;
    margin-bottom: 1.75rem;
}
.radio-group-type-form>label {
    display: flex;
    gap: 12px;
    font-family: var(--font-family-2);
    font-size: 1rem;
    color: var(--gray-dark-11);
}

input[type="radio"]:checked,
input[type="checkbox"] {
    accent-color: var(--brand);
    min-width: 24px;
    height: 24px;
}

#form-quotation .legal input[type="checkbox"] {
    appearance: none;
    width: 24px;
    height: 24px;
    border: 2px solid #95B43C;
    border-radius: 4px;
    background-color: transparent;
    cursor: pointer;
    outline: none;
    transition: background-color 0.3s, border-color 0.3s;
    position: relative;
    margin-top: .3rem;
    flex-shrink: 0;
}
#form-quotation .legal input[type="checkbox"]:checked {
    background: #95B43C;
}
#form-quotation .legal input[type="checkbox"]:checked::after {
    content: "✓";
    color: var(--gray-light-1) !important;
    font-size: 16px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.radio-group-type-form input[type="radio"] {
    display: none;
}
input[type="radio"] ~ svg.filled, input[type="radio"]:checked ~ svg.empty {
    display: none;
}
input[type="radio"]:checked ~ svg.filled {
    display: block;
}

.quotation__notification,
.error-text {
    font-family: var(--font-family-2);
    display: none;
    font-size: .8rem;
    font-weight: var(--weight-bold);
    color: var(--alert-error-main);
    /* padding-left: var(--p-4); */
    text-align: end;
}
.padding-mobile:has(.form-model-control .error) > .error-text {
    display: block;
}
.quotation-wrapper .tabs-wrapper {
    /* height: 70vh; */
    margin: 2rem 0 2vh 0;
    /* margin: 2rem 0 2vh 0; */
    margin: 0 0 2vh 0;
}

.quotation-wrapper .tabs-wrapper .tabs {
    list-style: none;
    gap: 0rem;
    flex-flow: wrap;
    margin: 0;
    padding: 0;
}


.quotation-wrapper .tabs-wrapper .tabs .label {
    /* padding: .5rem; */
    padding: 0.625rem 1.875rem 0.625rem 1.875rem;
    font-family: var(--font-family-2);
    color: var(--gray-dark-11);
    text-transform: uppercase;
    font-weight: var(--weight-bolder);
    font-size: var(--text-lg);
    text-decoration: none;
    line-height: 1.5rem;
    border-bottom: var(--border-md) var(--gray-dark-1);
}

.quotation-wrapper .tabs-wrapper .tabs .label:hover {
    color: var(--brand);
    border-bottom: 4px solid var(--brand);
}


.quotation-wrapper .tabs-wrapper .tabs .label.active::after,
.quotation-wrapper .tabs-wrapper .tabs .label:hover::after {
    content: "";
    width: 100%;
    height: 3px;
    background-color: var(--brand);
    position: absolute;
    bottom: 0;
    padding: 0;
    display: block;
    left: 0;
}

.quotation-wrapper .tabs-wrapper .tabs .label.active,
.quotation-wrapper .tabs-wrapper .tabs .label:hover {
    color: var(--gray-dark-11);
    border-bottom: 4px solid var(--brand);
    font-weight: var(--weight-bolder);
    font-size: var(--text-lg);
    line-height: 1.5rem;
    position: relative;
    font-family: var(--font-family-3);
}



.quotation__content-wrapper {
    justify-content: center;
    align-items: baseline;
    display: flex;
    min-height: 25rem;
}


.quotation__content-wrapper .content:not(active) {
    display: none;
}

.quotation__content-wrapper .content.active {
    display: flex;
    justify-content: center;
    padding: 0 3rem;
    left: 0;
    animation: slide-in .5s forwards;
    place-items: center;
}

.quotation__content-wrapper .content.closing {
    animation: slide-out .5s forwards;
}

.quotation-wrapper .tabs-wrapper .tabs .label.active+.content {
    display: flex;
    height: auto;
    overflow-y: auto;
}

.quotation__content-wrapper .content.active .card-wrapper,
.quotation-wrapper .tabs-wrapper .card-wrapper {
    padding: .5rem .5rem;
}

.quotation__content-wrapper .content.active .card-wrapper img,
.quotation-wrapper .tabs-wrapper .card-wrapper img {
    margin: 0;
}

.quotation-wrapper .tabs-wrapper .content {
    display: none;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 1rem;
    padding: 0 3rem;
    position: absolute;
    width: 100%;
    left: 0;
}

.quotation__content-wrapper .content.active .card-model,
.quotation-wrapper .tabs-wrapper .content .card-model {
    position: relative;
    height: 100%;
    /* min-height: 16.9rem; */
    min-height: fit-content;
    min-width: fit-content;
    background-color: var(--gray-light-6);
    padding: 1.5rem 1.25rem 0;
    /* border-radius: 0.4rem 0.4rem 0 0; */
    border-radius: 0.4rem 0.4rem 0.2rem 0.2rem;
    border-bottom: var(--border-lg) var(--gray-dark-10);
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.quotation__content-wrapper .content.active .card-model img,
.quotation-wrapper .tabs-wrapper .content .card-model img {
    width: 100%;
    min-width: 15rem;
    max-width: 370px;
    aspect-ratio: 370/213;
    object-fit: contain;
}

.quotation__content-wrapper .content.active .card-model .footer,
.quotation-wrapper .tabs-wrapper .content .card-model .footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 1.5rem 0 var(--p-4);
}

.quotation__content-wrapper .content.active .card-model .footer h4, 
.quotation-wrapper .tabs-wrapper .content .card-model .footer h4 {
    margin: 0;
    font-family: var(--font-family-3);
    font-size: var(--text-2xl);
    color: var(--gray-dark);
    font-weight: var(--weight-bolder);
    line-height: 2.125rem;
}


/***
* Aside Modelo Selected
***/
.quotation-wrapper .selected-model {
    display: none;
    /* justify-content: center; */
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    background: var(--gray-light-6);
    /* position: sticky; */
    left: 0;
    top: 0;
    bottom: 0;
    /* height: 100vh;  */
    /* padding: 100px 88px; */
    padding: 0 4.5%;
    z-index: var(--aside-model-layer);
    border-bottom: var(--border-xlg) var(--brand);
}

.selected-model_info {
    /* position: relative;
    margin-bottom: 90rem;*/
    position: sticky;
    top: 17.2rem;
    padding-bottom: 11.2rem;
    width: 100%;
}

.main-content-wrapper {
    transition: all .5s;
}

.quotation-wrapper .selected-model.active {
    display: flex;
    animation: slide-in 1s forwards;
}

.quotation-wrapper .selected-model.closing {
    display: flex;
    animation: slide-out 1s forwards;
}

.quotation-wrapper .selected-model h3 {
    text-align: center;
    font-size: var(--text-2xl);
    color: var(--gray-dark);
    font-style: normal;
    font-weight: var(--weight-normal);
    line-height: 2.125rem;
    font-family: var(--font-family-2);
    /* text-wrap: nowrap; */
    margin-bottom: 1.75rem;
}

.quotation-wrapper .selected-model img {
    width: 95%;
    margin-bottom: 1.75rem;
}

.quotation-wrapper .selected-model .footer {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.quotation-wrapper .selected-model .footer label {
    font-size: var(--text-xs);
    margin-top: .4rem;
    color: var(--gray-dark-1);
    font-family: var(--font-family-3);
    font-style: normal;
    font-weight: var(--weight-bold);
    /* line-height: normal; */
    /* text-transform: uppercase; */
    line-height: 1rem;
}

.quotation-wrapper .selected-model .footer input:hover,
.quotation-wrapper .selected-model .footer input:focus,
.quotation-wrapper .selected-model .footer input:focus-within,
.quotation-wrapper .selected-model .footer input:active,
.quotation-wrapper .selected-model .footer input {
    border: none;
    background: transparent;
    outline: none;
}

.quotation-wrapper .selected-model .footer .group {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: var(--border-xs) var(--gray-dark-1);
    padding: 0 .5rem;
    margin-bottom: 1.75rem;
}

.quotation-wrapper .selected-model .footer .group span {
    color: var(--gray-dark);
    font-family: var(--font-family-2);
    font-size: var(--text-md);
    font-style: normal;
    font-weight: var(--weight-semibold);
    line-height: 1.375rem;
    cursor: pointer;
    letter-spacing: 0.72px;
    text-transform: capitalize;
}

.quotation-wrapper .selected-model .footer .group svg {
    height: 60%;
    cursor: pointer;
    bottom: .25rem;
    position: relative;
}

/**
    Dropdown
*/
form#form-quotation {
    z-index: 6;
    position: relative;
}

.flex-base.flex-columns.step-content-xxl {
    gap: 1.5rem;
}

.dropdown-input {
    /* max-width: 20rem; */
    cursor: pointer;
    /* align-items: center> h3.0625rem; */
    align-items: center;
    /* margin-bottom: 2.5rem;
	margin-top: 2.5rem; */
}

.dropdown-input.bg-white {
    background-color: var(--brand-white) !important;
}

.dropdown-input .selected>h3 {
    text-wrap: nowrap;
    color: #00000066;
    font-weight: var(--weight-normal);
    font-size: var(--text-md);
    font-family: var(--font-family-2);
    line-height: 1.375rem;
}

.dropdown-input::after {
    content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2IiBmaWxsPSJub25lIj4NCiAgPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yLjU5NzkyIDUuODU3NDhDMi44Nzc2MiA1LjUzMjgyIDMuMzUwMDEgNS41MTI1OCAzLjY1MzAyIDUuODEyMjZMNy45OTk5IDEwLjExMTRMMTIuMzQ2OCA1LjgxMjI2QzEyLjY0OTggNS41MTI1OCAxMy4xMjIyIDUuNTMyODIgMTMuNDAxOSA1Ljg1NzQ4QzEzLjY4MTYgNi4xODIxMyAxMy42NjI3IDYuNjg4MjYgMTMuMzU5NyA2Ljk4Nzk0TDguNTA2MzUgMTEuNzg3OUM4LjIyMDMzIDEyLjA3MDggNy43Nzk0NyAxMi4wNzA4IDcuNDkzNDUgMTEuNzg3OUwyLjY0MDEyIDYuOTg3OTRDMi4zMzcxMSA2LjY4ODI2IDIuMzE4MjIgNi4xODIxMyAyLjU5NzkyIDUuODU3NDhaIiBmaWxsPSIjNDE0MTQxIi8+DQo8L3N2Zz4=);
    height: 1rem;
}

.dropdown-input[open] {
    border-bottom: var(--border-sm) var(--brand);
}

/**
* Model-Card
*/
.quotation-wrapper .step-content select.form-model-select:active,
.quotation-wrapper .step-content select.form-model-select:focus,
.quotation-wrapper .step-content select.form-model-select:hover,
.quotation-wrapper .step-content select.form-model-select {
    position: relative;
    width: 100%;
    border: none;
    border-bottom: var(--border-sm) var(--gray-dark);
    margin-top: var(--p-2);
    padding: var(--p-2);
    outline: none;
}

.quotation-wrapper .step-content select.form-model-select.form-md-grey {
    background: var(--grey-light-1);
    width: 20vw;
}

.quotation-wrapper .step-content select.form-model-select.error {
    border-bottom: var(--border-sm) var(--error);
}

.quotation-wrapper .step-content select.form-model-select.error+label.error-text {
    display: block;
}

.quotation-wrapper .model-card {
    padding: 0rem 1.5rem 1.5rem;
    background-color: var(
    --gray-dark-9);
    border-bottom: var(
    --border-lg) var(--gray-dark-10);
    border-radius: 0.5rem 0.5rem 0.125rem 0.125rem;
    width: 100%;
    margin-bottom: 2.5rem;
}

.quotation-wrapper .model-card img {
    max-width: 100%;
    padding-bottom: 1.5rem;
}
.cont_model_name {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.quotation-wrapper .model-card label {
    font-family: var(--font-family-3);
    font-weight: var(--weight-bolder);
    font-size: var(--text-2xl);
    line-height: 2.125rem;
    align-self: flex-start;
    text-align: left;
    margin: 0;
    padding: 0;
}

.quotation-wrapper .group-buttons {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 2.5rem;
    width: 100%;
    gap: 0;
}

.quotation-wrapper .group-buttons-md {
    display: flex;
    flex-direction: column;
    margin-top: 3rem;
    width: 50%;
    gap: .4rem;
    padding: 0;
    align-items: center;
}

.quotation-wrapper .cta-previous {
    font-family: var(--font-family-2);
    font-weight: var(--weight-normal);
    font-size: 1rem;
    line-height: 1.614rem;
    color: var(--gray-dark);
    margin-top: 1.25rem;
    background: none;
    border: var(--border-sm) var(--brand-black);
    width: 100%;
    height: 60px;
    border-radius: 4px;
}

.quotation-wrapper .cta-previous>svg {
    /* margin: 0.5rem;
    transform: rotate(180deg); */
}

.quotation-wrapper .cta-next {
    /* font-family: var(--font-family-3);
    font-weight: var(--weight-bolder);
    font-size: var(--text-lg);
    border: var(--border-xs) var(--brand);
    padding: .6rem 0; 
    background: var(--gray-light-1);
    color: var(--brand);
    width: 100%;
    height: 3rem;
    cursor: pointer;
    text-transform: uppercase;
    max-width: 22rem;
    line-height: 1.5rem;
    max-width: 20rem; 
    width: 100%; */
    /* margin: 0 var(--p-4); */
}

.width_buttons {
    max-width: 26.125rem;
    width: 100%;
}

@media (max-width: 360px) {
    .width_buttons {
        max-width: 100%;
        width: 100%;
    }

    .quotation-wrapper .tabs-wrapper .tabs .label.active::after,
    .quotation-wrapper .tabs-wrapper .tabs .label:hover::after {
        bottom: -5px;
    }
}

.quotation-wrapper .cta-next {
    background: var(--brand);
    color: var(--brand-white);
    height: 60px;
    border-radius: 4px;
    font-size: 1rem;
}

.quotation-wrapper .cta-next[disabled] {
    background: var(--brand-disabled);
    color: var(--brand-black);
    border: var(--border-xs) var(--brand-disabled);
    pointer-events: none;
}

.quotation-wrapper .cta-next:hover {
    background: var(--brand-dark);
}

/***
* Step 4: Registra tus datos
*/
.legal {
    color: var(--gray-dark-1);
    font-family: var(--font-family-3);
    font-size: var(--text-md);
    font-style: normal;
    font-weight: var(--weight-normal);
    line-height: normal;
    gap: 1rem;
    display: flex;
    flex-direction: column;
}

.personal-data-wrapper {
    width: 50%;
    transition: all .5s;
}

.form-model-control:active, .form-model-control:focus, .form-model-control:hover, .form-model-control {
    padding: 0 1.5rem;
    margin: 0.78rem 0;
    width: 100%;
    height: 4rem;
    border: none;
    border-bottom: var(--border-sm) #f0f0f0;
    outline: none;
    transition: all .5s;
    color: var(--gray-dark-11);
    font-family: var(--font-family-2);
    font-size: var(--text-md);
    font-style: normal;
    font-weight: var(--weight-normal);
    line-height: normal;
}

.form-model-control:focus,
.form-model-control:hover {
    border-bottom: var(--border-sm) var(--brand);
}
.form-model-control:has(.error) {
    border-bottom: var(--border-sm) var(--alert-error-main);
}
.form-group-radios {
    padding: 1.5rem var(--p-4);
}

.form-group-radios strong {
    color: var(--gray-dark-10);
    font-family: var(--font-family-3);
    font-size: var(--text-lg);
    font-style: normal;
    font-weight: var(--weight-bold);
    line-height: normal;
    letter-spacing: 0.72px;
}

.form-group-radios p {
    padding: 0;
    margin: 0;
    font-size: var(--text-lg);
}

.form-group-radios .radio-group {
    display: flex;
    justify-content: start;
    padding: 0 var(--p-4);
    gap: 3.75rem;
}

.form-group-radios .radio-group label {
    display: flex;
    justify-content: center;
    gap: .2rem;
    font-size: var(--text-lg);
    transition: all .5s;
    font-family: var(--font-family-3);
    color: var(--gray-dark-2);
    font-size: var(--text-md);
    font-weight: var(--weight-normal);
}

.form-group-checkbox {
    display: flex;
    gap: .5rem;
    align-items: start;
}

.form-group-checkbox p {
    font-family: var(--font-family-2);
    font-weight: var(--weight-normal);
    font-size: var(--text-md);
    line-height: 1.375rem;
    color: var(--gray-dark-11);
    margin: .5rem 0 0;
}

.short-response-question {
    margin-top: .5rem;
}

.quotation-wrapper .personal-data-wrapper .form-model-control.error {
    border-bottom: var(--border-sm) var(--alert-error-main);
}

.quotation-wrapper .personal-data-wrapper .form-model-control.error+label.error-text {
    display: block;
}

.quotation-wrapper .personal-data-wrapper .border-top-error {
    border-top: var(--border-sm) var(--alert-error-main);
}




/**
* Thank you page
*/
.thank-you-page.hidden+.redirection-message {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 6rem;
    color: var(--gray-dark-4);
    font-family: var(--font-family-3);
    font-size: var(--text-md);
}

.redirection-message {
    display: none;
}

.thank-you-page {
    margin-top: 6.5rem;
}

.thank-you-page article.container {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    max-width: 1240px;
    box-sizing: content-box;
}
.thank-you-page .general-title {
    font-family: var(--font-family-2);
    font-weight: var(--weight-normal);
    font-size: var(--text-sl);
    line-height: 1.614rem;
    color: var(--gray-dark-11);
    font-style: normal;
    letter-spacing: 0.2rem;
    margin: 0;
}
.thank-you-page .title {
    font-family: var(--font-family-3);
    font-weight: var(--weight-bolder);
    font-size: var(--text-3xl);
    line-height: 2.375rem;
    color: var(--gray-dark);
    font-style: normal;
    margin: 0;
}

.thank-you-page .description {
    font-family: var(--font-family-2);
    font-weight: var(--weight-normal);
    font-size: var(--text-lg);
    line-height: 1.625rem;
    text-align: center;
    color: var(--gray-dark-11);
    font-style: normal;
    letter-spacing: 0.72px;
}

.thank-you-page .description > p {
    margin: 0;
}

.thank-you-page .group-top-button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    margin: 1.25rem 0;
}

/* .group-top-button-tqp {
    color: var(--gray-dark);
    text-align: center;
    text-decoration: none;
    font-family: var(--font-family-3);
    font-size: var(--text-lg);
    font-style: normal;
    font-weight: var(--weight-bold);
    line-height: normal;
} */

.group-top-button-tqp {
    font-family: var(--font-family-2);
    font-weight: var(--weight-normal);
    font-size: var(--text-md);
    line-height: 1.614rem;
    color: var(--gray-dark);
    display: flex;
    width: auto;
    /* height: 3.75rem; */
    padding: 1.125rem 2rem;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    text-align: center;
    font-style: normal;
    border: 2px solid var(--gray-dark-10);
    border-radius: 4px;
}

.group-top-button-tqp:hover {
    color: var(--arrow-carousel);
}

.thank-you-page .label-section {
    font-family: var(--font-family-3);
    font-weight: var(--weight-bolder);
    font-size: var(--text-xl);
    line-height: 1.875rem;
    text-align: center;
    color: var(--gray-dark);
    font-style: normal;
    text-transform: uppercase;
    margin: 2rem 0 0.5rem;
}

.thank-you-page .data-info {
    background: var(--gray-light-6);
    border-top-left-radius: .5rem;
    border-top-right-radius: .5rem;
    border-bottom: var(--border-lg) var(--brand-black);
    padding: 0px 47px 30.5px;
}

.thank-you-page .data-info img {
    margin-bottom: 1.5rem;
    width: 100%;
}



.model-name-selected-label {
    font-family: var(--font-family-2);
    font-weight: var(--weight-bolder);
    font-size: var(--text-sm);
    line-height: 1.614rem;
    color: var(--gray-dark);
    font-style: normal;
    margin: 0;
}

.version-selected {
    font-family: var(--font-family-3);
    font-weight: var(--weight-normal);
    font-size: var(--text-sl);
    line-height: 1.614rem;
    color: var(--gray-dark);
    font-style: normal;
    margin: 0;
    text-transform: uppercase;
}

.thank-you-page .data-info .label-description {
    font-family: var(--font-family-2);
    font-weight: var(--weight-normal);
    font-size: var(--text-sm);
    line-height: 1.129rem;
    color: var(--gray-dark);
    font-style: normal;
    margin: .62rem 0 0 0;
    letter-spacing: 0.72px;
}

.thank-you-page .data-info .inner-label-description {
    color: var(--gray-dark-4);
    font-family: var(--font-family-3);
    font-size: var(--text-sm);
    font-style: normal;
    font-weight: var(--text-sm);
    line-height: normal;
    text-transform: capitalize;
    margin: 0;
    padding-right: 0.4rem;
}

.description-page {
    font-family: var(--font-family-2);
    color: var(--gray-dark-2);
    font-style: italic;
    font-weight: var(--weight-normal);
    line-height: 1rem;
    margin: 0;
    padding-right: 0.4rem;
    border: none;
    background: transparent;
    height: 150px;
    overflow: auto;
    outline: none;
    resize: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    font-size: .75rem;
    text-align: justify;
}

.description-page>a,
.description-page>p>a {
    color: var(--brand) !important;
}

.thank-you-page .data-info .price-wrapper {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    width: max-content;
}

.thank-you-page .data-info .label-price {
    font-family: var(--font-family-3);
    font-weight: var(--weight-bolder);
    font-size: var(--text-sl);
    line-height: 1.614rem;
    color: var(--gray-dark);
    font-style: normal;
    text-transform: uppercase;
}

.thank-you-page .data-info .label-price-small {
    color: var(--gray-dark-10);
    font-family: var(--font-family-3);
    font-size: var(--text-sm);
    font-style: normal;
    font-weight: var(--weight-bolder);
    line-height: normal;
    text-transform: uppercase;
}

.thank-you-page .data-info .label-second-currency-price {
    color: var(--gray-dark-10);
    font-family: var(--font-family-3);
    font-size: var(--text-2xl);
    font-style: normal;
    font-weight: var(--weight-bolder);
    line-height: normal;
    text-transform: uppercase;
}

.thank-you-page .data-info .label-second-currency-price-small {
    color: var(--gray-dark-10);
    font-family: var(--font-family-3);
    font-size: var(--text-sm);
    font-style: normal;
    font-weight: var(--weight-bolder);
    line-height: normal;
    text-transform: uppercase;
}

.separator {
    height: 0.2rem;
}

.contact_description {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    max-height: 360px;
}
.text_before_checks p {
    font-family: var(--font-family-2);
    font-size: var(--text-md);
    color: var(--brand-black);
    justify-content: flex-start;
    align-items: flex-start;
    text-align: left;
    gap: 0.5rem;
    padding: 1rem 0;
}
.text_after_checks p {
    font-family: var(--font-family-2);
    font-size: .875rem;
    color: #878787;
    margin-top: 2rem;
} 

.thank-you-page .data-info .top-description {
    font-family: var(--font-family-3);
    font-weight: var(--weight-bolder);
    font-size: var(--text-lg);
    line-height: 1.5rem;
    color: var(--gray-dark);
    font-style: normal;
    display: flex;
    justify-content: space-between;
    width: 100%;
    text-transform: uppercase;
    margin-top: 35.5px;
}

.thank-you-page .data-info .label-data {
    font-family: var(--font-family-2);
    font-weight: var(--weight-normal);
    font-size: var(--text-md);
    line-height: 1.375rem;
    color: var(--gray-dark-11);
    font-style: normal;
}

.thank-you-page .data-info .response-label-data {
    font-family: var(--font-family-3);
    font-weight: var(--weight-semibold);
    font-size: var(--text-lg);
    line-height: 1.625rem;
    color: var(--gray-dark);
    font-style: normal;
    word-wrap: break-word;
}

.thank-you-page .data-info .data-personal-wrapper {
    display: flex;
    flex-direction: column;
    /* justify-content: center; */
    align-items: flex-start;
    gap: 0.5rem;
    align-self: stretch;
}

.thank-you-page .data-info .label-data-personal {
    font-family: var(--font-family-2);
    font-weight: var(--weight-normal);
    font-size: var(--text-md);
    line-height: 1.375rem;
    color: var(--gray-dark-11);
    font-style: normal;
}

.thank-you-page .data-info .label-data-personal p {
    margin-bottom: .4rem;
}

.thank-you-page .data-info .label-data-personal p strong {
    font-family: var(--font-family-3);
    font-weight: var(--weight-normal);
}

.thank-you-page .data-info .response-label-data-personal {
    font-family: var(--font-family-2);
    font-weight: var(--weight-semibold);
    font-size: var(--text-lg);
    line-height: 1.625rem;
    color: var(--gray-dark);
    font-style: normal;
    letter-spacing: 0.64px;
}

.thank-you-page .links-bottom-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 1.25rem 0;
}

.thank-you-page .links-bottom-wrapper>div {
    display: flex;
}

.thank-you-page .links-bottom-wrapper .link-bottom {
    display: flex;
    /* height: 4rem; */
    padding: 0.813rem 2rem;
    align-items: center;
    gap: 1rem;
    text-decoration: none;
    align-items: center;
    justify-content: center;
}

.thank-you-page .links-bottom-wrapper .link-bottom span {
    font-family: var(--font-family-3);
    font-weight: var(--weight-normal);
    font-size: var(--text-sm);
    line-height: 1.318rem;
    color: var(--gray-dark);
    font-style: normal;
    text-decoration-line: underline;
}

.thank-you-page .info-notification,
.personal-data-wrapper .info-notification {
    display: flex;
    padding: var(--p-3);
    margin-top: 1rem;
    align-items: flex-start;
    gap: 0.625rem;
    align-self: stretch;
    border-radius: 0.25rem;
    border: var(--border-sm) var(--alert-information-main);
    background: var(--alert-information-ligth);
    font-family: var(--font-family-3);
    font-weight: var(--weight-normal);
}

.thank-you-page .info-notification {
    margin-bottom: 3rem;
}

.thank-you-page .info-notification strong,
.personal-data-wrapper .info-notification strong {
    font-family: var(--font-family-3);
}

.personal-data-wrapper .info-notification .icon-svg {
    width: 4%;
}

.thank-you-page .info-notification .icon-svg {
    width: 3%;
}

.thank-you-page .info-notification .icon-svg svg,
.personal-data-wrapper .info-notification .icon-svg svg {
    width: 1.3rem;
    height: 1.3rem;
}

.thank-you-page .info-notification .content h4,
.personal-data-wrapper .info-notification .content h4 {
    margin: 0;
    color: var(--black-100, #000);
    font-family: var(--font-family-3);
    font-size: var(--text-md);
    font-style: normal;
    font-weight: var(--weight-normal);
    line-height: 1.375rem;
}

.thank-you-page .info-notification .content p,
.personal-data-wrapper .info-notification .content p {
    margin: .5rem 0 0 0;
    color: var(--black, #000);
    font-family: var(--font-family-3);
    font-size: var(--text-sm);
    font-style: normal;
    font-weight: var(--weight-normal);
    line-height: 1.25rem;
}

.thank-you-page .mobile-title-collapser {
    display: none;
}

.dropdown-input .selected {
    overflow: hidden;
    color: #000000;
}


/***
*   Media Queries
***/

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
    .quotation-wrapper .cta-previous {
        margin: 0;
        font-size: .875rem;
    }

    .quotation-wrapper .cta-previous>svg {
        fill: var(--brand);
    }

    .main-content-wrapper {
        /* overflow: hidden; */
        margin: 0;
        padding: 0;
    }

    .content-wrapper .title-1 {
        margin-bottom: 0;
        padding-top: 6px;
    }

    .title-1, .title-1 p {
        font-size: 1.625rem;
        line-height: 2.15rem;
        padding: 0 .625rem 1.125rem;
    }

    /* .quotation-wrapper .tabs-wrapper li.active {
        border-bottom: var(--border-sm) var(--brand);
    } */

    /* .quotation-wrapper .tabs-wrapper .tabs .label.active {
        color: var(--gray-dark-10);
        border-bottom: none;
        font-family: var(--font-family-3);
    }

    .quotation-wrapper .tabs-wrapper .tabs .label {
        display: block;
        text-align: center;
        font-size: var(--text-sm);
        font-family: var(--family-title-2);
    } */

    /* .quotation-wrapper .tabs-wrapper .tabs {
        width: 100%;
        justify-content: start;
        overflow-x: auto;
    } */

    .quotation__content-wrapper .content.active {
        padding: 0;
        margin: 0;
    }

    .quotation__content-wrapper .content.active .card-wrapper {
        width: 100%;
    }

    .quotation-wrapper div.group-buttons {
        width: 100%;
    }

    div.personal-data-wrapper {
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .quotation-wrapper .group-buttons,
    .quotation-wrapper .group-buttons-md {
        flex-direction: row;
        gap: 0;
        width: 100vw;
    }

    .padding-mobile {
        padding: 0 1.25rem;
        margin: 0;
    }
    .padding-mobile:has(.dropdown-input) {
        padding-inline: 2.5rem;
    }
    .w-sm-full {
        margin: 0;
    }

    .quotation-wrapper .top-header {
        padding: 1.5rem;
    }

    .quotation-wrapper .tabs-wrapper .tabs .label.active::after,
    .quotation-wrapper .tabs-wrapper .tabs .label:hover::after {
        bottom: -5px;
    }
}



/* Small devices (landscape phones, less than 768px) */
@media (max-width: 1057px) {
    /* .quotation-wrapper .steps-wrapper .step {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        position: relative;
        min-width: calc(13.875rem - 3rem);
        min-height: 5.25rem;
    } */

    .thank-you-page {
        margin: 5rem 1rem 0;
    }

    .thank-you-page .title {
        font-size: 1.75rem;
    }
    .thank-you-page article.container {
        padding: 0;
    }
    .thank-you-page .description {
        line-height: 22px;
    }
    .thank-you-page .group-top-button {
        margin-block: 1rem 0;
        gap: 1.5rem;
    }
    .group-top-button-tqp {
        width: 100%;
    }
    .thank-you-page .data-info {
        padding: 0 .25rem 0;
        width: 100%;
        margin: initial;
    }
    .thank-you-page .label-section {
        margin-block: .75rem .5rem;
        font-size: 1.375rem;
    }
    .thank-you-page .data-info img {
        max-width: 280px;
        width: 100%;
        padding: 0;
        margin: 0 0 1.5rem;
    }

    .thank-you-page .data-info .top-description {
        width: 100%;
        margin-top: 1.25rem;
    }
    .thank-you-page .data-info .label-description {
        font-size: .875rem;
    }
    .thank-you-page .data-info .label-price {
        font-size: 1rem;
        line-height: 22px;
    }
    .thank-you-page .data-info .price-wrapper {
        width: 100%;
        border-bottom: 1px solid #A4A4A5;
        padding-bottom: 26px;
    }

    .thank-you-page .mobile-title-collapser {
        /* display: flex; */
        justify-content: space-between;
        align-items: center;
        color: var(--gray-dark-10);
        margin: 1rem 0 0rem;
        font-family: var(--font-family-3);
        transition: display 0s, opacity .5s ease-in-out .5s;
        font-size: var(--text-sm);
        font-style: normal;
        font-weight: var(--weight-bold);
        line-height: 20px;
        text-decoration-line: underline;
    }

    .thank-you-page .mobile-title-collapser+div {
        /* opacity: 0;
        display: none; */
    }

    .thank-you-page .mobile-title-collapser.active+div {
        display: block;
        opacity: 1;
    }

    .thank-you-page .mobile-title-collapser.active+div .top-description {
        /* display: none; */
    }
    .thank-you-page .data-info .response-label-data {
        margin: 0;
    }
    .col-md-5.contact_description {
        padding-bottom: 1.25rem;
    }
    .col-md-7.contact_description > :nth-child(1) {
        border-top: 1px solid #A4A4A5;
        padding-top: 1.5rem;
    }

    .thank-you-page .mobile-title-collapser>svg {
        transform: rotate(90deg);
    }

    .quotation-wrapper {
        margin: 0;
        padding: 0
    }

    .quotation-wrapper .content-wrapper.active {
        position: relative;
        margin-top: 0;
        height: auto;
        justify-content: start;
        margin: 0;
        padding: 0 0 2rem;
    }


    .quotation-wrapper .tabs-wrapper {
        margin: 0;
        width: 100%;
        /*height: 100vh;*/
        display: contents;
    }

    .quotation-wrapper .tabs-wrapper .tabs .label.active+.content {
        height: 60%;
    }

    .flex-base {
        width: 100%;
        position: relative;
        padding: 0 var(--p-4);
    }

    .card-wrapper {
        width: 60%;
    }

    .tabs {
        padding: 0;
        gap: 0;
    }

    .tabs .label {
        font-size: .8rem;
    }

    .quotation-wrapper .step-content select.form-model-select.form-md-grey {
        width: 100%;
    }

    .quotation-wrapper .model-card {
        width: 100%;
    }

    .selected-model_info {
        display: flex;
        width: 100%;
        align-content: space-between;
        flex-wrap: wrap;
        flex-direction: initial;
        column-gap: 20px;
        padding-bottom: 0;
        align-items: center;
        max-width: 700px;
    }

    .quotation-wrapper .selected-model.active {
        width: 100%;
        height: 15%;
        margin: 0;
        padding: .625rem var(--p-4) var(--p-4) var(--p-4);
        flex-direction: row-reverse;
        justify-content: space-around;
        position: relative !important;
        top: 3rem;
        background: #fff;
        border-width: 6px;
    }
    .quotation-wrapper .selected-model.active h3 {
        width: 100%;
        margin-bottom: 10px;
        font-size: 1.625rem;
        line-height: 2.125rem;
        font-family: var(--font-family-3);
        font-weight: 700;
    }

    .quotation-wrapper .selected-model.active img {
        width: 100%;
        height: 100%;
        max-width: 46.5%;
        position: initial;
        order: 3;
    }

    .quotation-wrapper .selected-model .footer {
        width: 47%;
        gap: 1rem;
        max-width: 156px;
    }

    .quotation-wrapper .selected-model .footer label {
        display: none;
    }

    .quotation-wrapper .selected-model.active+.main-content-wrapper {
        transform: translateX(0%);
        width: 100%;
    }

    .personal-data-wrapper {
        width: 80%;
    }

    .short-response-question {
        margin-top: 1rem;
        gap: 1rem;
    }

    .legal {
        gap: 1rem;
    }

    .form-group-checkbox {
        justify-content: start;
    }

    .quotation-wrapper .group-buttons,
    .quotation-wrapper .group-buttons-md {
        flex-direction: column;
        width: 100%;
        justify-content: center;
        gap: 1rem;
        /*padding: 0 var(--p-4);*/
    }

    .w-sm-full {
        width: 100%;
    }

    .quotation-wrapper .selected-model .footer .group {
        padding: 0.2rem var(--p-2);
        background: var(--gray-light-6);
        height: 3rem;
        margin: 0;
        padding-inline: .75rem;
        gap: 18px;
    }
    .quotation-wrapper .selected-model .footer .group span {
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
        font-size: 1rem;
    }
    .quotation-wrapper .selected-model .footer .group svg {
        margin: .375rem;
        height: initial;
        position: initial;
    }
    .thank-you-page .links-bottom-wrapper {
        margin-block: 2.5rem 3.75rem;
    }
    .thank-you-page .links-bottom-wrapper>div {
        flex-direction: column;
        align-items: center;
    }

    .thank-you-page .links-bottom-wrapper .link-bottom {
        padding: var(--p-4) 2rem;
    }

    .thank-you-page .links-bottom-wrapper .link-bottom>svg {
        transform: rotate(90deg);
    }

    .thank-you-page .info-notification .icon-svg {
        width: 10%;
    }

    .personal-data-wrapper .info-notification .icon-svg {
        width: 6%;
    }
    .thank-you-page .links-bottom-wrapper .link-bottom span {
        font-size: .875rem;
    }
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {

    .quotation__content-wrapper .content.active .card-model img,
    .quotation-wrapper .tabs-wrapper .content .card-model img {
        width: 100%;
        min-width: auto;
    }
}

@media (max-width: 457px) {
    .quotation-wrapper .tabs-wrapper .tabs .label {
        padding: .5rem;
    }
}

@media (max-width: 768px) {
    .quotation-wrapper .top-header h3 {
        margin-bottom: 1.25rem;
        font-size: .75rem;
        line-height: 1.125rem;
        margin-top:1.25rem !important;
    }
    .quotation-wrapper .model-card label {
        font-size: 1.625rem;
    }
    .dropdown-input .selected>h3 {
        font-size: 1rem;
        color: var(--gray-dark-11);
    }
    .quotation-wrapper .cta-next {
        font-size: .875rem;
    }
    .quotation-wrapper .steps-wrapper .step .description {
        margin: 0;
    }
    /* .quotation-wrapper .steps-wrapper .step {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        position: relative;
        min-width: calc(13.875rem - 7rem);
        min-height: 5.25rem;
    } */
    .quotation-wrapper .tabs-wrapper .tabs .label.active::after,
    .quotation-wrapper .tabs-wrapper .tabs .label:hover::after {
        bottom: -15px;
        content: initial;
    }
    .quotation-wrapper .tabs-wrapper .tabs {
        margin-bottom: 1.875rem;
    }
    .quotation-wrapper .steps-wrapper {
        max-width: 86%;
    }
    .quotation-wrapper .steps-wrapper .step svg {
        width: 36px;
        padding: 6px;
        margin: 0;
    }
    .quotation-wrapper .steps-wrapper .step.active~.step::before {
        top: calc((24px / 2) + 6px );
    }
    .quotation-wrapper .tabs-wrapper .tabs .label.active, .quotation-wrapper .tabs-wrapper .tabs .label:hover {
        font-size: 1.125rem;
        line-height: 1.5rem;
        border-width: 6px;
        padding-bottom: 4px;
    }
    .quotation-wrapper .tabs-wrapper .tabs .label {
        border-width: 2px;
    }
    .quotation__content-wrapper .content.active .card-wrapper {
        padding-inline: 1rem;
    }
    .quotation__content-wrapper .content.active .card-model, .quotation-wrapper .tabs-wrapper .content .card-model {
        padding: 1.25rem .875rem 0;
    }
    .padding-mobile .col-sm-12 {
        padding-inline: 1.25rem;
    }
    .text_before_checks, .text_after_checks {
        padding-inline: 12px;
    }
    .text_after_checks p {
        font-size: .75rem;
    }
    .thank-you-page .general-title {
        font-size: .75rem;
        line-height: 1rem;
    }
}

/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {

    .quotation__content-wrapper .content.active .card-model img,
    .quotation-wrapper .tabs-wrapper .content .card-model img {
        width: 100%;
        min-width: auto;
    }

    /* .quotation-wrapper .steps-wrapper .step {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        position: relative;
        min-width: calc(13.875rem - 3rem);
        min-height: 5.25rem;
    } */
}

@media (max-width: 1600px) {
    .personal-data-wrapper {
        width: 70%;
        transition: all .5s;
    }
}

.dropdown-input[open] .options-wrapper::-webkit-scrollbar {
    width: 0.25rem;
    height: 6.4375rem;
    display: block
}

.dropdown-input[open] .options-wrapper::-webkit-scrollbar-track {
    border-radius: 0;
}

.dropdown-input[open] .options-wrapper::-webkit-scrollbar-thumb {
    background: var(--Grey-05, #9A9A9A);
    /* outline: 1px solid slategrey;*/
}