@import"https://fonts.googleapis.com/css2?family=Josefin+Sans:ital,wght@0,100..700;1,100..700&display=swap";

:root {
    --page-background: #FDFDFF;
    --navbar-background: #112b3c;
    --navbar-icon-btn-background: #082032;
    --navbar-icon-btn-color-hover: #FAFBFF;
    --navbar-icon-btn-color: #a0a6b2;
    --white: #fff;
    --white-darker: color-mix(in srgb, var(--white), #000 10%);
    --grey: #707a8c;
    --grey-darker: color-mix(in srgb, var(--grey), #000 10%);
    --grey-lighter: #a0a6b2;
    --text-color: #272A48;
    --button-bg-color: #000;
    --button-bg-hover-color: #1a1a1a;
    --primary: #FF8257;
    --primary-darker: color-mix(in srgb, var(--primary), #000 10%);
    --secondary: #5566FF;
    --secondary-darker: color-mix(in srgb, var(--secondary), #000 10%);
    --warning: #FFC700;
    --warning-darker: color-mix(in srgb, var(--warning), #000 10%);
    --info: #39C0ED;
    --info-darker: color-mix(in srgb, var(--info), #000 10%);
    --danger: #F1416C;
    --danger-darker: color-mix(in srgb, var(--danger), #000 10%);
    --success: #50CD89;
    --success-darker: color-mix(in srgb, var(--success), #000 10%);
    --main-box-shadow: 0px 0px 50px 0px #81232315;
    --form-text-color: #707a8c;
    --form-placeholder-color: #a0a6b2;
    --form-active-color: var(--primary);
    --form-border-color: var(--page-background);
    --form-border-size: .0625rem;
    --form-field-padding-y: .5rem;
    --form-field-padding-x: 1rem;
    --form-font-size: rem(14);
    --form-disabled-background-color: #f5f7fa;
    --form-background-color: #E9EEFF;
    --custom-red: var(--danger-darker);
    --custom-red-lighter: var(--danger);
    --main-radius: 1.5625rem;
    --main-font: Josefin Sans, sans-serif;
    --main-font2: Segoe UI, sans-serif;
    --transition-duration: .2s;
    --main-padding: 1.875rem
}

.container {
    margin: auto;
    width: 100%
}

.btn {
    --text-color: var(--text-color);
    --text-hover-color: var(--text-color);
    --button-bg-color: var(--page-background);
    --button-border-color: transparent;
    --button-bg-hover-color: color-mix(in srgb, var(--page-background), #000 5%);
    --text-font-size: .875rem;
    --padding-y: .5rem;
    --padding-x: 1.25rem;
    display: inline-block;
    font-family: var(--main-font);
    color: var(--text-color);
    font-weight: 600;
    font-size: var(--text-font-size);
    line-height: 1.5;
    padding: var(--padding-y) var(--padding-x);
    border-radius: var(--main-radius);
    border: .0625rem solid var(--button-border-color);
    background: var(--button-bg-color);
    cursor: pointer;
    transition: all var(--transition-duration)
}

.btn-empty {
    --text-color: var(--text-color);
    --button-bg-color: transparent;
    --button-bg-hover-color: transparent;
    padding: .5rem
}

.btn-circle {
    border-radius: 50rem
}

.btn:hover {
    background-color: var(--button-bg-hover-color);
    color: var(--text-hover-color)
}

.btn-white {
    --text-color: var(--text-color);
    --button-bg-color: var(--white);
    --button-bg-hover-color: var(--primary);
    --text-hover-color: var(--white)
}

.btn-primary {
    --button-bg-color: var(--primary);
    --button-bg-hover-color: var(--primary-darker);
    --text-color: var(--white)
}

.btn-primary-light {
    font-weight: 400;
    --text-color: var(--primary);
    --button-bg-color: color-mix(in srgb, var(--primary) 6%, transparent);
    --button-bg-hover-color: var(--primary);
    --text-hover-color: var(--white)
}

.btn-primary-light-active,
.btn-primary-light:hover,
.btn-primary-light:has(input:checked) {
    color: var(--primary);
    background-color: color-mix(in srgb, var(--primary) 6%, transparent);
    --button-bg-hover-color: color-mix(in srgb, var(--primary) 6%, transparent) !important;
    border-color: var(--primary) !important
}

.btn-secondary {
    --button-bg-color: var(--secondary);
    --button-bg-hover-color: var(--secondary-darker);
    --text-color: var(--white)
}

.btn-danger {
    --button-bg-color: var(--danger);
    --button-bg-hover-color: var(--danger-darker);
    --text-color: var(--white)
}

.btn-success {
    --button-bg-color: var(--success);
    --button-bg-hover-color: var(--success-darker);
    --text-color: var(--white)
}

.btn-warning {
    --button-bg-color: var(--warning);
    --button-bg-hover-color: var(--warning-darker);
    --text-color: var(--white)
}

.btn-info {
    --button-bg-color: var(--info);
    --button-bg-hover-color: var(--info-darker);
    --text-color: var(--white)
}

.btn-outline {
    --button-bg-color: transparent;
    --button-bg-hover-color: var(--text-color);
    --text-hover-color: var(--white);
    border: solid thin currentColor
}

.btn-outline-dashed {
    border-style: dashed
}

.btn-lg {
    --padding-y: .75rem;
    --padding-x: 1.5rem;
    --text-font-size: 1.125rem
}

.btn-sm {
    --padding-y: .375rem;
    --padding-x: 1rem;
    --text-font-size: .875rem
}

.banner {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center
}

.banner-text {
    position: relative;
    display: flex
}

.banner-text:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #0006
}

.banner-text p {
    color: var(--white);
    font-weight: 700;
    font-size: 3rem;
    line-height: 3.75rem;
    position: relative;
    max-width: 85%;
    text-align: center;
    margin: auto
}

.card {
    width: 20rem;
    border-radius: var(--main-radius);
    padding: 12.5rem 1.25rem 1.25rem;
    background-color: var(--white);
    border: solid thin #e6e6e6;
    position: relative;
    overflow: hidden;
    display: inline-block
}

.card img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 12.5rem;
    object-fit: cover;
    object-position: center
}

.card h1 {
    font-weight: 600;
    font-size: 1.25rem;
    line-height: 1;
    margin-bottom: .625rem
}

.card p {
    font-size: 1rem;
    line-height: 1.5;
    font-weight: 400;
    margin: .625rem 0
}

.card-full img {
    height: 100%
}

.card-full h1,
.card-full p,
.card-full .button {
    position: relative;
    z-index: 1
}

.card-full:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, #fff 0%, #fff0 100%)
}

.container {
    max-width: 1200px;
    margin: 0 auto
}

.container-xs {
    max-width: 496px
}

.container-sm {
    max-width: 576px
}

.container-md {
    max-width: 768px
}

.container-lg {
    max-width: 992px
}

.container-xl {
    max-width: 1600px
}

.container-fluid {
    max-width: 100%
}

.row {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-gap: .5em
}

.contained {
    max-width: 80%;
    margin: 0 auto
}

.col-xs-1 {
    grid-column: span 1
}

.col-xs-2 {
    grid-column: span 2
}

.col-xs-3 {
    grid-column: span 3
}

.col-xs-4 {
    grid-column: span 4
}

.col-xs-5 {
    grid-column: span 5
}

.col-xs-6 {
    grid-column: span 6
}

.col-xs-7 {
    grid-column: span 7
}

.col-xs-8 {
    grid-column: span 8
}

.col-xs-9 {
    grid-column: span 9
}

.col-xs-10 {
    grid-column: span 10
}

.col-xs-11 {
    grid-column: span 11
}

.col-xs-12 {
    grid-column: span 12
}

.col-sm-1 {
    grid-column: span 1
}

.col-sm-2 {
    grid-column: span 2
}

.col-sm-3 {
    grid-column: span 3
}

.col-sm-4 {
    grid-column: span 4
}

.col-sm-5 {
    grid-column: span 5
}

.col-sm-6 {
    grid-column: span 6
}

.col-sm-7 {
    grid-column: span 7
}

.col-sm-8 {
    grid-column: span 8
}

.col-sm-9 {
    grid-column: span 9
}

.col-sm-10 {
    grid-column: span 10
}

.col-sm-11 {
    grid-column: span 11
}

.col-sm-12 {
    grid-column: span 12
}

.col-md-1 {
    grid-column: span 1
}

.col-md-2 {
    grid-column: span 2
}

.col-md-3 {
    grid-column: span 3
}

.col-md-4 {
    grid-column: span 4
}

.col-md-5 {
    grid-column: span 5
}

.col-md-6 {
    grid-column: span 6
}

.col-md-7 {
    grid-column: span 7
}

.col-md-8 {
    grid-column: span 8
}

.col-md-9 {
    grid-column: span 9
}

.col-md-10 {
    grid-column: span 10
}

.col-md-11 {
    grid-column: span 11
}

.col-md-12 {
    grid-column: span 12
}

.col-lg-1 {
    grid-column: span 1
}

.col-lg-2 {
    grid-column: span 2
}

.col-lg-3 {
    grid-column: span 3
}

.col-lg-4 {
    grid-column: span 4
}

.col-lg-5 {
    grid-column: span 5
}

.col-lg-6 {
    grid-column: span 6
}

.col-lg-7 {
    grid-column: span 7
}

.col-lg-8 {
    grid-column: span 8
}

.col-lg-9 {
    grid-column: span 9
}

.col-lg-10 {
    grid-column: span 10
}

.col-lg-11 {
    grid-column: span 11
}

.col-lg-12 {
    grid-column: span 12
}

.col-xl-1 {
    grid-column: span 1
}

.col-xl-2 {
    grid-column: span 2
}

.col-xl-3 {
    grid-column: span 3
}

.col-xl-4 {
    grid-column: span 4
}

.col-xl-5 {
    grid-column: span 5
}

.col-xl-6 {
    grid-column: span 6
}

.col-xl-7 {
    grid-column: span 7
}

.col-xl-8 {
    grid-column: span 8
}

.col-xl-9 {
    grid-column: span 9
}

.col-xl-10 {
    grid-column: span 10
}

.col-xl-11 {
    grid-column: span 11
}

.col-xl-12 {
    grid-column: span 12
}

@media (max-width: 576px) {
    .col-xs-1 {
        grid-column: span 1
    }

    .col-xs-2 {
        grid-column: span 2
    }

    .col-xs-3 {
        grid-column: span 3
    }

    .col-xs-4 {
        grid-column: span 4
    }

    .col-xs-5 {
        grid-column: span 5
    }

    .col-xs-6 {
        grid-column: span 6
    }

    .col-xs-7 {
        grid-column: span 7
    }

    .col-xs-8 {
        grid-column: span 8
    }

    .col-xs-9 {
        grid-column: span 9
    }

    .col-xs-10 {
        grid-column: span 10
    }

    .col-xs-11 {
        grid-column: span 11
    }

    .col-xs-12 {
        grid-column: span 12
    }

    .hidden-xs {
        display: none !important
    }

    .container {
        max-width: 1200px
    }
}

@media (min-width: 576px) and (max-width: 768px) {
    .col-sm-1 {
        grid-column: span 1
    }

    .col-sm-2 {
        grid-column: span 2
    }

    .col-sm-3 {
        grid-column: span 3
    }

    .col-sm-4 {
        grid-column: span 4
    }

    .col-sm-5 {
        grid-column: span 5
    }

    .col-sm-6 {
        grid-column: span 6
    }

    .col-sm-7 {
        grid-column: span 7
    }

    .col-sm-8 {
        grid-column: span 8
    }

    .col-sm-9 {
        grid-column: span 9
    }

    .col-sm-10 {
        grid-column: span 10
    }

    .col-sm-11 {
        grid-column: span 11
    }

    .col-sm-12 {
        grid-column: span 12
    }

    .hidden-sm {
        display: none !important
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    .col-md-1 {
        grid-column: span 1
    }

    .col-md-2 {
        grid-column: span 2
    }

    .col-md-3 {
        grid-column: span 3
    }

    .col-md-4 {
        grid-column: span 4
    }

    .col-md-5 {
        grid-column: span 5
    }

    .col-md-6 {
        grid-column: span 6
    }

    .col-md-7 {
        grid-column: span 7
    }

    .col-md-8 {
        grid-column: span 8
    }

    .col-md-9 {
        grid-column: span 9
    }

    .col-md-10 {
        grid-column: span 10
    }

    .col-md-11 {
        grid-column: span 11
    }

    .col-md-12 {
        grid-column: span 12
    }

    .hidden-md {
        display: none !important
    }
}

@media (min-width: 992px) and (max-width: 1200px) {
    .col-lg-1 {
        grid-column: span 1
    }

    .col-lg-2 {
        grid-column: span 2
    }

    .col-lg-3 {
        grid-column: span 3
    }

    .col-lg-4 {
        grid-column: span 4
    }

    .col-lg-5 {
        grid-column: span 5
    }

    .col-lg-6 {
        grid-column: span 6
    }

    .col-lg-7 {
        grid-column: span 7
    }

    .col-lg-8 {
        grid-column: span 8
    }

    .col-lg-9 {
        grid-column: span 9
    }

    .col-lg-10 {
        grid-column: span 10
    }

    .col-lg-11 {
        grid-column: span 11
    }

    .col-lg-12 {
        grid-column: span 12
    }

    .hidden-lg {
        display: none !important
    }
}

@media (min-width: 1200px) {
    .col-xl-1 {
        grid-column: span 1
    }

    .col-xl-2 {
        grid-column: span 2
    }

    .col-xl-3 {
        grid-column: span 3
    }

    .col-xl-4 {
        grid-column: span 4
    }

    .col-xl-5 {
        grid-column: span 5
    }

    .col-xl-6 {
        grid-column: span 6
    }

    .col-xl-7 {
        grid-column: span 7
    }

    .col-xl-8 {
        grid-column: span 8
    }

    .col-xl-9 {
        grid-column: span 9
    }

    .col-xl-10 {
        grid-column: span 10
    }

    .col-xl-11 {
        grid-column: span 11
    }

    .col-xl-12 {
        grid-column: span 12
    }

    .hidden-xl {
        display: none !important
    }
}

.hidebottomborder {
    border-bottom: none
}

.offset-1 {
    grid-column-start: 2;
    grid-column-end: span 11
}

.push-1 {
    grid-column-start: 2;
    grid-column-end: span 1
}

.pull-1 {
    grid-column-start: 11;
    grid-column-end: span 1
}

.offset-2 {
    grid-column-start: 3;
    grid-column-end: span 10
}

.push-2 {
    grid-column-start: 3;
    grid-column-end: span 2
}

.pull-2 {
    grid-column-start: 10;
    grid-column-end: span 2
}

.offset-3 {
    grid-column-start: 4;
    grid-column-end: span 9
}

.push-3 {
    grid-column-start: 4;
    grid-column-end: span 3
}

.pull-3 {
    grid-column-start: 9;
    grid-column-end: span 3
}

.offset-4 {
    grid-column-start: 5;
    grid-column-end: span 8
}

.push-4 {
    grid-column-start: 5;
    grid-column-end: span 4
}

.pull-4 {
    grid-column-start: 8;
    grid-column-end: span 4
}

.offset-5 {
    grid-column-start: 6;
    grid-column-end: span 7
}

.push-5 {
    grid-column-start: 6;
    grid-column-end: span 5
}

.pull-5 {
    grid-column-start: 7;
    grid-column-end: span 5
}

.offset-6,
.push-6 {
    grid-column-start: 7;
    grid-column-end: span 6
}

.pull-6 {
    grid-column-start: 6;
    grid-column-end: span 6
}

.offset-7 {
    grid-column-start: 8;
    grid-column-end: span 5
}

.push-7 {
    grid-column-start: 8;
    grid-column-end: span 7
}

.pull-7 {
    grid-column-start: 5;
    grid-column-end: span 7
}

.offset-8 {
    grid-column-start: 9;
    grid-column-end: span 4
}

.push-8 {
    grid-column-start: 9;
    grid-column-end: span 8
}

.pull-8 {
    grid-column-start: 4;
    grid-column-end: span 8
}

.offset-9 {
    grid-column-start: 10;
    grid-column-end: span 3
}

.push-9 {
    grid-column-start: 10;
    grid-column-end: span 9
}

.pull-9 {
    grid-column-start: 3;
    grid-column-end: span 9
}

.offset-10 {
    grid-column-start: 11;
    grid-column-end: span 2
}

.push-10 {
    grid-column-start: 11;
    grid-column-end: span 10
}

.pull-10 {
    grid-column-start: 2;
    grid-column-end: span 10
}

.offset-11 {
    grid-column-start: 12;
    grid-column-end: span 1
}

.push-11 {
    grid-column-start: 12;
    grid-column-end: span 11
}

.pull-11 {
    grid-column-start: 1;
    grid-column-end: span 11
}

.offset-12 {
    grid-column-start: 13;
    grid-column-end: span 0
}

.push-12 {
    grid-column-start: 13;
    grid-column-end: span 12
}

.pull-12 {
    grid-column-start: 0;
    grid-column-end: span 12
}

.grid-wrapper {
    display: grid;
    grid-gap: 1.5rem;
    grid-template-columns: repeat(3, minmax(auto, 1fr));
    grid-auto-rows: 25rem;
    grid-auto-flow: dense;
	--current-color : var(--secondary);
	--current-opacity : 90%;
}

.grid-wrapper>div {
    position: relative;
}

.grid-wrapper>div:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    left: 0;
    bottom: 0;
    border-radius: var(--main-radius);
    transition: opacity .4s ease-in-out;
    background: linear-gradient(-25deg, var(--current-color), transparent);
    opacity: 0;
}

.grid-wrapper>div:hover:after {
    opacity: var(--current-opacity);
}

.grid-wrapper>div>img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--main-radius)
}

.grid-wrapper .wide {
    grid-column: span 2
}

.grid-wrapper .tall {
    grid-row: span 2
}

@media (max-width: 992px) {
    .grid-wrapper {
        grid-template-columns: repeat(2, minmax(auto, 1fr))
    }
}

@media (max-width: 576px) {
    .grid-wrapper {
        grid-template-columns: repeat(1, minmax(auto, 1fr))
    }
}

.navbar {
    position: relative;
    padding: .625rem 1rem
}

.navbar .container {
    display: flex;
    flex-direction: row;
    flex-wrap: 0;
    justify-content: wrap;
    align-items: space-between;
    gap: center
}

.navbar form {
    display: flex;
    flex-direction: row;
    flex-wrap: .625rem;
    justify-content: wrap;
    align-items: flex-start;
    gap: stretch
}

.navbar form .button {
    --text-color: var(--grey)
}

.navbar form input[type=text] {
    font-size: 1.125rem;
    font-weight: 500
}

.navbar_title {
    color: inherit;
    font-size: 1.375rem;
    line-height: 1.75rem;
    font-weight: 500
}

.navbar_toggle_button {
    cursor: pointer;
    background: transparent;
    border: none;
    display: block;
    font-size: 0;
    height: 1rem;
    width: 1rem;
    line-height: 0;
    position: relative
}

.navbar_toggle_button span,
.navbar_toggle_button:before,
.navbar_toggle_button:after {
    content: "";
    height: .1875rem;
    width: 100%;
    background-color: currentColor;
    position: absolute;
    top: 0;
    left: 0;
    transition: all .3s;
    transform-origin: center
}

.navbar_toggle_button:after {
    top: auto;
    bottom: 0
}

.navbar_toggle_button span {
    top: 50%;
    transform: translateY(-50%)
}

.navbar_toggle_button.toggled span {
    transform: translateY(-50%) scaleX(0)
}

.navbar_toggle_button.toggled:before {
    top: 50%;
    transform: translateY(-50%) rotate(45deg)
}

.navbar_toggle_button.toggled:after {
    bottom: 50%;
    transform: translateY(50%) rotate(-45deg)
}

.navbar_toggle_content {
    width: 100%;
    background-color: inherit;
    flex-direction: column;
    align-items: flex-start;
    overflow: hidden;
    max-height: 0;
    transition: max-height .5s
}

.navbar ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    flex-wrap: 1.125rem;
    justify-content: wrap;
    align-items: flex-start;
    gap: flex-start;
    margin: 1rem 0rem
}

.navbar ul a {
    font-size: 1.125rem;
    color: inherit
}

@media screen and (min-width: 1024px) {
    .navbar .container {
        flex-wrap: nowrap;
        gap: 1.875rem
    }

    .navbar ul {
        flex-direction: row;
        align-items: center;
        flex-grow: 1;
        margin: 0rem
    }

    .navbar_toggle_button {
        display: none
    }

    .navbar_toggle_content {
        display: flex;
        flex-direction: row;
        flex-wrap: 1.875rem;
        justify-content: nowrap;
        align-items: space-between;
        gap: center;
        flex-grow: 1;
        position: relative;
        top: 0;
        left: 0;
        width: auto;
        max-height: none !important
    }

    .navbar .form {
        justify-content: flex-end
    }
}

.slider {
    overflow: hidden;
    position: relative
}

.slider_viewport {
    display: flex;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transition: left 1s
}

.slider_slide {
    width: 100%;
    height: 100%;
    flex-shrink: 0
}

.slider_slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center
}

.slider_nav {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    justify-content: space-between
}

.slider_nav_prev,
.slider_nav_next {
    cursor: pointer;
    background: transparent;
    border: none;
    width: 2rem;
    height: 2rem;
    background-color: var(--white);
    position: relative
}

.slider_nav_prev:before,
.slider_nav_next:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: contain
}

.slider_nav_prev:after,
.slider_nav_next:after {
    content: ""
}

.slider_nav_prev:before {
    transform: rotate(180deg)
}

.bg-arrow,
.slider_nav_prev:before,
.slider_nav_next:before,
.slider_nav_prev:after,
.slider_nav_next:after {
    background-image: url("data:image/svg+xml,%3c?xml%20version='1.0'%20?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20height='512px'%20id='Layer_1'%20style='enable-background:new%200%200%20512%20512;'%20version='1.1'%20viewBox='0%200%20512%20512'%20width='512px'%20xml:space='preserve'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3cpolygon%20points='160,128.4%20192.3,96%20352,256%20352,256%20352,256%20192.3,416%20160,383.6%20287.3,256%20'/%3e%3c/svg%3e")
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    bottom: -3.125rem;
    right: 0;
    background-color: #0000004d;
    padding-top: 1.25rem;
    z-index: 999;
    display: none
}

.modal section {
    margin: 0 auto;
    width: 37.5rem;
    background-color: var(--white);
    border-radius: var(--main-radius);
    height: max-content
}

.modal_content {
    overflow-y: auto;
    max-height: 75vh
}

.modal_content::-webkit-scrollbar {
    width: .3125rem
}

.modal_content::-webkit-scrollbar-track {
    background: transparent
}

.modal_content::-webkit-scrollbar-thumb {
    background: var(--grey-lighter);
    border-radius: var(--main-radius)
}

.modal_content::-webkit-scrollbar-thumb:hover {
    background: var(--grey-lighter)
}

.modal footer {
    padding-top: var(--main-padding);
    display: flex;
    justify-content: flex-end
}

.modal.active {
    display: flex
}

.modal.fade {
    animation: close-modal .3s ease-in-out forwards
}

.modal.fade.active {
    transform: translateY(-50px);
    opacity: 0;
    display: flex;
    animation: open-modal .3s ease-in-out forwards
}

@keyframes open-modal {
    to {
        transform: translateY(0);
        opacity: 1;
        display: flex
    }
}

@keyframes close-modal {
    0% {
        transform: translateY(0);
        opacity: 1;
        display: flex
    }

    99% {
        transform: translateY(-50px);
        opacity: 0;
        display: flex
    }

    to {
        transform: translateY(-50px);
        opacity: 0;
        display: none
    }
}

.nav {
    --nav-color: transparent;
    --nav-item-spacing: .2rem;
    --nav-item-padding-y: calc(var(--main-padding)/2);
    --nav-item-padding-x: var(--main-padding);
    --nav-item-border-size: 1px;
    --nav-item-border-color: #ddd;
    --nav-item-border-radius: 0;
    --nav-item-disabled-color: grey;
    display: flex;
    list-style: none;
    padding: 0;
    background-color: var(--nav-color);
    gap: var(--nav-item-spacing)
}

.nav-item.disabled>* {
    cursor: not-allowed !important;
    color: var(--nav-item-disabled-color);
    text-decoration: none
}

.nav-link {
    display: block;
    padding: var(--nav-item-padding-y) var(--nav-item-padding-x);
    cursor: pointer;
    margin: 0
}

.nav-tabs {
    border-bottom: var(--nav-item-border-size) solid var(--nav-item-border-color)
}

.nav-tabs .nav-item {
    margin-bottom: calc(var(--nav-item-border-size) * -1);
    border: var(--nav-item-border-size) solid var(--nav-color);
    border-bottom: var(--nav-item-border-size) solid var(--nav-item-border-color);
    border-radius: var(--nav-item-border-radius) var(--nav-item-border-radius) 0 0;
    transition: .2s ease
}

.nav-tabs .nav-item.active,
.nav-tabs .nav-item:hover,
.nav-tabs .nav-item:has(>input:checked) {
    border: var(--nav-item-border-size) solid var(--nav-item-border-color)
}

.nav-tabs .nav-item.active,
.nav-tabs .nav-item:has(>input:checked) {
    border-bottom: var(--nav-item-border-size) solid var(--nav-color)
}

.nav input {
    display: none
}

*:has(>.tooltip) {
    position: relative;
    width: max-content
}

*:has(>.tooltip):hover .tooltip:not(:hover) {
    display: block;
    animation: tooltip-open var(--transition-duration) forwards
}

.tooltip {
    position: absolute;
    width: max-content;
    max-width: 31.25rem;
    background-color: var(--white);
    color: var(--text-color);
    text-align: center;
    padding: .75rem;
    border-radius: .375rem;
    box-shadow: 0 0 1.25rem #00000020;
    font-size: .75rem;
    display: none;
    z-index: 10;
    animation: tooltip-close var(--transition-duration) forwards;
    font-family: var(--main-font)
}

.tooltip:hover {
    animation: tooltip-close var(--transition-duration) forwards
}

.tooltip-arrow:after {
    content: " ";
    position: absolute
}

.tooltip-right {
    top: 50%;
    left: 105%;
    transform: translateY(-50%)
}

.tooltip-right.tooltip-arrow:after {
    top: 50%;
    right: 100%;
    margin-top: -.3125rem;
    border-width: .3125rem;
    border-style: solid;
    border-color: transparent var(--white) transparent transparent
}

.tooltip-left {
    top: 50%;
    right: 105%;
    transform: translateY(-50%)
}

.tooltip-left.tooltip-arrow:after {
    top: 50%;
    left: 100%;
    margin-top: -.3125rem;
    border-width: .3125rem;
    border-style: solid;
    border-color: transparent transparent transparent var(--white)
}

.tooltip-top {
    bottom: 100%;
    left: 50%;
    transform: translate(-50%)
}

.tooltip-top.tooltip-arrow:after {
    top: 100%;
    left: 50%;
    margin-left: -.3125rem;
    border-width: .3125rem;
    border-style: solid;
    border-color: var(--white) transparent transparent transparent
}

.tooltip-bottom {
    top: 100%;
    left: 50%;
    transform: translate(-50%)
}

.tooltip-bottom.tooltip-arrow:after {
    bottom: 100%;
    left: 50%;
    margin-left: -.3125rem;
    border-width: .3125rem;
    border-style: solid;
    border-color: transparent transparent var(--white) transparent
}

@keyframes tooltip-open {
    0% {
        display: block;
        opacity: 0
    }

    to {
        display: block;
        opacity: 1
    }
}

@keyframes tooltip-close {
    0% {
        display: block;
        opacity: 1
    }

    99% {
        display: block;
        opacity: 0
    }

    to {
        display: none;
        opacity: 0
    }
}

.form-test-container>.field-group+.field-group,
.form-test-container>.field-group+.form-field,
.form-test-container>.field-group+.form-group,
.form-test-container>.form-field+.field-group,
.form-test-container>.form-field+.form-field,
.form-test-container>.form-field+.form-group,
.form-test-container>.form-group+.field-group,
.form-test-container>.form-group+.form-field,
.form-test-container>.form-group+.form-group {
    margin-top: 10px
}

.form-label {
    display: inline-block;
    width: 100%;
    margin: 10px 0 5px;
    padding: 0 !important;
    color: var(--form-text-color);
    background-color: transparent !important;
    font-size: .875rem;
    font-weight: 600
}

.form-text {
    width: 100%;
    font-size: 12px;
    margin-top: 5px;
    color: var(--grey)
}

.form-text-info,
.form-text-error {
    display: flex;
    justify-content: flex-start;
    align-items: center
}

.form-text-info:before,
.form-text-error:before {
    display: inline-block;
    font-family: remixicon;
    font-size: 16px;
    margin: 0 5px
}

.form-text-info:before {
    content: ""
}

.form-text-error {
    color: var(--danger)
}

.form-text-error:before {
    content: "";
    color: var(--danger-darker)
}

.form-check {
    padding: 0 !important;
    margin: 0 !important
}

textarea.form-field {
    resize: vertical
}

.form-field {
    --form-padding-y: var(--form-field-padding-y);
    --form-padding-x: var(--form-field-padding-x);
    --form-field-padding: var(--form-padding-y) var(--form-padding-x);
    display: block;
    padding: var(--form-field-padding);
    font-size: .875rem;
    width: 100%;
    border: var(--form-border-size) solid var(--form-border-color);
    border-radius: var(--main-radius);
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    outline: none;
    font-weight: 500;
    line-height: 1.5 !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-clip: padding-box;
    background-color: var(--form-background-color);
    color: var(--form-text-color);
    font-family: Inter, sans-serif
}

.form-field::placeholder {
    color: var(--form-placeholder-color)
}

.form-field:focus {
    z-index: 1;
    outline: none;
    border-color: var(--form-active-color) !important
}

.form-field:disabled {
    cursor: not-allowed;
    background-color: var(--form-disabled-background-color)
}

.form-field:read-only {
    cursor: text
}

.form-field.form-field-lg {
    --form-padding-y: 12px;
    --form-padding-x: 12px;
    --form-font-size: 1.125rem
}

.form-field.form-field-sm {
    --form-padding-y: 6px;
    --form-padding-x: 10px;
    --form-font-size: .875rem
}

.form-field[type=file] {
    padding: 0;
    cursor: pointer
}

.form-field[type=file]::file-selector-button {
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-right: var(--form-border-size) solid var(--form-border-color);
    background-color: var(--form-disabled-background-color);
    outline: none;
    padding: var(--form-field-padding);
    font-size: 1em;
    margin-right: 10px;
    font-weight: 400;
    line-height: 1.5;
    background-clip: padding-box
}

.form-field[type=file]:focus {
    outline: none
}

.form-field[type=color] {
    width: 3em;
    height: calc(1.5em + var(--form-padding-y) + var(--form-border-size) * 2);
    padding: var(--form-padding-y);
    cursor: pointer
}

.form-field[type=color]::-webkit-color-swatch,
.form-field[type=color]::-webkit-color-swatch-wrapper {
    border: none;
    border-radius: var(--main-radius);
    padding: 0
}

.form-field[list]::-webkit-calendar-picker-indicator,
.form-field.no-picker::-webkit-calendar-picker-indicator {
    display: none !important
}

.form-field[type=checkbox],
.form-field[type=radio] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: color-mix(in srgb, var(--form-background-color), #000 3%);
    margin: 0;
    padding: 0;
    font: inherit;
    color: currentColor;
    width: 1.875rem;
    height: 1.875rem;
    border: none;
    transform: scale(.6) translate(-8px)
}

.form-field[type=checkbox]:before,
.form-field[type=radio]:before {
    content: "";
    display: inline-block;
    width: 1.875rem;
    height: 1.875rem;
    flex-shrink: 0;
    flex-grow: 0;
    border-radius: var(--main-radius);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 50% 50%;
    cursor: pointer;
    transition: .15s ease-in-out
}

.form-field[type=checkbox]:checked,
.form-field[type=radio]:checked {
    border-color: var(--primary)
}

.form-field[type=checkbox]:checked:before,
.form-field[type=radio]:checked:before {
    border-color: var(--primary);
    background-color: var(--primary);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e")
}

.form-field[type=radio] {
    border-radius: 50rem;
    transition: .15s ease-in-out
}

.form-field[type=radio]:before {
    border-radius: 50rem;
    transform: scale(.5)
}

.form-field[type=radio]:checked {
    background-color: var(--primary)
}

.form-field[type=radio]:checked:before {
    background-image: unset;
    background-color: var(--white)
}

.form-field[type=date] {
    line-height: 1.5
}

.form-field[type=date]:not(.no-picker) {
    padding: 0 0 0 12px
}

.form-field[type=date]:not(.no-picker)::-webkit-calendar-picker-indicator {
    padding: calc((var(--form-font-size) + var(--form-padding-y)) / 2) var(--form-padding-x)
}

.form-field[type=date]:not(.no-picker):not(.form-field-plain)::-webkit-calendar-picker-indicator {
    background-color: var(--form-disabled-background-color);
    border-left: var(--form-border-size) solid var(--form-border-color)
}

.form-field:is(select) {
    --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23a0a6b2' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    background-image: var(--bs-form-select-bg-img);
    background-repeat: no-repeat;
    background-position: right var(--form-padding-x) center;
    background-size: 16px 12px
}

.form-field:is(select) option {
    color: var(--form-text-color) !important
}

.form-field.invalid {
    color: var(--danger-darker);
    border-color: var(--danger) !important;
    --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23b6274a' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")
}

.form-feedback {
    margin: 0;
    padding: 0;
    width: 100%;
    list-style: none;
    font-size: .85em
}

.form-group.invalid .form-feedback {
    display: block
}

.form-group.invalid .form-field,
.form-group.invalid .field-group {
    color: var(--danger-darker);
    border-color: var(--danger) !important
}

.form-group.invalid .form-field .field-group-text,
.form-group.invalid .field-group .field-group-text {
    color: var(--danger-darker)
}

.form-group.invalid * {
    border-color: var(--danger) !important
}

.form-group.invalid:has(.form-field:focus) .field-group-text {
    color: var(--danger-darker)
}

.field-group-text {
    border: var(--form-border-size) solid var(--form-border-color);
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    background-color: var(--form-disabled-background-color);
    width: max-content;
    color: var(--grey-lighter);
    transition: .3s ease-in-out
}

.field-group {
    display: flex
}

.field-group>* {
    border-radius: 0;
    border-right: 0 solid var(--form-border-color)
}

.field-group>*:first-child {
    border-radius: var(--main-radius) 0 0 var(--main-radius)
}

.field-group>*:last-child {
    border-radius: 0 var(--main-radius) var(--main-radius) 0;
    border-color: var(--form-border-color);
    border-right-width: var(--form-border-size)
}

.field-group:has(.form-field:focus) .field-group-text {
    color: var(--grey)
}

.field-group .form-field[type=color] {
    height: auto
}

.field-group-plain {
    border: var(--form-border-size) solid var(--form-border-color);
    border-radius: var(--main-radius);
    transition: .3s ease-in-out
}

.field-group-plain * {
    background-color: var(--form-background-color);
    border: none !important
}

.field-group-plain:has(.form-field:focus) {
    border-color: var(--form-active-color)
}

.field-group-plain .field-group-text:first-child {
    padding-right: 0
}

.field-group-plain .field-group-text:last-child {
    padding-left: 0
}

.form-floating {
    --form-padding-y: 6px;
    --form-padding-x: 12px;
    position: relative;
    width: 100%;
    border: var(--form-border-size) solid var(--form-border-color);
    transition: .1s ease-in-out;
    border-radius: var(--main-radius)
}

.form-floating .form-label {
    position: absolute;
    top: calc(var(--form-padding-y) * 1.5);
    margin: 0 var(--form-padding-x);
    width: max-content;
    transition: .1s ease-in-out;
    color: var(--form-placeholder-color)
}

.form-floating .form-label:before {
    content: "";
    width: calc(100% + var(--form-padding-x));
    left: 50%;
    transform: translate(-50%);
    position: absolute;
    height: calc(var(--form-border-size) + 2px);
    top: calc(50% - var(--form-border-size));
    background-color: var(--form-background-color);
    z-index: -1
}

.form-floating .form-field {
    border: none
}

.form-floating:has(.form-field:focus) {
    border-color: var(--form-active-color)
}

.form-floating:has(.form-field:focus) .form-label,
.form-floating:has(.form-field:not(:placeholder-shown)) .form-label {
    top: 0;
    transform: translateY(-55%);
    font-size: 12px;
    color: var(--grey)
}

.form-floating:has(.form-field:focus) .form-label {
    color: var(--primary)
}

.form-floating:has(.form-field-lg) {
    --form-padding-y: 10px;
    --form-padding-x: 12px;
    --form-font-size: 1.125em
}

.form-floating:has(.form-field-sm) {
    --form-padding-y: 5px;
    --form-padding-x: 6px;
    --form-font-size: .875em
}

.symbol {
    width: 2.5rem;
    aspect-ratio: 1/1;
    padding: 0;
    margin: 0;
    border: 0;
    overflow: hidden;
    border-radius: var(--main-radius)
}

.symbol img {
    object-fit: cover;
    object-position: center;
    height: 100%;
    width: 100%
}

.symbol-circle {
    border-radius: 50rem
}

.symbol-0 {
    width: 0rem
}

.symbol-1 {
    width: .25rem
}

.symbol-2 {
    width: .5rem
}

.symbol-3 {
    width: .75rem
}

.symbol-4 {
    width: 1rem
}

.symbol-5 {
    width: 1.25rem
}

.symbol-6 {
    width: 1.5rem
}

.symbol-7 {
    width: 1.75rem
}

.symbol-8 {
    width: 2rem
}

.menu {
    display: flex;
    flex-direction: column;
    max-height: 90vh
}

.menu .scrollable {
    overflow-y: auto
}

.menu .scrollable::-webkit-scrollbar {
    width: .3125rem
}

.menu .scrollable::-webkit-scrollbar-track {
    background: transparent
}

.menu .scrollable::-webkit-scrollbar-thumb {
    background: var(--grey-lighter);
    border-radius: var(--main-radius)
}

.menu .scrollable::-webkit-scrollbar-thumb:hover {
    background: var(--grey-lighter)
}

.menu-section {
    color: var(--grey-lighter);
    font-family: monospace;
    font-weight: 400;
    letter-spacing: .0625rem;
    font-size: .875rem
}

.menu-link {
    transition: .1s ease-in-out
}

.menu-item {
    display: block;
    padding: .125rem 0;
    width: 100%;
    min-width: max-content
}

.menu-item:has(.menu-link.current)>.menu-link {
    color: var(--primary)
}

.menu-item:has(.menu-link.current)>.menu-link .menu-bullet {
    background-color: var(--primary);
    opacity: 1
}

.menu-link {
    display: flex;
    align-items: center;
    padding: .5rem .75rem;
    font-size: .875rem;
    cursor: pointer;
    color: var(--grey);
    border-radius: var(--main-radius)
}

.menu-link:hover,
.menu-link.active {
    color: var(--primary)
}

.menu-link:hover .menu-bullet,
.menu-link.active .menu-bullet {
    background-color: var(--primary);
    opacity: 1
}

.menu-link.selected,
.menu-link.current {
    background-color: var(--page-background)
}

.menu-link.current {
    margin-right: .75rem
}

.menu-title {
    width: 100%;
    display: flex;
    align-items: center;
    flex-shrink: 2
}

.menu-icon:first-child,
.menu-bullet:first-child {
    margin-right: .5rem
}

.menu-icon:last-child,
.menu-bullet:last-child {
    margin-left: .5rem
}

.menu-bullet {
    width: .25rem;
    aspect-ratio: 1/1;
    background-color: var(--grey-lighter);
    border-radius: var(--main-radius)
}

.menu-sub {
    margin-left: .5rem
}

.menu-state-bg .menu-link {
    color: var(--text-color)
}

.menu-state-bg .menu-link:hover,
.menu-state-bg .menu-link.active {
    color: var(--primary);
    background-color: var(--page-background)
}

*:has(>.dropdown) {
    position: relative !important
}

*:has(>.dropdown):hover>.dropdown:not(.dropdown-focus) {
    display: unset;
    animation: dropdown-open var(--transition-duration) forwards ease-in-out
}

*:has(>.dropdown-focus):focus>.dropdown {
    display: unset;
    animation: dropdown-open var(--transition-duration) forwards ease-in-out
}

.dropdown {
    display: none;
    position: absolute;
    top: 100%;
    background-color: var(--white);
    padding: .5rem 0;
    border-radius: var(--main-radius);
    box-shadow: var(--main-box-shadow);
    max-width: 15.625rem;
    animation: dropdown-close var(--transition-duration) forwards ease-in-out;
    z-index: 10
}

.dropdown-right {
    right: unset;
    left: 100%
}

.dropdown-left {
    left: unset;
    right: 100%
}

.dropdown-top {
    top: unset;
    bottom: 100%
}

.dropdown-bottom {
    bottom: unset;
    top: 100%
}

.dropdown-bottom-right {
    bottom: unset;
    top: 100%;
    right: 0
}

.dropdown-left,
.dropdown-right {
    top: -.5rem
}

.dropdown-left.dropdown-top,
.dropdown-right.dropdown-top {
    top: unset;
    bottom: -.5rem
}

@keyframes dropdown-open {
    0% {
        display: block;
        opacity: 0
    }

    to {
        display: block;
        opacity: 1
    }
}

@keyframes dropdown-close {
    0% {
        display: block;
        opacity: 1
    }

    99% {
        display: block;
        opacity: 0
    }

    to {
        display: none;
        opacity: 0
    }
}

.separator {
    width: 100%;
    height: .0625rem;
    background-color: var(--page-background)
}

.separator-dashed {
    border-style: dashed
}

.accordion-panel {
    max-height: 0;
    overflow: hidden;
    transition: max-height .5s ease-in-out;
    padding-bottom: 0
}

.accordion:has(>.accordion-toggler.active)>.accordion-panel,
.accordion:has(>.menu-link.active)>.accordion-panel,
.accordion:has(.menu-link.current)>.accordion-panel {
    max-height: max-content
}

.badge {
    --badge-main-color: var(--page-background);
    --badge-background-color: var(--page-background);
    --badge-text-color: var(--grey);
    display: inline-block;
    padding: .25rem .375rem;
    border-radius: var(--main-radius);
    background-color: var(--badge-background-color);
    color: var(--badge-text-color);
    font-weight: 600
}

.badge-primary {
    --badge-main-color: var(--primary);
    --badge-background-color: color-mix(in srgb, var(--badge-main-color) 10%, transparent);
    --badge-text-color: var(--badge-main-color)
}

.badge-success {
    --badge-background-color: color-mix(in srgb, var(--success) 10%, transparent);
    --badge-text-color: var(--success)
}

.badge-danger {
    --badge-background-color: color-mix(in srgb, var(--danger) 10%, transparent);
    --badge-text-color: var(--danger)
}

.badge-warning {
    --badge-background-color: color-mix(in srgb, var(--warning) 10%, transparent);
    --badge-text-color: var(--warning)
}

.badge-info {
    --badge-background-color: color-mix(in srgb, var(--info) 10%, transparent);
    --badge-text-color: var(--info)
}

.table {
    min-width: 100%;
    overflow-x: auto
}

.table.table-striped tr:nth-child(odd) td {
    background-color: var(--page-background)
}

.table th {
    padding: .75rem 1.25rem .75rem 0;
    font-weight: 600;
    vertical-align: middle;
    text-align: left;
    text-transform: uppercase;
    color: var(--grey-lighter);
    font-size: .75rem
}

.table th button {
    width: 100%;
    background-color: transparent;
    border: none;
    outline: none;
    text-align: left;
    padding: 0;
    cursor: pointer;
    font-weight: 600;
    color: var(--grey-lighter);
    font-family: Inter, sans-serif;
    text-transform: uppercase;
    font-size: inherit
}

.table th:first-child {
    padding-right: 0
}

.table th:last-child {
    padding-right: 0
}

.table th:last-child button {
    text-align: right
}

.table th button:after {
    margin-left: .25rem;
    font-family: remixicon;
    font-weight: 400;
    font-size: .9375rem
}

.table th.datatable-ascending button:after {
    content: ""
}

.table th.datatable-descending button:after {
    content: ""
}

.table td {
    border-top: .0625rem solid var(--page-background);
    padding: 1rem 1.25rem 1rem 0;
    vertical-align: middle;
    min-width: max-content
}

.table td:first-child {
    padding-right: 0
}

.table td:last-child {
    padding-right: 0;
    text-align: right
}

.datatable-bottom,
.datatable-top {
    display: flex;
    justify-content: space-between
}

.datatable-empty {
    margin-top: 1rem;
    text-align: center !important;
    font-size: .875rem;
    color: var(--grey)
}

.datatable-bottom {
    margin-top: 1rem
}

.datatable-info {
    font-size: .875rem;
    color: var(--grey-lighter)
}

.datatable-pagination-list {
    display: flex;
    list-style: none
}

.datatable-pagination-list-item {
    position: relative;
    border-radius: var(--main-radius);
    font-size: .875rem;
    width: 1.875rem;
    height: 1.875rem;
    margin: 0 .125rem;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: var(--transition-duration) ease-in-out
}

.datatable-pagination-list-item:hover:not(.datatable-disabled):not(.datatable-active) {
    color: var(--primary);
    background-color: var(--page-background)
}

.datatable-pagination-list-item-link {
    border: 0;
    background-color: transparent;
    outline: none;
    width: 100%;
    height: 100%;
    cursor: pointer;
    color: inherit;
    z-index: 1
}

.datatable-pagination-list-item.datatable-active {
    background-color: var(--primary);
    color: var(--white)
}

.datatable-pagination-list-item.datatable-disabled {
    color: var(--grey-lighter);
    cursor: unset
}

.datatable-pagination-list-item:first-child:before {
    content: "";
    font-family: remixicon;
    font-size: 1rem;
    position: absolute;
    z-index: 0
}

.datatable-pagination-list-item:last-child:before {
    content: "";
    font-family: remixicon;
    font-size: 1rem;
    position: absolute;
    z-index: 0
}

.breadcrumb {
    --breadcrumb-margin-bottom: 1rem;
    --breadcrumb-font-size: null;
    --breadcrumb-bg: null;
    --breadcrumb-item-spacing: .4rem;
    --breadcrumb-active-color: var(--text-color);
    --breadcrumb-text-color: var(--grey-lighter);
    --breadcrumb-divider: "-";
    display: flex;
    list-style: none;
    margin-bottom: var(--breadcrumb-margin-bottom);
    background: var(--breadcrumb-bg);
    font-size: .75rem;
    font-weight: 500
}

.breadcrumb-item {
    font-size: var(--breadcrumb-font-size);
    color: var(--breadcrumb-text-color)
}

.breadcrumb-item.active,
.breadcrumb-item:last-child {
    color: var(--breadcrumb-active-color)
}

.breadcrumb-item:nth-child(n+2):before {
    content: var(--breadcrumb-divider);
    padding: 0 var(--breadcrumb-item-spacing);
    color: var(--breadcrumb-text-color)
}

.image-input {
    width: max-content;
    background-position: center;
    background-size: cover
}

.image-input-placeholder {
    background-image: url(https://preview.keenthemes.com/seven-html-pro/assets/media/svg/files/blank-image.svg)
}

.image-input-wrapper {
    position: relative;
    width: 125px;
    height: 125px;
    background-position: center;
    background-size: cover;
    box-shadow: 0 .5rem 1.5rem .5rem #00000013;
    border-radius: 6px;
    color: var(--grey)
}

.image-input-wrapper-clear,
.image-input-wrapper-choose {
    position: absolute;
    right: 0;
    width: 25px;
    height: 25px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    border-radius: 50rem;
    font-size: 14px;
    box-shadow: 0 .5rem 1.5rem .5rem #00000013;
    cursor: pointer
}

.image-input-wrapper-choose {
    top: 0;
    transform: translate(50%, -50%)
}

.image-input-wrapper-choose-input {
    display: none
}

.image-input-wrapper-clear {
    bottom: 0;
    transform: translate(50%, 50%)
}

.bullet {
    --bullet-color: var(--page-background);
    width: .5rem;
    height: .25rem;
    border-radius: var(--main-radius);
    background-color: var(--bullet-color);
    margin-right: .5rem
}

.bullet-primary {
    --bullet-color: var(--primary)
}

.alert {
    position: absolute;
    padding: 10px 20px;
    width: 100%;
    max-width: 350px;
    border: 1px solid grey;
    border-radius: 6px;
    z-index: 999;
    display: flex;
    transition: all .6s ease;
    opacity: 0
}

.fade.in {
    opacity: 0;
    animation: fadein .3s forwards
}

.fade.out {
    opacity: 1;
    animation: fadeout .3s forwards
}

@keyframes fadein {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes fadeout {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

.alert-error {
    background-color: var(--danger);
    color: #fff
}

.alert-success {
    background-color: var(--success);
    color: #fff
}

.alert-info {
    background-color: var(--info);
    color: #fff
}

.alert-warning {
    background-color: var(--warning);
    color: #fff
}

.alert-icon {
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-right: 20px
}

.alert-close {
    padding-left: 10px
}

.alert-title {
    font-weight: 900
}

.alert-right {
    top: 50px;
    right: 10px
}

.alert-left {
    top: 50px;
    left: 10px
}

.alert-middle {
    top: 50px;
    left: 50%;
    transform: translate(-50%)
}

.alert-bottom {
    top: unset;
    bottom: 50px
}

.bg {
    background-color: var(--page-background)
}

.bg-success {
    background-color: var(--success)
}

.bg-form {
    background-color: var(--form-background-color)
}

.bg-active-success.active {
    background-color: var(--success)
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

html {
    scroll-behavior: smooth
}

body {
    font-family: Josefin Sans, sans-serif;
    color: var(--text-color);
    min-width: 100vw;
    min-height: 100vh;
    background-color: var(--page-background);
    overflow-x: hidden;
    cursor: url(/Assets/public/svg/cursor.svg), pointer
}

body::-webkit-scrollbar {
    width: .3125rem
}

body::-webkit-scrollbar-track {
    background: transparent
}

body::-webkit-scrollbar-thumb {
    background: var(--grey-lighter);
    border-radius: var(--main-radius)
}

body::-webkit-scrollbar-thumb:hover {
    background: var(--grey-lighter)
}

.font2 {
    font-family: var(--main-font2)
}

.img-resizer {
    object-fit: cover;
    width: 100%
}

.list-style\:none {
    list-style: none
}

img:not(.cursor-exeption),
video:not(.cursor-exeption),
svg:not(.cursor-exeption),
i:not(.cursor-exeption),
.btn:not(.cursor-exeption) {
    cursor: url(/Assets/public/svg/cursor-vector.svg), pointer
}

h1:not(.cursor-exeption),
h2:not(.cursor-exeption),
p:not(.cursor-exeption),
span:not(.cursor-exeption) {
    cursor: url(/Assets/public/svg/cursor-text.svg), pointer
}

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

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

a {
    color: var(--blue);
    text-decoration: none
}

.link {
    color: var(--primary)
}

.link:hover {
    color: var(--primary-darker)
}

.fs\:0 {
    font-size: 0rem !important
}

.fw\:0 {
    font-weight: 000
}

.fs\:1 {
    font-size: .2rem !important
}

.fw\:1 {
    font-weight: 100
}

.fs\:2 {
    font-size: .4rem !important
}

.fw\:2 {
    font-weight: 200
}

.fs\:3 {
    font-size: calc(3rem / 5) !important
}

.fw\:3 {
    font-weight: 300
}

.fs\:4 {
    font-size: .8rem !important
}

.fw\:4 {
    font-weight: 400
}

.fs\:5 {
    font-size: 1rem !important
}

.fw\:5 {
    font-weight: 500
}

.fs\:6 {
    font-size: calc(6rem / 5) !important
}

.fw\:6 {
    font-weight: 600
}

.fs\:7 {
    font-size: calc(7rem / 5) !important
}

.fw\:7 {
    font-weight: 700
}

.fs\:8 {
    font-size: 1.6rem !important
}

.fw\:8 {
    font-weight: 800
}

.fs\:9 {
    font-size: 1.8rem !important
}

.fw\:9 {
    font-weight: 900
}

.fs\:10 {
    font-size: 2rem !important
}

.fw\:10 {
    font-weight: 1000
}

.fs\:11 {
    font-size: 2.2rem !important
}

.fw\:11 {
    font-weight: 1100
}

.fs\:12 {
    font-size: calc(12rem / 5) !important
}

.fw\:12 {
    font-weight: 1200
}

.fs\:13 {
    font-size: 2.6rem !important
}

.fw\:13 {
    font-weight: 1300
}

.fs\:14 {
    font-size: calc(14rem / 5) !important
}

.fw\:14 {
    font-weight: 1400
}

.fs\:15 {
    font-size: 3rem !important
}

.fw\:15 {
    font-weight: 1500
}

.fs\:16 {
    font-size: 3.2rem !important
}

.fw\:16 {
    font-weight: 1600
}

.display\:none {
    display: none
}

.flex {
    display: flex
}

.flex-center {
    align-items: center;
    justify-content: center
}

.rounded {
    border-radius: var(--main-radius)
}

.flex-grow\:0 {
    flex-grow: 0 !important
}

.flex-grow\:1 {
    flex-grow: 1 !important
}

.flex-grow\:2 {
    flex-grow: 2 !important
}

.flex-grow\:3 {
    flex-grow: 3 !important
}

.flex-grow\:4 {
    flex-grow: 4 !important
}

.flex-grow\:5 {
    flex-grow: 5 !important
}

.flex-grow\:6 {
    flex-grow: 6 !important
}

.flex-grow\:7 {
    flex-grow: 7 !important
}

.flex-grow\:8 {
    flex-grow: 8 !important
}

.flex-grow\:9 {
    flex-grow: 9 !important
}

.flex-grow\:10 {
    flex-grow: 10 !important
}

.flex-grow\:11 {
    flex-grow: 11 !important
}

.flex-grow\:12 {
    flex-grow: 12 !important
}

.gap\:0 {
    gap: 0rem !important;
    grid-gap: 0rem !important
}

.gap\:1 {
    gap: .25rem !important;
    grid-gap: .25rem !important
}

.gap\:2 {
    gap: .5rem !important;
    grid-gap: .5rem !important
}

.gap\:3 {
    gap: .75rem !important;
    grid-gap: .75rem !important
}

.gap\:4 {
    gap: 1rem !important;
    grid-gap: 1rem !important
}

.gap\:5 {
    gap: 1.25rem !important;
    grid-gap: 1.25rem !important
}

.gap\:6 {
    gap: 1.5rem !important;
    grid-gap: 1.5rem !important
}

.gap\:7 {
    gap: 1.75rem !important;
    grid-gap: 1.75rem !important
}

.gap\:8 {
    gap: 2rem !important;
    grid-gap: 2rem !important
}

.gap\:9 {
    gap: 2.25rem !important;
    grid-gap: 2.25rem !important
}

.gap\:10 {
    gap: 2.5rem !important;
    grid-gap: 2.5rem !important
}

.gap\:11 {
    gap: 2.75rem !important;
    grid-gap: 2.75rem !important
}

.gap\:12 {
    gap: 3rem !important;
    grid-gap: 3rem !important
}

.gap\:13 {
    gap: 3.25rem !important;
    grid-gap: 3.25rem !important
}

.gap\:14 {
    gap: 3.5rem !important;
    grid-gap: 3.5rem !important
}

.gap\:15 {
    gap: 3.75rem !important;
    grid-gap: 3.75rem !important
}

.gap\:16 {
    gap: 4rem !important;
    grid-gap: 4rem !important
}

.flex-direction\:column {
    flex-direction: column !important
}

.flex-direction\:row {
    flex-direction: row !important
}

.justify-content\:start {
    justify-content: flex-start !important
}

.justify-content\:center {
    justify-content: center !important
}

.justify-content\:between {
    justify-content: space-between !important
}

.justify-content\:evenly {
    justify-content: space-evenly !important
}

.justify-content\:around {
    justify-content: space-around !important
}

.justify-content\:end {
    justify-content: flex-end !important
}

.align-item\:start {
    align-items: flex-start !important
}

.align-item\:center {
    align-items: center !important
}

.align-item\:end {
    align-items: flex-end !important
}

.w\:full {
    width: 100% !important
}

.w\:fit {
    width: fit-content !important
}

.w\:max {
    width: max-content !important
}

.w\:min {
    width: min-content !important
}

.h\:full {
    height: 100% !important
}

.h\:fit {
    height: fit-content !important
}

.h\:max {
    height: max-content !important
}

.h\:min {
    height: min-content !important
}

.h\:100vh {
    height: 100vh !important
}

.p-0 {
    padding: 0rem !important
}

.py-0 {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important
}

.px-0 {
    padding-left: 0rem !important;
    padding-right: 0rem !important
}

.pr-0 {
    padding-right: 0rem !important
}

.pl-0 {
    padding-left: 0rem !important
}

.pt-0 {
    padding-top: 0rem !important
}

.pb-0 {
    padding-bottom: 0rem !important
}

.p-1 {
    padding: .25rem !important
}

.py-1 {
    padding-top: .25rem !important;
    padding-bottom: .25rem !important
}

.px-1 {
    padding-left: .25rem !important;
    padding-right: .25rem !important
}

.pr-1 {
    padding-right: .25rem !important
}

.pl-1 {
    padding-left: .25rem !important
}

.pt-1 {
    padding-top: .25rem !important
}

.pb-1 {
    padding-bottom: .25rem !important
}

.p-2 {
    padding: .5rem !important
}

.py-2 {
    padding-top: .5rem !important;
    padding-bottom: .5rem !important
}

.px-2 {
    padding-left: .5rem !important;
    padding-right: .5rem !important
}

.pr-2 {
    padding-right: .5rem !important
}

.pl-2 {
    padding-left: .5rem !important
}

.pt-2 {
    padding-top: .5rem !important
}

.pb-2 {
    padding-bottom: .5rem !important
}

.p-3 {
    padding: .75rem !important
}

.py-3 {
    padding-top: .75rem !important;
    padding-bottom: .75rem !important
}

.px-3 {
    padding-left: .75rem !important;
    padding-right: .75rem !important
}

.pr-3 {
    padding-right: .75rem !important
}

.pl-3 {
    padding-left: .75rem !important
}

.pt-3 {
    padding-top: .75rem !important
}

.pb-3 {
    padding-bottom: .75rem !important
}

.p-4 {
    padding: 1rem !important
}

.py-4 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important
}

.px-4 {
    padding-left: 1rem !important;
    padding-right: 1rem !important
}

.pr-4 {
    padding-right: 1rem !important
}

.pl-4 {
    padding-left: 1rem !important
}

.pt-4 {
    padding-top: 1rem !important
}

.pb-4 {
    padding-bottom: 1rem !important
}

.p-5 {
    padding: 1.25rem !important
}

.py-5 {
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important
}

.px-5 {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important
}

.pr-5 {
    padding-right: 1.25rem !important
}

.pl-5 {
    padding-left: 1.25rem !important
}

.pt-5 {
    padding-top: 1.25rem !important
}

.pb-5 {
    padding-bottom: 1.25rem !important
}

.p-6 {
    padding: 1.5rem !important
}

.py-6 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important
}

.px-6 {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important
}

.pr-6 {
    padding-right: 1.5rem !important
}

.pl-6 {
    padding-left: 1.5rem !important
}

.pt-6 {
    padding-top: 1.5rem !important
}

.pb-6 {
    padding-bottom: 1.5rem !important
}

.p-7 {
    padding: 1.75rem !important
}

.py-7 {
    padding-top: 1.75rem !important;
    padding-bottom: 1.75rem !important
}

.px-7 {
    padding-left: 1.75rem !important;
    padding-right: 1.75rem !important
}

.pr-7 {
    padding-right: 1.75rem !important
}

.pl-7 {
    padding-left: 1.75rem !important
}

.pt-7 {
    padding-top: 1.75rem !important
}

.pb-7 {
    padding-bottom: 1.75rem !important
}

.p-8 {
    padding: 2rem !important
}

.py-8 {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important
}

.px-8 {
    padding-left: 2rem !important;
    padding-right: 2rem !important
}

.pr-8 {
    padding-right: 2rem !important
}

.pl-8 {
    padding-left: 2rem !important
}

.pt-8 {
    padding-top: 2rem !important
}

.pb-8 {
    padding-bottom: 2rem !important
}

.p-9 {
    padding: 2.25rem !important
}

.py-9 {
    padding-top: 2.25rem !important;
    padding-bottom: 2.25rem !important
}

.px-9 {
    padding-left: 2.25rem !important;
    padding-right: 2.25rem !important
}

.pr-9 {
    padding-right: 2.25rem !important
}

.pl-9 {
    padding-left: 2.25rem !important
}

.pt-9 {
    padding-top: 2.25rem !important
}

.pb-9 {
    padding-bottom: 2.25rem !important
}

.p-10 {
    padding: 2.5rem !important
}

.py-10 {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important
}

.px-10 {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important
}

.pr-10 {
    padding-right: 2.5rem !important
}

.pl-10 {
    padding-left: 2.5rem !important
}

.pt-10 {
    padding-top: 2.5rem !important
}

.pb-10 {
    padding-bottom: 2.5rem !important
}

.p-11 {
    padding: 2.75rem !important
}

.py-11 {
    padding-top: 2.75rem !important;
    padding-bottom: 2.75rem !important
}

.px-11 {
    padding-left: 2.75rem !important;
    padding-right: 2.75rem !important
}

.pr-11 {
    padding-right: 2.75rem !important
}

.pl-11 {
    padding-left: 2.75rem !important
}

.pt-11 {
    padding-top: 2.75rem !important
}

.pb-11 {
    padding-bottom: 2.75rem !important
}

.p-12 {
    padding: 3rem !important
}

.py-12 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important
}

.px-12 {
    padding-left: 3rem !important;
    padding-right: 3rem !important
}

.pr-12 {
    padding-right: 3rem !important
}

.pl-12 {
    padding-left: 3rem !important
}

.pt-12 {
    padding-top: 3rem !important
}

.pb-12 {
    padding-bottom: 3rem !important
}

.p-13 {
    padding: 3.25rem !important
}

.py-13 {
    padding-top: 3.25rem !important;
    padding-bottom: 3.25rem !important
}

.px-13 {
    padding-left: 3.25rem !important;
    padding-right: 3.25rem !important
}

.pr-13 {
    padding-right: 3.25rem !important
}

.pl-13 {
    padding-left: 3.25rem !important
}

.pt-13 {
    padding-top: 3.25rem !important
}

.pb-13 {
    padding-bottom: 3.25rem !important
}

.p-14 {
    padding: 3.5rem !important
}

.py-14 {
    padding-top: 3.5rem !important;
    padding-bottom: 3.5rem !important
}

.px-14 {
    padding-left: 3.5rem !important;
    padding-right: 3.5rem !important
}

.pr-14 {
    padding-right: 3.5rem !important
}

.pl-14 {
    padding-left: 3.5rem !important
}

.pt-14 {
    padding-top: 3.5rem !important
}

.pb-14 {
    padding-bottom: 3.5rem !important
}

.p-15 {
    padding: 3.75rem !important
}

.py-15 {
    padding-top: 3.75rem !important;
    padding-bottom: 3.75rem !important
}

.px-15 {
    padding-left: 3.75rem !important;
    padding-right: 3.75rem !important
}

.pr-15 {
    padding-right: 3.75rem !important
}

.pl-15 {
    padding-left: 3.75rem !important
}

.pt-15 {
    padding-top: 3.75rem !important
}

.pb-15 {
    padding-bottom: 3.75rem !important
}

.p-16 {
    padding: 4rem !important
}

.py-16 {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important
}

.px-16 {
    padding-left: 4rem !important;
    padding-right: 4rem !important
}

.pr-16 {
    padding-right: 4rem !important
}

.pl-16 {
    padding-left: 4rem !important
}

.pt-16 {
    padding-top: 4rem !important
}

.pb-16 {
    padding-bottom: 4rem !important
}

.m-0 {
    margin: 0rem !important
}

.my-0 {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important
}

.mx-0 {
    margin-left: 0rem !important;
    margin-right: 0rem !important
}

.mt-0 {
    margin-top: 0rem !important
}

.mb-0 {
    margin-bottom: 0rem !important
}

.mr-0 {
    margin-right: 0rem !important
}

.ml-0 {
    margin-left: 0rem !important
}

.m-1 {
    margin: .25rem !important
}

.my-1 {
    margin-top: .25rem !important;
    margin-bottom: .25rem !important
}

.mx-1 {
    margin-left: .25rem !important;
    margin-right: .25rem !important
}

.mt-1 {
    margin-top: .25rem !important
}

.mb-1 {
    margin-bottom: .25rem !important
}

.mr-1 {
    margin-right: .25rem !important
}

.ml-1 {
    margin-left: .25rem !important
}

.m-2 {
    margin: .5rem !important
}

.my-2 {
    margin-top: .5rem !important;
    margin-bottom: .5rem !important
}

.mx-2 {
    margin-left: .5rem !important;
    margin-right: .5rem !important
}

.mt-2 {
    margin-top: .5rem !important
}

.mb-2 {
    margin-bottom: .5rem !important
}

.mr-2 {
    margin-right: .5rem !important
}

.ml-2 {
    margin-left: .5rem !important
}

.m-3 {
    margin: .75rem !important
}

.my-3 {
    margin-top: .75rem !important;
    margin-bottom: .75rem !important
}

.mx-3 {
    margin-left: .75rem !important;
    margin-right: .75rem !important
}

.mt-3 {
    margin-top: .75rem !important
}

.mb-3 {
    margin-bottom: .75rem !important
}

.mr-3 {
    margin-right: .75rem !important
}

.ml-3 {
    margin-left: .75rem !important
}

.m-4 {
    margin: 1rem !important
}

.my-4 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important
}

.mx-4 {
    margin-left: 1rem !important;
    margin-right: 1rem !important
}

.mt-4 {
    margin-top: 1rem !important
}

.mb-4 {
    margin-bottom: 1rem !important
}

.mr-4 {
    margin-right: 1rem !important
}

.ml-4 {
    margin-left: 1rem !important
}

.m-5 {
    margin: 1.25rem !important
}

.my-5 {
    margin-top: 1.25rem !important;
    margin-bottom: 1.25rem !important
}

.mx-5 {
    margin-left: 1.25rem !important;
    margin-right: 1.25rem !important
}

.mt-5 {
    margin-top: 1.25rem !important
}

.mb-5 {
    margin-bottom: 1.25rem !important
}

.mr-5 {
    margin-right: 1.25rem !important
}

.ml-5 {
    margin-left: 1.25rem !important
}

.m-6 {
    margin: 1.5rem !important
}

.my-6 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important
}

