.elementor-kit-262{--e-global-color-primary:#1E3A5F;--e-global-color-secondary:#F8FAFC;--e-global-color-text:#334155;--e-global-color-accent:#0EA5E9;--e-global-color-a1b2c3d:#0284C7;--e-global-color-e4f5g6h:#FFFFFF;--e-global-color-ace835a:#64748B;--e-global-color-1c2a46e:#E2E8F0;--e-global-color-i7j8k9l:#FFFFFF;--e-global-color-c1f8208:#F8FAFC;--e-global-color-m0n1o2p:#E2E8F0;--e-global-color-q3r4s5t:#FAFBFD;--e-global-color-u6v7w8x:#0f2744;--e-global-color-y9z0a1b:#1E3A5F;--e-global-color-c2d3e4f:#2a4d70;--e-global-color-3fa6482:#10B981;--e-global-color-bd33c68:#EF4444;--e-global-typography-primary-font-family:"Plus Jakarta Sans";--e-global-typography-primary-font-size:48px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.2em;--e-global-typography-primary-letter-spacing:-0.02em;--e-global-typography-secondary-font-family:"Plus Jakarta Sans";--e-global-typography-secondary-font-size:28px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.3em;--e-global-typography-text-font-family:"Plus Jakarta Sans";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.6em;--e-global-typography-accent-font-family:"Plus Jakarta Sans";--e-global-typography-accent-font-size:14px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.4em;--e-global-typography-accent-letter-spacing:0.05em;background-color:var( --e-global-color-q3r4s5t );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 );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-262 button,.elementor-kit-262 input[type="button"],.elementor-kit-262 input[type="submit"],.elementor-kit-262 .elementor-button{background-color:#0EA5E9;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 );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-e4f5g6h );box-shadow:0px 4px 14px 0px rgba(14, 165, 233, 0.3);border-style:none;border-radius:8px 8px 8px 8px;padding:1em 2em 1em 2em;}.elementor-kit-262 button:hover,.elementor-kit-262 button:focus,.elementor-kit-262 input[type="button"]:hover,.elementor-kit-262 input[type="button"]:focus,.elementor-kit-262 input[type="submit"]:hover,.elementor-kit-262 input[type="submit"]:focus,.elementor-kit-262 .elementor-button:hover,.elementor-kit-262 .elementor-button:focus{background-color:#0284C7;color:var( --e-global-color-e4f5g6h );box-shadow:0px 6px 20px 0px rgba(2, 132, 199, 0.4);}.elementor-kit-262 e-page-transition{background-color:#FFBC7D;}.elementor-kit-262 a{color:var( --e-global-color-accent );}.elementor-kit-262 a:hover{color:var( --e-global-color-a1b2c3d );}.elementor-kit-262 h1{color:var( --e-global-color-primary );font-family:"Plus Jakarta Sans", Sans-serif;font-size:48px;font-weight:700;line-height:1.2em;letter-spacing:-0.02em;}.elementor-kit-262 h2{color:var( --e-global-color-primary );font-family:"Plus Jakarta Sans", Sans-serif;font-size:28px;font-weight:600;line-height:1.3em;}.elementor-kit-262 h3{color:var( --e-global-color-primary );font-family:"Plus Jakarta Sans", Sans-serif;font-size:20px;font-weight:600;line-height:1.4em;}.elementor-kit-262 h4{color:var( --e-global-color-text );font-family:"Plus Jakarta Sans", Sans-serif;font-size:18px;font-weight:600;line-height:1.4em;}.elementor-kit-262 h5{color:var( --e-global-color-text );font-family:"Plus Jakarta Sans", Sans-serif;font-size:16px;font-weight:600;line-height:1.5em;}.elementor-kit-262 h6{color:var( --e-global-color-text );font-family:"Plus Jakarta Sans", Sans-serif;font-size:14px;font-weight:600;line-height:1.5em;}.elementor-kit-262 img{border-radius:8px 8px 8px 8px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:40px;--container-default-padding-bottom:0px;--container-default-padding-left:40px;}.elementor-widget:not(:last-child){margin-block-end:24px;}.elementor-element{--widgets-spacing:24px 24px;--widgets-spacing-row:24px;--widgets-spacing-column:24px;}{}h1.entry-title{display:var(--page-title-display);}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-header .site-navigation ul.menu li a{color:var( --e-global-color-text );}.site-header .site-navigation-toggle .site-navigation-toggle-icon{color:var( --e-global-color-primary );}.site-header .site-navigation .menu li{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 );line-height:var( --e-global-typography-text-line-height );}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-262{--e-global-typography-primary-font-size:40px;--e-global-typography-secondary-font-size:24px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:14px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-262 h1{font-size:40px;line-height:1.2em;}.elementor-kit-262 h2{font-size:24px;line-height:1.3em;}.elementor-kit-262 h3{font-size:18px;}.elementor-kit-262 h4{font-size:16px;}.elementor-kit-262 button,.elementor-kit-262 input[type="button"],.elementor-kit-262 input[type="submit"],.elementor-kit-262 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:0px;--container-default-padding-right:32px;--container-default-padding-bottom:0px;--container-default-padding-left:32px;}.site-header .site-navigation .menu li{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:767px){.elementor-kit-262{--e-global-typography-primary-font-size:32px;--e-global-typography-secondary-font-size:20px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:14px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-262 h1{font-size:32px;line-height:1.2em;}.elementor-kit-262 h2{font-size:20px;line-height:1.3em;}.elementor-kit-262 h3{font-size:18px;}.elementor-kit-262 h4{font-size:16px;}.elementor-kit-262 button,.elementor-kit-262 input[type="button"],.elementor-kit-262 input[type="submit"],.elementor-kit-262 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0px;--container-default-padding-right:20px;--container-default-padding-bottom:0px;--container-default-padding-left:20px;}.site-header .site-navigation .menu li{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}/* Start custom CSS *//* Text Editor Widget Elementor - Remove bottom margin on last paragraph */
.elementor-text-editor p:last-child { 
    margin-bottom: 0px;
}

/* Card hover effect */
.card-hover:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
}

