:root {
    --grey1: #adadad;
    --grey2: rgb(0 0 0 / 40%);
    --primary-dark:  color-mix(in srgb, rgb(var(--primary)) 70%, black);
    --primary-light: color-mix(in srgb, rgb(var(--primary)) 70%, white);
    --accent:        rgb(var(--secondary));
    --text-dark:     #0f172a;
    --text-mid:      #374151;
    --text-muted:    #64748b;
    --bg-page:       #f1f5f9;
    --bg-card:       #ffffff;
    --border:        #e2e8f0;
    --shadow-card:   0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.05);
    --shadow-hover:  0 16px 40px -8px rgba(0,0,0,.18);
    --radius-card:   16px;
}

a {
    color: rgba(var(--primary), 100%);
}

a:hover {
    color: #000000;
}

a:hover {
    text-decoration: none;
}

img {
    max-width: 100%;
    height: auto;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 10px;
    margin-bottom: 10px;
}
a.btn.btn-lg.btn-primary {
    font-size: 1.1em;
}
.btn-primary {
    color: #fff;
    background-color: rgb(var(--primary));
    border-color: rgb(var(--primary));
}
.btn-primary:hover {
    color: #fff;
    background-color: rgb(var(--secondary));
    border-color: rgb(var(--secondary));
}
.btn-outline-primary {
    color: rgba(var(--secondary), 100%);
    background-color: transparent;
    background-image: none;
    border-color: rgba(var(--secondary), 100%);
}
.btn-outline-primary:hover {
    color: #fff;
    background-color: rgba(var(--secondary), 75%);
    border-color: rgba(var(--secondary), 75%);
}
.btn-link {
    color: rgba(var(--secondary), 100%);
    background-color: transparent;
}
.btn-link:hover {
    color: rgba(var(--secondary), 75%);
    text-decoration: underline;
    background-color: transparent;
    border-color: transparent;
}


div#navbarNav .btn-outline-primary {
    color: var(--grey2);
    background-color: transparent;
    background-image: none;
    border-color: var(--grey2);
}
div#navbarNav .btn-outline-primary:hover {
    color: #fff;
    background-color: rgba(var(--primary), 100%);
    border-color: rgba(var(--primary), 100%);
}
div#navbarNav .btn-link {
    color: var(--grey2);
    background-color: transparent;
}
div#navbarNav .btn-link:hover {
    color: rgba(var(--primary), 100%);
    text-decoration: underline;
    background-color: transparent;
    border-color: transparent;
}


.nav-btns.cta-buttonsX a {
    font-size: .95em;
}

html, body {
    height: 100%;
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 16px;
    color: var(--text-dark);
    line-height: 1.6;
}

header#header {
    box-shadow: 1px 1px 15px 0px rgb(204 204 204 / 87%);
}

/* ─── START NAVBAR ─── */
.public-site-nav {
    background: #fff;
    border-bottom: 1px solid var(--border);
    position: sticky;
    top: 0;
    z-index: 900;
    box-shadow: 0 1px 4px rgba(0,0,0,.06);
}
.public-site-nav .inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .875rem 1.5rem;
    max-width: 1280px;
    margin: auto;
}
.public-brand {
    display: flex;
    align-items: center;
    gap: .75rem;
    color: var(--text-dark);
}
.public-brand-icon {
    background: linear-gradient(135deg, rgb(var(--primary)) 0%, var(--primary-light) 100%);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 800;
    font-size: .85rem;
    letter-spacing: -.5px;
    flex-shrink: 0;
}
.public-brand-icon--logo {
    width: auto;
    max-width: 120px;
    background: none;
    padding: 0;
    overflow: hidden;
}
.public-brand-icon--logo img {
    height: 60px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    border-radius: 10px;
    display: block;
}
.public-brand-text strong {
    display: block;
    color: rgb(var(--primary));
    font-size: .95rem;
    font-weight: 700;
    line-height: 1.2;
}
.public-brand-text span {
    font-size: .68rem;
    color: var(--text-muted);
    font-weight: 400;
}
.public-site-nav .nav-actions {
    display: flex;
    align-items: center;
    gap: .625rem;
}
.btn-nav {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .45rem 1.1rem;
    border-radius: 5px;
    font-size: .83rem;
    font-weight: 600;
    border: 1.5px solid transparent;
    cursor: pointer;
    transition: background .18s, color .18s, border-color .18s;
    white-space: nowrap;
}
a.btn-nav {
    text-decoration: none;
}
.btn-nav-outline {
    color: rgb(var(--primary));
    background: transparent;
}
.btn-nav-outline:hover { background: rgba(var(--primary), 5%); color: rgb(var(--primary)); }
.btn-nav-solid {
    background: rgb(var(--primary));
    color: #fff;
    border-color: rgb(var(--primary));
}
.btn-nav-solid:hover { background: rgb(var(--secondary)); border-color: rgb(var(--secondary)); color: #fff; }
.btn-nav-ghost {
    color: var(--text-muted);
    border-color: var(--border);
    background: #fff;
}
.btn-nav-ghost:hover { color: var(--text-dark); border-color: #94a3b8; }
.user-pill {
    display: flex;
    align-items: center;
    gap: .5rem;
}
.user-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgb(var(--primary));
    color: #fff;
    font-size: .72rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.user-name {
    font-size: .83rem;
    font-weight: 500;
    color: var(--text-mid);
}
/* ─── END NAVBAR ─── */

/* ─── START HERO ─── */
.site-page-hero {
    background: linear-gradient(140deg, var(--primary-dark) 0%, rgb(var(--primary)) 60%, rgb(var(--secondary)) 100%);
    padding: 4.5rem 1.5rem 5.5rem;
    position: relative;
    overflow: hidden;
}
.site-page-hero::before, .site-page-hero::after {
    content: '';
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}
.site-page-hero::before {
    width: 700px; height: 700px;
    top: -40%; right: -8%;
    background: rgba(255,255,255,.035);
}
.site-page-hero::after {
    width: 450px; height: 450px;
    bottom: -50%; left: -5%;
    background: rgba(255,255,255,.025);
}
.site-page-hero .hero-inner {
    max-width: 1280px;
    margin: auto;
    position: relative;
    z-index: 1;
}
.site-page-hero .hero-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.18);
    backdrop-filter: blur(8px);
    color: rgba(255,255,255,.92);
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: .07em;
    text-transform: uppercase;
    padding: .35rem .9rem;
    border-radius: 100px;
    margin-bottom: 1.25rem;
}
.site-page-hero h1 {
    font-size: clamp(1.85rem, 4vw, 2.75rem);
    font-weight: 900;
    color: #fff;
    line-height: 1.15;
    margin-bottom: .875rem;
}
.site-page-hero p {
    font-size: 1rem;
    color: rgba(255,255,255,.78);
    max-width: 520px;
    line-height: 1.75;
    margin-bottom: 2rem;
}
/* ─── END HERO ─── */

