.elementor-1921 .elementor-element.elementor-element-f8af05b{--display:flex;--min-height:0px;--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--z-index:2;}.elementor-1921 .elementor-element.elementor-element-9487180{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:10px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1921 .elementor-element.elementor-element-9487180.e-con{--flex-grow:0;--flex-shrink:0;}.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-1921 .elementor-element.elementor-element-9c0aa65{width:var( --container-widget-width, 16.356% );max-width:16.356%;--container-widget-width:16.356%;--container-widget-flex-grow:0;}.elementor-1921 .elementor-element.elementor-element-9c0aa65.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-1921 .elementor-element.elementor-element-9c0aa65 img{width:100%;max-width:100%;height:100%;}.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-1921 .elementor-element.elementor-element-b1d283f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 30px;}.elementor-1921 .elementor-element.elementor-element-b1d283f .elementor-menu-toggle{margin:0 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-1921 .elementor-element.elementor-element-31e0eee .elementor-button:hover, .elementor-1921 .elementor-element.elementor-element-31e0eee .elementor-button:focus{background-color:#000000;color:#FFFFFF;border-color:#000000;}.elementor-1921 .elementor-element.elementor-element-31e0eee .elementor-button:hover svg, .elementor-1921 .elementor-element.elementor-element-31e0eee .elementor-button:focus svg{fill:#FFFFFF;}.elementor-1921 .elementor-element.elementor-element-e84af4c .elementor-button{background-color:#15D1EA;}.elementor-1921 .elementor-element.elementor-element-e84af4c .elementor-button:hover, .elementor-1921 .elementor-element.elementor-element-e84af4c .elementor-button:focus{background-color:#000000;color:#FFFFFF;border-color:#000000;}.elementor-1921 .elementor-element.elementor-element-e84af4c .elementor-button-content-wrapper{flex-direction:row;}.elementor-1921 .elementor-element.elementor-element-e84af4c .elementor-button:hover svg, .elementor-1921 .elementor-element.elementor-element-e84af4c .elementor-button:focus svg{fill:#FFFFFF;}.elementor-1921 .elementor-element.elementor-element-c8158bc .elementor-button:hover, .elementor-1921 .elementor-element.elementor-element-c8158bc .elementor-button:focus{background-color:#000000;color:#FFFFFF;border-color:#000000;}.elementor-1921 .elementor-element.elementor-element-c8158bc .elementor-button:hover svg, .elementor-1921 .elementor-element.elementor-element-c8158bc .elementor-button:focus svg{fill:#FFFFFF;}.elementor-1921 .elementor-element.elementor-element-dab4f58{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--z-index:2;}.elementor-1921 .elementor-element.elementor-element-2a7bfa1{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-1921 .elementor-element.elementor-element-5413040 img{width:240px;max-width:240px;}.elementor-1921 .elementor-element.elementor-element-291dfe0{--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-1921 .elementor-element.elementor-element-6989093.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-1921 .elementor-element.elementor-element-6989093 .elementor-menu-toggle{margin-left:auto;background-color:#FFFFFF;}.elementor-1921 .elementor-element.elementor-element-6989093 .elementor-nav-menu .elementor-item{font-family:"Mulish", Sans-serif;font-size:14px;font-weight:500;}.elementor-1921 .elementor-element.elementor-element-6989093 .e--pointer-framed .elementor-item:before{border-width:2px;}.elementor-1921 .elementor-element.elementor-element-6989093 .e--pointer-framed.e--animation-draw .elementor-item:before{border-width:0 0 2px 2px;}.elementor-1921 .elementor-element.elementor-element-6989093 .e--pointer-framed.e--animation-draw .elementor-item:after{border-width:2px 2px 0 0;}.elementor-1921 .elementor-element.elementor-element-6989093 .e--pointer-framed.e--animation-corners .elementor-item:before{border-width:2px 0 0 2px;}.elementor-1921 .elementor-element.elementor-element-6989093 .e--pointer-framed.e--animation-corners .elementor-item:after{border-width:0 2px 2px 0;}.elementor-1921 .elementor-element.elementor-element-6989093 .e--pointer-underline .elementor-item:after,
					 .elementor-1921 .elementor-element.elementor-element-6989093 .e--pointer-overline .elementor-item:before,
					 .elementor-1921 .elementor-element.elementor-element-6989093 .e--pointer-double-line .elementor-item:before,
					 .elementor-1921 .elementor-element.elementor-element-6989093 .e--pointer-double-line .elementor-item:after{height:2px;}.elementor-1921 .elementor-element.elementor-element-6989093 .elementor-nav-menu--main .elementor-item{padding-left:10px;padding-right:10px;}.elementor-1921 .elementor-element.elementor-element-6989093{--e-nav-menu-horizontal-menu-item-margin:calc( 6px / 2 );}.elementor-1921 .elementor-element.elementor-element-6989093 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:6px;}.elementor-1921 .elementor-element.elementor-element-6989093 .elementor-nav-menu--main .elementor-nav-menu--dropdown, .elementor-1921 .elementor-element.elementor-element-6989093 .elementor-nav-menu__container.elementor-nav-menu--dropdown{box-shadow:0px 1px 4px 0px rgba(0, 0, 0, 0.2);}.elementor-1921 .elementor-element.elementor-element-6989093 .elementor-nav-menu--dropdown a{padding-top:10px;padding-bottom:10px;}.elementor-1921 .elementor-element.elementor-element-6989093 div.elementor-menu-toggle{color:#2D2D2D;}.elementor-1921 .elementor-element.elementor-element-6989093 div.elementor-menu-toggle svg{fill:#2D2D2D;}.elementor-1921 .elementor-element.elementor-element-6989093 div.elementor-menu-toggle:hover, .elementor-1921 .elementor-element.elementor-element-6989093 div.elementor-menu-toggle:focus{color:#FFFFFF;}.elementor-1921 .elementor-element.elementor-element-6989093 div.elementor-menu-toggle:hover svg, .elementor-1921 .elementor-element.elementor-element-6989093 div.elementor-menu-toggle:focus svg{fill:#FFFFFF;}.elementor-1921 .elementor-element.elementor-element-6989093 .elementor-menu-toggle:hover, .elementor-1921 .elementor-element.elementor-element-6989093 .elementor-menu-toggle:focus{background-color:#8CC63F;}.elementor-1921 .elementor-element.elementor-element-e4da18a{--display:flex;}.elementor-1921 .elementor-element.elementor-element-dfafc25 .elementor-button{background-color:#8CC63F;border-style:solid;border-width:2px 2px 2px 2px;border-color:#8CC63F;border-radius:5px 5px 5px 5px;}.elementor-1921 .elementor-element.elementor-element-dfafc25 .elementor-button:hover, .elementor-1921 .elementor-element.elementor-element-dfafc25 .elementor-button:focus{background-color:#15D1EA;border-color:#15D1EA;}.elementor-1921 .elementor-element.elementor-element-599fdf5 .elementor-button{background-color:var( --e-global-color-text );border-style:solid;border-width:2px 2px 2px 2px;border-color:var( --e-global-color-text );border-radius:5px 5px 5px 5px;}.elementor-1921 .elementor-element.elementor-element-599fdf5 .elementor-button:hover, .elementor-1921 .elementor-element.elementor-element-599fdf5 .elementor-button:focus{background-color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-1921 .elementor-element.elementor-element-8d8a37f{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--z-index:2;}.elementor-1921 .elementor-element.elementor-element-8aa1dba{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-1921 .elementor-element.elementor-element-4bc4795 img{width:240px;max-width:240px;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-1921 .elementor-element.elementor-element-39b27f1.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-1921 .elementor-element.elementor-element-39b27f1{border-style:solid;}.elementor-1921 .elementor-element.elementor-element-39b27f1 .elementor-icon-wrapper{text-align:center;}.elementor-1921 .elementor-element.elementor-element-8aca3bc .e-off-canvas__overlay{background-color:rgba(0,0,0,.8);}.elementor-1921 .elementor-element.elementor-element-8aca3bc{--e-off-canvas-height:100vh;--e-off-canvas-content-overflow:auto;--e-off-canvas-overlay-opacity:1;}.elementor-1921 .elementor-element.elementor-element-3be4c6b{--display:flex;}body:not(.rtl) .elementor-1921 .elementor-element.elementor-element-cf2d1b9{right:0px;}body.rtl .elementor-1921 .elementor-element.elementor-element-cf2d1b9{left:0px;}.elementor-1921 .elementor-element.elementor-element-cf2d1b9{top:0px;}.elementor-1921 .elementor-element.elementor-element-cf2d1b9 .elementor-icon-wrapper{text-align:center;}.elementor-1921 .elementor-element.elementor-element-cf2d1b9.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-text );}.elementor-1921 .elementor-element.elementor-element-cf2d1b9.elementor-view-framed .elementor-icon, .elementor-1921 .elementor-element.elementor-element-cf2d1b9.elementor-view-default .elementor-icon{color:var( --e-global-color-text );border-color:var( --e-global-color-text );}.elementor-1921 .elementor-element.elementor-element-cf2d1b9.elementor-view-framed .elementor-icon, .elementor-1921 .elementor-element.elementor-element-cf2d1b9.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-text );}.elementor-1921 .elementor-element.elementor-element-8a72278.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-1921 .elementor-element.elementor-element-8a72278 .elementor-nav-menu--dropdown a{padding-top:10px;padding-bottom:10px;}.elementor-1921 .elementor-element.elementor-element-7295779{--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-1921 .elementor-element.elementor-element-6e11151{--display:flex;}.elementor-1921 .elementor-element.elementor-element-04d3ab2 .elementor-button{background-color:#8CC63F;border-style:solid;border-width:2px 2px 2px 2px;border-color:#8CC63F;border-radius:5px 5px 5px 5px;}.elementor-1921 .elementor-element.elementor-element-04d3ab2 .elementor-button:hover, .elementor-1921 .elementor-element.elementor-element-04d3ab2 .elementor-button:focus{background-color:#000000;border-color:#000000;}.elementor-1921 .elementor-element.elementor-element-bbc66fc .elementor-button{background-color:#15D1EA;border-style:solid;border-width:2px 2px 2px 2px;border-color:#15D1EA;border-radius:5px 5px 5px 5px;}.elementor-1921 .elementor-element.elementor-element-bbc66fc .elementor-button:hover, .elementor-1921 .elementor-element.elementor-element-bbc66fc .elementor-button:focus{background-color:#000000;border-color:#000000;}.elementor-1921 .elementor-element.elementor-element-7b3ea4b .elementor-button{background-color:#8CC63F;border-style:solid;border-width:2px 2px 2px 2px;border-color:#8CC63F;border-radius:37px 37px 37px 37px;}.elementor-1921 .elementor-element.elementor-element-7b3ea4b .elementor-button:hover, .elementor-1921 .elementor-element.elementor-element-7b3ea4b .elementor-button:focus{background-color:#000000;border-color:#000000;}.elementor-1921 .elementor-element.elementor-element-7b3ea4b .elementor-button-content-wrapper{flex-direction:row;}.elementor-1921{margin:0px 0px -150px 0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-1921 .elementor-element.elementor-element-f8af05b{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-1921 .elementor-element.elementor-element-dab4f58{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-1921 .elementor-element.elementor-element-5413040 img{width:300px;max-width:300px;}.elementor-1921 .elementor-element.elementor-element-291dfe0{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-1921 .elementor-element.elementor-element-6989093{z-index:4;}.elementor-1921 .elementor-element.elementor-element-6989093 .elementor-menu-toggle{border-width:2px;border-radius:5px;}.elementor-1921 .elementor-element.elementor-element-e4da18a{--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;--justify-content:flex-end;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1921 .elementor-element.elementor-element-8d8a37f{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-1921 .elementor-element.elementor-element-4bc4795 img{width:300px;max-width:300px;}.elementor-1921 .elementor-element.elementor-element-7295779{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-1921{margin:0px 0px -180px 0px;}}@media(max-width:767px){.elementor-1921 .elementor-element.elementor-element-8d8a37f{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1921 .elementor-element.elementor-element-8aa1dba{--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;}.elementor-1921 .elementor-element.elementor-element-4bc4795 img{width:200px;max-width:200px;}.elementor-1921 .elementor-element.elementor-element-39b27f1{padding:5px 4px 0px 4px;border-width:2px 2px 2px 2px;border-radius:5px 5px 5px 5px;}.elementor-1921 .elementor-element.elementor-element-39b27f1 .elementor-icon{font-size:40px;}.elementor-1921 .elementor-element.elementor-element-39b27f1 .elementor-icon svg{height:40px;}.elementor-1921 .elementor-element.elementor-element-8aca3bc{--e-off-canvas-justify-content:flex-end;--e-off-canvas-width:70%;--e-off-canvas-height:100vh;}.elementor-1921 .elementor-element.elementor-element-3be4c6b{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}body:not(.rtl) .elementor-1921 .elementor-element.elementor-element-cf2d1b9{right:20px;}body.rtl .elementor-1921 .elementor-element.elementor-element-cf2d1b9{left:20px;}.elementor-1921 .elementor-element.elementor-element-cf2d1b9 .elementor-icon{font-size:30px;}.elementor-1921 .elementor-element.elementor-element-cf2d1b9 .elementor-icon svg{height:30px;}.elementor-1921 .elementor-element.elementor-element-7295779{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1921 .elementor-element.elementor-element-6e11151{--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-1921{margin:0px 0px -250px 0px;}}@media(min-width:768px){.elementor-1921 .elementor-element.elementor-element-f8af05b{--content-width:100%;}.elementor-1921 .elementor-element.elementor-element-9487180{--width:100%;}.elementor-1921 .elementor-element.elementor-element-dab4f58{--content-width:1600px;}.elementor-1921 .elementor-element.elementor-element-2a7bfa1{--width:35%;}.elementor-1921 .elementor-element.elementor-element-291dfe0{--width:100%;}.elementor-1921 .elementor-element.elementor-element-e4da18a{--width:35%;}.elementor-1921 .elementor-element.elementor-element-8d8a37f{--content-width:1600px;}.elementor-1921 .elementor-element.elementor-element-8aa1dba{--width:35%;}.elementor-1921 .elementor-element.elementor-element-7295779{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-1921 .elementor-element.elementor-element-9487180{--width:820px;}.elementor-1921 .elementor-element.elementor-element-2a7bfa1{--width:300px;}.elementor-1921 .elementor-element.elementor-element-291dfe0{--width:100%;}.elementor-1921 .elementor-element.elementor-element-e4da18a{--width:100%;}.elementor-1921 .elementor-element.elementor-element-8aa1dba{--width:300px;}.elementor-1921 .elementor-element.elementor-element-7295779{--width:100%;}}/* Start custom CSS for container, class: .elementor-element-9487180 *//* ==========================================================
   RESPONSIVE DESKTOP HEADER
   Replace all previous header CSS with this code
========================================================== */

/* ----------------------------------------------------------
   DESKTOP: 1401px AND ABOVE
---------------------------------------------------------- */

@media only screen and (min-width: 1401px) {

    .desktop-header {
        width: 100%;
        max-width: 1920px;
        margin: 0 auto;

        display: grid !important;
        grid-template-columns:
            minmax(210px, 245px)
            minmax(470px, 1fr)
            max-content
            max-content
            max-content;

        grid-template-areas:
            "logo nav subscribe phone portal";

        align-items: center !important;
        column-gap: clamp(8px, 0.8vw, 16px);

        padding: 12px clamp(18px, 1.7vw, 34px);
        box-sizing: border-box;

        background-color: #ffffff;
        position: relative;
        z-index: 9999;
        overflow: visible !important;
    }

    /* Remove conflicting Elementor widths */
    .desktop-header > .elementor-element {
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
        flex: none !important;
    }

    /* Grid positions */
    .header-logo {
        grid-area: logo;
    }

    .header-nav {
        grid-area: nav;
    }

    .header-subscribe {
        grid-area: subscribe;
    }

    .header-phone {
        grid-area: phone;
    }

    .header-portal {
        grid-area: portal;
    }

    /* ------------------------------------------------------
       LOGO
    ------------------------------------------------------ */

    .header-logo {
        justify-self: start;
        padding: 3px 5px;
    }

    .header-logo .elementor-widget-container,
    .header-logo a {
        display: block;
        width: 100%;
    }

    .header-logo img {
        display: block;
        width: clamp(205px, 12vw, 235px) !important;
        max-width: 235px !important;
        height: auto !important;

        filter: drop-shadow(0 3px 4px rgba(0, 0, 0, 0.09));
    }

    /* ------------------------------------------------------
       MAIN NAVIGATION
    ------------------------------------------------------ */

    .header-nav {
        width: 100% !important;
        min-width: 0 !important;
        justify-self: stretch;
    }

    .header-nav .elementor-widget-container {
        width: 100%;
        overflow: visible !important;
    }

    /* Only target the top-level menu */
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;

        gap: clamp(4px, 0.55vw, 11px);

        width: 100%;
        margin: 0 !important;
        padding: 0 !important;
    }

    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li {
        position: relative;
        flex: 0 0 auto;
        margin: 0 !important;
    }

    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li
    > a {
        display: flex !important;
        align-items: center;

        min-height: 54px;
        padding: 8px clamp(5px, 0.45vw, 9px) !important;

        color: #111111;
        font-size: clamp(15px, 0.95vw, 18px) !important;
        font-weight: 600 !important;
        line-height: 1.2;

        text-decoration: none;
        white-space: nowrap !important;

        transition: color 0.25s ease;
    }

    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li
    > a:hover {
        color: #86c936;
    }

    /* Dropdown arrow */
    .header-nav .sub-arrow {
        margin-left: 6px;
        padding: 0;
    }

    /* Active menu underline */
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li.current-menu-item
    > a::after,
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li
    > a.elementor-item-active::after {
        content: "";
        position: absolute;

        left: 7px;
        right: 7px;
        bottom: 0;

        height: 3px;
        background-color: #86c936;
    }

    /* ------------------------------------------------------
       SMALLER HEADER BUTTONS
    ------------------------------------------------------ */

    .header-subscribe,
    .header-phone,
    .header-portal {
        width: auto !important;
        min-width: 0 !important;
        justify-self: end;
    }

    .header-subscribe .elementor-button,
    .header-phone .elementor-button,
    .header-portal .elementor-button {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;

        width: auto !important;
        min-height: 48px !important;

        padding: 9px 14px !important;

        background-color: #86c936;
        color: #ffffff;

        border: none;
        border-radius: 4px;

        font-size: clamp(13px, 0.78vw, 15px) !important;
        font-weight: 600;
        line-height: 1.1;
        text-align: center;
        white-space: nowrap !important;

        box-sizing: border-box;

        transition:
            background-color 0.25s ease,
            transform 0.25s ease,
            box-shadow 0.25s ease;
    }

    .header-subscribe .elementor-button {
        min-width: 158px;
    }

    .header-phone .elementor-button {
        min-width: 175px;
    }

    .header-portal .elementor-button {
        min-width: 195px;
    }

    .header-subscribe .elementor-button:hover,
    .header-phone .elementor-button:hover,
    .header-portal .elementor-button:hover {
        background-color: #72ae29;
        color: #ffffff;

        transform: translateY(-1px);
        box-shadow: 0 5px 14px rgba(90, 142, 30, 0.18);
    }

    .header-phone .elementor-button-content-wrapper {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 7px;
    }
}


/* ----------------------------------------------------------
   SMALL DESKTOP / ZOOMED BROWSER: 1025px–1400px

   Buttons move to a second row automatically.
   This prevents overlap when the browser is zoomed.
---------------------------------------------------------- */

@media only screen and (min-width: 1025px) and (max-width: 1400px) {

    .desktop-header {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;

        display: grid !important;
        grid-template-columns: repeat(12, minmax(0, 1fr));

        grid-template-areas:
            "logo logo nav nav nav nav nav nav nav nav nav nav"
            ". . . subscribe subscribe phone phone portal portal . . .";

        align-items: center !important;
        row-gap: 7px;
        column-gap: 8px;

        padding: 9px 18px 11px;
        box-sizing: border-box;

        background-color: #ffffff;
        position: relative;
        z-index: 9999;
        overflow: visible !important;
    }

    .desktop-header > .elementor-element {
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
        flex: none !important;
    }

    .header-logo {
        grid-area: logo;
        justify-self: start;
        align-self: center;
    }

    .header-nav {
        grid-area: nav;
        width: 100% !important;
        min-width: 0 !important;
    }

    .header-subscribe {
        grid-area: subscribe;
    }

    .header-phone {
        grid-area: phone;
    }

    .header-portal {
        grid-area: portal;
    }

    /* Larger and highlighted logo */
    .header-logo img {
        display: block;
        width: clamp(180px, 17vw, 215px) !important;
        max-width: 215px !important;
        height: auto !important;

        filter: drop-shadow(0 3px 4px rgba(0, 0, 0, 0.09));
    }

    /* Navigation */
    .header-nav .elementor-widget-container {
        width: 100%;
        overflow: visible !important;
    }

    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;

        gap: clamp(2px, 0.4vw, 6px);

        width: 100%;
        margin: 0 !important;
        padding: 0 !important;
    }

    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li {
        position: relative;
        flex: 0 0 auto;
        margin: 0 !important;
    }

    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li
    > a {
        display: flex !important;
        align-items: center;

        min-height: 48px;
        padding: 7px 5px !important;

        color: #111111;
        font-size: clamp(13px, 1.25vw, 15px) !important;
        font-weight: 600 !important;
        line-height: 1.2;

        white-space: nowrap !important;
    }

    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li
    > a:hover {
        color: #86c936;
    }

    .header-nav .sub-arrow {
        margin-left: 4px;
        padding: 0;
    }

    /* Smaller second-row buttons */
    .header-subscribe,
    .header-phone,
    .header-portal {
        width: auto !important;
        min-width: 0 !important;
        justify-self: center;
    }

    .header-subscribe .elementor-button,
    .header-phone .elementor-button,
    .header-portal .elementor-button {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;

        width: auto !important;
        min-height: 42px !important;

        padding: 7px 12px !important;

        background-color: #86c936;
        color: #ffffff;

        border: none;
        border-radius: 4px;

        font-size: 13px !important;
        font-weight: 600;
        line-height: 1.1;
        text-align: center;
        white-space: nowrap !important;
    }

    .header-subscribe .elementor-button {
        min-width: 145px;
    }

    .header-phone .elementor-button {
        min-width: 160px;
    }

    .header-portal .elementor-button {
        min-width: 175px;
    }
}


