.elementor-kit-144{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-144 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* hubble-tokens.css */
:root {
  --hb-bg: #F5F4F0;
  --hb-footer-bg: #0A0A0A;
  --hb-border-primary: #E0DDD1;
  --hb-border-secondary: #C8C5BB;
  --hb-font-ui: 'Switzer', -apple-system, sans-serif;
  --hb-font-heading: 'Cormorant Garamond', Georgia, serif;
  --hb-hero-h1: 84px;
}

body {
  background-color: var(--hb-bg) !important;
  font-family: var(--hb-font-ui) !important;
}

h1.hero-title {
  font-family: var(--hb-font-heading) !important;
  font-size: var(--hb-hero-h1) !important;
}

/* Header Z-Index & Sticky Fix */
header, .elementor-location-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;
    width: 100%;
}

/* Page Container Padding & Flexbox Wrapper */
body {
    display: flex !important;
    flex-direction: column !important;
    min-height: 100vh !important;
    margin: 0 !important;
}

/* Main Content takes remaining space and avoids header overlap */
main, .elementor-location-archive, .elementor-location-single, [data-elementor-type="wp-page"], [data-elementor-type="wp-post"] {
    flex-grow: 1 !important;
    padding-top: 90px !important; 
}

/* Footer to the bottom */
footer, .elementor-location-footer {
    margin-top: auto !important;
    z-index: 998 !important;
}/* End custom CSS */