.mx-6 {
    margin-left: 1.5rem !important;
    margin-right: 1.5rem !important
}

.mt-6 {
    margin-top: 1.5rem !important
}

.mb-6 {
    margin-bottom: 1.5rem !important
}

.mr-6 {
    margin-right: 1.5rem !important
}

.ml-6 {
    margin-left: 1.5rem !important
}

.m-7 {
    margin: 1.75rem !important
}

.my-7 {
    margin-top: 1.75rem !important;
    margin-bottom: 1.75rem !important
}

.mx-7 {
    margin-left: 1.75rem !important;
    margin-right: 1.75rem !important
}

.mt-7 {
    margin-top: 1.75rem !important
}

.mb-7 {
    margin-bottom: 1.75rem !important
}

.mr-7 {
    margin-right: 1.75rem !important
}

.ml-7 {
    margin-left: 1.75rem !important
}

.m-8 {
    margin: 2rem !important
}

.my-8 {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important
}

.mx-8 {
    margin-left: 2rem !important;
    margin-right: 2rem !important
}

.mt-8 {
    margin-top: 2rem !important
}

.mb-8 {
    margin-bottom: 2rem !important
}

.mr-8 {
    margin-right: 2rem !important
}

.ml-8 {
    margin-left: 2rem !important
}