/* ─── START SEARCH ─── */
.site-items-search-wrap {
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: 12px;
    padding: .375rem .375rem .375rem .875rem;
    max-width: 500px;
    box-shadow: 0 8px 32px rgba(0,0,0,.2);
    gap: .5rem;
}
.site-items-search-wrap i { color: var(--text-muted); font-size: .9rem; flex-shrink: 0; }
.site-items-search-wrap input {
    flex: 1;
    border: none;
    outline: none;
    font-size: .9rem;
    font-family: inherit;
    color: var(--text-dark);
    background: transparent;
}
.site-items-search-wrap input::placeholder { color: #94a3b8; }
.site-items-search-wrap .btn-search {
    background: rgb(var(--primary));
    color: #fff;
    border: none;
    border-radius: 5px;
    padding: .55rem 1.25rem;
    font-size: .83rem;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
    white-space: nowrap;
    transition: background .18s;
}
.site-items-search-wrap .btn-search:hover { background: rgb(var(--secondary)); }
/* ─── END SEARCH ─── */

/* ─── START FILTER BAR ─── */
.site-items-filter-bar {
    background: #fff;
    border-bottom: 1px solid var(--border);
}
.site-items-filter-bar .inner {
    max-width: 1280px;
    margin: auto;
    padding: .75rem 1.5rem;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1.25rem;
}
.site-items-filter-bar .stat-chip {
    display: flex;
    align-items: center;
    gap: .35rem;
    font-size: .82rem;
}
.site-items-filter-bar .stat-chip strong { font-weight: 700; color: var(--text-dark); }
.site-items-filter-bar .stat-chip span { color: var(--text-muted); }
.site-items-filter-bar .clear-chip {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    font-size: .78rem;
    font-weight: 500;
    color: var(--text-muted);
    background: rgba(var(--primary), 5%);
    border: 1px solid rgba(var(--primary), 40%);
    border-radius: 100px;
    padding: .25rem .75rem;
    transition: color .18s, border-color .18s;
}
.clear-chip:hover { color: rgba(var(--primary), 80%); border-color: rgba(var(--primary), 80%); }
/* ─── END FILTER BAR ─── */

/* ─── START MAIN CONTENT ─── */
.site-page-grid-container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 2.5rem 1.5rem 4rem;
}
.site-page-grid-container .grid-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.5rem;
}
.site-page-grid-container .grid-title {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-mid);
}
/* ─── END MAIN CONTENT ─── */

/* ─── START SITE PAGE ITEM CARDS ─── */
.site-page-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem;
}
@media (max-width: 1024px) { .site-page-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 768px)  { .site-page-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px)  { .site-page-grid { grid-template-columns: 1fr; } }

.site-page-grid .item-card {
    background: var(--bg-card);
    border-radius: var(--radius-card);
    border: 1px solid var(--border);
    box-shadow: var(--shadow-card);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    transition: transform .25s cubic-bezier(.4,0,.2,1), box-shadow .25s cubic-bezier(.4,0,.2,1), border-color .25s;
}
.site-page-grid .item-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-hover);
    border-color: rgba(29,78,216,.15);
}
.card-accent {
    height: 5px;
    flex-shrink: 0;
}
.card-body {
    padding: 1.375rem;
    display: flex;
    flex-direction: column;
    flex: 1;
}
.logo-ring {
    width: 60px;
    height: 60px;
    border-radius: 14px;
    border: 1.5px solid var(--border);
    background: rgba(var(--primary), 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    margin-bottom: 1rem;
    flex-shrink: 0;
}
.logo-ring img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.logo-fallback {
    font-size: 3.5rem;
    font-weight: 800;
    line-height: 1;
}
.site-page-grid .item-name {
    font-size: .97rem;
    font-weight: 700;
    color: var(--text-dark);
    margin-bottom: .3rem;
    line-height: 1.3;
}
.site-page-grid .item-caption {
    display: flex;
    align-items: center;
    gap: .3rem;
    font-size: .75rem;
    color: var(--text-muted);
    margin-bottom: .65rem;
}
.site-page-grid .item-caption i { font-size: .65rem; }
.site-page-grid .item-description {
    font-size: .8rem;
    color: var(--text-muted);
    line-height: 1.55;
    flex: 1;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 1.25rem;
}
.site-page-grid .item-card {
    --card-rgb:     rgb(var(--primary));
    --card-sec-rgb: rgb(var(--secondary));
}
a.btn-visit {
    text-decoration: none;
}
.btn-visit {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    padding: .6rem;
    border-radius: 5px;
    font-size: .8rem;
    font-weight: 600;
    color: rgb(var(--card-rgb));
    background: rgba(var(--card-rgb), .07);
    border: 1.5px solid rgba(var(--card-rgb), .22);
    transition: background .18s, color .18s, border-color .18s;
    cursor: pointer;
    font-family: inherit;
}
.btn-visit:hover {
    background: rgb(var(--card-rgb));
    color: #fff;
    border-color: rgb(var(--card-rgb));
}
.btn-visit-disabled {
    color: #94a3b8;
    background: var(--bg-page);
    border-color: var(--border);
    cursor: not-allowed;
    font-size: .8rem;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .6rem;
    border-radius: 5px;
    border: 1.5px solid var(--border);
}
/* ─── END SITE PAGE ITEM CARDS ─── */

/* ─── START EMPTY STATE ─── */
.site-page-grid .empty-state {
    grid-column: 1 / -1;
    text-align: center;
    padding: 5rem 1rem;
}
.site-page-grid .empty-icon {
    width: 80px;
    height: 80px;
    background: rgba(var(--primary), .07);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.25rem;
    font-size: 2rem;
    color: rgba(var(--primary), .45);
}
.site-page-grid .empty-state h3 {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--text-mid);
    margin-bottom: .5rem;
}
.site-page-grid .empty-state p {
    font-size: .875rem;
    color: var(--text-muted);
}
.site-page-grid .empty-state a { color: rgb(var(--primary)); }
/* ─── END EMPTY STATE ─── */

