:root {
    --green-yellow: #C9F156;
    --grey: #A1AECB;
    --indigo: #21366B;
    --dark-blue: #27448F;
    --primary-text-color: #446AC9;
    --text-font-size: 20px;
    --text-small-font-size: 16px;
}

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

body {
    font-family: "Mazzard", sans-serif;
    font-size: 20px;
    background: #FFFFFF;
}

/* BASIC STYLES */

.hidden {
    display: none !important;
}

.container {
    max-width: 1480px;
    padding: 0 20px;
    margin: 0 auto;
}

.subtitle {
    font-family: 'Mazzard', sans-serif;
    font-weight: 400;
    font-size: 28px;
    line-height: 100%;
    letter-spacing: 0;
    color: #A344D2;
    margin-bottom: 24px;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Playfair Displaya', sans-serif;
    line-height: 100%;
    letter-spacing: 0;
    color: #000000;
}

h1 {
    font-weight: 700;
    font-size: 48px;
    line-height: 1.2;
    margin-top: 164px;
    margin-bottom: 24px;
}

h2 {
    font-weight: 700;
    font-size: 48px;
}

h3 {
    font-weight: 600;
    font-size: 32px;
}

h4 {
    font-weight: 600;
    font-size: 24px;
}

h5 {
    font-weight: 600;
    font-size: 20px;
    vertical-align: middle;
}

.text {
    font-weight: 400;
    font-size: var(--text-font-size);
    line-height: 100%;
    letter-spacing: 0;
    color: var(--primary-text-color);
}

.text.small {
    font-size: var(--text-small-font-size);
}

.footer-text {
    font-weight: 400;
    font-size: 18px;
    line-height: 100%;
    letter-spacing: 0;
    color: #21366B;
}

.green-yellow-color {
    color: var(--green-yellow) !important;
}

.grey-color {
    color: var(--grey) !important;
}

.indigo-color {
    color: var(--indigo) !important;
}

.dark-blue-color {
    color: var(--dark-blue) !important;
}

.text-center {
    text-align: center;
}

