.elementor-4686 .elementor-element.elementor-element-b5ce3e1{--display:flex;--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:59px;}.elementor-4686 .elementor-element.elementor-element-b443b9a{--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;--flex-wrap:nowrap;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-14c3a43 );--border-color:var( --e-global-color-14c3a43 );--border-radius:12px 12px 12px 12px;--margin-top:20px;--margin-bottom:20px;--margin-left:030px;--margin-right:030px;--padding-top:10px;--padding-bottom:10px;--padding-left:018px;--padding-right:018px;}.elementor-4686 .elementor-element.elementor-element-b443b9a:not(.elementor-motion-effects-element-type-background), .elementor-4686 .elementor-element.elementor-element-b443b9a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-1533ab6 );}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );line-height:var( --e-global-typography-text-line-height );}.elementor-4686 .elementor-element.elementor-element-6928733{width:var( --container-widget-width, 18% );max-width:18%;--container-widget-width:18%;--container-widget-flex-grow:0;}.elementor-4686 .elementor-element.elementor-element-6928733.elementor-element{--align-self:center;}.elementor-4686 .elementor-element.elementor-element-6b8b075{--display:flex;--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:flex-end;--align-items:center;--flex-wrap:nowrap;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );}.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-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-menu-toggle{margin-left:auto;background-color:var( --e-global-color-4b927e2 );}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu .elementor-item{font-family:"Inter", Sans-serif;font-size:16px;font-weight:500;text-transform:none;line-height:24px;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--main .elementor-item{color:#681514;fill:#681514;padding-left:13px;padding-right:13px;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--main .elementor-item:focus{color:#490A0A;fill:#490A0A;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#490A0A;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown a, .elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-menu-toggle{color:#681514;fill:#681514;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown{background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#E8DED5;border-radius:15px 15px 15px 15px;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown a:hover,
					.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown a:focus,
					.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown a.highlighted,
					.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-menu-toggle:hover,
					.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-menu-toggle:focus{color:#490A0A;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown a:hover,
					.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown a:focus,
					.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown a.highlighted{background-color:#FCF3EC;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown .elementor-item, .elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown li:first-child a{border-top-left-radius:15px;border-top-right-radius:15px;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown li:last-child a{border-bottom-right-radius:15px;border-bottom-left-radius:15px;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown a{padding-left:0px;padding-right:0px;padding-top:7px;padding-bottom:7px;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--dropdown li:not(:last-child){border-style:none;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-nav-menu__container.elementor-nav-menu--dropdown{margin-top:8px !important;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 div.elementor-menu-toggle{color:var( --e-global-color-text );}.elementor-4686 .elementor-element.elementor-element-7e9ac79 div.elementor-menu-toggle svg{fill:var( --e-global-color-text );}.elementor-4686 .elementor-element.elementor-element-7e9ac79.elementor-element{--align-self:center;}.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-menu-toggle{margin-right:auto;background-color:var( --e-global-color-4b927e2 );}.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu--dropdown a, .elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-menu-toggle{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu--dropdown{background-color:var( --e-global-color-1533ab6 );border-style:solid;border-color:var( --e-global-color-14c3a43 );}.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu--dropdown a:hover,
					.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu--dropdown a:focus,
					.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu--dropdown a.highlighted{background-color:#F3EAE3;}.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu--dropdown a.elementor-item-active{background-color:#F3EAE3;}.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu--dropdown li:not(:last-child){border-style:none;}.elementor-4686 .elementor-element.elementor-element-6072e7d div.elementor-menu-toggle{color:var( --e-global-color-text );}.elementor-4686 .elementor-element.elementor-element-6072e7d div.elementor-menu-toggle svg{fill:var( --e-global-color-text );}.elementor-4686 .elementor-element.elementor-element-6072e7d.elementor-element{--align-self:center;}.elementor-widget-button .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );background-color:var( --e-global-color-accent );}.elementor-4686 .elementor-element.elementor-element-eapajbtn .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-4686 .elementor-element.elementor-element-eapajbtn .elementor-button .elementor-button-content-wrapper{gap:5px;}.elementor-4686 .elementor-element.elementor-element-eapajbtn .elementor-button{fill:#6E1B29;color:#6E1B29;background-color:#FFFFFF00;border-style:solid;border-width:1px 1px 1px 1px;border-color:#6E1B29;border-radius:15px 15px 15px 15px;padding:10px 15px 10px 15px;}.elementor-4686 .elementor-element.elementor-element-eapajbtn .elementor-button:hover, .elementor-4686 .elementor-element.elementor-element-eapajbtn .elementor-button:focus{color:#FFFFFF;background-color:#6E1B29;border-color:#6E1B29;}.elementor-4686 .elementor-element.elementor-element-eapajbtn .elementor-button:hover svg, .elementor-4686 .elementor-element.elementor-element-eapajbtn .elementor-button:focus svg{fill:#FFFFFF;}.elementor-4686 .elementor-element.elementor-element-eapajbtn > .elementor-widget-container{margin:5px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-4686 .elementor-element.elementor-element-eapajbtn{width:auto;max-width:auto;}.elementor-4686 .elementor-element.elementor-element-7f67736 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-4686 .elementor-element.elementor-element-7f67736 .elementor-button .elementor-button-content-wrapper{gap:5px;}.elementor-4686 .elementor-element.elementor-element-7f67736 .elementor-button:hover, .elementor-4686 .elementor-element.elementor-element-7f67736 .elementor-button:focus{border-color:#490A0A;}.elementor-4686 .elementor-element.elementor-element-7f67736 .elementor-button{border-style:solid;border-width:1px 1px 1px 1px;border-color:#6E1B29;border-radius:15px 15px 15px 15px;padding:10px 15px 10px 15px;}.elementor-4686 .elementor-element.elementor-element-7f67736 > .elementor-widget-container{margin:5px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-4686 .elementor-element.elementor-element-7f67736{width:auto;max-width:auto;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1366px){.elementor-4686 .elementor-element.elementor-element-b443b9a{--padding-top:10px;--padding-bottom:10px;--padding-left:018px;--padding-right:018px;}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-4686 .elementor-element.elementor-element-6928733{width:var( --container-widget-width, 25% );max-width:25%;--container-widget-width:25%;--container-widget-flex-grow:0;}.elementor-4686 .elementor-element.elementor-element-6928733.elementor-element{--align-self:center;}.elementor-4686 .elementor-element.elementor-element-6b8b075{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}}@media(min-width:768px){.elementor-4686 .elementor-element.elementor-element-b5ce3e1{--content-width:100%;}.elementor-4686 .elementor-element.elementor-element-b443b9a{--width:100%;}.elementor-4686 .elementor-element.elementor-element-6b8b075{--width:100%;}}@media(max-width:1366px) and (min-width:768px){.elementor-4686 .elementor-element.elementor-element-b443b9a{--width:100%;}.elementor-4686 .elementor-element.elementor-element-6b8b075{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-4686 .elementor-element.elementor-element-b443b9a{--width:100%;}}@media(max-width:1024px){.elementor-4686 .elementor-element.elementor-element-b5ce3e1{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-4686 .elementor-element.elementor-element-b443b9a{--margin-top:20px;--margin-bottom:20px;--margin-left:0px;--margin-right:0px;--padding-top:10px;--padding-bottom:10px;--padding-left:18px;--padding-right:18px;}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-4686 .elementor-element.elementor-element-6928733{--container-widget-width:35%;--container-widget-flex-grow:0;width:var( --container-widget-width, 35% );max-width:35%;}.elementor-4686 .elementor-element.elementor-element-6b8b075{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}.elementor-4686 .elementor-element.elementor-element-7e9ac79{--nav-menu-icon-size:30px;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-menu-toggle{border-width:0px;border-radius:0px;}.elementor-4686 .elementor-element.elementor-element-7e9ac79 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu--dropdown{border-width:1px 1px 1px 1px;border-radius:12px 12px 12px 12px;}.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu--dropdown li:first-child a{border-top-left-radius:12px;border-top-right-radius:12px;}.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu--dropdown li:last-child a{border-bottom-right-radius:12px;border-bottom-left-radius:12px;}.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu__container.elementor-nav-menu--dropdown{margin-top:20px !important;}.elementor-4686 .elementor-element.elementor-element-6072e7d{--nav-menu-icon-size:25px;}.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-menu-toggle{border-width:0px;}.elementor-4686 .elementor-element.elementor-element-6072e7d > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}}@media(max-width:767px){.elementor-4686 .elementor-element.elementor-element-b5ce3e1{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4686 .elementor-element.elementor-element-b5ce3e1.e-con{--align-self:center;}.elementor-4686 .elementor-element.elementor-element-b443b9a{--width:100%;--margin-top:20px;--margin-bottom:20px;--margin-left:0px;--margin-right:0px;--padding-top:10px;--padding-bottom:10px;--padding-left:15px;--padding-right:15px;}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-4686 .elementor-element.elementor-element-6928733 img{width:100%;}.elementor-4686 .elementor-element.elementor-element-6928733{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-4686 .elementor-element.elementor-element-6b8b075{--width:60%;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}.elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-4686 .elementor-element.elementor-element-6072e7d .elementor-nav-menu__container.elementor-nav-menu--dropdown{margin-top:15px !important;}.elementor-4686 .elementor-element.elementor-element-6072e7d{--nav-menu-icon-size:25px;}.elementor-4686 .elementor-element.elementor-element-6072e7d > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}}/* Start custom CSS for nav-menu, class: .elementor-element-7e9ac79 */.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-item {
    transition: transform 0.2s ease;
}

.elementor-4686 .elementor-element.elementor-element-7e9ac79 .elementor-item:hover {
    transform: translateY(-3px);
}/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-6072e7d *//* ALL ELEMENTOR NAV MENUS */

.elementor-widget-nav-menu .elementor-item {
    transition: transform 0.2s ease;
}

.elementor-widget-nav-menu .elementor-item:hover {
    transform: translateY(-3px);
}


/* TABLET + MOBILE */
@media (max-width: 1024px) {

    .elementor-widget-nav-menu .elementor-nav-menu--dropdown {
        width: calc(100vw - 40px) !important;
        min-width: calc(100vw - 40px) !important;
        max-width: calc(100vw - 40px) !important;

        position: absolute !important;

        left: auto !important;
        right: -18px !important;

        top: calc(100% + 16px) !important;

        transform: none !important;

        margin: 0 !important;
        box-sizing: border-box;
    }

    /* HIDE DROPDOWN COMPLETELY WHEN CLOSED */
    .elementor-widget-nav-menu .elementor-nav-menu--dropdown[aria-hidden="true"] {
        display: none !important;
        border: none !important;
        height: 0 !important;
        min-height: 0 !important;
    }
}


/* MOBILE ONLY */
@media (max-width: 767px) {

    .elementor-widget-nav-menu .elementor-nav-menu--dropdown {
        width: calc(100vw - 36px) !important;
        min-width: calc(100vw - 36px) !important;
        max-width: calc(100vw - 36px) !important;

        position: absolute !important;

        right: -18px !important;
        top: calc(100% + 12px) !important;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-7f67736 *//* BUTTON */

.elementor-4686 .elementor-element.elementor-element-7f67736 .elementor-button {
    overflow: hidden;
}

.elementor-4686 .elementor-element.elementor-element-7f67736 .elementor-button-content-wrapper {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
}


/* =========================
   TEXT
========================= */

.elementor-4686 .elementor-element.elementor-element-7f67736 .elementor-button-text {
    display: block;
    position: relative;
    transition: transform 0.4s cubic-bezier(0.76, 0, 0.24, 1);
}

.elementor-4686 .elementor-element.elementor-element-7f67736 .elementor-button-text::after {
    content: "Book a Call";
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    white-space: nowrap;
}

.elementor-4686 .elementor-element.elementor-element-7f67736 .elementor-button:hover .elementor-button-text {
    transform: translateY(-100%);
}


/* =========================
   ARROW
========================= */

.elementor-4686 .elementor-element.elementor-element-7f67736 .elementor-button-icon {
    position: relative;
    overflow: hidden;
}

.elementor-4686 .elementor-element.elementor-element-7f67736 .elementor-button-icon svg {
    display: block;
    transform-origin: right center;
}

.elementor-4686 .elementor-element.elementor-element-7f67736 .elementor-button:hover .elementor-button-icon svg {
    animation: arrow-lottie 0.55s cubic-bezier(0.76, 0, 0.24, 1);
}


/* Collapse → re-form */
@keyframes arrow-lottie {

    0% {
        transform: translateX(0) scaleX(1);
        opacity: 1;
    }

    35% {
        transform: translateX(5px) scaleX(0);
        opacity: 0;
    }

    36% {
        transform: translateX(-8px) scaleX(0);
        opacity: 0;
    }

    55% {
        opacity: 1;
    }

    100% {
        transform: translateX(0) scaleX(1);
        opacity: 1;
    }
}/* End custom CSS */
/* Start custom CSS *//* ea-nav - the main menu (Main Menu, term 100).

   Two things the nav-menu widget cannot do on its own: lay the Resources
   dropdown out in two columns, and carry the Post a Job / Book a Call items,
   which are real buttons in the desktop bar but have to be rows on a phone.

   NOTE: never set display on a sub-menu. SmartMenus opens and closes them with
   an inline display style, so a display:grid !important here would pin the
   Resources panel permanently open. column-count works on the block it already
   is, and break-before puts the split exactly where we want it. */

/* the two CTA items duplicate the header buttons on desktop */
@media (min-width:1025px){ .ea-nav-cta{display:none !important} }

/* section labels: not links, gold, uppercase. Sub-items are .elementor-sub-item,
   top-level ones .elementor-item, so match the anchor rather than either class. */
.ea-nav-label > a{
  pointer-events:none; cursor:default;
  font-size:13px !important; font-weight:600 !important;
  letter-spacing:.06em !important; text-transform:uppercase !important;
  color:#A88648 !important; background:transparent !important;
}

@media (min-width:1025px){
  /* Resources as a two-column panel, anchored to the right edge of its item so
     720px cannot run off the end of the bar. The break lands before the second
     label, which puts the library and its six categories in column one. */
  .elementor-element-7e9ac79 li.menu-item-6363{position:relative}
  .elementor-element-7e9ac79 li.menu-item-6363 > ul.sub-menu{
    column-count:2; column-gap:36px;
    width:720px !important; max-width:calc(100vw - 80px) !important;
    left:auto !important; right:0 !important;
    padding:24px 26px !important;
    box-shadow:0 18px 40px rgba(104,21,20,.08);
  }
  .elementor-element-7e9ac79 li.menu-item-6363 > ul.sub-menu > li{
    break-inside:avoid; width:auto !important; float:none !important;
  }
  .elementor-element-7e9ac79 li.menu-item-6372{break-before:column}
  .elementor-element-7e9ac79 li.menu-item-6363 > ul.sub-menu > li > a{
    border-radius:8px; padding-left:8px !important; padding-right:8px !important;
  }
  /* the lead item of each column reads a step heavier */
  .elementor-element-7e9ac79 li.menu-item-6365 > a,
  .elementor-element-7e9ac79 li.menu-item-6373 > a,
  .elementor-element-7e9ac79 li.menu-item-6374 > a,
  .elementor-element-7e9ac79 li.menu-item-6375 > a{font-weight:500 !important}
}

/* phone and tablet: the CTAs become buttons at the foot of the drawer */
@media (max-width:1024px){
  /* The drawer's own links are line-height:60px - the nav widget sets that, and
     it is what gives them their tap target. This rule used to set padding and
     leave the line-height alone, so the two CTAs inherited the 60px and came out
     86px tall against the 48px every other button on the site is. The type is
     stated here now, so the button carries the header button's own numbers:
     10/15 padding, 14px on 26px, 15px radius. Measured 86px before, 48px after.

     The plain drawer links are left at 80px on purpose - they are rows in a
     drawer, not buttons, and that is a comfortable thumb target. */
  .ea-nav-cta > a{
    border-radius:15px !important; border:1px solid #6E1B29 !important;
    justify-content:center; text-align:center;
    margin:8px 14px 0 !important; padding:10px 15px !important;
    font-size:14px !important; line-height:26px !important;
    font-weight:500 !important;
  }
  .ea-nav-cta-solid > a{background:#6E1B29 !important;color:#FFFFFF !important}
  .ea-nav-cta-ghost > a{background:transparent !important;color:#6E1B29 !important}
  .ea-nav-cta > a:hover{background:#490A0A !important;border-color:#490A0A !important;color:#FFFFFF !important}
  /* the drawer scrolls rather than running off a short screen */
  .elementor-element-6072e7d .elementor-nav-menu--dropdown{
    max-height:calc(100vh - 140px) !important; overflow-y:auto !important; padding-bottom:14px;
  }
  .ea-nav-label > a{padding-top:14px !important;padding-bottom:4px !important}
}

/* the hamburger was 38x38 - under the 44px tap-target floor */
@media (max-width:1024px){
  .elementor-element-6072e7d .elementor-menu-toggle{
    width:44px !important; height:44px !important;
    display:flex !important; align-items:center; justify-content:center;
    border:1px solid #E8DED5 !important; border-radius:12px !important;
  }
}

/* ea-nav-fit - keep the bar on one row between 1025px and the laptop breakpoint.

   Adding Services made four text links plus two buttons, and at the narrowest
   desktop width the menu missed fitting by 1.3px: measured, the row needed
   441.6px and had 440.3px. Job Board dropped to a second line and, because the
   flex row then squeezed the two buttons, their labels wrapped as well and the
   buttons went from 48px tall to 74px.

   The items carry 13px of padding on each side, which is more than the bar needs
   at these widths. Taking it to 9px returns 32px - enough that at 1025px, the
   last pixel before the drawer takes over, everything sits at its natural size
   with 32px to spare. The logo is untouched. Above 1366px the desktop sizes
   apply and there is 360px of slack, so the rule stops there. */
@media (min-width:1025px) and (max-width:1366px){
  .elementor-element-7e9ac79 .elementor-nav-menu > li > a{
    padding-left:9px !important; padding-right:9px !important;
  }
}

/* ea-nav-gutter - line the header bar up with the page below it on phones.

   The header container is boxed to 90% of the viewport at the mobile
   breakpoint, so its side gutter is a PERCENTAGE while every content block on
   the page uses a fixed 18px. The two only agree at one width. Measured on
   /calgary/: at 390px the header sat 2px inside the content (invisible, which
   is why it looked right on a real phone), at 531px 9px, and at 754px a full
   20px - the header bar visibly narrower than the cards under it.

   Swapping the percentage for the same 18px the body uses makes them agree at
   every width instead of one. Measured after: 390 / 430 / 531 / 600 / 754 /
   767 all land on 18px exactly, with no horizontal overflow.

   768px and up is untouched - the tablet and desktop containers already use a
   fixed gutter and already matched (20px, then 30px). */
@media (max-width:767px){
  .elementor-4686 .elementor-element-b5ce3e1 > .e-con-inner{
    max-width:100% !important;
    margin-left:0 !important; margin-right:0 !important;
    padding-left:18px !important; padding-right:18px !important;
  }
}

/* ea-drawer-align - hang the open menu off the header bar, not off the burger.

   Elementor's Full Width (stretch) setting positions the drawer with JavaScript,
   measuring from the 44px toggle button and writing inline left/width/top. The
   numbers it lands on only agreed with the bar at one size: measured on the live
   site it sat 2px right of the bar at every width, and its top was 12px ABOVE
   the bar's bottom edge - overlapping it, which is the missing gap.

   Making the two wrappers between the drawer and the bar `static` hands the bar
   itself the job of positioning it. left/right then resolve against the bar's own
   box, so the drawer is the width of the bar at every viewport with no arithmetic,
   and top:100% puts it directly under the bar - at which point Elementor's own
   Distance setting (15px on mobile, 20px on tablet) is the gap, as intended.

   The -1px is the bar's 1px border: an absolutely positioned child measures from
   the padding edge, which sits 1px inside it.

   Measured after: 390 / 422 / 540 / 742 / 759 / 767 / 768 / 900 / 1024 - both
   edges flush with the bar, 14px gap on mobile, 19px on tablet, no overflow. */
@media (max-width:1024px){
  .elementor-4686 .elementor-element-6072e7d,
  .elementor-4686 .elementor-element-6b8b075{ position:static !important; }

  .elementor-element-6072e7d .elementor-nav-menu--dropdown{
    position:absolute !important;
    left:-1px !important; right:-1px !important;
    width:auto !important; max-width:none !important;
    top:100% !important;
  }
}/* End custom CSS */