:root {
    --primary: #7f56d9;
    --primary-medium: #8d62e9;
    --primary-bold: #673cc4;
    --primary-light: #f0e6ff;
    --secondary: #d5c5f7;
    --secondary-medium: #e1c183;
    --secondary-bold: #91630e;
    --secondary-light: #a479ff8e;
    --secondary-xlight: #f9f3e6;
    --tertiary: #c7c7c7;
    --quatenary: #ffffff;
    --green: #5ba17f;
    --dark: #31323a;
    --danger: #fe5050;
    --success: #50c878;
    --success-light: #dafce9;
    --warning: #c88251;
    --warning-light: #faf3ed;
    --danger: #e00138;
    --danger-light: #fce6eb;
    --purple: #b200b2;
    --blue: #0081b2;
    --black: #36414c;
    --black-bold: #272d37;
    --black-medium: #66737f;
    --black-light: #8f9ca9;
    --black-xlight: #adb9c7;
    --black-xxlight: #b8c1cc;
    --black-3xlight: #d5dde5;
    --black-4xlight: #e7ecf2;
    --black-5xlight: #eef2f6;
    --black-6xlight: #f6f6f6;
    --white: #f8f8f8;
    --light: #f7fbff;
    --gray: #6b7989;
    --light-gray: #484848;
    --grey: #ececec;
    --orange: #ff7900;

    /* btn root */
    --bs-primary: #7f56d9;
    --bs-secondary: #d5c5f7;
}