.gradient-text-bg {
    background: linear-gradient(85.93deg, #70CAC1 -33.07%, #C9F156 112.59%);
    padding: 4px;
    border-radius: 26px;
}

.d-flex-column-default {
    display: flex;
    flex-direction: column;
}

.d-flex {
    display: flex;
}

.ai-c {
    align-items: center;
}

.ai-e {
    align-items: flex-end;
}

.ai-s {
    align-items: flex-start;
}

.jc-c {
    justify-content: center;
}

.jc-e {
    justify-content: flex-end;
}

.jc-s {
    justify-content: flex-start;
}

.gap-16 {
    gap: 16px;
}

.gap-20 {
    gap: 20px;
}

.gap-24 {
    gap: 24px;
}

.gap-40 {
    gap: 40px;
}

.mb-4 {
    margin-bottom: 4px;
}

.mb-8 {
    margin-bottom: 8px;
}

.mb-12 {
    margin-bottom: 12px;
}

.mb-16 {
    margin-bottom: 16px;
}

.mb-20 {
    margin-bottom: 20px;
}

.mb-24 {
    margin-bottom: 24px;
}

.mb-28 {
    margin-bottom: 28px;
}

.mb-32 {
    margin-bottom: 32px;
}

.mb-40 {
    margin-bottom: 40px;
}

input[type="range"] {
    width: 100%;
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
    border: none;
}

/* Track styles for WebKit browsers (Chrome, Safari, Edge) */
input[type="range"]::-webkit-slider-runnable-track {
    height: 24px;
    border-radius: 24px;
    background: linear-gradient(to right, #0E0671 0%, #4135DC var(--fill-percent), #ECECEC var(--fill-percent), #ECECEC 100%);
}

input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    height: 32px;
    width: 8px;
    background: #1B128D;
    border-radius: 2px;
    cursor: pointer;
    margin-top: -3px;
    border-radius: 4px;
}

/* Track styles for Firefox */
input[type="range"]::-moz-range-track {
    height: 24px;
    border-radius: 24px;
    background: linear-gradient(to right, #0E0671 0%, #4135DC var(--fill-percent), #ECECEC var(--fill-percent), #ECECEC 100%);
    border: none;
}

input[type="range"]::-moz-range-thumb {
    height: 32px;
    width: 8px;
    background: #1B128D;
    border-radius: 2px;
    border: none;
    cursor: pointer;
    margin-top: -3px;
    border-radius: 4px;
}

/* For the unfilled portion of the track */
input[type="range"] {
    background: #ECECEC;
    border-radius: 24px;
}

/* Firefox specific - to show the unfilled portion */
input[type="range"]::-moz-range-progress {
    background: linear-gradient(to right, #0E0671 0%, #4135DC var(--fill-percent), #ECECEC var(--fill-percent), #ECECEC 100%);
    height: 24px;
    border-radius: 24px;
}

input[type="text"] {
    background: transparent;
    border: none;
    outline: none;
    font-family: 'Unbounded', sans-serif;
    font-weight: 400;
    font-size: 28px;
    line-height: 34px;
    color: #090630;
}

input[type="text"]::placeholder {
    font-family: 'Unbounded', sans-serif;
    font-weight: 400;
    font-size: 28px;
    line-height: 34px;
    color: #090630;
}

.faq-list {
    display: flex;
    gap: 27px;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 562px;
}

section.faq-page .faq-list li {
    max-width: 956px;
    width: 100%;
    justify-content: space-between;
    transition: .1s all linear;
}

.faq-list li {
    cursor: default !important;
}

.faq-list li > .wrapper {
    cursor: pointer !important;
}

.faq-list li img {
    transform: rotate(0deg);
    transition: .1s all linear;
}


.faq-list .document-open-content ul li {
    cursor: pointer !important;
}

.faq-list .document-open-content {
    background: #F9EDFF;
    width: 100%;
    padding: 48px 0 !important;
}

.faq-list .document-open-content li {
    border: none;
    display: flex;
    justify-content: space-between;
    min-height: 84px;
    width: 100%;
    padding-inline: 42px;
    transition: .1s all linear;
    border-radius: 0;
}

.faq-list .document-open-content li:hover {
    background: #EECDFF;

}

.faq-list .document-open-content li:hover .name {
    text-decoration: underline;
}

.faq-list .document-open-content li img {
    width: 44px !important;
    height: 44px !important;
}

.faq-list .document-open-content li .left-side {
    display: flex;
    align-items: center;
    gap: 24px;
}

.faq-list .document-open-content li .left-side .name {
    font-family: Playfair Display, sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 31.99px;
    text-align: left;
    color: #6E139C;
}

.faq-list .document-open-content li .left-side img {
    width: 32px !important;
    height: 32px !important;
}

section.faq-page .faq-list li img {
    width: 64px;
    height: 64px;
}

.faq-list li.open img {
    transform: rotate(90deg);
}

.faq-list li.open {
    flex-direction: column;
}

.faq-list li {
    border-radius: 35px;
    border: 2px solid #A344D2;
    display: flex;
    align-items: center;
    max-width: 562px;
    background: #FFFFFF;
    cursor: pointer;
    width: 100%;
    transition: .1s all linear;
}

.faq-list li .wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 20px;
    gap: 18px;
}

.faq-list li.open .wrapper {
    padding-bottom: 12px;
}

.faq-list li .faq-text {
    font-family: 'Playfair Display', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 0;
    color: #000000;
}

.faq-list li .open-content {
    display: none;
    border-width: 2px 0 0 0;
    border-style: solid;
    border-color: #6E139C;
    padding: 20px;
    background: #F9EDFF;
    border-radius: 0 0 40px 40px;
    transition: .1s all linear;
}

.faq-list li.open .open-content {
    display: block;
}

.faq-list li .open-content .answer {
    width: 95px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 27px;
    font-size: 18px;
    font-weight: 400;
    line-height: 23.64px;
    background: #FFFFFF;
    color: #000000;
    margin-bottom: 32px;
}

.faq-list li .open-content .text {
    font-size: 18px;
    font-weight: 400;
    line-height: 23.64px;
    text-align: left;
    color: #000000;
}

section.credit-calculator .calculator-wrapper {
    display: flex;
    gap: 32px;
}

section.credit-calculator .calculator-wrapper .calculator {
    max-width: 955px;
    width: 100%;
    border-radius: 16px;
    border: 10px solid #FAC016;
    padding: 32px;
    background: #FFFFFF;
    box-shadow: -9px 15px 21.9px 0px #00000070;
}

section.credit-calculator .calculator-wrapper .calculator .text {
    font-size: 18px;
    font-weight: 400;
    line-height: 23.64px;
    text-align: left;
    color: #000000;
    margin-bottom: 16px;
}

section.credit-calculator .calculator-wrapper .calculator ul {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

section.credit-calculator .calculator-wrapper .calculator ul li {
    cursor: pointer;
    transition: .1s all linear;
}

section.credit-calculator .calculator-wrapper .calculator ul li:hover {
    transform: scale(1.02);
}

section.credit-calculator .calculator-wrapper .calculator ul li button {
    width: 93px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #F1D6FF;
    font-size: 18px;
    font-weight: 400;
    line-height: 23.64px;
    text-align: left;
    color: #A344D2;
    border: none;
    border-radius: 27px;
    cursor: pointer;
}

section.credit-calculator .calculator-wrapper .calculator ul li.active button {
    background: #6E139C;
    color: #FFFFFF;
}

section.credit-calculator .calculator-wrapper .calculator-details-block {
    padding: 32px;
    max-width: 467px;
    width: 100%;
    min-height: 368px;
    background: #FAC016;
    border-radius: 35px;
}

section.credit-calculator .calculator-wrapper .calculator-details-block ul.calculator-details {
    margin-top: 24px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

section.credit-calculator.credit-product-calculator .calculator-wrapper .calculator-details-block ul.calculator-details {
    max-height: 115px;
    overflow: scroll;
    overflow-x: hidden;
    padding-right: 12px;
}

section.credit-calculator.credit-product-calculator .calculator-wrapper .calculator-details-block ul.calculator-details::-webkit-scrollbar {
    width: 8px;
    border-radius: 8px;
}

section.credit-calculator.credit-product-calculator .calculator-wrapper .calculator-details-block ul.calculator-details::-webkit-scrollbar-track {
    background: #FFFFFF;
    border-radius: 8px;
}

section.credit-calculator.credit-product-calculator .calculator-wrapper .calculator-details-block ul.calculator-details::-webkit-scrollbar-thumb {
    background: #6E139C;
    border-radius: 8px;
}

section.credit-calculator.credit-product-calculator .calculator-wrapper .calculator-details-block ul.calculator-details li {
    display: flex;
    justify-content: space-between;
}

section.credit-calculator .calculator-wrapper .calculator-details-block ul.calculator-details li {
    font-size: 18px;
    font-weight: 400;
    line-height: 23.64px;
    text-align: left;
    color: #A344D2;
}

section.credit-calculator .calculator-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 139px;
    width: 100%;
    height: 60px;
    border-radius: 27px;
    background: #6E139C;
    font-size: 20px;
    font-weight: 700;
    line-height: 26.37px;
    text-align: center;
    color: #FFFFFF;
    margin: 32px auto 0 auto;
    cursor: pointer;
    transition: .1s all linear;
}

section.credit-calculator .calculator-btn:hover {
    transform: scale(1.02);
}

section.credit-calculator h2 {
    text-align: left;
    margin-bottom: 0 !important;
}

section.credit-calculator .text {
    font-size: 22px;
    font-weight: 400;
    line-height: 28.37px;
    text-align: left;
    color: #6E139C;
}

h3 {
    font-family: Playfair Display;
    font-size: 44px;
    font-weight: 700;
    line-height: 44px;
    text-align: left;
    color: #000000;

}

h3 div {
    color: #A344D2;
    font-family: "Mazzard Bold";
    margin-top: 5px;
}

.calculator input.text-input {
    width: 100%;
    height: 78px;
    background: #FBF4FF;
    border: 1px solid #A344D2;
    border-radius: 6px;
    outline: none;
    font-size: 22px;
    padding: 16px;
    font-weight: 700;
    line-height: 28.37px;
    text-align: left;
    color: #000000;
}

.calculator .input-wrapper {
    position: relative;
    margin-bottom: 12px;
}

.calculator .input-range-indications {
    display: flex;
    justify-content: space-between;
    padding: 0 14px;
    margin-top: -5px;
    font-size: 14px;
    font-weight: 400;
    line-height: 18.91px;
    text-align: left;

}

.calculator input[type=range] {
    position: relative;
    top: -14px;
    left: 12px;
}

input[type=range] {
    position: relative;
    width: 95%;

    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
    background: #F1D6FF;
    border-radius: 9px;
}

input[type=range]:focus {
    outline: none;
}

input[type=range]::-webkit-slider-runnable-track {
    height: 7px;
}

input[type=range]::-moz-range-track {
    height: 3px;
    background: #A344D2;
}

input[type="range"]::-moz-range-progress {
    background: #A344D2;
    height: 3px;
}

input[type=range]::-moz-range-thumb {
    -webkit-appearance: none; /* Override default look */
    appearance: none;
    margin-top: -5px; /* Centers thumb on the track */
    width: 18px;
    height: 18px;
    background: #A344D2;
    border: 2px solid #FFFFFF;
    border-radius: 50%;
}

input[type=range]::-ms-thumb {
    -webkit-appearance: none; /* Override default look */
    appearance: none;
    margin-top: -5px; /* Centers thumb on the track */
    width: 18px;
    height: 18px;
    background: #A344D2;
    border: 2px solid #FFFFFF;
    border-radius: 50%;
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none; /* Override default look */
    appearance: none;
    margin-top: -5px; /* Centers thumb on the track */
    width: 18px;
    height: 18px;
    background: #A344D2;
    border: 2px solid #FFFFFF;
    border-radius: 50%;
}


header {
    height: 78px;
    margin-top: 16px;
    position: fixed;
    max-width: 1192px;
    width: 100%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
}

header .header__wrapper {
    background: #FAC016C7;
    backdrop-filter: blur(11.600000381469727px);
    width: 100%;
    padding: 16px 30px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.btn {
    background: #6E139C;
    border-radius: 27px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: .1s all linear;

    font-family: 'Mazzard', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 0;
    color: #FFFFFF;
}

.btn:hover {
    transform: scale(1.01);
}

.btn.btn-transparent {
    border: 1px solid #6E139C;
    background: transparent;
    color: #6E139C;
    font-weight: 400;
    max-width: 243px;
    width: 100%;
    font-size: 18px;
    height: 44px;
}

section.first-screen {
    padding-top: 100px;
    background: url("../img/first-screen-bg.png") no-repeat center center, #FFFFFF;
    background-size: cover;
    position: relative;
}

section.first-screen .first-screen__wrapper {
    display: flex;
    gap: 32px;
    justify-content: center;
}

section.first-screen .btn {
    height: 60px;
    max-width: 350px;
    width: 100%;
}

section.first-screen .content {
    max-width: 556px;
    width: 100%;
}

section.credit-calculator {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -95px;
    width: 955px;
    height: 177px;
}

section.credit-calculator .text-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

section.credit-calculator .text-wrapper .text {
    font-family: 'Mazzard', sans-serif;
    font-weight: 500;
    font-size: 24px;
    line-height: 100%;
    letter-spacing: 0;
    color: #000000;
}

section.credit-calculator .calculator {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 32px;
    padding: 30px;
}

section.credit-calculator .btn {
    width: 202px;
    height: 60px;
    flex-shrink: 0;
    font-size: 20px;
}

section.credit-calculator .calculator .input-wrapper {
    width: 100%;
    margin: 0;
}

section.clear-conditions {
    padding-top: 208px;
    padding-bottom: 120px;
    background: url("../img/conditions-bg.png") no-repeat center center, #FFFFFF;
    background-size: cover;
}

section.clear-conditions h2 {
    text-transform: uppercase;
    text-align: center;
}

section.clear-conditions .clear-conditions__wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 48px;
    margin-top: 64px;
}

section.clear-conditions .clear-conditions__wrapper .content {
    background: #FFFFFF;
    padding: 84px 32px 50px 32px;
    max-width: 467px;
    width: 100%;
    border-radius: 32px;

}

section.clear-conditions .clear-conditions__wrapper .content .wrapper {
    display: flex;
    gap: 4px;
    align-items: center;
    margin-bottom: 12px;
}

section.clear-conditions .clear-conditions__wrapper .content .wrapper .name, section.clear-conditions .clear-conditions__wrapper .content .wrapper .value {
    font-family: 'Mazzard', sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 100%;
    letter-spacing: 0;
    color: #A344D2;
}

section.clear-conditions .clear-conditions__wrapper .content .wrapper .value {
    font-weight: 700;
}

section.clear-conditions .btn {
    margin-top: 40px;
    max-wwidth: 267px;
    width: 100%;
    height: 80px;
    border-radius: 60px;
    margin-inline: auto;
}

section.policy {
    padding: 120px 0;
}

section.policy h2 {
    text-align: center;
}

section.policy .policy__wrapper {
    margin-top: 58px;
    background: #6E139C;
    border-radius: 35px;
    padding: 64px 90px 36px 90px;
    position: relative;
    max-width: 1152px;
    width: 100%;
    margin-inline: auto;
}

section.policy .policy__wrapper > .wrapper {
    max-width: 560px;
}

section.policy .policy__wrapper .name {
    font-family: 'Mazzard', sans-serif;
    font-weight: 700;
    font-size: 32px;
    line-height: 100%;
    letter-spacing: 0;
    color: #FAC016;
    margin-bottom: 16px;
}

section.policy .policy__wrapper .value {
    font-family: 'Mazzard', sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 0;
    color: #FFFFFF;
    margin-bottom: 20px;
}

section.policy .policy__wrapper > img {
    position: absolute;
    right: -74px;
    top: 61px;
}

.btn.btn-yellow {
    background: #FAC016;
    height: 80px;
    max-width: 280px;
    width: 100%;
    color: #000000;
    font-family: 'Mazzard', sans-serif;
    font-weight: 700;
    font-size: 28px;
    line-height: 100%;
    letter-spacing: 0;
    gap: 4px;
    border-radius: 60px;
    border: none;
}

section.faq {
    background: url("../img/faq-bg.png") no-repeat center center;
    background-size: cover;
    padding-top: 90px;
}

section.faq h2 {
    text-align: center;
}

section.faq .faq__wrapper {
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

section.faq ul {
    margin-top: 100px;
}

section.faq .btn {
    margin-top: 44px;
    height: 80px;
    width: 267px;
    border-radius: 60px;
    margin-inline: auto;
    margin-bottom: 50px;
}

footer {
    background: #6E139C;
    padding-top: 48px;
    padding-bottom: 24px;
    position: relative;
}

footer .footer-bag-img {
    position: absolute;
    top: 25px;
    right: 392px;
}

footer .divider {
    height: 1px;
    background: #FAC016;
    width: 100%;
    margin: 50px 0 30px 0;
}

footer .all-rights {
    font-family: 'Mazzard', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0;
    text-align: center;
    color: #FAC016;
}

footer .footer__wrapper {
    display: flex;
    gap: 61px;
    align-items: center;
}

footer .footer__wrapper .left {
    display: flex;
    flex-direction: column;
    max-width: 465px;
    width: 100%;
    gap: 40px;
}

footer .footer__wrapper .left .wrapper {
    display: flex;
    align-items: flex-end;
    gap: 44px;
}

footer .footer__wrapper .left .wrapper ul {
    display: flex;
    gap: 24px;
}

footer .footer-text {
    font-family: 'Mazzard', sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 0;
    color: #F1D6FF;
}

footer .footer__wrapper .right {
    flex-direction: column;
    display: flex;
    gap: 20px;
}

footer .footer__wrapper .right a {
    font-family: 'Mazzard', sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 0;
    color: #FAC016;
}