/* ----------------------------------------------------------
   DROPDOWN MENU — ALL DESKTOP WIDTHS
---------------------------------------------------------- */

@media only screen and (min-width: 1025px) {

    .header-nav
    .elementor-nav-menu--main
    ul.sub-menu {
        display: none !important;
        position: absolute !important;

        top: 100%;
        left: 0;

        width: max-content;
        min-width: 255px;
        max-width: 420px;

        margin: 0 !important;
        padding: 8px 0 !important;

        background-color: #ffffff;
        border-radius: 4px;
        box-shadow: 0 12px 30px rgba(0, 0, 0, 0.14);

        z-index: 99999;
        transform: none !important;
    }

    .header-nav
    .elementor-nav-menu--main
    li.menu-item-has-children:hover
    > ul.sub-menu,
    .header-nav
    .elementor-nav-menu--main
    li.menu-item-has-children:focus-within
    > ul.sub-menu {
        display: block !important;
    }

    .header-nav
    .elementor-nav-menu--main
    ul.sub-menu
    > li {
        display: block !important;
        width: 100%;
        margin: 0 !important;
    }

    .header-nav
    .elementor-nav-menu--main
    ul.sub-menu
    > li
    > a {
        display: block !important;
        width: 100%;
        min-height: auto !important;

        padding: 11px 18px !important;

        color: #111111;
        font-size: 15px !important;
        font-weight: 500;
        line-height: 1.4;

        white-space: nowrap !important;
    }

    .header-nav
    .elementor-nav-menu--main
    ul.sub-menu
    > li
    > a:hover {
        color: #86c936;
        background-color: #f5f9ef;
    }
}


