.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}.elementor-646 .elementor-element.elementor-element-header-nav .elementor-menu-toggle{margin:0 auto;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}}@media(max-width:767px){.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}}/* Start custom CSS *//* Header. Transparent by default; the script adds .is-solid on scroll, and
   immediately on any page that has no #hero. Tokens only. */

/* anchors must be told to inherit - the theme colours bare <a> elements, and an
   atomic `color: inherit` is not a valid colour value so it gets dropped. */
#site-header a{color:inherit;text-decoration:none}
#site-header .s-brand,#site-header .s-brand-name{color:inherit}

/* ---- navigation (v3 widget, so it cannot take Global Classes) ---- */
#site-header .elementor-widget-nav-menu{margin-inline-start:auto;width:auto}
#site-header .elementor-nav-menu--main .elementor-item{
  color:inherit;font-family:var(--Body);font-size:.9063rem;font-weight:500;
  letter-spacing:-.005em;padding:6px 13px;   /* 13+13 = the source's 26px rhythm */
  background:transparent;fill:currentColor;
}
#site-header .elementor-nav-menu--main .elementor-item:hover,
#site-header .elementor-nav-menu--main .elementor-item:focus,
#site-header .elementor-nav-menu--main .elementor-item.elementor-item-active{
  color:inherit;background:transparent;
}
#site-header .e--pointer-underline .elementor-item:after{background-color:var(--Orange);height:2px}

/* ---- the solid state ---- */
#site-header.is-solid{
  background:rgba(255,255,255,.92);backdrop-filter:blur(20px) saturate(1.4);
  border-bottom-color:rgba(0,0,0,.07);color:var(--Ink);
  box-shadow:0 6px 30px rgba(20,20,20,.06);
}
#site-header.is-solid .s-brand-sub{color:var(--Text)}

/* ---- the call pill: glass over the video, solid Ink once the bar is solid ---- */
#site-header:not(.is-solid) .s-header-call{
  background:rgba(255,255,255,.16);backdrop-filter:blur(10px);
  box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.3);
}
#site-header .s-header-call,#site-header .s-call-number{color:var(--On-Dark)}

/* ---- burger + mobile panel ---- */
#site-header .elementor-menu-toggle{
  color:inherit;background:transparent;border:0;padding:0;
  width:46px;height:46px;border-radius:14px;
}
#site-header .elementor-menu-toggle:hover{background:transparent}
#site-header .elementor-nav-menu--dropdown{
  background:var(--Background);color:var(--Ink);
  box-shadow:0 24px 50px rgba(0,0,0,.14);border-radius:0 0 var(--Radius-Md) var(--Radius-Md);
}
#site-header .elementor-nav-menu--dropdown a{color:var(--Ink);padding:15px 20px;font-size:1rem}
#site-header .elementor-nav-menu--dropdown a:hover{background:var(--Muted);color:var(--Orange-Deep)}

/* ---- phones: the call pill goes icon-only so it cannot overflow ---- */
@media (max-width:767px){
  #site-header .s-call-stack{display:none}
  #site-header .s-header-call{padding:9px}
}
/* ---- icon colour ----
   Elementor renders the burger, its close icon and the submenu caret as
   .e-font-icon-svg with NO fill attribute, so their colour falls back to CSS that
   points at the v3 kit's Text grey (#7A7A7A) - dark and barely visible over the
   hero. Pin them to the header's own colour so they flip with .is-solid. */
#site-header .elementor-menu-toggle .e-font-icon-svg,
#site-header .elementor-nav-menu .e-font-icon-svg,
#site-header .sub-arrow,
#site-header .sub-arrow .e-font-icon-svg{color:inherit;fill:currentColor}
/* the dropdown panel is a light surface in both states, so its caret stays Ink */
#site-header .elementor-nav-menu--dropdown .e-font-icon-svg{fill:var(--Ink)}

/* ---- below 1025px: group the call button and the burger at the right ----
   The brand carries margin-inline-end:auto to push everything over. The nav widget
   also had margin-inline-start:auto for the desktop layout, and two competing auto
   margins split the free space between them - which left the call button floating
   in the middle of the row instead of next to the burger. Only the brand keeps its
   auto margin below the breakpoint. */
@media (max-width:1024px){
  #site-header .elementor-widget-nav-menu{margin-inline-start:0;margin-inline-end:0}
  #site-header .elementor-menu-toggle{margin:0}
  /* the toggle is a 46px square: keep the glyph centred inside it */
  #site-header .elementor-menu-toggle{display:flex;align-items:center;justify-content:center}
}


/* ---- logo: two assets, swapped with the header state ----
   white.png reads on the hero photo, Neutral.png on the solid white bar. A CSS
   filter is no longer used - it could only ever fake a monochrome logo. */
#site-header .s-brand-logo-dark{display:none}
#site-header.is-solid .s-brand-logo{display:none}
#site-header.is-solid .s-brand-logo-dark{display:block}/* End custom CSS */