.elementor-2407 .elementor-element.elementor-element-518356c{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:9999;}.elementor-2407 .elementor-element.elementor-element-518356c:not(.elementor-motion-effects-element-type-background), .elementor-2407 .elementor-element.elementor-element-518356c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9F7EA;}.elementor-2407 .elementor-element.elementor-element-d017ed2 li.menu-item.menu-item-type-post_type a:hover{color:var( --e-global-color-primary );}.elementor-2407 .elementor-element.elementor-element-d017ed2 li.menu-item.menu-item-type-post_type a{font-size:20px;}.elementor-2407 .elementor-element.elementor-element-d017ed2 .hover-bg-neutral-200:hover{background-color:var( --e-global-color-primary );}.elementor-2407 .elementor-element.elementor-element-d017ed2 .btn-main-two{color:var( --e-global-color-primary );}.elementor-2407 .elementor-element.elementor-element-d017ed2 .btn-main-two:hover{color:var( --e-global-color-accent );}.elementor-2407 .elementor-element.elementor-element-35345d6{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:9999;}.elementor-2407 .elementor-element.elementor-element-35345d6:not(.elementor-motion-effects-element-type-background), .elementor-2407 .elementor-element.elementor-element-35345d6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-e9e4e8b );}.elementor-2407 .elementor-element.elementor-element-013baec{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--border-radius:0px 0px 50px 50px;}.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-2407 .elementor-element.elementor-element-16b6aa1 .elementor-button{background-color:var( --e-global-color-8e826df );font-family:"Arial", Sans-serif;font-size:17px;font-weight:500;border-radius:15px 15px 15px 15px;padding:18px 35px 18px 35px;}.elementor-2407 .elementor-element.elementor-element-16b6aa1 .elementor-button:hover, .elementor-2407 .elementor-element.elementor-element-16b6aa1 .elementor-button:focus{background-color:var( --e-global-color-primary );}.elementor-2407 .elementor-element.elementor-element-16b6aa1 > .elementor-widget-container{margin:0px 0px 0px 30px;}.elementor-2407 .elementor-element.elementor-element-16b6aa1 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-2407 .elementor-element.elementor-element-16b6aa1 .elementor-button .elementor-button-content-wrapper{gap:10px;}.elementor-2407 .elementor-element.elementor-element-ac026d8{--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:0px;}@media(max-width:1024px){.elementor-2407 .elementor-element.elementor-element-16b6aa1 > .elementor-widget-container{margin:0px 0px 0px 0px;}}@media(max-width:767px){.elementor-2407 .elementor-element.elementor-element-d017ed2{z-index:9999;}.elementor-2407 .elementor-element.elementor-element-d017ed2 > .elementor-widget-container{border-radius:0px 0px 0px 0px;}.elementor-2407 .elementor-element.elementor-element-35345d6{--border-radius:0px 0px 50px 50px;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;--z-index:1;}.elementor-2407 .elementor-element.elementor-element-013baec{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2407 .elementor-element.elementor-element-16b6aa1 .elementor-button{font-size:15px;}.elementor-2407 .elementor-element.elementor-element-ac026d8{--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-2407 .elementor-element.elementor-element-c886452 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for kidscholl-navbar-widget, class: .elementor-element-d017ed2 *//* Default header phone button */
body a.btn.btn-main.tw-border-bottom-header {
    --bs-btn-bg: #3F170F !important;
    --bs-btn-border-color: #3F170F !important;
    --bs-btn-hover-bg: #D56A34 !important;
    --bs-btn-hover-border-color: #D56A34 !important;

    background: #3F170F !important;
    background-color: #3F170F !important;
    border-color: #3F170F !important;
    border-bottom-color: #3F170F !important;
    color: #ffffff !important;
    overflow: hidden !important;
}

/* Animated hover layer */
body a.btn.btn-main.tw-border-bottom-header .button__flair,
body a.btn.btn-main.tw-border-bottom-header .button__flair::before,
body a.btn.btn-main.tw-border-bottom-header .button__flair::after {
    background: #D56A34 !important;
    background-color: #D56A34 !important;
    opacity: 1 !important;
    filter: none !important;
    mix-blend-mode: normal !important;
}

/* Hover, focus, and active states */
body a.btn.btn-main.tw-border-bottom-header:hover,
body a.btn.btn-main.tw-border-bottom-header:focus,
body a.btn.btn-main.tw-border-bottom-header:active {
    background: #D56A34 !important;
    background-color: #D56A34 !important;
    border-color: #D56A34 !important;
    border-bottom-color: #D56A34 !important;
    color: #ffffff !important;
}

/* Keep the text and icon visible */
body a.btn.btn-main.tw-border-bottom-header .button__label,
body a.btn.btn-main.tw-border-bottom-header > span:last-child {
    position: relative;
    z-index: 2;
    color: #ffffff !important;
}

/* =========================================================
   MAIN NAVIGATION
   Desktop + responsive menus
   ========================================================= */

/* Main top-level links */
.main-menu .nav-menu > li > a {
    font-size: 20px !important;
    line-height: 1.4 !important;
    font-weight: 500 !important;
    color: #000000 !important;
}


/* =========================================================
   ACTIVE PAGE COLOR
   ========================================================= */

/* Prevent theme's activePage class from coloring Locations
   unless Locations actually contains the current page */
.main-menu .nav-menu > li.menu-item-has-children.activePage:not(.current-menu-item):not(.current-menu-parent):not(.current-menu-ancestor) > a {
    color: #000000 !important;
}

/* Actual active page */
.main-menu .nav-menu > li.current-menu-item > a,
.main-menu .nav-menu > li.current_page_item > a,
.main-menu .nav-menu > li.current-menu-parent > a,
.main-menu .nav-menu > li.current-menu-ancestor > a,
.main-menu .nav-menu > li.current_page_ancestor > a,
.main-menu .nav-menu > li > a[aria-current="page"] {
    color: #D56A34 !important;
}


/* =========================================================
   HOVER
   ========================================================= */

.main-menu .nav-menu > li:hover > a,
.main-menu .nav-menu > li > a:hover {
    color: #D56A34 !important;
}


/* =========================================================
   DESKTOP DROPDOWN ARROW
   ========================================================= */

.main-menu .nav-menu > li.menu-item-has-children > a::before,
.main-menu .nav-menu > li.menu-item-has-children > a::after {
    color: currentColor !important;
    border-color: currentColor !important;
}


/* =========================================================
   DESKTOP SUBMENU
   ========================================================= */

.header-menu .nav-menu > li > .sub-menu > li > a {
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
    padding-top: 7px !important;
    padding-bottom: 7px !important;
    transition: color 0.3s ease !important;
}

.header-menu .nav-menu > li > .sub-menu > li > a:hover,
.header-menu .nav-menu > li > .sub-menu > li > a:focus {
    color: #D56A34 !important;
}


/* =========================================================
   MOBILE + TABLET MENU
   Theme switches navigation at XL
   ========================================================= */

@media (max-width: 1199.98px) {

    /* Main responsive menu links */
    .mobile-menu__inner .nav-menu--mobile > li > a {
        font-size: 18px !important;
        line-height: 1.4 !important;
        font-weight: 500 !important;
        color: #000000 !important;
    }

    /* Locations parent */
    .mobile-menu__inner
    .nav-menu--mobile
    > li.menu-item-has-children
    > a {
        position: relative !important;
        padding-right: 42px !important;
    }

    /* Add dropdown arrow */
    .mobile-menu__inner
    .nav-menu--mobile
    > li.menu-item-has-children
    > a::after {
        content: "⌄" !important;
        position: absolute !important;
        right: 8px !important;
        top: 50% !important;

        width: auto !important;
        height: auto !important;

        border: 0 !important;

        font-size: 20px !important;
        font-weight: 400 !important;
        line-height: 1 !important;

        transform: translateY(-55%) !important;
        transition: transform 0.25s ease !important;
    }

    /* Hide submenu until Locations is clicked */
    .mobile-menu__inner
    .nav-menu--mobile
    > li.menu-item-has-children
    > .sub-menu {
        display: none !important;
        position: static !important;
        width: 100% !important;
        padding: 4px 0 6px 18px !important;
        margin: 0 !important;
    }

    /* Open submenu */
    .mobile-menu__inner
    .nav-menu--mobile
    > li.menu-item-has-children.submenu-open
    > .sub-menu {
        display: block !important;
    }

    /* Rotate arrow while open */
    .mobile-menu__inner
    .nav-menu--mobile
    > li.menu-item-has-children.submenu-open
    > a::after {
        transform: translateY(-45%) rotate(180deg) !important;
    }

    /* Smaller submenu links */
    .mobile-menu__inner
    .nav-menu--mobile
    .sub-menu
    > li
    > a {
        font-size: 15px !important;
        line-height: 1.35 !important;
        font-weight: 400 !important;

        padding-top: 8px !important;
        padding-bottom: 8px !important;

        color: #000000 !important;
    }

    /* Submenu hover / focus */
    .mobile-menu__inner
    .nav-menu--mobile
    .sub-menu
    > li
    > a:hover,
    .mobile-menu__inner
    .nav-menu--mobile
    .sub-menu
    > li
    > a:focus {
        color: #D56A34 !important;
    }

    /* Active location */
    .mobile-menu__inner
    .nav-menu--mobile
    .sub-menu
    > li.current-menu-item
    > a,
    .mobile-menu__inner
    .nav-menu--mobile
    .sub-menu
    > li.current_page_item
    > a {
        color: #D56A34 !important;
    }
}

.mobile-menu__inner .nav-menu--mobile > li > a {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
}

/* FORCE BOOK A TOUR BUTTON TO SHOW ON MOBILE */
@media (max-width: 575.98px) {

    .header .d-sm-block.d-none {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .header .d-sm-block.d-none .btn {
        display: inline-flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
}

@media (max-width: 575.98px) {

    /* Make logo smaller */
    .header .logo a {
        max-width: 120px !important;
    }

    .header .logo img {
        width: 120px !important;
        max-width: 120px !important;
    }

    /* Make Book A Tour button compact */
    .header .d-sm-block.d-none .btn {
        padding: 8px 10px !important;
        font-size: 12px !important;
        gap: 4px !important;
        white-space: nowrap !important;
    }

    /* Smaller icon inside button */
    .header .d-sm-block.d-none .btn img {
        width: 14px !important;
        height: auto !important;
    }

    /* Reduce spacing between button and hamburger */
    .header .d-flex.align-items-center.tw-gap-4 {
        gap: 8px !important;
    }

    .header .toggle-mobileMenu {
        margin-left: 4px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-518356c *//* Adjust main header padding */
body .d-flex.align-items-center.justify-content-between.position-relative.bg-white.tw-p-6.tw-rounded-bottom-16-px {
    padding-top: 10px !important;
    padding-right: 24px !important;
    padding-bottom: 10px !important;
    padding-left: 24px !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-35345d6 *//* Adjust main header padding */
body .d-flex.align-items-center.justify-content-between.position-relative.bg-white.tw-p-6.tw-rounded-bottom-16-px {
    padding-top: 10px !important;
    padding-right: 24px !important;
    padding-bottom: 10px !important;
    padding-left: 24px !important;
}/* End custom CSS */
/* Start custom CSS for kidscholl-breadcrumb-widget, class: .elementor-element-c886452 *//* Breadcrumb spacing - applies to all screen sizes */
.breadcrumb.breadcrumb-wrap {
    padding-top: 230px !important;
    padding-bottom: 40px !important;
}

.breadcrumb .breadcrumb-content {
    margin-bottom: 40px !important;
}/* End custom CSS */