/* ─── START PAGINATION ─── */
.site-items-pagination-row {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: .375rem;
    margin-top: 3rem;
    flex-wrap: wrap;
}
.site-items-pagination-row .pg-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 .5rem;
    border-radius: 5px;
    font-size: .82rem;
    font-weight: 500;
    border: 1.5px solid var(--border);
    background: #fff;
    color: var(--text-mid);
    transition: background .18s, border-color .18s, color .18s;
    cursor: pointer;
}
.site-items-pagination-row .pg-btn:hover:not(.pg-active):not(.pg-disabled) {
    background: rgb(var(--primary));
    border-color: rgb(var(--primary));
    color: #fff;
}
.site-items-pagination-row .pg-active {
    background: rgb(var(--primary));
    border-color: rgb(var(--primary));
    color: #fff;
    font-weight: 700;
}
.site-items-pagination-row .pg-disabled { opacity: .38; cursor: not-allowed; pointer-events: none; }
.site-items-pagination-row .pg-ellipsis {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    font-size: .82rem;
    color: var(--text-muted);
}
/* ─── END PAGINATION ─── */

div#main-container {
    padding-top: 80px;
    padding-bottom: 0px;
    min-height: 80vh;
}

body.admin-bar .fixed-top {
    top: 29px;
}

.jumbotron {
    border-radius: 0px;
}

li#search-2 input#s {
    max-width: 180px;
}

p.comment-form-comment {
    display: grid;
}

p.form-submit input#submit {
    color: #fff;
    background-color: #007bff;
    border-color: #007bff;
    border: 0px;
    min-height: 40px;
    padding-left: 20px;
    padding-right: 20px;
}

/* ONE STOP LOOK */
/* HEADER */
:root {
    --highlight-color: #200cf5;
    --alt-highlight-color: #ffd956;
    --sec-highlight-color: #7700ae;
}

.full-width {
    width: 100%;
}
.container {
    max-width: 1330px;
    padding: 0 1em;
}
.first_home_section {
    /* background: #fcfcff; */
    padding-bottom: 2em;
    padding-top: 2em;
    /* border-bottom: 1px solid rgb(32 12 245 / 8%); */
    background: linear-gradient(180deg, rgb(247 247 255) 0%, rgba(255,255,255,1) 100%);
}

.main_navbar {
    background: #fff;
}

/* NAV LINE EFFECT */
a.nav-link {
    position: relative;
    font-size: larger;
}

a.nav-link::after {
    background-color: #7700ae;
    content: "";
    width: 0;
    height: 3px;
    left: 1rem;
    bottom: 0;
    transition: width 0.35s ease 0s;
    position: absolute;
}

a.nav-link:hover::after {
    width: 50px;
}

/* NAV COLOR CHANGES */
.navbar-light .navbar-nav .active>.nav-link {
    position: relative;
    color: #200cf5;
}

.navbar-light .navbar-nav .nav-link:hover {
    color: #7700ae;
}

.navbar-light .navbar-nav .active>.nav-link::after {
    position: absolute;
    background-color: rgba(var(--primary), 100%);
    content: "";
    width: 50px;
    height: 3px;
    left: .6rem;
    bottom: 0;
}

*:focus {
    outline: 0 !important;
}

.nav-btns.cta-buttons {
    width: 400px;
    display: flex;
    justify-content: space-evenly;
}
div#navbarNav .nav-btns.cta-buttons {
    padding-top: .5em;
}
.nav-btns.cta-buttons>a {
    padding: 2px 15px !important;
    /*font-size: large;*/
    font-size: 1.1em;
}
.cta-buttons a:first-child {
    background-color: white;
    border-radius: 20px;
    border: 1px solid rgb(155 0 178 / 15%);
    padding: 5px 15px;
    color: rgb(155 0 178 / 75%);
    margin-bottom: 10px;
}

.cta-buttons a:first-child:hover {
    background: #af00a7;
    border: 1px solid #af00a7;
    color: white;
}

.cta-buttons a:last-child {
    background-color: var(--highlight-color);
    border-radius: 20px;
    border: 1px solid var(--highlight-color);
    padding: 5px 15px;
    color: white;
    margin-bottom: 10px;
}

.cta-buttons a:last-child:hover {
    background: #7700ae;
    border: 1px solid #7700ae;
    color: white;
}

.bxA p {
    font-size: 1.4em;
    color: #200cf5;
    padding: 3em 2em;
}
.bxA {
    border: 1px solid rgba(var(--primary), 100%);
    min-height: 220px;
}

.row.intro {
    padding-top: 0vh;
    min-height: 70vh;
}

