/*------------------------------------*\
    #Typography
\*------------------------------------*/


[data-wpr-lazyrender] {
    content-visibility: visible !important;
}


/*------------------------------------*\
    #GLOBAL
\*------------------------------------*/
/*------------------------------------*\
    #Spacing
\*------------------------------------*/


.m-auto {
    margin: auto !important;
}

.m-0 {
    margin: 0px !important;
}

.p-0 {
    padding: 0px !important;
}

.m-0 {
    margin: 0px !important;
}

.m-10 {
    margin: 10px !important;
}

.m-20 {
    margin: 20px !important;
}

.m-30 {
    margin: 30px !important;
}

.m-2em {
    margin: 2em !important;
}

.m-4em {
    margin: 4em !important;
}

.p-0 {
    padding: 0px !important;
}

.p-10 {
    padding: 10px !important;
}

.p-20 {
    padding: 20px !important;
}

.p-30 {
    padding: 30px !important;
}

.p-2em {
    padding: 2em !important;
}

.p-4em {
    padding: 4em !important;
}

.mt-0 {
    margin-top: 0px !important;
}

.mt-10 {
    margin-top: 10px !important;
}

.mt-20 {
    margin-top: 20px !important;
}

.mt-30 {
    margin-top: 30px !important;
}

.mt-2em {
    margin-top: 2em !important;
}

.mt-4em {
    margin-top: 4em !important;
}

.mb-0 {
    margin-bottom: 0px !important;
}

.mb-10 {
    margin-bottom: 10px !important;
}

.mb-20 {
    margin-bottom: 20px !important;
}

.mb-30 {
    margin-bottom: 30px !important;
}

.mb-2em {
    margin-bottom: 2em !important;
}

.mb-4em {
    margin-bottom: 4em !important;
}

.pt-0 {
    padding-top: 0px !important;
}

.pt-10 {
    padding-top: 10px !important;
}

.pt-20 {
    padding-top: 20px !important;
}

.pt-30 {
    padding-top: 30px !important;
}

.pt-2em {
    padding-top: 2em !important;
}

.pt-4em {
    padding-top: 4em !important;
}

.pb-0 {
    padding-bottom: 0px !important;
}

.pb-10 {
    padding-bottom: 10px !important;
}

.pb-20 {
    padding-bottom: 20px !important;
}

.pb-30 {
    padding-bottom: 30px !important;
}

.pb-2em {
    padding-bottom: 2em !important;
}

.pb-4em {
    padding-bottom: 4em !important;
}

.mw-100 {
    max-width: 100px;
}

.mw-200 {
    max-width: 200px;
}

.mw-300 {
    max-width: 300px;
}

.mw-400 {
    max-width: 400px;
}

.mw-500 {
    max-width: 500px;
}

.mw-600 {
    max-width: 600px;
}

.mw-700 {
    max-width: 700px;
}

.mw-800 {
    max-width: 800px;
}

.two-col-flex, .wm-flex, .three-col-flex, .four-col-flex {
    display: flex;
    flex-direction: row;
    gap: 1%;
    flex-wrap: wrap !important;
}

.two-col-flex>li {
    flex: 0 0 48% !important;
}

.three-col-flex>li {
    flex: 0 0 32% !important;
}

.four-col-flex>li {
    flex: 0 0 23.5% !important;
}


.content-secondary {
    padding: 5vw 7vw 9vw !important;
}

.subpage-content h3,
.content-secondary h3 {
    margin-bottom: 0px !important;
    padding-bottom: 0px !important;
    color: var(--wp--preset--color--secondary) !important;
}

.content-secondary.pb-0 {
    padding-bottom: 0px !important;
}

.img-intro img {
    width: 80% !important;
    height: auto !important;
}

.img-vertical-offset {
    margin-top: -8vw;

}

.wm-link-list ul {
    list-style: outside;
    margin-left: 18px;
}
.wm-link-list ul h3 {
    margin-bottom: 3px !important;
    margin-top: 0px !important;
    font-size: var(--wp--preset--font-size--medium);
    line-height: var(--wp--preset--font-size--medium);
}

