/* Grid
======================================================*/
.row { display: flex; flex-wrap: wrap; margin-top: calc(-1 * var(--bs-gutter)); margin-right: calc(-0.5 * var(--bs-gutter)); margin-left: calc(-0.5 * var(--bs-gutter)); }
.row > * { flex-shrink: 0; width: 100%; max-width: 100%; padding-right: calc(var(--bs-gutter) * 0.5); padding-left: calc(var(--bs-gutter) * 0.5); margin-top: var(--bs-gutter); }
.no-gutters { margin-left: 0; margin-right: 0; }
.no-gutters > * { padding-left: 0; padding-right: 0; }

.col { flex: 1 0 0%; }
.row-cols-auto > * { flex: 0 0 auto; width: auto; }
.row-cols-1 > * { flex: 0 0 auto; width: 100%; }
.row-cols-2 > * { flex: 0 0 auto; width: 50%; }
.row-cols-3 > * { flex: 0 0 auto; width: 33.3333333333%; }
.row-cols-4 > * { flex: 0 0 auto; width: 25%; }
.row-cols-5 > * { flex: 0 0 auto; width: 20%; }
.row-cols-6 > * { flex: 0 0 auto; width: 16.6666666667%; }
.col-auto { flex: 0 0 auto; width: auto; }
.col-1 { flex: 0 0 auto; width: 8.33333333%; }
.col-2 { flex: 0 0 auto; width: 16.66666667%; }
.col-3 { flex: 0 0 auto; width: 25%; }
.col-4 { flex: 0 0 auto; width: 33.33333333%; }
.col-5 { flex: 0 0 auto; width: 41.66666667%; }
.col-6 { flex: 0 0 auto; width: 50%; }
.col-7 { flex: 0 0 auto; width: 58.33333333%; }
.col-8 { flex: 0 0 auto; width: 66.66666667%; }
.col-9 { flex: 0 0 auto; width: 75%; }
.col-10 { flex: 0 0 auto; width: 83.33333333%; }
.col-11 { flex: 0 0 auto; width: 91.66666667%; }
.col-12 { flex: 0 0 auto; width: 100%; }
.d-none { display: none !important; }
.d-block { display: block !important; }