.intro h1 {
    font-weight: 700;
    font-size: 3.1em;
    background: -webkit-linear-gradient(45deg, #c09, #00f);
    background-size: 100%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-color: black;
    margin-bottom: .4em;
}

.intro p {
    font-size: 1.1rem;
    color: #676767;
}

span.typed-text {
    color: var(--highlight-color);
}

span.cursor {
    display: inline-block;
    background-color: #ccc;
    margin-left: 0.1rem;
    width: 3px;
    animation: blink 1s infinite;
}

span.cursor.typing {
    animation: none;
}

@keyframes blink {
    0% {
        background-color: #ccc;
    }

    49% {
        background-color: #ccc;
    }

    50% {
        background-color: transparent;
    }

    99% {
        background-color: transparent;
    }

    100% {
        background-color: #ccc;
    }
}

.main-desc {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-evenly;
    margin-top: 30px;
    max-width: 500px;
}

.main-desc.cta-buttons>a {
    padding: 8px 20px;
    font-size: x-large;
    border-radius: 40px;
}

.tooltip-inner {
    background-color: var(--alt-highlight-color);
    color: #000;
}

.tooltip.bs-tooltip-right .arrow:before {
    border-right-color: var(--alt-highlight-color) !important;
}

.tooltip.bs-tooltip-left .arrow:before {
    border-left-color: var(--alt-highlight-color) !important;
}

.tooltip.bs-tooltip-bottom .arrow:before {
    border-bottom-color: var(--alt-highlight-color) !important;
}

.tooltip.bs-tooltip-top .arrow:before {
    border-top-color: var(--alt-highlight-color) !important;
}

img.doc-illustration {
    display: block;
    margin: 0 auto;
}

.onestop-types {
    width: 100%;
    display: flex;
    margin-top: 60px;
}

.onestop-types a {
    font-size: 2rem;
    width: 100%;
    text-align: center;
    padding: 20px;
    color: var(--highlight-color) !important;
}

.onestop-types>a:not(.tab-white):hover {
    box-shadow: 3px -4px 15px 1px rgb(0 0 0 / 8%);
}

.tab-white {
    border: none;
    font-weight: 600;
    box-shadow: -5px -5px 6px 0px rgb(0 0 0 / 8%);
}

.tab-details {
    margin-bottom: 4rem;
    border: none;
    padding: 15px;
    box-shadow: -9px 12px 8px -4px rgb(0 0 0 / 8%);
}

.finya_juu_kidogo {
    padding-top: 5em;
}
.finya_juu_kidogo_2 {
    padding-top: 9em;
}

.pros img {
    display: block;
    margin: 10px auto 0;
    width: 40px;
    max-width: 100%;
}

.pros p {
    text-align: center;
}

.pros p:first-of-type {
    margin-top: 1rem;
}

.features {
    padding: 1rem 2rem;
}

.features .row {
    margin-top: 3rem;
    padding-bottom: 6em;
}

.clients {
    margin: 4em 6em;
}

.feature-rows>div:nth-child(even) {
    flex-direction: row-reverse;
}

.features h1,
.features h2 {
    color: var(--highlight-color);
    padding-top: 1.5rem;
    font-weight: 300;
    font-size: 1.7em;
}

.features h2 {
    padding-top: 2em;
}

.features p {
    margin-top: 1rem;
}

.features h3 {
    padding-top: 2rem;
}

.single_feature {
    box-shadow: 0px 0px 30px 0px rgb(0 0 0 / 11%);
}

h1.features_heading {
    font-size: 2.2em;
    font-weight: 600;
    background: -webkit-linear-gradient(115deg, #c09, #00f);
    background-size: 100%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-color: black;
}

.to-talk {
    padding: 0 1em;
    margin-top: 0rem;
    height: 300px;
    background: url(../assets/img/overlay.png) blueviolet;
    background-size: cover;
    background-position-x: 40%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: 15px;
}

.to-talk h2 {
    color: #fff;
    font-weight: 500;
    padding-bottom: 20px;
    font-size: 2em;
    font-weight: 600;
}

.to-talk .cta-buttons a:first-child {
    background-color: transparent;
    border: 1px solid #ffffff;
    padding: 5px 15px;
    color: #ffffff;
}

.to-talk .cta-buttons a:first-child:hover {
    color: var(--highlight-color);
    background-color: #fff;
}

.to-talk .cta-buttons a:last-child:hover {
    color: #fff;
    background-color: var(--sec-highlight-color);
    border: 2px solid var(--sec-highlight-color);
}

.clients h3 {
    padding-bottom: 2rem;
    font-size: 1.3em;
}

.clients h3 {
    padding-bottom: 2rem;
}

.clients img {
    margin: .8em;
    height: 60px;
    object-fit: contain;
}

.grey-logo {
    margin-bottom: 20px;
}

.social-media-icons {
    display: flex;
    flex-flow: row nowrap;
    color: white;
    justify-content: space-around;
}

.message-icon {
    height: 65px;
}

.social-media-icons a {
    padding: 7px 4px 4px 10px;
    border-radius: 1000px;
    display: block;
    width: 40px;
    height: 40px;
}

.social-media-icons a:hover {
    background: rgb(0 0 0 / 20%);
}

.navbar-light .navbar-nav .nav-link {
    color: rgb(103 103 103 / 50%);
}

ul#menu-main-menu {
    padding-left: 2em;
    font-size: .96em;
    /*width: 100%;*/
}

ul#menu-main-menu li a {
    padding: 1.8rem .9rem;
}
ul#menu-main-menu li a.dropdown-item,
.nav_user .dropdown-item {
    padding: .6rem .9rem;
}
nav#main_navbar .dropdown-menu {
    border: 0px;
    margin-top: 0px;
    border-radius: 0px 0px 5px 5px;
    box-shadow: 0px 10px 15px rgb(134 0 159 / 5%);
    padding: 0px;
}
nav#main_navbar .dropdown-menu-right {
    right: 0;
    left: auto;
}
nav#main_navbar .dropdown-toggle::after {
    background-color: transparent !important;
    /* height: 0px !important; */
    /* left: 0px !important; */
    border: 0px;
}

