html {
    font-size: 14px;
    position: relative;
    min-height: 100%;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #1ab394;
}

/*Landing page fade in*/
.fade-in {
    animation: fadeIn 0.8s ease-in-out;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/*custom margin / padding classes*/
.m-n {
    margin: 0 !important;
}

.m-l-n {
    margin-left: 0 !important;
}

.m-r-n {
    margin-right: 0 !important;
}

.m-t-n {
    margin-top: 0 !important;
}

.m-b-n {
    margin-bottom: 0 !important;
}
/*margin xxsm*/
.m-xxsm {
    margin: 3px !important;
}

.m-l-xxsm {
    margin-left: 3px !important;
}

.m-r-xxsm {
    margin-right: 3px !important;
}

.m-t-xxsm {
    margin-top: 3px !important;
}

.m-b-xxsm {
    margin-bottom: 3px !important;
}
/*margin xsm*/
.m-xsm {
    margin: 5px !important;
}

.m-l-xsm {
    margin-left: 5px !important;
}

.m-r-xsm {
    margin-right: 5px !important;
}

.m-t-xsm {
    margin-top: 5px !important;
}

.m-b-xsm {
    margin-bottom: 5px !important;
}
/*margin sm*/
.m-sm {
    margin: 10px !important;
}

.m-l-sm {
    margin-left: 10px !important;
}

.m-r-sm {
    margin-right: 10px !important;
}

.m-t-sm {
    margin-top: 10px !important;
}

.m-b-sm {
    margin-bottom: 10px !important;
}
/*margin norm*/
.m {
    margin: 15px !important;
}

.m-l {
    margin-left: 15px !important;
}

.m-r {
    margin-right: 15px !important;
}

.m-t {
    margin-top: 15px !important;
}

.m-b {
    margin-bottom: 15px !important;
}
/*margin md*/
.m-md {
    margin: 20px !important;
}

.m-l-md {
    margin-left: 20px !important;
}

.m-r-md {
    margin-right: 20px !important;
}

.m-t-md {
    margin-top: 20px !important;
}

.m-b-md {
    margin-bottom: 20px !important;
}
/*margin lg*/
.m-lg {
    margin: 25px !important;
}

.m-l-lg {
    margin-left: 25px !important;
}

.m-r-lg {
    margin-right: 25px !important;
}

.m-t-lg {
    margin-top: 25px !important;
}

.m-b-lg {
    margin-bottom: 25px !important;
}
/*margin xlg*/
.m-xlg {
    margin: 30px !important;
}

.m-l-xlg {
    margin-left: 30px !important;
}

.m-r-xlg {
    margin-right: 30px !important;
}

.m-t-xlg {
    margin-top: 30px !important;
}

.m-b-xlg {
    margin-bottom: 30px !important;
}
/*margin xxlg*/
.m-xxlg {
    margin: 45px !important;
}

.m-l-xxlg {
    margin-left: 45px !important;
}

.m-r-xxlg {
    margin-right: 45px !important;
}

.m-t-xxlg {
    margin-top: 45px !important;
}

.m-b-xxlg {
    margin-bottom: 45px !important;
}
/*padding none*/
.p-n {
    padding: 0 !important;
}

.p-l-n {
    padding-left: 0 !important;
}

.p-r-n {
    padding-right: 0 !important;
}

.p-t-n {
    padding-top: 0 !important;
}

.p-b-n {
    padding-bottom: 0 !important;
}
/*padding xxsm*/
.p-xxsm {
    padding: 3px !important;
}

.p-l-xxsm {
    padding-left: 3px !important;
}

.p-r-xxsm {
    padding-right: 3px !important;
}

.p-t-xxsm {
    padding-top: 3px !important;
}

.p-b-xxsm {
    padding-bottom: 3px !important;
}
/*padding xsm*/
.p-xsm {
    padding: 5px !important;
}

.p-l-xsm {
    padding-left: 5px !important;
}

.p-r-xsm {
    padding-right: 5px !important;
}

.p-t-xsm {
    padding-top: 5px !important;
}

.p-b-xsm {
    padding-bottom: 5px !important;
}
/*padding sm*/
.p-sm {
    padding: 10px !important;
}

.p-l-sm {
    padding-left: 10px !important;
}

.p-r-sm {
    padding-right: 10px !important;
}

.p-t-sm {
    padding-top: 10px !important;
}

.p-b-sm {
    padding-bottom: 10px !important;
}
/*padding norm*/
.p {
    padding: 15px !important;
}

.p-l {
    padding-left: 15px !important;
}

.p-r {
    padding-right: 15px !important;
}

.p-t {
    padding-top: 15px !important;
}

.p-b {
    padding-bottom: 15px !important;
}
/*padding md*/
.p-md {
    padding: 20px !important;
}

.p-l-md {
    padding-left: 20px !important;
}

.p-r-md {
    padding-right: 20px !important;
}

.p-t-md {
    padding-top: 20px !important;
}

.p-b-md {
    padding-bottom: 20px !important;
}
/*padding lg*/
.p-lg {
    padding: 25px !important;
}

.p-l-lg {
    padding-left: 25px !important;
}

.p-r-lg {
    padding-right: 25px !important;
}

.p-t-lg {
    padding-top: 25px !important;
}

.p-b-lg {
    padding-bottom: 25px !important;
}
/*padding xlg*/
.p-xlg {
    padding: 30px !important;
}

.p-l-xlg {
    padding-left: 30px !important;
}

.p-r-xlg {
    padding-right: 30px !important;
}

.p-t-xlg {
    padding-top: 30px !important;
}

.p-b-xlg {
    padding-bottom: 30px !important;
}
/*padding xxlg*/
.p-xxlg {
    padding: 45px !important;
}

.p-l-xxlg {
    padding-left: 45px !important;
}

.p-r-xxlg {
    padding-right: 45px !important;
}

.p-t-xxlg {
    padding-top: 45px !important;
}

.p-b-xxlg {
    padding-bottom: 45px !important;
}

.force-full-width {
    min-width: 100% !important;
    max-width: 100% !important;
}

/*LogicMelon element styling*/
.btn {
    border-radius: 8px;
    font-weight: 500;
    transition: all 0.2s ease;
    border: none;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
}

.btn-primary {
    background-color: #1ab394 !important;
    border-color: #1ab394 !important;
    color: white !important;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open .dropdown-toggle.btn-primary {
    background-color: #18a689 !important;
    border-color: #18a689 !important;
    outline-style: none !important;
    background-position: 0 -15px !important;
    color: white !important;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open .dropdown-toggle.btn-primary, 
    .form-select:focus, .form-control:focus  {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #18a689 !important;
    border-color: #18a689 !important;
}

.btn-outline-secondary {
    background: transparent;
    border: 1px solid #e2e8f0;
    color: rgba(255,255,255,0.7);
    border-color: rgba(255,255,255,0.3);
}

.btn-outline-secondary:hover {
    background: rgba(255,255,255,0.1);
    color: #fff;
    border-color: rgba(255,255,255,0.5);
}

.btn-outline-secondary:focus {
    box-shadow: 0 0 0 .25rem rgba(108, 117, 125, .5)!important
}

.btn-sm {
    padding: 6px 12px;
    font-size: 13px;
}