.m-9 {
    margin: 2.25rem !important
}

.my-9 {
    margin-top: 2.25rem !important;
    margin-bottom: 2.25rem !important
}

.mx-9 {
    margin-left: 2.25rem !important;
    margin-right: 2.25rem !important
}

.mt-9 {
    margin-top: 2.25rem !important
}

.mb-9 {
    margin-bottom: 2.25rem !important
}

.mr-9 {
    margin-right: 2.25rem !important
}

.ml-9 {
    margin-left: 2.25rem !important
}

.m-10 {
    margin: 2.5rem !important
}

.my-10 {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important
}

.mx-10 {
    margin-left: 2.5rem !important;
    margin-right: 2.5rem !important
}

.mt-10 {
    margin-top: 2.5rem !important
}

.mb-10 {
    margin-bottom: 2.5rem !important
}

.mr-10 {
    margin-right: 2.5rem !important
}

.ml-10 {
    margin-left: 2.5rem !important
}

.m-11 {
    margin: 2.75rem !important
}

.my-11 {
    margin-top: 2.75rem !important;
    margin-bottom: 2.75rem !important
}

.mx-11 {
    margin-left: 2.75rem !important;
    margin-right: 2.75rem !important
}

.mt-11 {
    margin-top: 2.75rem !important
}