nav#main_navbar .dropdown-item.active, 
nav#main_navbar .dropdown-item:active {
    color: #9700b4;
    text-decoration: none;
    background-color: transparent;
}

.nav_user_icon.user_icon_with_img {
    padding: 0px;
}
.user_icon_with_img_in {
    margin: 5px 12px 0px 0px;
    padding: 0px;
    overflow: hidden;
    object-fit: cover;
}
.other_auth_links a:nth-child(2) {
    float: right;
}
.terms_auth {
    font-size: 13px;
    color: #a0a0a0;
}

.login-container {
    /* margin-top: 5%; */
    /* border: 0px solid #CCD1D1; */
    /* border-radius: 12px; */
    /* box-shadow: 0 0px 28px 0 rgb(0 0 0 / 8%); */
    /* max-width: 70%; */
    /* background: #FFF; */
    z-index: 1;
    position: relative;
    overflow: hidden;
    /* min-height: 80vh; */
    margin: 30px auto;
}
.login-container > .row {
    padding-top: 1em;
    padding-bottom: 1em;
}

.login-container img.triangleA,
.login-container img.triangleB {
    display: none !important;
}
img.triangleB {
    display: none !important;
}

#fl {
  font-weight: 600;
}

#sl {
  font-weight: 100 !important;
}

.profile-img {
  text-align: center;
}

.profile-img img {
  border-radius: 50%;
  /* animation: mymove 2s infinite; */
}

@keyframes mymove {
  from {border: 1px solid #F2F3F4;}
  to {border: 8px solid #F2F3F4;}
}

.login-form {
    padding: 0.2em 1em;
    /* background: #fbfbfb; */
    border-radius: 12px;
    align-items: center;
    display: flex;
    justify-content: center;
    box-shadow: 0 0px 28px 0 rgb(0 0 0 / 8%);
    background: #FFF;
}

.other_auth_links a {
    color: #b7b7b7;
}
.other_auth_links a:hover {
    color: #000000;
}

.google_signup {
    margin-top: .8em;
}
.google_signup a {
    border: 1px solid #DB4437;
    color: #DB4437;
    display: block;
    text-align: center;
    padding: 9px 4px;
    border-radius: 5px;
}
.google_signup a:hover {
    background: #d81505;
    color: #FFF;
    border: 1px solid #d81505;
}

.login_form_in.signup_form {
    padding: 2em 1em;
}
.gj-datepicker-bootstrap [role=right-icon] button {
    width: 38px;
    position: relative;
    border: 0px solid #ced4da !important;
    background: #efebeb;
}
.gj-datepicker-bootstrap [role=right-icon] button:hover {
    color: #6c757d !important;
    background-color: #d8d8d8 !important;
}
    
.login-form h1 {
    font-size: 1.4em;
    margin: 0 auto;
    color: #3a3a3a;
    line-height: 1.5em;
    padding: 0em 0 .8em;
    font-weight: 400;
}

.login_form_in {
    padding: 4em 1em;
    width: 100%;
}
.auth_welcome {
    font-weight: 100;
    font-size: 2.0em;
    /* background: -webkit-linear-gradient( 45deg, #c09, #00f); */
    /* background-size: 100%; */
    /* -webkit-background-clip: text; */
    /* -webkit-text-fill-color: transparent; */
    /* background-color: black; */
    margin-bottom: .4em;
    padding: 4em;
    max-width: 360px;
    color: #FFF !important;
    float: left;
    display: block;
}

/*
.welcome_auth {
    align-items: center;
    display: flex;
    justify-content: center;
    background: rgb(0 0 0 / 3%);
    color: #FFF;
    border-left: 0px;
    background: rgb(93,0,255);
    background: linear-gradient(295deg, rgba(93,0,255,1) 0%, rgba(123,0,177,1) 100%);
}

*/
.welcome_auth {
    background: #7e00b3;
    /* display: flex; */
    align-items: center;
    display: flex;
    /* justify-content: center; */
    background: rgb(93,0,255);
    background: linear-gradient(295deg, rgba(93,0,255,1) 0%, rgba(123,0,177,1) 100%);
}

.auth_welcome {
    font-weight: 100;
    font-size: 2.0em;
    /* background: -webkit-linear-gradient( 45deg, #c09, #00f); */
    /* background-size: 100%; */
    /* -webkit-background-clip: text; */
    /* -webkit-text-fill-color: transparent; */
    /* background-color: black; */
    margin-bottom: .4em;
    padding: 4em;
     max-width: 660px; 
    color: #FFF !important;
    float: left;
    display: block;
}


a.auth_branding_in img {
    max-width: 100%;
    height: auto;
}

a.auth_branding_in {
    width: 120px;
    display: block;
}
body.auth_class {
    background: rgb(123 0 177 / 2%) url(img/patternA.png);
    align-items: center;
    display: flex;
    justify-content: center;
    min-height: 100vh;
}

/* headlines with lines */
.decorated{
     overflow: hidden;
     text-align: center;
}
.decorated > span {
    position: relative;
    display: inline-block;
    color: #969696;
}
.decorated > span:before, .decorated > span:after{
    content: '';
    position: absolute;
    top: 50%;
    border-bottom: 1px solid #CCC;
    width: 591px; /* half of limiter*/
    margin: 0 20px;
}
.decorated > span:before{
    right: 100%;
}
.decorated > span:after{
    left: 100%;
}


.fixed-top {
    padding: 0px;
}

.darkHeader {
    background: #FFF;
}

div#main_navbar.darkHeader {
    border-bottom: 0px solid rgba(var(--primary), 100%);
    box-shadow: 0px 0px 8px 0px rgb(0 0 0 / 9%);
}

h1.entry-title,
h1.entry-title {
    text-align: center;
    padding: 1em 1em 0em;
    font-weight: 900;
    font-size: 5em;
    color: #000;
}

.content_A {
    text-align: center;
    padding: 0em 0em 0em;
}

.content_A h4 {
    font-size: 1.2em;
    max-width: 600px;
    margin: 0 auto;
    color: #969696;
    line-height: 1.5em;
}

.content_A h2 {
    font-weight: 100;
    font-size: 1.8em;
    color: #200cf5;
    padding: 0.2em 0em;
}

.borderA {
    background: #e2b1e7;
    width: 90px;
    height: 4px;
    border-radius: 1000px;
    margin: 3em auto;
}

.banner1 img {
    background-size: cover;
    width: 100%;
    height: auto;
}

.section_2_content {
    padding: 3em 0;
    font-size: 1.2em;
}

.section_2_content h4 {
    font-weight: 700;
    font-size: 1.4em;
    margin-bottom: 1em;
}

.archiv_item_1 {
    background: #fff;
    box-shadow: 0px 0px 22px 0px rgb(0 0 0 / 10%);
    padding: 3em;
}

main#content.archive_wrapper {
    padding-bottom: 4em;
}