.wp-site-blocks {
    overflow-x: hidden;
}

/* END spacing */

.of-hidden {
    overflow: hidden !important;
}

.entry-content {
    margin-top: 0;
    margin-bottom: 0;
}

.is-layout-flex {
    column-gap: var(--wp--preset--spacing--x-small);
}

.home .specials {
    display: none;
}

@media screen and (min-width: 992px) and (max-width: 1440px) {
    /* .wp-block-uagb-container.uagb-is-root-container>.uagb-container-inner-blocks-wrap {
        max-width: 95% !important;
    } */
}

@media only screen and (max-width: 976px) {
    .xs-pt-large {
        padding-top: 30vh !important;
    }
}

.entry-content {
    margin-top: 0;
    margin-bottom: 0;
}

/* .wp-block-uagb-container.main-page-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
} */

.group-0 {
    margin: 0 !important;
    padding: 0 !important;
}

.m-y-0,
.children-m-y-0 * {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}


/*------------------------------------*\
    #Colors
\*------------------------------------*/



.icons-white svg path {
    fill: #fff !important;
}

.icons-primary svg path {
    fill: var(--wp--preset--color--primary) !important;
}

.icons-gray svg path {
    fill: #666 !important;
}


.has-secondary-color-links a {
    color: var(--wp--preset--color--secondary) !important;
}

.has-primary-color-links a {
    color: var(--wp--preset--color--primary) !important;
}



.btns-justify-flex-start .uagb-buttons-repeater {
    justify-content: flex-start;
}

/*------------------------------------*\
    #Forms
\*------------------------------------*/


.form-group {
    margin-bottom: 1rem;
}



.btn-contact svg {
    width: 20px;
    height: 20px;
    fill: var(--wp--preset--color--primary) !important;
}



/*------------------------------------*\
    #HEADER
\*------------------------------------*/

.wm-mm-item__dropdown {
    background-color: transparent !important;
}

.wm-mm__toggle {
    position: relative;
}

.wm-mm-item__toggle:focus:not(:focus-visible),
.wm-mm-item__link a:focus:not(:focus-visible),
.wm-mm__toggle:focus:not(:focus-visible) {
    outline: none;
}

.wm-mm-item__toggle:focus-visible,
.wm-mm-item__link a:focus-visible,
.wm-mm__toggle:focus-visible {
    outline: 2px solid var(--wp--preset--color--primary) !important;
    outline-offset: 2px; /* adds some space between the element and outline */
}
.wm-mm__content-wrapper { height: auto !important;}

.wm-mm__toggle .dashicons {
    position: relative;
    z-index: 1;
}

.wm-mm__toggle:not(.dashicons) {
    font-size: 0;
}

.wm-mm__wrapper {
    max-width: 100% !important;
}



.wm-mm-item__link {
    padding: 0 1.5vw !important;
    align-items: center !important;
    justify-content: center !important;
}

.wm-mm-item.is-current>.wm-mm-item__link {
    color: var(--wp--preset--color--primary);
}


.wm-mm__content>li {
    border-left: 1px solid #fff;


}

.wm-mm__content>li>.wm-mm-item__link>a {
    padding: 0px !important;
    font-size: clamp(13px, 1.041vw, 22px) !important;
    line-height: clamp(13px, 1.041vw, 22px) !important;
}

.wm-mm__content>li:first-child {
    border-left: none;
}

.wm-mm-item__dropdown-wrapper {
    left: 50% !important;
    transform: translateX(-50%) !important;
    right: unset !important;
}

.wp-block-site-logo a {
    background: white;
    padding: 6px 4px 5px 3px;
    border-radius: 100px;
}