.mb-11 {
    margin-bottom: 2.75rem !important
}

.mr-11 {
    margin-right: 2.75rem !important
}

.ml-11 {
    margin-left: 2.75rem !important
}

.m-12 {
    margin: 3rem !important
}

.my-12 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important
}

.mx-12 {
    margin-left: 3rem !important;
    margin-right: 3rem !important
}

.mt-12 {
    margin-top: 3rem !important
}

.mb-12 {
    margin-bottom: 3rem !important
}

.mr-12 {
    margin-right: 3rem !important
}

.ml-12 {
    margin-left: 3rem !important
}

.m-13 {
    margin: 3.25rem !important
}

.my-13 {
    margin-top: 3.25rem !important;
    margin-bottom: 3.25rem !important
}

.mx-13 {
    margin-left: 3.25rem !important;
    margin-right: 3.25rem !important
}

.mt-13 {
    margin-top: 3.25rem !important
}

.mb-13 {
    margin-bottom: 3.25rem !important
}

.mr-13 {
    margin-right: 3.25rem !important
}

.ml-13 {
    margin-left: 3.25rem !important
}

.m-14 {
    margin: 3.5rem !important
}

.my-14 {
    margin-top: 3.5rem !important;
    margin-bottom: 3.5rem !important
}

.mx-14 {
    margin-left: 3.5rem !important;
    margin-right: 3.5rem !important
}