@font-face {
    font-family: "Nunito Sans";
    src: url("../fonts/NunitoSans-VariableFont_YTLC\,opsz\,wdth\,wght.ttf")
        format("truetype");
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Nunito Sans";
    font-weight: 800;
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes slideInTop {
    0% {
        transform: translateY(-10vh);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes slideInBottom {
    0% {
        transform: translateY(10vh);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes slideInLeft {
    0% {
        transform: translateX(100vw);
    }

    100% {
        transform: translateX(0);
    }
}

h1 {
    font-size: 80px;
}

h2 {
    font-size: 61px;
}

h3 {
    font-size: 47px;
    font-weight: 700;
}

h4 {
    font-size: 36px;
    font-weight: 700;
}

h5 {
    font-size: 27px;
    font-weight: 700;
}

h6 {
    font-size: 21px;
    font-weight: 700;
}

body,
html {
    min-height: 100vh;
    font-size: 16px;
    font-weight: 300;
    font-family: "Nunito Sans";
}

p {
    font-size: 16px;
    font-weight: 400;
    font-family: "Nunito Sans";
}

.body-md {
    font-size: 18px;
}

small {
    font-size: 12px;
}

.btn {
    font-weight: 500;
    border-radius: 8px;
    padding: 10px 30px;
    text-transform: capitalize;
    transition: ease-in 0.3s;
}

.btn.disabled {
    background-color: #c7c7c7;
    color: white;
    opacity: 0.8;
    border: none;
    outline: none;
    pointer-events: none;
    box-shadow: none;
}

.btn:hover {
    transform: scale(1.05);
    transition: ease-in 0.3s;
}

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

.text-primary-medium {
    color: var(--primary-medium) !important;
}

.text-primary-bold {
    color: var(--primary-bold) !important;
}

.text-white {
    color: white !important;
}

.text-semi-dark {
    color: var(--dark);
}

.text-gray {
    color: var(--gray);
}

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

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

.bg-white {
    background-color: white;
}

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

.text-secondary-medium {
    color: var(--secondary-medium) !important;
}

.text-secondary-bold {
    color: var(--secondary-bold) !important;
}

.fw-400 {
    font-weight: 400;
}

.fw-500 {
    font-weight: 500;
}

.fw-600 {
    font-weight: 600;
}

.fw-700 {
    font-weight: 700 !important;
}

.fw-800 {
    font-weight: 800;
}

.fw-900 {
    font-weight: 900;
}

.bold {
    font-weight: 800 !important;
}

.w-100 {
    width: 100%;
}

a:hover {
    cursor: pointer;
}

.shadow {
    box-shadow: 0 5px 16px 9px rgba(0, 0, 0, 0.05) !important;
}

.shadow-sm {
    box-shadow: 0 0.125rem 8rem rgb(195 168 255) !important;
}

.btn-primary {
    background-color: var(--primary);
    color: white;
    border: 1px solid var(--primary);
}

.btn-primary-medium {
    color: #f8f8f8;
    background: var(--primary-medium);
}

.btn-medium {
    color: var(--primary);
    background-color: var(--primary-light);
}

.btn-primary-bold {
    color: white;
    background: var(--primary-bold);
}

.btn-outline-primary {
    color: var(--primary);
    border: 1px solid var(--primary);
}

.btn-primary-medium {
    color: #f8f8f8;
    background: var(--primary-medium);
}

.btn-dark {
    background-color: black;
    color: white;
    border: 1px solid black;
}

.special_btn {
    background-color: var(--primary);
    color: white;
    border: 1px solid var(--primary);
}

.btn-white {
    background-color: white;
    border: 1px solid var(--primary);
    color: var(--primary);
}

.btn-white:hover,
.btn-white:focus,
.btn-white:active {
    color: white;
    background-color: var(--primary);
    box-shadow: none;
    outline: none;
}

.btn-outline {
    color: #000000;
    border: 1px solid #0000001a;
    box-shadow: 0px 1px 3px 0px #0000001a;
    background: linear-gradient(0deg, #f5ead6, #f5ead6),
        linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2));
}

.btn-success {
    color: #f8f8f8;
    border: 1px solid var(--green);
    background: var(--green);
}

.btn-outline-success {
    color: #f8f8f8;
    border: 1px solid white;
    background: var(--green);
}

.btn-white-success {
    color: var(--green);
    border: 1px solid var(--green);
    background: white;
}

.btn-outline-border {
    color: var(--primary);
    border: 1px solid var(--primary-medium);
    box-shadow: 0px 1px 3px 0px #0000001a;
    background: linear-gradient(0deg, #ffe8e8, #ffe8e8),
        linear-gradient(0deg, #d44e4c, #d44e4c);
}

.btn-secondary {
    background-color: var(--secondary);
    color: white;
    border: 1px solid var(--secondary);
}

.btn-tertiary {
    background-color: var(--tertiary);
    color: white;
    border: 1px solid var(--tertiary);
}

.btn-quaternary {
    background-color: var(--quatenary);
    color: #31323a;
    border: 1px solid var(--quatenary);
}

.btn-primary:hover:not(.disabled):not(:disabled),
.btn-primary:active:not(.disabled):not(:disabled),
.btn-primary:focus:not(.disabled):not(:disabled) {
    background-color: var(--primary-medium);
    border: 1px solid var(--primary-medium);
    box-shadow: none;
    outline: none;
}

.btn-primary-medium:hover:not(.disabled):not(:disabled),
.btn-primary-medium:active:not(.disabled):not(:disabled),
.btn-primary-medium:focus:not(.disabled):not(:disabled) {
    background-color: var(--primary);
    border: 1px solid var(--primary);
    color: var(--white);
    box-shadow: none;
    outline: none;
}

.btn-outline-primary:hover:not(.disabled):not(:disabled),
.btn-outline-primary:active:not(.disabled):not(:disabled),
.btn-outline-primary:focus:not(.disabled):not(:disabled) {
    color: white !important;
    background-color: var(--primary) !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}

.btn-tertiary:hover:not(.disabled):not(:disabled),
.btn-tertiary:active:not(.disabled):not(:disabled),
.btn-tertiary:focus:not(.disabled):not(:disabled) {
    color: white;
    background-color: var(--tertiary) !important;
    border: none !important;
    box-shadow: none;
    outline: none;
}

.btn-quaternary:hover:not(.disabled):not(:disabled),
.btn-quaternary:active:not(.disabled):not(:disabled),
.btn-quaternary:focus:not(.disabled):not(:disabled) {
    color: white;
    background-color: var(--primary) !important;
    border: none !important;
    box-shadow: none;
    outline: none;
}

.btn-secondary:hover:not(.disabled):not(:disabled),
.btn-secondary:active:not(.disabled):not(:disabled),
.btn-secondary:focus:not(.disabled):not(:disabled) {
    color: white;
    background-color: var(--secondary-medium) !important;
    border: none !important;
    box-shadow: none;
    outline: none;
}

.special_btn:hover:not(.disabled):not(:disabled),
.special_btn:active:not(.disabled):not(:disabled),
.special_btn:focus:not(.disabled):not(:disabled) {
    color: white;
    background-color: var(--primary) !important;
    border: none !important;
    box-shadow: none;
    outline: none;
}

a:hover {
    color: var(--primary);
}

@media (min-width: 1400px) {
    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1450px;
    }
}

@media screen and (max-width: 768px) {
    h1 {
        font-size: 46px !important;
    }

    h2 {
        font-size: 42px !important;
    }

    h3 {
        font-size: 40px !important;
    }

    h4 {
        font-size: 27px !important;
    }

    h5 {
        font-size: 22px !important;
    }
}

.form-control {
    background-color: white;
    padding: 10px 15px;
    font-weight: 300;
    border: 1px solid var(--black-3xlight);
}

.form-control::placeholder {
    color: var(--black-light);
}

.form-control:focus:not(:disabled):not(.disabled),
.form-control:active:not(:disabled):not(.disabled) {
    box-shadow: none;
    outline: none;
    border: 1px solid var(--primary-light);
}

.modal-content {
    border-radius: 16px;
    border: none;
}

@media screen and (max-width: 1200px) {
    .container {
        max-width: 1400px;
    }

    .modal-xl {
        max-width: 90%;
    }
}

@media (min-width: 1200px) {
    .modal-xl {
        max-width: 1320px;
    }
}

@media screen and (max-width: 992px) {
    .flex-md-col {
        flex-direction: column;
    }
}

.hover-op {
    transition: all 0.3s;
}

.hover-op:hover {
    opacity: 0.9;
    transition: all 0.3s;
}

.text-underline {
    text-decoration: underline;
}

.form-check-input:checked {
    background-color: var(--primary);
    border-color: var(--primary);
}

.form-check-input:focus {
    outline: none;
    box-shadow: none;
}

.form-text {
    font-size: 13px;
    margin-top: 4px;
    text-align: start;
}

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

.bg-primary {
    background-color: var(--primary) !important;
}

.bg-secondary {
    background-color: var(--secondary) !important;
}

.bg-secondary-medium {
    background-color: var(--secondary-medium) !important;
}

.bg-secondary-bold {
    background-color: var(--secondary-bold) !important;
}

.bg-primary-light {
    background-color: var(--primary-light) !important;
}

.bg-success-light {
    background-color: var(--success-light) !important;
}

.bg-primary-bold {
    background-color: var(--primary-bold) !important;
}
.form-control:focus {
    box-shadow: none;
    outline: none;
    border: 1px solid var(--primary-light);
}