.h2,
h2 {
    font-size: 1.5rem;
}

#copyright{
    margin-top: 1em;
}

.bg-light {
    background: #FFF !important;
    box-shadow: 0px 0px 15px rgb(134 0 159 / 5%);
}


.persona_wrapper ul.nav.nav-tabs li {
    display: inline-block;
    text-align: center;
    float: none;
    margin: 0 auto;
    border-bottom: 0px !important;
    margin-bottom: -1px;
}
.persona_wrapper ul.nav.nav-tabs {
    width: 100%;
    text-align: center;
    font-weight: 100;
    font-size: 1.4em;
    display: inline-block;
}
.persona_wrapper .tab-content {
    padding: 3em 2em;
}
.persona_wrapper {
    padding: 4em ​0em 1em;
}
.persona_wrapper .tab-content {
    padding: 3em 2em;
    border: 1px solid rgb(32 12 245 / 6%);
    margin-top: -1px;
    /*background: hsl(245deg 92% 50% / 1%);*/
    background: #FFF;
}
.persona_wrapper .nav-tabs .nav-item.show .nav-link, 
.persona_wrapper .nav-tabs .nav-link.active {
    color: #495057;
    background: #FFF;
    /*background-color: hsl(245deg 92% 50% / 1%);*/
    border-color: rgb(32 12 245 / 6%) rgb(32 12 245 / 6%) #fff;
}
.persona_wrapper ul.nav.nav-tabs li.active {
    box-shadow: 0px -4px 6px -6px #000;
}
.persona_wrapper ul.nav.nav-tabs li a {
    padding: .6em 2em;
}
.row.intro.intro_why {
    min-height: unset;
    padding-bottom: 3em;
}


.card-pricing.popular {
    z-index: 1;
    border: 3px solid #007bff;
}
.card-pricing .list-unstyled li {
    padding: .5rem 0;
    color: #6c757d;
}
.pricing_header .row.intro {
    min-height: unset;
}


div#pricing_tables .card-pricing.popular .bg-primary {
    background: rgb(6 0 5 / 15%) !important;
}
div#pricing_tables .bg-primary {
    background: #FFF !important;
    color: #c09 !important;
    font-size: 1.3em;
}
div#pricing_tables .card-pricing.popular .bg-primary {
    color: #FFF !important;
}
.card.card-pricing.popular a.btn.btn-primary:hover {
    background: #580042;
    color: #FFF;
}

.text-primary {
    color: rgba(var(--primary), 100%) !important;
}
.card-pricing.popular {
    z-index: 1;
    border: 3px solid #cc0099;
    background: #cc0099;
    color: #FFF !important;
}
.card-pricing.popular .text-muted,
.card-pricing.popular span.price,
.card-pricing.popular .list-unstyled li {
    color: #FFF !important;
}
.card.card-pricing.popular a.btn.btn-primary {
    background: #FFF;
    border: #FFF;
    color: #c09;
}



.pricing_desc p {
    margin-bottom: 0px;
}
.pricing_desc {
    background: #f5f5f5;
    padding: .6em .6em;
    margin-top: 1em;
    font-size: .9em;
    border-radius: 8px;
    min-height: 150px;
}
.card-pricing.popular .pricing_desc {
    background: #00000012;
}
div#pricing_tables ul {
    min-height: 180px;
}




.pros_box {
    background: #FFF;
    padding-top: 1em;
    padding-bottom: 1em;
    min-height: 290px;
    margin-bottom: 1em;
    box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 5%);
    border-radius: 8px;
    padding-left: 15px;
    padding-right: 15px;
}

button.nav_user_icon {
    width: 83px;
    height: 83px;
    border-radius: 1000px;
    font-size: 1.4em;
    padding-left: 20px;
    background: transparent;
    border: transparent;
}
img.triangleA {
    position: absolute;
    margin-left: -15px;
    width: 60px;
    border-radius: 12px 0px 0px 0px;
}
img.triangleB {
    position: absolute;
    right: 0px;
    bottom: 0px;
    width: 360px;
    z-index: 0;
}


.public-nav-bar-bg {
    /* background: linear-gradient(295deg, rgb(93, 0, 255) 0%, rgb(123, 0, 177) 100%); */
}


.profile_dashboard {
    /* background: linear-gradient(295deg, rgb(93, 0, 255) 0%, rgb(123, 0, 177) 100%); */
    color: #FFF;
    padding: 10em 0em 2em;
    
}
.primary_navbar, 
.profile_dashboard {
    /* background: rgba(var(--primary), 100%); */
    background-color: rgb(255 255 255 / 0%);
    border-bottom: 2px solid rgb(0 0 0 / 2%) !important;
}
nav#main_navbar.navbar {
    margin-bottom: 0px;
    border-radius: unset;
    min-height: unset;
    padding: 5px 0px;
    background: transparent;
    box-shadow: none;
}