.mt-14 {
    margin-top: 3.5rem !important
}

.mb-14 {
    margin-bottom: 3.5rem !important
}

.mr-14 {
    margin-right: 3.5rem !important
}

.ml-14 {
    margin-left: 3.5rem !important
}

.m-15 {
    margin: 3.75rem !important
}

.my-15 {
    margin-top: 3.75rem !important;
    margin-bottom: 3.75rem !important
}

.mx-15 {
    margin-left: 3.75rem !important;
    margin-right: 3.75rem !important
}

.mt-15 {
    margin-top: 3.75rem !important
}

.mb-15 {
    margin-bottom: 3.75rem !important
}

.mr-15 {
    margin-right: 3.75rem !important
}

.ml-15 {
    margin-left: 3.75rem !important
}

.m-16 {
    margin: 4rem !important
}

.my-16 {
    margin-top: 4rem !important;
    margin-bottom: 4rem !important
}

.mx-16 {
    margin-left: 4rem !important;
    margin-right: 4rem !important
}

.mt-16 {
    margin-top: 4rem !important
}

.mb-16 {
    margin-bottom: 4rem !important
}

.mr-16 {
    margin-right: 4rem !important
}

.ml-16 {
    margin-left: 4rem !important
}

.m-auto {
    margin: auto !important
}

