.elementor-25 .elementor-element.elementor-element-55f3fcc{--display:flex;}.elementor-25 .elementor-element.elementor-element-281f3f4{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-25 .elementor-element.elementor-element-45ca9b9{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-25 .elementor-element.elementor-element-21edc79 .elementor-menu-toggle{margin-left:auto;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-25 .elementor-element.elementor-element-c861297 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-25 .elementor-element.elementor-element-55f3fcc{--width:100%;}.elementor-25 .elementor-element.elementor-element-281f3f4{--width:100%;}.elementor-25 .elementor-element.elementor-element-45ca9b9{--width:100%;}}/* Start custom CSS for container, class: .elementor-element-55f3fcc *//* =========================================
   PJ DIGITAL SOLUTIONS — COMPLETE HEADER
   Paste into the OUTER header container.
   ========================================= */

.elementor-25 .elementor-element.elementor-element-55f3fcc {
    position: relative;
    z-index: 100;
    isolation: isolate;
    width: 100%;
    max-width: none;
    margin: 0 !important;
    padding: 0 var(--pj-gutter, 56px) !important;
    overflow: visible !important;
    background: #1f1f1f !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 0;
    color: #ffffff !important;
    font-family: var(--pj-font, "Geist", Arial, sans-serif);
}

.elementor-25 .elementor-element.elementor-element-55f3fcc,
.elementor-25 .elementor-element.elementor-element-55f3fcc * {
    box-sizing: border-box;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc > .e-con-inner {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}


/* =========================================
   INNER HEADER ROW
   ========================================= */

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-inner {
    position: relative;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 36px !important;
    width: 100% !important;
    max-width: var(--pj-content-width, 1300px) !important;
    min-height: 88px;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-inner > .e-con-inner {
    position: static;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    gap: inherit;
    width: 100%;
    max-width: none;
    padding: 0;
}


/* =========================================
   BRAND CONTAINER
   ========================================= */

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-brand {
    display: flex !important;
    flex: 0 0 auto !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #ffffff !important;
    text-decoration: none;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-brand > .e-con-inner {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    gap: inherit;
    width: auto;
    margin: 0;
    padding: 0;
}


/* =========================================
   LOGO
   Uses the original square PNG.
   Supports Elementor's optimized markup.
   ========================================= */

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-logo {
    position: relative !important;
    display: block !important;
    flex: 0 0 48px !important;
    width: 48px !important;
    min-width: 0;
    height: auto !important;
    min-height: 0;
    aspect-ratio: 565 / 490;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    line-height: 0;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-logo .elementor-widget-container {
    position: static !important;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    overflow: visible;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-logo img {
    position: absolute;
    top: -51.020408%;
    left: -38.584071%;
    display: block;
    width: 191.150442% !important;
    min-width: 0;
    max-width: none !important;
    height: auto !important;
    margin: 0;
    border: 0;
    border-radius: 0;
    filter: brightness(0) invert(1) !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-logo:hover img {
    filter: brightness(0) invert(1) !important;
    mix-blend-mode: normal !important;
    opacity: 1 !important;
}


/* =========================================
   WORDMARK
   ========================================= */

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-wordmark {
    flex: 0 0 auto !important;
    width: auto !important;
    margin: 0 !important;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-wordmark,
.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-wordmark .elementor-heading-title,
.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-wordmark .elementor-heading-title * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-wordmark .elementor-heading-title {
    margin: 0;
    font-family: var(--pj-font, "Geist", Arial, sans-serif);
    font-size: 11px;
    font-weight: 600;
    line-height: 1.6;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    white-space: nowrap;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-wordmark-small {
    font-size: 8.5px;
    font-weight: 400;
    letter-spacing: 2.6px;
}


/* =========================================
   DESKTOP NAVIGATION
   ========================================= */

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu {
    --e-nav-menu-horizontal-menu-item-margin: 0;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0;
    margin: 0 0 0 auto !important;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-nav-menu--main {
    justify-content: flex-end;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu
.elementor-nav-menu--main > .elementor-nav-menu {
    flex-wrap: nowrap;
    gap: 4px;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu
.elementor-nav-menu--main > .elementor-nav-menu > li {
    margin: 0;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-item {
    padding: 12px 11px;
    background: transparent;
    font-family: var(--pj-font, "Geist", Arial, sans-serif);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0;
    text-decoration: none;
    transition:
        color var(--pj-transition, 180ms ease),
        background-color var(--pj-transition, 180ms ease);
}

/* Normal menu colors */

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-nav-menu a,
.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu
.elementor-nav-menu--main .elementor-item,
.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu
.elementor-nav-menu--dropdown .elementor-item {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Hover, keyboard focus, and active page */

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-nav-menu a:hover,
.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-nav-menu a:focus-visible,
.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu
.elementor-nav-menu a.elementor-item-active,
.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu
.elementor-nav-menu .current-menu-ancestor > a {
    color: #a7e100 !important;
    -webkit-text-fill-color: #a7e100 !important;
}

/* Dropdown arrows */

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .sub-arrow {
    padding: 0 0 0 7px;
    font-size: 10px;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .sub-arrow svg {
    fill: currentColor !important;
}


/* =========================================
   SERVICE SUBMENUS
   ========================================= */

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .sub-menu {
    min-width: 275px !important;
    padding: 8px 0;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 0;
    background: #1f1f1f;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-sub-item {
    padding: 12px 18px;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: var(--pj-font, "Geist", Arial, sans-serif);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
    text-decoration: none;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-sub-item:hover,
.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-sub-item:focus-visible,
.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu
.elementor-sub-item.elementor-item-active {
    color: #a7e100 !important;
    -webkit-text-fill-color: #a7e100 !important;
    background: rgba(255, 255, 255, 0.06);
}


/* =========================================
   LET'S TALK BUTTON
   ========================================= */

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-cta {
    flex: 0 0 auto !important;
    width: auto !important;
    margin: 0 !important;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-cta .elementor-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 13px 20px;
    border: 0;
    border-radius: 0;
    background: #007bff !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: var(--pj-font, "Geist", Arial, sans-serif);
    font-size: 12px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: none;
    transition:
        background-color var(--pj-transition, 180ms ease);
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-cta .elementor-button:hover,
.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-cta .elementor-button:focus-visible {
    background: #0068db !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-cta .elementor-button-content-wrapper {
    align-items: center;
    gap: 20px;
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-cta .elementor-button-icon {
    display: inline-flex;
    align-items: center;
    margin: 0 !important;
    color: #ffffff !important;
    font-size: 14px;
    transform: rotate(-45deg);
}

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-cta .elementor-button-icon svg {
    width: 1em;
    height: 1em;
    fill: currentColor;
}


/* =========================================
   KEYBOARD FOCUS
   ========================================= */

.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-brand:focus-visible,
.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu a:focus-visible,
.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-menu-toggle:focus-visible,
.elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-cta .elementor-button:focus-visible {
    outline: 2px solid #a7e100;
    outline-offset: 4px;
}


/* =========================================
   TABLET
   ========================================= */

@media (max-width: 1024px) {

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-inner {
        min-height: 80px;
        gap: 16px !important;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-brand {
        order: 1;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-cta {
        order: 2;
        margin-left: auto !important;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu {
        position: static !important;
        order: 3;
        flex: 0 0 40px !important;
        width: 40px !important;
        margin: 0 !important;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu > .elementor-widget-container {
        position: static !important;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-menu-toggle {
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        margin: 0 0 0 auto;
        padding: 8px;
        border: 0;
        border-radius: 0;
        background: transparent;
        color: #ffffff !important;
        -webkit-text-fill-color: #ffffff !important;
        font-size: 22px;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-menu-toggle svg {
        fill: currentColor !important;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu
    nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
        position: absolute;
        z-index: 2;
        top: calc(100% + 1px) !important;
        right: 0 !important;
        left: 0 !important;
        width: 100% !important;
        margin: 0 !important;
        border: 1px solid rgba(255, 255, 255, 0.15);
        border-top: 0;
        border-radius: 0;
        background: #1f1f1f;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu
    nav.elementor-nav-menu--dropdown[aria-hidden="false"] {
        max-height: calc(100dvh - 110px) !important;
        overflow-y: auto;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu
    .elementor-nav-menu--dropdown .elementor-item {
        padding: 16px 20px;
        font-size: 14px;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .sub-menu {
        min-width: 0 !important;
        padding: 0;
        border: 0;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-sub-item {
        padding: 13px 20px 13px 32px;
        font-size: 13px;
    }
}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 767px) {

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-inner {
        min-height: 72px;
        gap: 12px !important;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-brand {
        gap: 8px !important;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-logo {
        flex-basis: 38px !important;
        width: 38px !important;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-wordmark .elementor-heading-title {
        font-size: 9.5px;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-wordmark-small {
        font-size: 7.5px;
        letter-spacing: 2.2px;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-cta .elementor-button {
        min-height: 42px;
        padding: 11px 14px;
        font-size: 11px;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-cta .elementor-button-content-wrapper {
        gap: 12px;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu {
        flex-basis: 36px !important;
        width: 36px !important;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-menu-toggle {
        width: 36px;
        height: 36px;
        font-size: 20px;
    }
}


/* =========================================
   SMALL MOBILE
   ========================================= */

@media (max-width: 359px) {

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-inner {
        gap: 8px !important;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-brand {
        gap: 7px !important;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-logo {
        flex-basis: 32px !important;
        width: 32px !important;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-wordmark .elementor-heading-title {
        font-size: 9px;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-wordmark-small {
        font-size: 7px;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-cta .elementor-button {
        padding-inline: 10px;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-cta .elementor-button-content-wrapper {
        gap: 8px;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu {
        flex-basis: 32px !important;
        width: 32px !important;
    }

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-menu-toggle {
        width: 32px;
    }
}


/* =========================================
   REDUCED MOTION
   ========================================= */

@media (prefers-reduced-motion: reduce) {

    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-menu .elementor-item,
    .elementor-25 .elementor-element.elementor-element-55f3fcc .pj-header-cta .elementor-button {
        transition: none;
    }
}/* End custom CSS */