@media (min-width: 576px) {
    .col-sm { flex: 1 0 0%; }
    .row-cols-sm-auto > * { flex: 0 0 auto; width: auto; }
    .row-cols-sm-1 > * { flex: 0 0 auto; width: 100%; }
    .row-cols-sm-2 > * { flex: 0 0 auto; width: 50%; }
    .row-cols-sm-3 > * { flex: 0 0 auto; width: 33.3333333333%; }
    .row-cols-sm-4 > * { flex: 0 0 auto; width: 25%; }
    .row-cols-sm-5 > * { flex: 0 0 auto; width: 20%; }
    .row-cols-sm-6 > * { flex: 0 0 auto; width: 16.6666666667%; }
    .col-sm-auto { flex: 0 0 auto; width: auto; }
    .col-sm-1 { flex: 0 0 auto; width: 8.33333333%; }
    .col-sm-2 { flex: 0 0 auto; width: 16.66666667%; }
    .col-sm-3 { flex: 0 0 auto; width: 25%; }
    .col-sm-4 { flex: 0 0 auto; width: 33.33333333%; }
    .col-sm-5 { flex: 0 0 auto; width: 41.66666667%; }
    .col-sm-6 { flex: 0 0 auto; width: 50%; }
    .col-sm-7 { flex: 0 0 auto; width: 58.33333333%; }
    .col-sm-8 { flex: 0 0 auto; width: 66.66666667%; }
    .col-sm-9 { flex: 0 0 auto; width: 75%; }
    .col-sm-10 { flex: 0 0 auto; width: 83.33333333%; }
    .col-sm-11 { flex: 0 0 auto; width: 91.66666667%; }
    .col-sm-12 { flex: 0 0 auto; width: 100%; }
}
@media (min-width: 768px) {
    .col-md { flex: 1 0 0%; }
    .row-cols-md-auto > * { flex: 0 0 auto; width: auto; }
    .row-cols-md-1 > * { flex: 0 0 auto; width: 100%; }
    .row-cols-md-2 > * { flex: 0 0 auto; width: 50%; }
    .row-cols-md-3 > * { flex: 0 0 auto; width: 33.3333333333%; }
    .row-cols-md-4 > * { flex: 0 0 auto; width: 25%; }
    .row-cols-md-5 > * { flex: 0 0 auto; width: 20%; }
    .row-cols-md-6 > * { flex: 0 0 auto; width: 16.6666666667%; }
    .col-md-auto { flex: 0 0 auto; width: auto; }
    .col-md-1 { flex: 0 0 auto; width: 8.33333333%; }
    .col-md-2 { flex: 0 0 auto; width: 16.66666667%; }
    .col-md-3 { flex: 0 0 auto; width: 25%; }
    .col-md-4 { flex: 0 0 auto; width: 33.33333333%; }
    .col-md-5 { flex: 0 0 auto; width: 41.66666667%; }
    .col-md-6 { flex: 0 0 auto; width: 50%; }
    .col-md-7 { flex: 0 0 auto; width: 58.33333333%; }
    .col-md-8 { flex: 0 0 auto; width: 66.66666667%; }
    .col-md-9 { flex: 0 0 auto; width: 75%; }
    .col-md-10 { flex: 0 0 auto; width: 83.33333333%; }
    .col-md-11 { flex: 0 0 auto; width: 91.66666667%; }
    .col-md-12 { flex: 0 0 auto; width: 100%; }
    .d-md-block { display: block !important; }
    .d-md-none { display: none !important; }
    .order-md-1 { order: 1 !important; }
    .order-md-2 { order: 2 !important; }
}
@media (min-width: 992px) {
    .col-lg { flex: 1 0 0%; }
    .row-cols-lg-auto > * { flex: 0 0 auto; width: auto; }
    .row-cols-lg-1 > * { flex: 0 0 auto; width: 100%; }
    .row-cols-lg-2 > * { flex: 0 0 auto; width: 50%; }
    .row-cols-lg-3 > * { flex: 0 0 auto; width: 33.3333333333%; }
    .row-cols-lg-4 > * { flex: 0 0 auto; width: 25%; }
    .row-cols-lg-5 > * { flex: 0 0 auto; width: 20%; }
    .row-cols-lg-6 > * { flex: 0 0 auto; width: 16.6666666667%; }
    .col-lg-auto { flex: 0 0 auto; width: auto; }
    .col-lg-1 { flex: 0 0 auto; width: 8.33333333%; }
    .col-lg-2 { flex: 0 0 auto; width: 16.66666667%; }
    .col-lg-3 { flex: 0 0 auto; width: 25%; }
    .col-lg-4 { flex: 0 0 auto; width: 33.33333333%; }
    .col-lg-5 { flex: 0 0 auto; width: 41.66666667%; }
    .col-lg-6 { flex: 0 0 auto; width: 50%; }
    .col-lg-7 { flex: 0 0 auto; width: 58.33333333%; }
    .col-lg-8 { flex: 0 0 auto; width: 66.66666667%; }
    .col-lg-9 { flex: 0 0 auto; width: 75%; }
    .col-lg-10 { flex: 0 0 auto; width: 83.33333333%; }
    .col-lg-11 { flex: 0 0 auto; width: 91.66666667%; }
    .col-lg-12 { flex: 0 0 auto; width: 100%; }
    .order-lg-1 { order: 1 !important; }
    .order-lg-2 { order: 2 !important; }
    .d-lg-block { display: block !important; }
}

@media (min-width: 1200px) {
    .col-xl { flex: 1 0 0%; }
    .row-cols-xl-auto > * { flex: 0 0 auto; width: auto; }
    .row-cols-xl-1 > * { flex: 0 0 auto; width: 100%; }
    .row-cols-xl-2 > * { flex: 0 0 auto; width: 50%; }
    .row-cols-xl-3 > * { flex: 0 0 auto; width: 33.3333333333%; }
    .row-cols-xl-4 > * { flex: 0 0 auto; width: 25%; }
    .row-cols-xl-5 > * { flex: 0 0 auto; width: 20%; }
    .row-cols-xl-6 > * { flex: 0 0 auto; width: 16.6666666667%; }
    .col-xl-auto { flex: 0 0 auto; width: auto; }
    .col-xl-1 { flex: 0 0 auto; width: 8.33333333%; }
    .col-xl-2 { flex: 0 0 auto; width: 16.66666667%; }
    .col-xl-3 { flex: 0 0 auto; width: 25%; }
    .col-xl-4 { flex: 0 0 auto; width: 33.33333333%; }
    .col-xl-5 { flex: 0 0 auto; width: 41.66666667%; }
    .col-xl-6 { flex: 0 0 auto; width: 50%; }
    .col-xl-7 { flex: 0 0 auto; width: 58.33333333%; }
    .col-xl-8 { flex: 0 0 auto; width: 66.66666667%; }
    .col-xl-9 { flex: 0 0 auto; width: 75%; }
    .col-xl-10 { flex: 0 0 auto; width: 83.33333333%; }
    .col-xl-11 { flex: 0 0 auto; width: 91.66666667%; }
    .col-xl-12 { flex: 0 0 auto; width: 100%; }
}