@media only screen and (max-width: 767px) {
    .entry-content.has-global-padding>.uagb-is-root-container.alignfull:not(.uagb-position__sticky--stuck) {
        margin-right: 0;
        margin-left: 0;
    }

    .wp-block-navigation__responsive-container {
        display: none !important;
    } 

    .wp-block-navigation__responsive-container-open,
    .wp-block-navigation__responsive-container.is-menu-open {
        display: flex !important;
    }

    .uag-hide-mob {
        display: none !important;
    }

 

}

@media only screen and (max-width:991px) {
    .top-bar,  .top-bar p, .top-bar a {
        font-size:13px !important;
    }

    .wm-mm-item__dropdown-content {
        max-width:100% !important;
        padding: 10px !important;
    }

    .wm-mm__content>li>.wm-mm-item__link>a {
        padding: 0px !important;
        font-size: clamp(13px, 1.041vw, 16px) !important;
        line-height: clamp(13px, 1.041vw, 16px) !important;
    }
}


.wm-page-header.wm-sticky-header .sticky-header-hide {
    display: none !important;
}

.swt-transparent-header #header .transparent-header-d-block {
    display: block !important;
}

.swt-transparent-header #header .transparent-header-hide {
    display: none !important;
}

.wm-page-header.wm-sticky-header.wm-sticky-header-active {
    box-shadow: 0px 8px 24px -8px rgba(0, 0, 0, 0.08);
    transition: .2s ease-in-out;
}

.wm-page-header.wm-sticky-header-active .wm-menu-wrap {
    max-width: 100% !important;
}

.wm-sticky-header {
    position: fixed !important;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
}

.img-box-grid img {
    width: 100% !important;
    height: auto !important;
}

.admin-bar .wm-sticky-header {
    top: 32px;
}

.wm-sticky-header.wm-sticky-header-active {
    box-shadow: 0px 8px 24px -8px rgba(0, 0, 0, 0.08);
    transition: .2s ease-in-out;
}

.white-logo {
    width: 100px !important;
}

.wm-rounded-icon .uagb-modal-trigger {
    display: inline-flex;
    background: #02334d;
    padding-top: 12px;
    padding-right: 12px;
    padding-bottom: 12px;
    padding-left: 12px;
    box-shadow: 0px 0px 0 #00000070;
    border-top-left-radius: 50px;
    border-top-right-radius: 50px;
    border-bottom-left-radius: 50px;
    border-bottom-right-radius: 50px;

}

/*------------------------------------*\
    #HEADER Mega Menu
\*------------------------------------*/
.wm-mega-dropdown {
    position: relative;
}

.wm-mega-dropdown .wm-mm-item__dropdown-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 250px !important;
}

li.wp-block-wm-megamenuu-item.wm-mm-item.has-children.wm-mega-dropdown>.wm-mm-item__dropdown-wrapper {
    padding: 0 !important;
}

li.wp-block-wm-megamenuu-item.wm-mm-item.has-children.wm-mega-dropdown>.wm-mm-item__dropdown-wrapper>.wm-mm-item__dropdown {
    background: #ffffff;
    padding: 20px;
    border-radius: 20px;
}

li.wp-block-wm-megamenuu-item.wm-mm-item.has-children .wm-mm-item__dropdown-wrapper>.wm-mm-item__dropdown {
    background: #ffffff00;
    padding: 0px;
    border-radius: 20px;
}

.mm-btn a {
    background: var(--wp--preset--color--secondary);
    padding: 4px 13px;
    display: inline-block;
    border-radius: 9px;
    color: white;
    transition: .3s all !important;
}

.mm-btn a:hover {
    background: var(--wp--preset--color--secondary);
}

.contact-mm a span {
    color: #fff;
    transition: .3s all !important;
}



.contact-mm a:hover span {
    color: #7fa2b5;
}

@media (max-width: 767px) {
    .wm-mm__content>li {
        background-color: var(--wp--preset--color--secondary) !important;
        color: #fff !important;
        transition: .3s all !important;
    }
}

/*------------------------------------*\
    #Grids
\*------------------------------------*/

