body {
    font-family: "Montserrat", sans-serif !important;
}
.nav-services-dropdown {
    top: 100%;
    min-width: 220px;
    max-width: min(280px, calc(100vw - 2rem));
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition:
        opacity 0.3s ease,
        visibility 0.3s ease;
}

.group:hover .nav-services-dropdown,
.group:focus-within .nav-services-dropdown {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

.nav-services-chevron {
    transition:
        transform 0.3s ease,
        rotate 0.3s ease;
}

.group:hover .nav-services-chevron,
.group:focus-within .nav-services-chevron {
    rotate: 180deg;
}
.padding-bottom-16 {
    padding-bottom: 16px;
}
.padding-bottom-24 {
    padding-bottom: 24px;
}
.padding-top-24 {
    padding-top: 24px;
}
.padding-top-16 {
    padding-top: 16px;
}
.border-bottom-white {
    border-bottom: 1px solid rgba(255, 255, 255, 0.7);
}
.margin-top-0 {
    margin-top: 0px;
}
.max-width-750 {
    max-width: 750px;
    display: block;
    margin: 0 auto;
}

@media (min-width: 64rem) {
    .header-scroll,
    [data-header-shell] {
        overflow: visible;
    }
}

@media (max-width: 63.999rem) {
    html,
    body {
        overflow-x: hidden;
    }

    .header-scroll {
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100%;
        translate: 0;
        transform: none;
        overflow: hidden;
    }

    [data-header-shell] {
        overflow: hidden;
    }

    .nav-services-dropdown {
        display: none;
    }
    .mob-header-logo {
        width: 110px;
        height: auto;
    }
}
.img-position-lyt{
    display: flex;
    align-items: center;
}
/* iOS/WebKit ignores parent size when img uses width/height: fit-content.
       These logos are 1116x769 PNGs, so they must be explicitly constrained. */
.brand-logo-wrap {
    overflow: hidden;
    flex-shrink: 0;
}

.brand-logo-wrap a {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    height: 100%;
}

.brand-logo-wrap img,
img.brand-logo {
    display: block;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: left center;
}

.brand-logo-wrap--desktop {
    width: 165px;
    height: 78px;
}

.brand-logo-wrap--desktop img {
    max-width: 165px !important;
    max-height: 78px !important;
    height: 78px !important;
}

.brand-logo-wrap--menu {
    width: 220px;
    height: 88px;
}

.brand-logo-wrap--menu img,
img.mob-header-logo {
    max-width: 220px !important;
    max-height: 88px !important;
    height: 88px !important;
}

@media (min-width: 64rem) {
    .header-scroll,
    [data-header-shell] {
        overflow: visible;
        height: 78px;
    }
}

@media (max-width: 63.999rem) {
    html,
    body {
        overflow-x: hidden;
    }

    .header-scroll {
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100%;
        translate: 0;
        transform: none;
        overflow: hidden;
    }

    [data-header-shell] {
        overflow: hidden;
    }

    .nav-services-dropdown {
        display: none;
    }

    header .brand-logo-wrap:not(.brand-logo-wrap--menu) {
        width: 110px;
        height: 44px;
    }

    header .brand-logo-wrap:not(.brand-logo-wrap--menu) img {
        width: auto !important;
        height: 44px !important;
        max-width: 110px !important;
        max-height: 44px !important;
    }
}

@media not all and (min-width: 40rem) {
    @supports (color: color-mix(in lab, red, red)) {
        :where(.max-sm\:divide-light-green\/20 > :not(:last-child)) {
            border-color: color-mix(
                in oklab,
                var(--color-light-green) 20%,
                transparent
            );
        }
    }
}

@media not all and (min-width: 40rem) {
    :where(.max-sm\:divide-light-green\/20 > :not(:last-child)) {
        border-color: rgba(237, 28, 36, 0.2);
    }
}
