:root {
    --background-color: #f6f9fb;
    --primary-color: #007584;
    --secondary-color: #339ca8;
    --accent-color: #b68300;

    --text-color-dark: black;
    --text-color-light: white;

    --smaller-font-size: 0.8rem;
    --small-font-size: 1rem;
    --normal-font-size: 1.2rem;
    --large-font-size: 1.6rem;

    --heading-subtitle-font-size: 1.4rem;
    --heading-title-font-size: 2.4rem;

    --img-border-radius: 0.3rem;
    --btn-border-radius: 0.3rem;
    --card-border-radius: 0.3rem;

    --primary-font-family: "Nunito", sans-serif;

    /* Transition */
    --transition-time: 0.4s;
}

body {
    color: black;
}

.text {
    font-family: var(--primary-font-family);
    font-size: var(--normal-font-size);
    color: var(--text-color-dark);
}

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

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

.text.large {
    font-size: var(--large-font-size);
    font-weight: bold;
}

.text.title {
    color: var(--primary-color);
    font-size: var(--heading-title-font-size);
    font-weight: bold;
}

.text.subtitle {
    font-size: var(--heading-subtitle-font-size);
    /* color: var(--accent-color); */
    border-radius: 10rem;
    display: inline-block;
}

.text-white {
    color: var(--text-color-light);
}

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

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

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

.center {
    text-align: center;
}

.bold {
    font-weight: bold;
}

.justify {
    text-align: justify;
}

.center-viewport {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.center-viewport-80 {
    min-height: 80vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.text.error {
    color: red;
    font-size: small;
}

.text.success {
    color: green;
    font-size: small;
}

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

.cursor-pointer {
    cursor: pointer;
}

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