.line-height\:0 {
    line-height: 0rem !important
}

.line-height\:1 {
    line-height: .25rem !important
}

.line-height\:2 {
    line-height: .5rem !important
}

.line-height\:3 {
    line-height: .75rem !important
}

.line-height\:4 {
    line-height: 1rem !important
}

.line-height\:5 {
    line-height: 1.25rem !important
}

.line-height\:6 {
    line-height: 1.5rem !important
}

.line-height\:7 {
    line-height: 1.75rem !important
}

.line-height\:8 {
    line-height: 2rem !important
}

.line-height\:9 {
    line-height: 2.25rem !important
}

.line-height\:10 {
    line-height: 2.5rem !important
}

.line-height\:11 {
    line-height: 2.75rem !important
}

.line-height\:12 {
    line-height: 3rem !important
}

.line-height\:13 {
    line-height: 3.25rem !important
}

.line-height\:14 {
    line-height: 3.5rem !important
}

.line-height\:15 {
    line-height: 3.75rem !important
}

.line-height\:16 {
    line-height: 4rem !important
}

.text\:uppercase {
    text-transform: uppercase
}

.text\:lowercase {
    text-transform: lowercase
}

.text\:capitalize {
    text-transform: capitalize
}

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

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

.text\:start {
    text-align: start
}

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