.mobile-headerX {
    justify-content: space-between;
}

h1.profile-title {
    font-size: 1.4em;
    font-weight: 600;
}
a.btn.ml-2 {
    margin-left: 8px !important;
}


body.profile_class ul#menu-main-menu li > a, 
body.profile_class button.nav_user_icon i.lni {
    color: #FFF !important;
}


ul.profile_navbar_list li {
    display: inline-block;
}
ul.profile_navbar_list {
    list-style: none;
    padding-left: 0px;
    /* width: 100%; */
    display: inline-block;
    font-size: 1.1em;
}

ul.profile_navbar_list li a:hover,
ul.profile_navbar_list li.active a {
    background: rgb(0 0 0 / 13%);
}
ul.profile_navbar_list li a {
    color: #FFF;
    background: transparent;
    padding: 1em 1em;
    border-radius: 1000px;
}
.profile_navbar {
    display: flex;
    width: 100%;
    align-items: baseline;
}

.profile_content_wrapper {
    padding-top: 3em;
    padding-bottom: 4em;
    min-height: 70vh;
}

figure.empty-service-icon img {
    max-width: 100px;
    opacity: .2;
}
a.nav-btns-lnk {
    align-items: center;
}
a.nav-btns-lnk svg {
    margin-right: 5px;
}
body.profile_class a.navbar-brand {
    max-width: 120px;
    margin-left: .6em;
}


a.navbar-brand .brand_logo img {
    height: 60px;
    /* background: #FFF; */
    padding: 0px 10px 0px 5px;
    border-right: 2px solid rgb(0 0 0 / 2%);
}
a.navbar-brand .brand_name h5 {
    margin-top: 15px;
    text-transform: uppercase;
    font-weight: 400 !important;
    letter-spacing: 2px;
    font-size: 12px;
    margin-bottom: 0px;
    color: var(--grey1);
    display:none !important;
}
a.navbar-brand h1 {
    margin: 0px;
    /* font-size: 1.2em; */
    font-weight: 300;
    color: rgba(var(--primary), 100%);
    /* line-height: 1.25em; */
    font-size: 24px;
    line-height: 26px; 
    margin-top: 20px;   
}
.mobile-headerX .brand_name {
    padding-left: 10px;
}
a.navbar-brand h1 span {
    font-weight: 300;
}
.navbar-brand-with-logo {
    display: flex;
}
a.navbar-brand .navbar-brand-without-logo {
    padding: 20px 0px;
}
a.navbar-brand .navbar-brand-without-logo h1 {
    margin-top: 0px;
}

.onestop-footer-branding svg {
    max-width: 80px;
}

footer .onestop-footer-branding h5 {
    color: rgba(var(--primary), 65%);
    margin-right: 10px;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 10px;
}

.onestop-footer-branding {
    margin-bottom: 5px;
    width: 210px;
}

.form-group.other_auth_links a {
    padding: 6px 4px;
}
.form-group.other_auth_links {
    margin-bottom: 0px;
}


/* FIX HEADER WITH FORMS */
nav#main_navbar.navbar a.navbar-brand {
    margin-left: 0px;
    float: none;
    height: auto;
    padding: unset;
    font-size: 1.25em;
    line-height: initial;
    flex: auto;
    margin-bottom: 0px;
}
a.navbar-brand .brand_name h5,
a.navbar-brand h1,
div#navbarNav .btn {
    font-family: 'Source Sans Pro', sans-serif !important;
}
div#navbarNav .btn {
    border-radius: 5px;
    box-shadow: none;
    letter-spacing: initial;
    opacity: initial;
    font-size: 16px;
}

.onestop-footer-branding svg {
    max-width: 100px;
}

.onestop-footer-branding {
    margin-bottom: 5px;
    width: 210px;
}

/* ─── FOOTER ─── */
.site-footer {
    background: #fff;
    border-top: 1px solid var(--border);
    padding: 1.5rem;
}
.site-footer .inner {
    max-width: 1280px;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: .875rem;
}
.footer-copy {
    font-size: .78rem;
    color: var(--text-muted);
}
.footer-links {
    display: flex;
    gap: 1.5rem;
}
.footer-links a {
    font-size: .78rem;
    color: var(--text-muted);
    transition: color .18s;
}
.footer-links a:hover { color: rgb(var(--primary)); }

@media (max-width: 600px) {
    .hero { padding: 3rem 1.25rem 4rem; }
    .site-nav .inner { padding: .75rem 1.25rem; }
    .main { padding: 1.75rem 1.25rem 3rem; }
    .user-name { display: none; }
}
/* ---------------------------------------------*/










/* SIDEBAR NAV BEGINNING */
.navbar {
    padding: 15px 10px;
    background: #fff;
    border: none;
    border-radius: 0;
    margin-bottom: 40px;
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1);
}

.navbar-btn {
    box-shadow: none;
    outline: none !important;
    border: none;
}

.line {
    width: 100%;
    height: 1px;
    border-bottom: 1px dashed #ddd;
    margin: 40px 0;
}

/* ---------------------------------------------------
    SIDEBAR STYLE
----------------------------------------------------- */

#sidebar {
    width: 250px;
    position: fixed;
    top: 0;
    left: -250px;
    height: 100vh;
    z-index: 999;
    background: #FFF;
    /* color: #fff; */
    transition: all 0.3s;
    overflow-y: auto;
    box-shadow: none;
    /* box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2); */
}

#sidebar.active {
    left: 0;
}