@media (min-width: 1400px) {
    .col-xxl { flex: 1 0 0%; }
    .row-cols-xxl-auto > * { flex: 0 0 auto; width: auto; }
    .row-cols-xxl-1 > * { flex: 0 0 auto; width: 100%; }
    .row-cols-xxl-2 > * { flex: 0 0 auto; width: 50%; }
    .row-cols-xxl-3 > * { flex: 0 0 auto; width: 33.3333333333%; }
    .row-cols-xxl-4 > * { flex: 0 0 auto; width: 25%; }
    .row-cols-xxl-5 > * { flex: 0 0 auto; width: 20%; }
    .row-cols-xxl-6 > * { flex: 0 0 auto; width: 16.6666666667%; }
    .col-xxl-auto { flex: 0 0 auto; width: auto; }
    .col-xxl-1 { flex: 0 0 auto; width: 8.33333333%; }
    .col-xxl-2 { flex: 0 0 auto; width: 16.66666667%; }
    .col-xxl-3 { flex: 0 0 auto; width: 25%; }
    .col-xxl-4 { flex: 0 0 auto; width: 33.33333333%; }
    .col-xxl-5 { flex: 0 0 auto; width: 41.66666667%; }
    .col-xxl-6 { flex: 0 0 auto; width: 50%; }
    .col-xxl-7 { flex: 0 0 auto; width: 58.33333333%; }
    .col-xxl-8 { flex: 0 0 auto; width: 66.66666667%; }
    .col-xxl-9 { flex: 0 0 auto; width: 75%; }
    .col-xxl-10 { flex: 0 0 auto; width: 83.33333333%; }
    .col-xxl-11 { flex: 0 0 auto; width: 91.66666667%; }
    .col-xxl-12 { flex: 0 0 auto; width: 100%; }
}

/* Flex Class
======================================================*/
.d-flex {display: flex !important; }
.flex-fill {flex: 1 1 auto !important; }

.flex-row {flex-direction: row !important; }
.flex-column {flex-direction: column !important; }
.flex-row-reverse {flex-direction: row-reverse !important; }
.flex-column-reverse {flex-direction: column-reverse !important; }

.flex-grow-0 {flex-grow: 0 !important; }
.flex-grow-1 {flex-grow: 1 !important; }
.flex-shrink-0 {flex-shrink: 0 !important; }
.flex-shrink-1 {flex-shrink: 1 !important; }

.flex-wrap {flex-wrap: wrap !important; }
.flex-nowrap {flex-wrap: nowrap !important; }
.flex-wrap-reverse {flex-wrap: wrap-reverse !important; }

.justify-content-start {justify-content: flex-start !important; }
.justify-content-end {justify-content: flex-end !important; }
.justify-content-center {justify-content: center !important; }
.justify-content-between {justify-content: space-between !important; }
.justify-content-around {justify-content: space-around !important; }
.justify-content-evenly {justify-content: space-evenly !important; }

.align-items-start {align-items: flex-start !important; }
.align-items-end {align-items: flex-end !important; }
.align-items-center {align-items: center !important; }
.align-items-baseline {align-items: baseline !important; }
.align-items-stretch {align-items: stretch !important; }

.align-content-start {align-content: flex-start !important; }
.align-content-end {align-content: flex-end !important; }
.align-content-center {align-content: center !important; }
.align-content-between {align-content: space-between !important; }
.align-content-around {align-content: space-around !important; }
.align-content-stretch {align-content: stretch !important; }