svg {
    width: 6.25rem
}

.bg-white {
    background-color: var(--white)
}

.bg-main {
    background-color: var(--page-background)
}

.border-radius {
    border-radius: var(--main-radius)
}

.text-grey {
    color: var(--grey)
}

.text-grey-light {
    color: var(--grey-lighter)
}

.text-danger {
    color: var(--danger)
}

.text-center {
    text-align: center
}

.text-light {
    color: var(--page-background)
}

.text-primary {
    color: var(--primary)
}

.text-secondary {
    color: var(--secondary)
}

.page-card {
    position: relative;
    box-shadow: 0 0 1.25rem #4c577d0d;
    border-radius: var(--main-radius);
    padding: 1.5rem
}

.page-card-footer {
    position: absolute;
    left: 0;
    bottom: 0
}

.panel {
    display: flex;
    height: 100vh;
    overflow: hidden
}

.panel-aside {
    width: 100%;
    max-width: 23.75rem;
    display: flex
}

.panel-aside-primary {
    width: 100%;
    max-width: 5.625rem;
    background-color: var(--navbar-background);
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    gap: 0;
    padding: var(--main-padding)
}

.panel-aside-primary .svg-logo {
    width: 3.75rem;
    fill: var(--white)
}

.panel-aside-primary .nav-btn {
    padding: .375rem;
    border-radius: var(--main-radius);
    font-size: 1.375rem;
    transition: var(--transition-duration) ease-in-out;
    margin: 0 .4375rem;
    font-weight: 400;
    color: var(--navbar-icon-btn-color)
}

.panel-aside-primary .nav-btn:hover,
.panel-aside-primary .nav-btn.active {
    background-color: var(--navbar-icon-btn-background);
    color: var(--navbar-icon-btn-color-hover)
}

.panel-aside-primary>*:nth-child(2) {
    padding-top: var(--main-padding);
    height: 100%
}

.panel-aside-secondary {
    width: 100%;
    background-color: var(--white)
}

.panel-container {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0;
    background-color: var(--page-background);
    overflow-y: auto;
    width: 100%;
    opacity: 0;
    transition: .5s;
    transform: translateY(-.625rem)
}

.panel-container.active {
    opacity: 1;
    transform: translateY(0)
}

.panel-container-header,
.panel-container-footer {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    gap: 0;
    width: 100%;
    padding: var(--main-padding) 1.875rem
}