/* ----------------------------------------------------------
   TABLET AND MOBILE
---------------------------------------------------------- */

@media only screen and (max-width: 1024px) {

    .desktop-header {
        display: flex !important;
        align-items: center;
        justify-content: space-between;

        width: 100%;
        padding: 10px 16px;

        background-color: #ffffff;
        box-sizing: border-box;
    }

    .header-logo img {
        width: 185px !important;
        max-width: 185px !important;
        height: auto !important;
    }

    /* Elementor hamburger menu remains visible */
    .header-nav {
        width: auto !important;
        margin-left: auto;
    }

    /* Hide desktop action buttons on tablet/mobile */
    .header-subscribe,
    .header-phone,
    .header-portal {
        display: none !important;
    }
}
/* ==========================================================
   FINAL ONE-ROW DESKTOP HEADER FIX
   Paste at the very bottom of the existing CSS
========================================================== */

@media only screen and (min-width: 1025px) {

    /* Keep every header element in one horizontal row */
    .desktop-header {
        display: grid !important;

        grid-template-columns:
            clamp(180px, 13vw, 240px)
            minmax(380px, 1fr)
            max-content
            max-content
            max-content !important;

        grid-template-areas:
            "logo nav subscribe phone portal" !important;

        align-items: center !important;
        justify-content: stretch !important;

        column-gap: clamp(6px, 0.7vw, 14px) !important;
        row-gap: 0 !important;

        width: 100% !important;
        max-width: 1920px !important;
        margin: 0 auto !important;
        padding: 10px clamp(12px, 1.5vw, 28px) !important;

        box-sizing: border-box !important;
        overflow: visible !important;
    }

    /* Remove Elementor width and row conflicts */
    .desktop-header > .elementor-element {
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;

        margin: 0 !important;
        flex: none !important;

        align-self: center !important;
        grid-row: 1 !important;
    }

    /* Correct grid positions */
    .desktop-header .header-logo {
        grid-area: logo !important;
        justify-self: start !important;
    }

    .desktop-header .header-nav {
        grid-area: nav !important;
        justify-self: stretch !important;

        width: 100% !important;
        min-width: 0 !important;

        /* Remove any previous menu movement */
        transform: none !important;
    }

    .desktop-header .header-subscribe {
        grid-area: subscribe !important;
    }

    .desktop-header .header-phone {
        grid-area: phone !important;
    }

    .desktop-header .header-portal {
        grid-area: portal !important;
    }

    /* Highlighted logo */
    .desktop-header .header-logo img {
        display: block !important;

        width: clamp(180px, 13vw, 235px) !important;
        max-width: 235px !important;
        height: auto !important;

        filter: drop-shadow(0 3px 5px rgba(0, 0, 0, 0.1));
    }

    /* Center the main navigation in its available space */
    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;

        justify-content: center !important;
        align-items: center !important;

        gap: clamp(2px, 0.45vw, 9px) !important;

        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Main navigation links only */
    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li {
        flex: 0 0 auto !important;
        margin: 0 !important;
    }

    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li
    > a {
        min-height: 50px !important;

        padding: 7px clamp(4px, 0.4vw, 8px) !important;

        font-size: clamp(14px, 0.9vw, 17px) !important;
        font-weight: 600 !important;
        line-height: 1.2 !important;

        white-space: nowrap !important;
    }

    /* Button widget positions */
    .desktop-header .header-subscribe,
    .desktop-header .header-phone,
    .desktop-header .header-portal {
        width: auto !important;
        min-width: 0 !important;

        justify-self: end !important;
        align-self: center !important;
    }

    /* Smaller header buttons */
    .desktop-header .header-subscribe .elementor-button,
    .desktop-header .header-phone .elementor-button,
    .desktop-header .header-portal .elementor-button {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: auto !important;
        min-height: 46px !important;

        padding: 8px clamp(10px, 0.8vw, 15px) !important;

        font-size: clamp(12px, 0.78vw, 15px) !important;
        font-weight: 600 !important;
        line-height: 1.1 !important;

        text-align: center !important;
        white-space: nowrap !important;

        box-sizing: border-box !important;
    }

    .desktop-header .header-subscribe .elementor-button {
        min-width: clamp(145px, 10vw, 175px) !important;
    }

    .desktop-header .header-phone .elementor-button {
        min-width: clamp(155px, 10.5vw, 185px) !important;
    }

    .desktop-header .header-portal .elementor-button {
        min-width: clamp(170px, 11.5vw, 205px) !important;
    }
}