@media (min-width: 1025px) {
    .wm-mm-item__dropdown-content>.wp-block-navigation {
        background-color: var(--wp--preset--color--primary) !important;
        color: #fff !important;
        transition: .3s all !important;
    }

    .top-bar-call a,
    .top-bar-call,
    .top-bar-address,
    .top-bar-address a {
        font-size: clamp(16px, 1.388vw, 22px);
    }

    body .lg-flex {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }

    body .lg-flex.col-2,
    body .lg-flex.col-3,
    body .lg-flex.col-4 {
        flex-wrap: wrap;
        align-items: center;
        flex-wrap: wrap !important;
        gap: 2%;
        align-items: stretch;
        justify-content: center;

    }

    .lg-flex.col-4>div,
    .lg-flex.col-4>li {
        flex: 0 0 23.5% !important;
        margin-bottom: 2%;
    }

    .lg-flex.col-3>div,
    .lg-flex.col-3>li {
        flex: 0 0 32% !important;
        margin-bottom: 2%;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .lg-flex.col-2>div,
    .lg-flex.col-2>li {
        flex: 0 0 49% !important;
        margin-bottom: 2%;
    }
}

footer .header-social svg {
    fill: #7fa2b5 !important;
}


/*------------------------------------*\
    #FOOTER
\*------------------------------------*/
.hours ul {
    display: flex;
    margin-bottom: 2px;
    margin-left: 0;
    padding-left: 0;
    margin-top: 0;
    list-style: none;

}

.wp-block-uagb-container.alignfull.uagb-is-root-container.hmd-social .uagb-container-inner-blocks-wrap {
    justify-content: flex-start !important;
    margin-left: 30px !important;
}

.hours ul li:nth-child(1) {
    width: 4vw;
}

footer .uagb-svg-wrapper {
    border-color: #58595B !important;
}

footer ul li {
    color: #58595B;
}








/*------------------------------------*\
    #ACCESSIBILITY
\*------------------------------------*/

/* Only show focus outline on devices that support hover (desktop/laptop) */
@media (hover: hover) {
    :focus-visible {
        outline: 2px solid rgba(0, 0, 0, 0.08) !important;
        outline-offset: 2px;
    }

    :focus:not(:focus-visible) {
        outline: none !important;
    }
}

/* Remove focus outline on touch devices */
@media (hover: none) {
    :focus-visible {
        outline: none !important;
    }
}

/*------------------------------------*\
    #RESPONSIVE HELPERS
\*------------------------------------*/
.d-none { display: none !important;}

.patient-menu a {
    font-size: clamp(12px, 1.041vw, 16px) !important;
}

.force-full-width, .force-dropdown-full-width .wm-mm-item__dropdown-wrapper{
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    max-width: 100vw !important;
    width: 100vw !important;
}
.force-dropdown-full-width .wm-mm-item__dropdown-wrapper {
    padding-left: 20px !important;
    padding-right: 20px !important;
}
p:empty {
    display: none;
}

/* Add margin for anchor links to account for sticky header */
[id] {
    scroll-margin-top: 110px;
    scroll-behavior: smooth;
}

@media (min-width: 1025px) {
    body .uag-hide-desktop {
        display: none !important;
    }
}


@media (max-width: 767px) {
    ul {
        padding-left: 16px !important;
        margin: 0 0 24px 0 !important;
    }
   

    .xs-text-center {
        text-align: center !important;
    }

    .two-col-flex>li, .two-col-flex>div {
        flex: 100% !important;
    }
    .two-col-flex {
        margin-left: 15px !important;
    }

    .xs-background-img-none {
        background-image: none !important;
    }

    form.cog-form input {
        padding-left: 15px !important;

    }

    .cog-input textarea {
        padding-left: 15px !important;

    }

    body .xs-has-font-size-default {
        font-size: 16px !important;
    }

    body .xs-has-font-size-small {
        font-size: 14px !important;
    }

    .xs-cover-image-contain.wp-block-cover .wp-block-cover__image-background {
        object-fit: contain !important;
    }

    .arrow-icon-btn-secondary-color a,
    .arrow-icon-btn-secondary-color .uagb-button__link {
        font-size: 14px !important;
    }

    .xs-default-font-size {
        font-size: 16px !important;
    }

    .wp-block-uagb-image--align-left img {
        height: auto !important;
    }

    .reviews-slider p {
        line-height: 1.5 !important;
    }

    .swiper-content {
        padding-left: 0px !important;
        padding-right: 0px !important;
    }

    .force-full-width-xs {
        margin-left: calc(-50vw + 50%) !important;
        margin-right: calc(-50vw + 50%) !important;
        max-width: 100vw !important;
        width: 100vw !important;
    }

    .center-xs {
        text-align: center !important;
        justify-content: center !important;
        align-items: center !important;
    }

    footer ul li {
        font-size: 16px !important;
    }

    .hours ul li:nth-child(1) {
        width: 50px;
    }

    footer .contact-info-col {
        width: 280px !important;
        margin: 0 auto !important;
    }

    footer .wp-block-uagb-container.alignfull.uagb-is-root-container.hmd-social .uagb-container-inner-blocks-wrap{
        margin-left: 30% !important;
    }

    footer .wp-block-list {
        width: 220px !important;
        text-align: left !important;
        margin: 0 auto !important;
    }
}

.section {
            overflow: hidden;
        }
        
        .wrapper {
            height: 100vh;
        }
        
        .list {
            justify-content: flex-start;
            align-items: center;
            height: 100%;
            display: flex;
            position: relative;
            padding: 0.2rem;
        }
        
        .item {
            display: flex;
            position: absolute;
            inset: 0%;
            box-shadow: rgb(149, 157, 165, 0.2) 0px 8px 24px;
            overflow: hidden;
            height: 470px; /* Set specific height to 500px */
            border: 4px solid #17365f;
            border-radius: 14px !important;
        }
        
        .item_content {
            background-color: #fff;
            color: #292929;
            flex-flow: column;
            justify-content: center;
            align-items: flex-start;
            padding: 3rem;
            display: flex;
            position: relative;
            width: 50%;
        }
        
        .item:nth-child(even) {
            flex-direction: row-reverse;
        }
        
        .item_content h2 {
            font-size: 30px;
            font-style: normal;
            font-weight: 400;
            margin-bottom: 1rem;
        }
        
        .item_p {
            margin-bottom: 2rem;
            font-size: 16px;
            line-height: 1.5;
        }
        
        .item_media {
            width: 50%;
            display: flex;
            background-color: #f7f7f7;
            align-items: center;
            justify-content: center;
        }
        
        a.item-content-btn {
            border: 1px solid #17365f;
            color: #17365f;
            border-radius: 30px;
            padding: 14px 25px;
            text-decoration: none;
            transition: all 0.3s ease;
        }
        
        a.item-content-btn:hover {
            background-color: #17365f;
            color: #fff;
        }
        
        .item_media img {
            width: 100%;
            height: auto;
            object-fit: contain;
            display: block;
        }
        
        .padding-global {
            padding-left: 2.5rem;
            padding-right: 2.5rem;
        }
        
        .padding-vertical {
            padding: 2rem;
        }
        
        /* Alternative approach using margin instead of top/bottom positioning */
        .item-with-margin {
            height: 500px; /* Specific height */
            margin: calc(50vh - 250px) 0; /* Center with spacing */
            position: absolute;
            inset: auto 0; /* Only set left and right to 0, let top/bottom be auto */
        }
        
        @media (max-width: 575.98px) {
            .heading {
                font-size: 2.5rem;
            }
            
            .item {
                display: flex;
                flex-direction: column;
            }
            
            .item_content,
            .item_media {
                height: 50%;
                width: 100%;
                padding-top: 1rem;
                padding-bottom: 1rem;
            }
            
            .item_content {
                padding: 2rem;
            }
        }
@media only screen and (max-width: 575px) {
.item:nth-child(even) {
    flex-direction: column;
}
}