.panel-container-main {
    width: 100%;
    padding: 0 1.875rem
}

.choices:has(select[data-plugin=Choices])[data-type*=select-one]:after {
    content: "";
    font-family: remixicon;
    top: 50%;
    right: var(--form-field-padding-x);
    transform: translateY(-50%);
    margin-top: unset;
    border: none;
    width: fit-content;
    height: fit-content;
    color: var(--custom-grey-lighter)
}

.choices:has(select[data-plugin=Choices])[data-type*=select-one] .choices__input {
    padding: var(--form-field-padding-y) var(--form-field-padding-x);
    border: var(--form-border-size) solid var(--form-border-color);
    min-height: unset;
    background-color: var(--form-background-color);
    border-radius: var(--main-radius);
    margin-bottom: var(--form-field-padding-y)
}

.choices:has(select[data-plugin=Choices]) .choices__placeholder {
    color: var(--form-placeholder-color);
    opacity: 1
}

.choices:has(select[data-plugin=Choices]) .choices__inner {
    padding: var(--form-field-padding-y) var(--form-field-padding-x);
    border: var(--form-border-size) solid var(--form-border-color);
    min-height: unset;
    background-color: var(--form-background-color);
    border-radius: var(--main-radius);
    line-height: 1.5;
    font-size: var(--form-font-size)
}

.choices:has(select[data-plugin=Choices]) .choices__list--single {
    padding: 0
}

.choices:has(select[data-plugin=Choices]) .choices__list--dropdown {
    border: var(--form-border-size) solid var(--form-border-color);
    border-radius: var(--main-radius);
    padding: var(--form-field-padding-y) 0;
    padding-top: 0
}

.choices:has(select[data-plugin=Choices]) .choices__list--dropdown:has(.choices__input) {
    padding: var(--form-field-padding-y) calc(var(--form-field-padding-x) / 2)
}

.choices:has(select[data-plugin=Choices]) .choices__list--dropdown .choices__item {
    padding: var(--form-field-padding-y) var(--form-field-padding-x);
    color: var(--custom-grey);
    border-radius: var(--main-radius);
    transition: var(--transition-duration) ease-in-out
}

.choices:has(select[data-plugin=Choices]) .choices__list--dropdown .choices__item.is-highlighted,
.choices:has(select[data-plugin=Choices]) .choices__list--dropdown .choices__item.is-selected {
    background-color: var(--form-disabled-background-color);
    color: var(--form-active-color)
}

.choices:has(select[data-plugin=Choices]) .choices__list--dropdown .choices__item.is-selected {
    position: relative
}

.choices:has(select[data-plugin=Choices]) .choices__list--dropdown .choices__item.is-selected:after {
    position: absolute;
    right: var(--form-field-padding-x);
    top: 50%;
    transform: translateY(-50%);
    content: "";
    color: var(--form-active-color);
    font-family: remixicon;
    font-size: 1.125rem;
    opacity: 1
}

.choices:has(select[data-plugin=Choices]) .choices__list--dropdown .choices__item.choices__placeholder {
    display: none
}

.choices:has(select[data-plugin=Choices]).is-open:after {
    color: var(--custom-grey)
}

.choices:has(select[data-plugin=Choices]).is-open .choices__inner {
    border-color: var(--form-active-color);
    border-radius: var(--main-radius) var(--main-radius) 0 0;
    border-bottom-width: 0
}

.choices:has(select[data-plugin=Choices]).is-open .choices__list--dropdown {
    border-color: var(--form-active-color);
    border-radius: 0 0 var(--main-radius) var(--main-radius);
    border-top-width: 0
}

.choices:has(select[data-plugin=Choices]).is-focused .choices__inner {
    border-color: var(--form-active-color)
}

.choices:has(select[data-plugin=Choices]).is-focused .choices__list--dropdown {
    border-color: var(--form-active-color)
}

.header {
    position: absolute;
    z-index: 1
}

.header-menu {
    list-style: none;
    display: flex;
    max-width: 3rem;
    flex-wrap: wrap;
    flex-direction: row-reverse
}

.header-menu li {
    width: 1.5rem;
    height: 1.5rem;
    background-color: var(--secondary);
    border-radius: 50rem
}

::-moz-selection {
    color: var(--page-background);
    background: var(--secondary)
}

::selection {
    color: var(--page-background);
    background: var(--secondary)
}

.main-header {
    overflow: hidden
}

.main-header h1 {
    font-size: 6.25rem;
    line-height: 6.25rem;
}

.main-header h1:after {
    content: "";
    display: inline-block;
    width: 2.125rem;
    height: 2.125rem;
    background-color: var(--primary);
    border-radius: 50rem;
    transform: translate(-1.5625rem, .25rem)
}

.main-header-container {
    position: relative;
    overflow: hidden
}

.main-header-container-content {
    position: absolute
}

.main-header-bg-img {
    position: absolute;
    z-index: -1;
    height: 110%;
    top: -5%;
    right: -10%;
    display: block;
    margin: 0 auto
}

.main-header-bg-bubble {
    height: 150%;
    top: -30%
}

.mask {
    width: 100vw;
    height: 100vh;
    background-color: transparent;
    position: fixed;
    border: 1.6875rem solid red;
    border-radius: 1.5625rem;
    -moz-border-radius: 1.5625rem;
    -webkit-border-radius: 1.5625rem
}

.about-container {
    position: relative
}

.about-img {
    width: 20.0625rem
}

.about-band {
    position: absolute;
    left: 0;
    top: 0;
    height: 59.375rem
}

.bubble:after {
    content: "";
    display: inline-block;
    width: 2.125rem;
    height: 2.125rem;
    background-color: var(--primary);
    border-radius: 50rem
}

.creatif-container {
    position: sticky;
    top: 0
}

.title {
    font-size: 5.2rem
}

.title-creatif {
    color: #3849b2;
    font-size: 17.029375rem
}

.title-creatif-container {
    position: relative
}

.title-creatif-layer {
    font-size: 17.029375rem;
    position: absolute;
    top: 0;
    width: 0;
    color: var(--page-background);
    overflow: hidden;
    padding-top: 6.25rem;
    transition: .05s all ease
}

.skills-container {
    position: relative
}

.skills-container:before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 50%;
    background-color: var(--secondary);
    border-radius: 0 0 1.875rem 1.875rem
}

.myskills-container {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 2.1875rem
}

.myskills-title {
    grid-column: 1;
    grid-row: 1;
    max-height: 0
}

.myskills-video {
    grid-column: 2/6;
    grid-row: 1/3
}

.myskills-dock {
    grid-column: 1;
    grid-row: 2;
    display: flex;
    align-items: center;
    justify-content: center
}

.myskills-dock-container {
    list-style: none;
    display: flex;
    justify-content: center;
    gap: 1.875rem
}

.myskills-dock-container .ico {
    transition: var(--transition-duration) ease-in-out;
    width: 3.75rem
}

.circle {
    background-color: var(--secondary);
    border-radius: 50rem
}

.recentwork-container {
    display: grid;
    grid-template-columns: 2;
    grid-gap: 4.375rem;
    grid-auto-rows: minmax(100px, auto)
}

.recentwork-first {
    grid-row: 1/5;
    grid-column: 1
}

.recentwork-title {
    grid-row: 1/3;
    grid-column: 2;
    display: flex;
    gap: 2.1875rem;
    align-items: center;
    height: 21.875rem;
    padding-top: 4.375rem
}

.recentwork-second {
    grid-row: 3/6;
    grid-column: 2
}

.recentwork-action {
    grid-row: 5;
    grid-column: 1;
    display: flex;
    justify-content: center;
    height: max-content
}

.recentwork-last {
    grid-row: 6/9;
    grid-column: 1/3;
    padding-top: 4.375rem
}

.footer-logo {
    width: 3.9375rem
}

@media (min-width: 1700px) {
    .main-header-bg-img {
        height: unset;
        width: 120%
    }
}

@media (max-width: 1700px) {
    html {
        font-size: 14px
    }
}

@media (max-width: 1500px) {
    html {
        font-size: 13px
    }
}

@media (max-width: 1400px) {
    html {
        font-size: 12px
    }
}

@media (max-width: 1300px) {
    html {
        font-size: 10px
    }
}

@media (max-width: 992px) {
    .myskills-container {
        display: flex;
        flex-direction: column;
        text-align: center;
        align-items: center;
        margin-bottom: 6.25rem
    }

    .myskills-title {
        max-height: none;
        display: flex;
        justify-content: center
    }

    .myskills-title img {
        width: 12.5rem
    }

    .recentwork-container {
        display: flex;
        flex-direction: column
    }
}

@media (max-width: 575px) {
    .about-content {
        position: relative;
        padding-left: 3.75rem
    }
}

@media (max-width: 600px) {
    .main-header-container {
        background-image: url(/Assets/public/images/header-mobile.jpg)
    }

    .main-header h1 {
        font-size: 6.25rem;
        line-height: 6.25rem;
        letter-spacing: 1.5625rem
    }

    .main-header h1:after {
        width: 1.5rem;
        height: 1.5rem
    }
}

@media (max-width: 400px) {
    html {
        font-size: 8px
    }
}

.digit {
    color: #3849b2
}

.digit-header {
    position: relative;
    height: 35vh;
    width: 100%;
    background-image: url(/Assets/public/images/digit-bg.jpg);
    background-size: cover;
    background-position: bottom;
    border-radius: 0 0 5.625rem 5.625rem;
    padding-bottom: 5rem
}

.digit-header-call {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: var(--page-background);
    padding: .75rem 4.5rem 1rem;
    border-radius: 50rem;
    font-size: 2rem;
    text-transform: uppercase;
    color: var(--secondary);
    font-weight: 700
}

.digit-header h1 {
    font-size: 4rem;
    letter-spacing: .3125rem;
    max-width: min-content
}

.digit-socials {
    list-style: none
}

.digit-socials li {
    background-color: #E9EEFF
}

.digit .shadow {
    box-shadow: 0 4px 10px #00000015
}

.portfolio-header {
    grid-auto-rows: 12.5rem
}

.portfolio-header-1 {
    grid-column: 1;
    grid-row: span 6
}

.portfolio-header-2 {
    grid-column: 2;
    grid-row: span 4
}

.portfolio-header-3 {
    grid-column: 3;
    grid-row: span 5
}

.portfolio-header-4 {
    grid-column: 2;
    grid-row: span 2
}

.portfolio-header-5 {
    grid-column: 3;
    grid-row: span 4
}

.portfolio-header-6 {
    grid-column: 1/3;
    grid-row: span 3
}

@media (max-width: 992px) {
    .portfolio-header-3 {
        grid-column: 2;
        grid-row: span 4
    }

    .portfolio-header-5 {
        grid-column: 1
    }
}

@media (max-width: 576px) {

    .portfolio-header-2,
    .portfolio-header-3,
    .portfolio-header-4,
    .portfolio-header-5,
    .portfolio-header-6 {
        grid-column: 1
    }

    .portfolio-header-3 {
        grid-row: span 5
    }
}