.align-self-auto {align-self: auto !important; }
.align-self-start {align-self: flex-start !important; }
.align-self-end {align-self: flex-end !important; }
.align-self-center {align-self: center !important; }
.align-self-baseline {align-self: baseline !important; }
.align-self-stretch {align-self: stretch !important; }

/* Text Class
======================================================*/
.fw-thin {font-weight: var(--bs-font-thin); !important;}
.fw-light {font-weight: var(--bs-font-light); !important;}
.fw-normal {font-weight: var(--bs-font-regular); !important;}
.fw-medium {font-weight: var(--bs-font-medium); !important;}
.fw-semi-bold {font-weight: var(--bs-font-semi-bold); !important;}
.fw-bold {font-weight: var(--bs-font-bold); !important;}
.fw-extra-bold {font-weight: var(--bs-font-extra-bold); !important;}
.fw-black {font-weight: var(--bs-font-black); !important;}

.text-primary {color: var(--bs-primary) !important;}
.text-secondary {color: var(--bs-secondary) !important;}
.text-success {color: var(--bs-success) !important;}
.text-danger {color: var(--bs-danger) !important;}
.text-warning {color: var(--bs-warning) !important;}
.text-info {color: var(--bs-info) !important;}
.text-light {color: var(--bs-light) !important;}
.text-dark {color: var(--bs-dark) !important;}
.text-white {color: var(--bs-white) !important;}
.text-black {color: var(--bs-black) !important;}

.text-start {text-align: left !important;}
.text-center {text-align: center !important;}
.text-end {text-align: right !important;}
.text-justify {text-align: justify !important;}

.text-lowercase {text-transform: lowercase !important;}
.text-uppercase {text-transform: uppercase !important;}
.text-capitalize {text-transform: capitalize !important;}

/* Background Color Css
======================================================*/
.bg-primary {background-color: var(--bs-primary) !important;}
.bg-secondary {background-color: var(--bs-secondary) !important;}
.bg-success {background-color: var(--bs-success) !important;}
.bg-danger {background-color: var(--bs-danger) !important;}
.bg-warning {background-color: var(--bs-warning) !important;}
.bg-info {background-color: var(--bs-info) !important;}
.bg-light {background-color: var(--bs-light) !important;}
.bg-dark {background-color: var(--bs-dark) !important;}
.bg-white {background-color: var(--bs-white) !important;}
.bg-black {background-color: var(--bs-black) !important;}

/* Size Css
======================================================*/
.w-25 {width: 25% !important;}
.w-50 {width: 50% !important;}
.w-75 {width: 75% !important;}
.w-100 {width: 100% !important;}
.w-auto {width: auto !important;}
.vw-100 {width: 100vw !important;}
.min-vw-100 {min-width: 100vw !important;}

.h-25 {height: 25% !important}
.h-50 {height: 50% !important}
.h-75 {height: 75% !important}
.h-100 {height: 100% !important}
.h-auto {height: auto !important;}
.vh-100 {height: 100vh !important;}
.min-vh-100 {min-height: 100vh !important;}

.overflow-auto {overflow: auto;}
.overflow-hidden {overflow: hidden;}

.position-relative {position: relative;}
.position-absolute {position: absolute;}

/* Alert Css
======================================================*/
.alert-primary { color: var(--primary); background-color: rgba(var(--bs-primary-rgb), 0.1); border-color: var(--bs-primary); }
.alert-secondary { color: var(--secondary); background-color: rgba(var(--bs-secondary-rgb), 0.1); border-color: var(--bs-secondary); }
.alert-success { color: var(--green); background-color: rgba(var(--bs-success-rgb), 0.1); border-color: var(--bs-success); }
.alert-danger { color: var(--red); background-color: rgba(var(--bs-danger-rgb), 0.1); border-color: var(--bs-danger); }
.alert-warning { color: var(--yellow); background-color: rgba(var(--bs-warning-rgb), 0.1); border-color: var(--bs-warning); }
.alert-info { color: var(--cyan); background-color: rgba(var(--bs-info-rgb), 0.1); border-color: var(--bs-info); }
.alert-light { color: var(--grey); background-color: rgba(var(--bs-light-rgb), 0.1); border-color: var(--bs-light); }
.alert-dark { color: var(--nero); background-color: rgba(var(--bs-dark-rgb), 0.1); border-color: var(--bs-dark); }

.mt-auto { margin-top: auto !important; }
.mb-0 { margin-bottom: 0 !important; }