:root {
    --bs-blue:#0d6efd;
    --bs-gray:#6c757d;
    --bs-light:#f8f9fa;
    --bs-dark:#212529;
    --bs-danger:#dc3545;
    --bs-white:#fff;
    --bs-primary:var(--bs-blue);
    --bs-secondary:var(--bs-gray);
    --bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    --bs-body-font-family:var(--bs-font-sans-serif);
    --bs-body-font-size:1rem;
    --bs-body-font-weight:400;
    --bs-body-line-height:1.5;
    --bs-body-color:var(--bs-dark);
    --bs-body-bg:var(--bs-white);
    --bs-link-color:var(--bs-primary);
    --bs-link-hover-color:#0a58ca;
    --bs-link-decoration:underline;
    --bs-border-width:1px;
    --bs-border-color:#dee2e6;
    --bs-border-radius:.375rem;
    --bs-spacer:1rem;
    --bs-gutter-x:1.5rem;
    --bs-gutter-y:0;
}
*,*::before,*::after {
    box-sizing:border-box;
}
body {
    margin:0;
    font-family:var(--bs-body-font-family);
    font-size:var(--bs-body-font-size);
    font-weight:var(--bs-body-font-weight);
    line-height:var(--bs-body-line-height);
    color:var(--bs-body-color);
    background-color:var(--bs-body-bg);
    -webkit-text-size-adjust:100%;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}
h1,h2,h3,h4,h5,h6 {
    margin-top:0;
    margin-bottom:calc(var(--bs-spacer) * 0.5);
    font-weight:500;
    line-height:1.2;
}
h3 {
    font-size:1.75rem;
}
h5 {
    font-size:1.25rem;
}
.display-4 {
    font-size:2rem;
    font-weight:300;
    line-height:1.2;
}
.lead {
    font-size:1.15rem;
    font-weight:300 !important;
}
p {
    margin-top:0;
    margin-bottom:var(--bs-spacer);
}
a {
    color:var(--bs-link-color);
    text-decoration:var(--bs-link-decoration);
}
a:hover {
    color:var(--bs-link-hover-color);
}
.fw-semibold {
    font-weight:600 !important;
}
.fw-bold {
    font-weight:700 !important;
}
.fs-3 {
    font-size:1.75rem !important;
}
.text-center {
    text-align:center !important;
}
.text-dark {
    color:var(--bs-dark) !important;
}
.text-secondary {
    color:var(--bs-secondary) !important;
}
.text-primary {
    color:var(--bs-primary) !important;
}
.text-danger {
    color:var(--bs-danger) !important;
}
.text-muted {
    color:var(--bs-secondary) !important;
}
.text-decoration-none {
    text-decoration:none !important;
}
.small {
    font-size:.875em !important;
}
.container {
    width:100%;
    padding-right:calc(var(--bs-gutter-x) * .5);
    padding-left:calc(var(--bs-gutter-x) * .5);
    margin-right:auto;
    margin-left:auto;
}
@media (min-width:576px) {
    .container {
        max-width:540px;
    }
}@media (min-width:768px) {
    .container {
        max-width:720px;
    }
}@media (min-width:992px) {
    .container {
        max-width:960px;
    }
}@media (min-width:1200px) {
    .container {
        max-width:1140px;
    }
}.row {
     display:flex;
     flex-wrap:wrap;
     margin-top:calc(-1 * var(--bs-gutter-y));
     margin-right:calc(-.5 * var(--bs-gutter-x));
     margin-left:calc(-.5 * var(--bs-gutter-x));
 }
.row > * {
    flex-shrink:0;
    width:100%;
    max-width:100%;
    padding-right:calc(var(--bs-gutter-x) * .5);
    padding-left:calc(var(--bs-gutter-x) * .5);
    margin-top:var(--bs-gutter-y);
}
.g-4 {
    --bs-gutter-x:1.5rem;
    --bs-gutter-y:1.5rem;
}
.col-12 {
    flex:0 0 auto;
    width:100%;
}
@media (min-width:768px) {
    .col-md-6 {
        flex:0 0 auto;
        width:50%;
    }
}@media (min-width:992px) {
    .col-lg-4 {
        flex:0 0 auto;
        width:33.33333333%;
    }
}@media (min-width:1200px) {
    .col-xl-3 {
        flex:0 0 auto;
        width:25%;
    }
}.card {
     position:relative;
     display:flex;
     flex-direction:column;
     min-width:0;
     word-wrap:break-word;
     background-color:var(--bs-white);
     background-clip:border-box;
     border:var(--bs-border-width) solid var(--bs-border-color);
     border-radius:var(--bs-border-radius);
 }
.card-body {
    flex:1 1 auto;
    padding:var(--bs-spacer);
}
.card-title {
    margin-bottom:calc(var(--bs-spacer) * 0.5);
}
.btn {
    display:inline-block;
    font-weight:400;
    line-height:var(--bs-body-line-height);
    color:var(--bs-body-color);
    text-align:center;
    text-decoration:none;
    vertical-align:middle;
    cursor:pointer;
    user-select:none;
    background-color:transparent;
    border:var(--bs-border-width) solid transparent;
    padding:.375rem .75rem;
    font-size:var(--bs-body-font-size);
    border-radius:var(--bs-border-radius);
    transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.btn:hover {
    color:var(--bs-body-color);
}
.btn-link {
    font-weight:400;
    color:var(--bs-link-color);
    text-decoration:var(--bs-link-decoration);
}
.btn-link:hover {
    color:var(--bs-link-hover-color);
}
.py-5 {
    padding-top:calc(var(--bs-spacer) * 3) !important;
    padding-bottom:calc(var(--bs-spacer) * 3) !important;
}
.py-3 {
    padding-top:var(--bs-spacer) !important;
    padding-bottom:var(--bs-spacer) !important;
}
.mb-4 {
    margin-bottom:calc(var(--bs-spacer) * 1.5) !important;
}
.px-2 {
    padding-left:calc(var(--bs-spacer) * 0.5) !important;
    padding-right:calc(var(--bs-spacer) * 0.5) !important;
}
.bg-light {
    background-color:var(--bs-light) !important;
}
.bg-white {
    background-color:var(--bs-white) !important;
}
.border-0 {
    border:0 !important;
}
.shadow-sm {
    box-shadow:0 .125rem .25rem rgba(0,0,0,.075) !important;
}
.h-100 {
    height:100% !important;
}