/* ==========================================================
   COMPACT DESKTOP / BROWSER ZOOM FIX
========================================================== */

@media only screen and (min-width: 1025px) and (max-width: 1400px) {

    .desktop-header {
        grid-template-columns:
            150px
            minmax(330px, 1fr)
            max-content
            max-content
            max-content !important;

        grid-template-areas:
            "logo nav subscribe phone portal" !important;

        column-gap: 6px !important;
        row-gap: 0 !important;

        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .desktop-header .header-logo img {
        width: 150px !important;
        max-width: 150px !important;
    }

    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu {
        gap: 1px !important;
    }

    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li
    > a {
        min-height: 46px !important;

        padding-left: 4px !important;
        padding-right: 4px !important;

        font-size: 13px !important;
    }

    .desktop-header .header-subscribe .elementor-button,
    .desktop-header .header-phone .elementor-button,
    .desktop-header .header-portal .elementor-button {
        min-height: 42px !important;
        padding: 7px 9px !important;
        font-size: 12px !important;
    }

    .desktop-header .header-subscribe .elementor-button {
        min-width: 135px !important;
    }

    .desktop-header .header-phone .elementor-button {
        min-width: 145px !important;
    }

    .desktop-header .header-portal .elementor-button {
        min-width: 160px !important;
    }
}


/* Extra compact desktop when the browser is heavily zoomed */
@media only screen and (min-width: 1025px) and (max-width: 1180px) {

    .desktop-header {
        grid-template-columns:
            132px
            minmax(290px, 1fr)
            max-content
            max-content
            max-content !important;

        column-gap: 4px !important;
        padding-left: 7px !important;
        padding-right: 7px !important;
    }

    .desktop-header .header-logo img {
        width: 132px !important;
        max-width: 132px !important;
    }

    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li
    > a {
        padding-left: 3px !important;
        padding-right: 3px !important;
        font-size: 11.5px !important;
    }

    .desktop-header .header-nav .sub-arrow {
        margin-left: 2px !important;
        padding: 0 !important;
    }

    .desktop-header .header-subscribe .elementor-button,
    .desktop-header .header-phone .elementor-button,
    .desktop-header .header-portal .elementor-button {
        min-height: 40px !important;
        padding: 6px 7px !important;
        font-size: 11px !important;
    }

    .desktop-header .header-subscribe .elementor-button {
        min-width: 120px !important;
    }

    .desktop-header .header-phone .elementor-button {
        min-width: 132px !important;
    }

    .desktop-header .header-portal .elementor-button {
        min-width: 145px !important;
    }
}
/* ==========================================================
   CLEAN DESKTOP HEADER OVERRIDE
   Paste at the very bottom of header CSS
========================================================== */

@media only screen and (min-width: 1025px) {

    /* Main header row */
    .desktop-header {
        display: grid !important;
        grid-template-columns: 240px minmax(420px, 1fr) max-content max-content max-content !important;
        align-items: center !important;
        column-gap: 12px !important;
        row-gap: 0 !important;
        width: 100% !important;
        max-width: 1920px !important;
        margin: 0 auto !important;
        padding: 14px 22px !important;
        box-sizing: border-box !important;
        background: #ffffff !important;
    }

    /* Force all widgets into first row */
    .desktop-header > .elementor-element {
        grid-row: 1 !important;
        margin: 0 !important;
        min-width: 0 !important;
        width: auto !important;
        max-width: none !important;
    }

    /* ---------------- LOGO ---------------- */
    .desktop-header .header-logo {
        justify-self: start !important;
    }

    .desktop-header .header-logo img {
        width: 230px !important;
        max-width: 230px !important;
        height: auto !important;
        display: block !important;
    }

    /* ---------------- NAV ---------------- */
    .desktop-header .header-nav {
        width: 100% !important;
        min-width: 0 !important;
        justify-self: stretch !important;
        transform: none !important;
    }

    .desktop-header .header-nav .elementor-widget-container {
        width: 100% !important;
        overflow: visible !important;
    }

    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li {
        flex: 0 0 auto !important;
        margin: 0 !important;
    }

    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li
    > a {
        min-height: 48px !important;
        padding: 6px 6px !important;
        font-size: 16px !important;
        font-weight: 600 !important;
        line-height: 1.2 !important;
        white-space: nowrap !important;
        display: flex !important;
        align-items: center !important;
    }

    .desktop-header .header-nav .sub-arrow {
        margin-left: 4px !important;
    }

    /* ---------------- BUTTONS ---------------- */
    .desktop-header .header-subscribe,
    .desktop-header .header-phone,
    .desktop-header .header-portal {
        justify-self: end !important;
        width: auto !important;
        min-width: 0 !important;
    }

    .desktop-header .header-subscribe .elementor-button,
    .desktop-header .header-phone .elementor-button,
    .desktop-header .header-portal .elementor-button {
        min-height: 46px !important;
        padding: 8px 14px !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        line-height: 1.1 !important;
        white-space: nowrap !important;
        border-radius: 4px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .desktop-header .header-subscribe .elementor-button {
        min-width: 185px !important;
    }

    .desktop-header .header-phone .elementor-button {
        min-width: 190px !important;
    }

    .desktop-header .header-portal .elementor-button {
        min-width: 205px !important;
    }

    .desktop-header .header-phone .elementor-button-content-wrapper {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
    }
}


/* ==========================================================
   SMALLER DESKTOP / LAPTOP
========================================================== */
@media only screen and (min-width: 1025px) and (max-width: 1400px) {

    .desktop-header {
        grid-template-columns: 200px minmax(320px, 1fr) max-content max-content max-content !important;
        column-gap: 8px !important;
        padding: 12px 14px !important;
    }

    .desktop-header .header-logo img {
        width: 200px !important;
        max-width: 200px !important;
    }

    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu {
        gap: 4px !important;
    }

    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li
    > a {
        font-size: 14px !important;
        padding-left: 4px !important;
        padding-right: 4px !important;
    }

    .desktop-header .header-subscribe .elementor-button,
    .desktop-header .header-phone .elementor-button,
    .desktop-header .header-portal .elementor-button {
        min-height: 42px !important;
        padding: 7px 10px !important;
        font-size: 12px !important;
    }

    .desktop-header .header-subscribe .elementor-button {
        min-width: 145px !important;
    }

    .desktop-header .header-phone .elementor-button {
        min-width: 150px !important;
    }

    .desktop-header .header-portal .elementor-button {
        min-width: 165px !important;
    }
}
/* ==========================================================
   FINAL MENU SPACING + SMALLER BUTTONS
   Paste at the bottom of the existing header CSS
========================================================== */

@media only screen and (min-width: 1401px) {

    /* Give more available space to the navigation */
    .desktop-header {
        grid-template-columns:
            240px
            minmax(560px, 1fr)
            max-content
            max-content
            max-content !important;

        column-gap: 10px !important;
        padding-left: 22px !important;
        padding-right: 22px !important;
    }

    /* Keep the current prominent logo size */
    .desktop-header .header-logo img {
        width: 230px !important;
        max-width: 230px !important;
    }

    /* Improve main navigation spacing */
    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu {
        justify-content: center !important;
        gap: 14px !important;
    }

    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li
    > a {
        min-height: 46px !important;
        padding: 7px 7px !important;
        font-size: 17px !important;
        font-weight: 600 !important;
        white-space: nowrap !important;
    }

    /* Make all header buttons smaller */
    .desktop-header .header-subscribe .elementor-button,
    .desktop-header .header-phone .elementor-button,
    .desktop-header .header-portal .elementor-button {
        min-height: 42px !important;
        padding: 7px 12px !important;
        font-size: 13px !important;
        line-height: 1.1 !important;
        border-radius: 4px !important;
    }

    .desktop-header .header-subscribe .elementor-button {
        min-width: 155px !important;
    }

    .desktop-header .header-phone .elementor-button {
        min-width: 165px !important;
    }

    .desktop-header .header-portal .elementor-button {
        min-width: 185px !important;
    }
}


/* ==========================================================
   LAPTOP AND SMALLER DESKTOP
========================================================== */

@media only screen and (min-width: 1025px) and (max-width: 1400px) {

    .desktop-header {
        grid-template-columns:
            190px
            minmax(365px, 1fr)
            max-content
            max-content
            max-content !important;

        column-gap: 6px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .desktop-header .header-logo img {
        width: 190px !important;
        max-width: 190px !important;
    }

    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu {
        gap: 4px !important;
    }

    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li
    > a {
        padding: 6px 4px !important;
        font-size: 14px !important;
    }

    .desktop-header .header-subscribe .elementor-button,
    .desktop-header .header-phone .elementor-button,
    .desktop-header .header-portal .elementor-button {
        min-height: 39px !important;
        padding: 6px 9px !important;
        font-size: 11.5px !important;
    }

    .desktop-header .header-subscribe .elementor-button {
        min-width: 130px !important;
    }

    .desktop-header .header-phone .elementor-button {
        min-width: 140px !important;
    }

    .desktop-header .header-portal .elementor-button {
        min-width: 155px !important;
    }
}
/* ==========================================================
   FINAL MENU AND BUTTON SPACING FIX
   Paste at the very bottom of the existing CSS
========================================================== */

/* Large desktop */
@media only screen and (min-width: 1501px) {

    /* Allocate more width to navigation */
    .desktop-header {
        grid-template-columns:
            clamp(240px, 14vw, 270px)
            minmax(650px, 1fr)
            max-content
            max-content
            max-content !important;

        column-gap: 10px !important;
        padding-left: 22px !important;
        padding-right: 22px !important;
    }

    /* Keep logo prominent */
    .desktop-header .header-logo img {
        width: 230px !important;
        max-width: 230px !important;
    }

    /* Give navigation more breathing room */
    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu {
        justify-content: center !important;
        gap: 18px !important;
        width: 100% !important;
    }

    /* Improve spacing inside each menu link */
    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li
    > a {
        padding: 7px 8px !important;
        font-size: 17px !important;
        font-weight: 600 !important;
        white-space: nowrap !important;
    }

    /* More space between navigation and first button */
    .desktop-header .header-subscribe {
        margin-left: 22px !important;
    }

    /* More space between the three buttons */
    .desktop-header .header-phone,
    .desktop-header .header-portal {
        margin-left: 10px !important;
    }

    /* Keep current button sizes */
    .desktop-header .header-subscribe .elementor-button {
        min-width: 155px !important;
    }

    .desktop-header .header-phone .elementor-button {
        min-width: 165px !important;
    }

    .desktop-header .header-portal .elementor-button {
        min-width: 185px !important;
    }
}


/* Laptop and medium desktop */
@media only screen and (min-width: 1025px) and (max-width: 1500px) {

    .desktop-header {
        grid-template-columns:
            190px
            minmax(380px, 1fr)
            max-content
            max-content
            max-content !important;

        column-gap: 6px !important;
    }

    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu {
        justify-content: center !important;
        gap: 6px !important;
    }

    .desktop-header
    .header-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li
    > a {
        padding: 6px 5px !important;
        font-size: 14px !important;
    }

    /* Smaller gaps prevent overlapping on narrower screens */
    .desktop-header .header-subscribe {
        margin-left: 8px !important;
    }

    .desktop-header .header-phone,
    .desktop-header .header-portal {
        margin-left: 4px !important;
    }
}
/* ==========================================================
   FULL-WIDTH WHITE HEADER BACKGROUND
   Paste at the very bottom of the existing CSS
========================================================== */

@media only screen and (min-width: 1025px) {

    .desktop-header {
        position: relative !important;
        isolation: isolate;
        background: transparent !important;
        overflow: visible !important;
    }

    /* Extend white background to both edges of the screen */
    .desktop-header::before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;

        width: 100vw;
        max-width: 100vw;

        transform: translateX(-50%);
        background-color: #ffffff;

        z-index: -1;
        pointer-events: none;
    }
}
/* ==========================================================
   FULL-WIDTH + TOP WHITE HEADER BACKGROUND
   Paste at the very bottom of existing CSS
========================================================== */

@media only screen and (min-width: 1025px) {

    .desktop-header {
        position: relative !important;
        isolation: isolate;
        background: transparent !important;
        overflow: visible !important;
        margin-top: 0 !important;
    }

    /* Extend white background full width and upward */
    .desktop-header::before {
        content: "";
        position: absolute;
        left: 50%;
        top: -30px;
        width: 100vw;
        height: calc(100% + 30px);
        transform: translateX(-50%);
        background: #ffffff;
        z-index: -1;
        pointer-events: none;
    }
}/* End custom CSS */