#dismiss {
    width: 35px;
    height: 35px;
    line-height: 35px;
    text-align: center;
    background: transparent;
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    border: 1px solid rgba(0, 0, 0, 0);
    color: #000;
    /* border-radius: 50%; */
    margin-top: 15px;
}

#dismiss:hover {
    background: #fff;
    /* color: #7386D5; */
}

.overlay {
    display: none;
    position: fixed;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.7);
    z-index: 998;
    opacity: 0;
    transition: all 0.5s ease-in-out;
}
.overlay.active {
    display: block;
    opacity: 1;
}

#sidebar .sidebar-header {
    padding: 10px 20px;
    background: #FFF;
    border-bottom: 1px solid rgb(0 0 0 / 5%);
}

#sidebar ul.components {
    padding: 20px 0;
    border-bottom: 1px solid #47748b;
}

#sidebar ul p {
    color: #fff;
    padding: 10px;
}

#sidebar ul li a {
    padding: 10px;
    font-size: 1.1em;
    display: block;
}

#sidebar ul li a:hover {
    /* color: #7386D5; */
    /* background: #fff; */
}

#sidebar ul li.active>a,
a[aria-expanded="true"] {
    /* color: #fff; */
    /* background: #6d7fcc; */
}

a[data-toggle="collapse"] {
    position: relative;
}

.dropdown-toggle::after {
    display: block;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}

ul.CTAs ul a {
    font-size: 0.9em !important;
    padding-left: 30px !important;
    /* background: #6d7fcc; */
}

ul.CTAs {
    padding: 20px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 10px;
}

ul.CTAs li a {
    text-align: center;
    font-size: 0.9em !important;
    display: block;
    border-radius: 5px;
    margin-bottom: 5px;
    margin: 0px;
    margin-left: 0px !important        
}


/* SIDEBAR NAV */
#sidebar ul li {
    margin-bottom: 5px;
}
.navbar-brand-sidebar-logo h1 {
    font-size: 1.2em;
    padding-right: 40px;
    margin-top: 0px;
    font-weight: 300;
}
#sidebar ul li a.nav-btns-lnk.btn.btn-link.d-flex {
    justify-content: center;
} 
.navbar-brand-sidebar-logo img {
    height: 55px;
}
.mobile-header {
    width: 100%;
    margin: 0 1em;
}
.mobile-header a.navbar-brand {
    margin-bottom: 0px;
}
.navbar-brand-with-logo .user_icon_with_img_in {
    margin: 0px;
}
.mobile-header a.navbar-brand .brand_logo img {
    height: 50px !important;
    padding: 0px 0px 0px 0px !important;
    border-right: 0px solid rgb(0 0 0 / 2%) !important;
}
.mobile-header .btn-outline-primary {
    border: 1px solid transparent !important;
}
.mobile-headerX .btn-outline-primary {
    color: rgba(var(--secondary), 100%);
    background-color: rgba(var(--secondary), 10%);
    background-image: none;
    border-color: rgba(var(--secondary), 0%);
}
.btn-outline-primary:not(:disabled):not(.disabled).active, .btn-outline-primary:not(:disabled):not(.disabled):active, .show>.btn-outline-primary.dropdown-toggle {
    color: #fff;
    background-color:  rgba(var(--secondary), 100%);
    border-color:  rgba(var(--secondary), 100%);
}
.btn-outline-primary.focus, .btn-outline-primary:focus {
    box-shadow: 0 0 0 0.2rem rgba(var(--secondary), 15%);
}
/* SIDEBAR NAV END */








/* MEDIA QUERIES */
/* Low resolution tablets and mobile phones */
@media (min-width: 320px) and (max-width: 767px) {
    .full-width {
        /* padding: 1em; */
    }

    .onestop-types a {
        font-size: 1.2rem;
    }

    .features .row {
        padding: 0;
    }

    .nav-btns.cta-buttons {
        width: auto;
        justify-content: space-between;
    }

    ul#menu-main-menu {
        padding-left: 0;
    }

    #main_navbar .nav-btns.cta-buttons {
        margin-left: -5px;
        margin-top: 10px;
    }

    .clients{
        margin: 1em;
    }

    h1.entry-title, h1.entry-title{
        padding: .2em;
        font-size: 3em;
    }

    .features h2{
        padding: 0;
    }

    .nav-btns.cta-buttons>a{
        font-size: inherit;
    }

    .to-talk .nav-btns.cta-buttons>a{
        font-size: 14px;
    }

    .mobile-headerX {
        width: 100%;
    }
}

@media all and (max-width: 768px) {
    nav#main_navbar.navbar {
        padding: 10px 10px;
    }    
    .hide-on-mobile {
        display: none;
    }
    a.navbar-brand .brand_logo img {
        height: 40px;
    }    
    a.navbar-brand .brand_name h5 {
        margin-top: 5px;
        letter-spacing: 1px;
        font-size: .5em;
    }    
    a.navbar-brand h1 {
        font-size: .95em;
        margin-top: 10px;
    }    
    .service_section {
        margin-bottom: 1em;
    }    
    .navbar {
        padding: 0;
    }    
    a.navbar-brand {
        margin: 0px 0px 10px 0px;
        width: 100%;
        background: transparent;
    }
    div#navbarNav {
        width: 100%;
        padding: 5px 10px;
        text-align: center;
    }
    .nav-btns {
        justify-content: center;
    }
    .card .os-site-service-card-description {
        min-height: unset;
    }
    .footer-content {
        display: block !important;
        width: 100%;
    }    
    .onestop-footer-branding {
        margin-left: auto;
        margin-right: auto;
        width: 100%;
        text-align: center;
    }   
    .footer-links {
        justify-content: center;
    }   
    .onestop-footer-branding > a {
        justify-content: center;
    }      
}   

.registration-phone .phone-number-widget{
    display: flex;
    flex-direction: row;
}

.form-control:focus {
    border-color: rgba(var(--primary), 80%);
    outline: 0;
    box-shadow: none;
}