/* Button hover lift effect */
.btn-lift:hover {
    transform: translateY(-1px);
}

/* Hero gradient background helper class */
.hero-gradient {
    background: linear-gradient(135deg, #0f2744 0%, #1E3A5F 40%, #2a4d70 100%);
}

/* Footer gradient background helper class */
.footer-gradient {
    background: linear-gradient(135deg, #0f2744 0%, #1E3A5F 40%, #2a4d70 100%);
}

/* ==========================================
   DESKTOP/TABLET ONLY (768px and above)
   ========================================== */

@media (min-width: 768px) {

    /* NAV LINKS */
    .elementor-nav-menu a {
        color: #FFFFFF !important;
        transition: all 0.3s ease;
    }

    .elementor-nav-menu a:hover {
        color: #0EA5E9 !important;
    }

    .elementor-sticky--effects .elementor-nav-menu a {
        color: #1E3A5F !important;
    }

    .elementor-sticky--effects .elementor-nav-menu a:hover {
        color: #0EA5E9 !important;
    }

    /* CTA BUTTON (Contact) */
    .elementor-nav-menu .menu-cta > a {
        background: #0EA5E9 !important;
        color: #FFFFFF !important;
        border-radius: 6px !important;
        padding: 10px 24px !important;
        box-shadow: 0 4px 14px rgba(14, 165, 233, 0.3) !important;
        transition: all 0.3s ease !important;
    }

    .elementor-nav-menu .menu-cta > a:hover {
        background: #0284C7 !important;
        color: #FFFFFF !important;
        box-shadow: 0 6px 20px rgba(14, 165, 233, 0.4) !important;
        transform: translateY(-2px) scale(1.05) !important;
    }

    /* Hamburger colour on scroll - DESKTOP ONLY */
    .elementor-sticky--effects .elementor-menu-toggle i {
        color: #1E3A5F !important;
    }

}

/* ==========================================
   MOBILE - Remove ONLY button-specific styles
   ========================================== */

@media (max-width: 767px) {

    .elementor-nav-menu .menu-cta > a {
        border-radius: 0 !important;
        box-shadow: none !important;
        transform: none !important;
    }

    .elementor-nav-menu .menu-cta > a:hover {
        box-shadow: none !important;
        transform: none !important;
    }

    /* Fix dropdown - auto width, fit content */
    .elementor-nav-menu--dropdown {
        width: auto !important;
        min-width: 200px !important;
        max-width: calc(100vw - 40px) !important;
        right: 20px !important;
        left: auto !important;
    }

    .elementor-nav-menu--dropdown a {
        white-space: nowrap !important;
    }

    /* Keep hamburger white on mobile (even when scrolled) */
    .elementor-menu-toggle i,
    .elementor-sticky--effects .elementor-menu-toggle i {
        color: #FFFFFF !important;
    }

}

/* ==========================================
   ALL VIEWPORTS
   ========================================== */

.elementor-menu-toggle i {
    transition: color 0.3s ease;
}

/* ==========================================
   FLUENT BOOKING - Mobile text fix
   ========================================== */

@media (max-width: 767px) {

    /* Make the side panel responsive */
    .fcal_calendar_inner .fcal_side {
        width: 100% !important;
        min-width: unset !important;
        max-width: 100% !important;
        padding: 1.25rem 1rem !important;
    }

    /* Fix description text wrapping */
    .fcal_calendar_inner .fcal_side .fcal_slot_description {
        word-wrap: break-word !important;
        overflow-wrap: break-word !important;
        white-space: normal !important;
    }

    /* Ensure the whole calendar wrapper is responsive */
    .fcal_wrap,
    .fcal_calendar_inner {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    /* Fix any inner containers */
    .fcal_cal_wrap {
        width: 100% !important;
        max-width: 100% !important;
    }

}

/* Fluent Booking calendar navigation arrows */
.fcal_date_wrapper .calendar-header .calendar_nav {
    display: flex;
    align-items: center;
    gap: 4px;
}

.fcal_date_wrapper .calendar-header .calendar_nav button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
}/* End custom CSS */