.elementor-35 .elementor-element.elementor-element-42299df{--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:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:18px;--padding-bottom:18px;--padding-left:40px;--padding-right:40px;}.elementor-35 .elementor-element.elementor-element-42299df:not(.elementor-motion-effects-element-type-background), .elementor-35 .elementor-element.elementor-element-42299df > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-35 .elementor-element.elementor-element-edd564b{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-35 .elementor-element.elementor-element-67c1f0a{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-35 .elementor-element.elementor-element-fa51b28 img{width:310px;}.elementor-35 .elementor-element.elementor-element-f64d02e{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-35 .elementor-element.elementor-element-cf895e1 .elementor-menu-toggle{margin-left:auto;}.elementor-35 .elementor-element.elementor-element-cf895e1 .elementor-nav-menu .elementor-item{font-family:"Inter", Sans-serif;font-size:15px;font-weight:500;letter-spacing:0.2px;}.elementor-35 .elementor-element.elementor-element-cf895e1 .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;}.elementor-35 .elementor-element.elementor-element-cf895e1 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-35 .elementor-element.elementor-element-cf895e1 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-35 .elementor-element.elementor-element-cf895e1 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-35 .elementor-element.elementor-element-cf895e1 .elementor-nav-menu--main .elementor-item:focus{color:#F5B303;fill:#F5B303;}.elementor-35 .elementor-element.elementor-element-cf895e1 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#F5B303;}.elementor-35 .elementor-element.elementor-element-cf895e1{--e-nav-menu-horizontal-menu-item-margin:calc( 28px / 2 );--nav-menu-icon-size:28px;}.elementor-35 .elementor-element.elementor-element-cf895e1 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:28px;}.elementor-35 .elementor-element.elementor-element-cf895e1 .elementor-nav-menu--dropdown .elementor-item, .elementor-35 .elementor-element.elementor-element-cf895e1 .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"Inter", Sans-serif;font-size:16px;font-weight:600;}.elementor-35 .elementor-element.elementor-element-cf895e1 .elementor-nav-menu--dropdown{border-style:solid;border-width:1px 0px 0px 0px;border-color:rgba(245,179,3,0.18);}.elementor-35 .elementor-element.elementor-element-cf895e1 div.elementor-menu-toggle{color:#FFFFFF;}.elementor-35 .elementor-element.elementor-element-cf895e1 div.elementor-menu-toggle svg{fill:#FFFFFF;}.elementor-35 .elementor-element.elementor-element-cf895e1 div.elementor-menu-toggle:hover, .elementor-35 .elementor-element.elementor-element-cf895e1 div.elementor-menu-toggle:focus{color:#F5B303;}.elementor-35 .elementor-element.elementor-element-cf895e1 div.elementor-menu-toggle:hover svg, .elementor-35 .elementor-element.elementor-element-cf895e1 div.elementor-menu-toggle:focus svg{fill:#F5B303;}.elementor-35 .elementor-element.elementor-element-c2615e2{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-35 .elementor-element.elementor-element-32661cd .elementor-button{background-color:#000000;font-family:"Inter", Sans-serif;font-size:15px;font-weight:500;letter-spacing:0.2px;fill:#FFFFFF;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#FFFFFF;border-radius:40px 40px 40px 40px;padding:12px 30px 12px 30px;}.elementor-35 .elementor-element.elementor-element-32661cd .elementor-button:hover, .elementor-35 .elementor-element.elementor-element-32661cd .elementor-button:focus{background-color:#FFFFFF;color:#000000;}.elementor-35 .elementor-element.elementor-element-32661cd .elementor-button:hover svg, .elementor-35 .elementor-element.elementor-element-32661cd .elementor-button:focus svg{fill:#000000;}.elementor-35 .elementor-element.elementor-element-5ef8536 .elementor-button{background-color:#F5B303;font-family:"Inter", Sans-serif;font-size:15px;font-weight:600;letter-spacing:0.2px;fill:#0A0A0A;color:#0A0A0A;border-style:solid;border-width:1px 1px 1px 1px;border-color:#F5B303;border-radius:40px 40px 40px 40px;padding:12px 30px 12px 30px;}.elementor-35 .elementor-element.elementor-element-5ef8536 .elementor-button:hover, .elementor-35 .elementor-element.elementor-element-5ef8536 .elementor-button:focus{background-color:#FFD34D;color:#0A0A0A;}.elementor-35 .elementor-element.elementor-element-5ef8536 .elementor-button:hover svg, .elementor-35 .elementor-element.elementor-element-5ef8536 .elementor-button:focus svg{fill:#0A0A0A;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-35 .elementor-element.elementor-element-67c1f0a{--width:330px;}.elementor-35 .elementor-element.elementor-element-c2615e2{--width:340px;}}@media(max-width:1024px){.elementor-35 .elementor-element.elementor-element-42299df{--padding-top:14px;--padding-bottom:14px;--padding-left:24px;--padding-right:24px;}}@media(max-width:767px){.elementor-35 .elementor-element.elementor-element-42299df{--padding-top:12px;--padding-bottom:12px;--padding-left:16px;--padding-right:16px;}.elementor-35 .elementor-element.elementor-element-fa51b28 img{width:200px;}}/* Start custom CSS for container, class: .elementor-element-42299df *//* Sticky header — same as before */
.elementor-35 .elementor-element.elementor-element-42299df { border-bottom: 1px solid rgba(255,255,255,0.06); position: sticky !important; top: 0; z-index: 1000; backdrop-filter: saturate(140%) blur(8px); -webkit-backdrop-filter: saturate(140%) blur(8px); background-color: rgba(0,0,0,0.92) !important; }
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-inner { max-width: 1400px !important; width: 100% !important; margin: 0 auto !important; flex-wrap: nowrap !important; }
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu { justify-content: center; }
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu > li { position: relative; }
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu > li > a { color: #FFFFFF !important; font-family: Inter, sans-serif !important; font-size: 15px !important; font-weight: 500 !important; padding: 8px 4px !important; text-transform: none !important; letter-spacing: 0.1px !important; }
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu > li > a:hover,
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu > li.current-menu-item > a { color: #F5B303 !important; }
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu > li > a .sub-arrow { color: inherit !important; margin-left: 4px !important; transition: transform 0.2s ease; }
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu > li:hover > a .sub-arrow { transform: rotate(180deg); }

/* Desktop nav: HIDE the two mobile-only CTA items so the horizontal nav stays clean.
   These render only inside the mobile dropdown drawer. */
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu--main li.menu-cta-signin,
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu--main li.menu-cta-book { display: none !important; }

/* Desktop dropdown submenu (existing brand card) */
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu > li > .sub-menu {
  background: #0A0A0A !important; border: 1px solid rgba(245,179,3,0.18) !important; border-radius: 12px !important;
  box-shadow: 0 18px 44px rgba(0,0,0,0.55), 0 2px 6px rgba(245,179,3,0.08) !important;
  padding: 8px !important; min-width: 260px !important; margin-top: 0 !important; padding-top: 22px !important;
  background-clip: padding-box !important; opacity: 0 !important; transform: translateY(6px) !important;
  transition: opacity 0.18s ease, transform 0.18s ease !important; visibility: hidden !important;
}
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu > li > .sub-menu::before { content: ""; position: absolute; top: -14px; left: 0; right: 0; height: 22px; background: transparent; }
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu > li:hover > .sub-menu,
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu > li:focus-within > .sub-menu,
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu > li > .sub-menu:hover { opacity: 1 !important; transform: translateY(0) !important; visibility: visible !important; }
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .sub-menu > li { list-style: none !important; }
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .sub-menu > li > a { color: #FFFFFF !important; font-family: Inter, sans-serif !important; font-size: 14px !important; font-weight: 500 !important; letter-spacing: 0 !important; text-transform: none !important; padding: 10px 14px !important; border-radius: 8px !important; display: block !important; transition: background 0.15s ease, color 0.15s ease, padding-left 0.15s ease !important; }
.elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .sub-menu > li > a:hover { background: rgba(245,179,3,0.10) !important; color: #F5B303 !important; padding-left: 18px !important; }
.elementor-35 .elementor-element.elementor-element-42299df .elementor-button, .elementor-35 .elementor-element.elementor-element-42299df .elementor-button-text { text-transform: none !important; white-space: nowrap !important; letter-spacing: 0.1px !important; }
.elementor-35 .elementor-element.elementor-element-42299df .elementor-widget-button { width: auto !important; flex: 0 0 auto !important; }
.elementor-35 .elementor-element.elementor-element-42299df .elementor-widget-button .elementor-widget-container, .elementor-35 .elementor-element.elementor-element-42299df .elementor-widget-button .elementor-button-wrapper { width: max-content !important; display: block; }
.elementor-35 .elementor-element.elementor-element-42299df .elementor-widget-button .elementor-button { display: inline-flex !important; align-items: center; justify-content: center; }

/* -------------------- TABLET / MOBILE (≤1024px) — Pattern C -------------------- */
@media (max-width: 1024px) {
  /* Hide horizontal ul but keep the widget so hamburger toggle renders */
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu--main { display: none !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu--dropdown-toggle,
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-center div[class*="elementor-menu-toggle"] { display: flex !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-center { flex-grow: 0 !important; width: auto !important; margin-left: auto !important; }
  /* Hide the Sign In + Book a Demo PILL WIDGETS from the top bar — they now live in the drawer */
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-inner > .e-con:nth-child(3) { display: none !important; }
  /* Logo can now use the full space it needs */
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-inner .elementor-widget-image img { max-width: 240px !important; height: auto !important; }
}

/* -------------------- MOBILE (≤767px) -------------------- */
@media (max-width: 767px) {
  .elementor-35 .elementor-element.elementor-element-42299df { padding: 12px 16px !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-inner { gap: 12px !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: space-between !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-inner .elementor-widget-image img { max-width: 220px !important; height: auto !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-menu-toggle { font-size: 28px !important; padding: 8px !important; color: #FFFFFF !important; }

  /* Drawer container */
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-nav-menu--dropdown { background: #0A0A0A !important; border-top: 1px solid rgba(245,179,3,0.18) !important; padding: 8px 0 24px 0 !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-nav-menu--dropdown a { color: #FFFFFF !important; font-family: Inter, sans-serif !important; font-size: 16px !important; font-weight: 500 !important; padding: 16px 28px !important; border: none !important; }
.elementor-35 .elementor-element.elementor-element-42299df .elementor-nav-menu--dropdown > .elementor-nav-menu > li { border-bottom: 1px solid rgba(255,255,255,0.06) !important; }
.elementor-35 .elementor-element.elementor-element-42299df .elementor-nav-menu--dropdown > .elementor-nav-menu > li:last-child { border-bottom: none !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-nav-menu--dropdown a:hover,
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-nav-menu--dropdown .current-menu-item > a { color: #F5B303 !important; background: rgba(245,179,3,0.08) !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-nav-menu--dropdown .sub-menu a { padding-left: 36px !important; font-size: 14px !important; }

  /* Sign In row — subtle separator above so it's clearly distinct from the main nav */
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-nav-menu--dropdown li.menu-cta-signin { border-top: 1px solid rgba(255,255,255,0.14) !important; border-bottom: none !important; margin-top: 12px !important; padding-top: 4px !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-nav-menu--dropdown li.menu-cta-signin > a { color: #CFCFCF !important; }

  /* Book a Demo — bright yellow full-width CTA pinned near the bottom of the drawer */
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-nav-menu--dropdown li.menu-cta-book { margin: 20px 28px 0 28px !important; border-bottom: none !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-nav-menu--dropdown li.menu-cta-book > a {
    background: #F5B303 !important;
    color: #0A0A0A !important;
    border-radius: 40px !important;
    padding: 16px 24px !important;
    text-align: center !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    transition: background 0.15s ease !important;
  }
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-nav-menu--dropdown li.menu-cta-book > a:hover { background: #FFD34D !important; color: #0A0A0A !important; }
}

/* -------------------- SMALL MOBILE (≤480px) -------------------- */
@media (max-width: 480px) {
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-inner .elementor-widget-image img { max-width: 190px !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-menu-toggle { font-size: 26px !important; padding: 6px !important; }
}
/* --- Mobile drawer specificity override (must sit AFTER the desktop rule) --- */
@media (max-width: 767px) {
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu--dropdown > .elementor-nav-menu > li > a {
    padding: 16px 28px !important;
    font-size: 16px !important;
    font-weight: 500 !important;
  }
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu--dropdown > .elementor-nav-menu > li {
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
  }
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu--dropdown > .elementor-nav-menu > li:last-child {
    border-bottom: none !important;
  }
  /* Sign-in / Book-a-Demo rows keep their special styling — clear the divider so they don't get a stray line */
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu--dropdown > .elementor-nav-menu > li.menu-cta-signin {
    border-top: 1px solid rgba(255,255,255,0.14) !important;
    border-bottom: none !important;
  }
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu--dropdown > .elementor-nav-menu > li.menu-cta-book {
    border-bottom: none !important;
  }
}
/* --- Mid-desktop header responsiveness (1200-1440px) ---
   Between the mobile hamburger breakpoint (≤1024px) and the wide-desktop
   comfy zone (≥1440px), the horizontal nav can get squeezed. Tighten the
   menu item spacing and let the center group flex-shrink so nothing overlaps. */
@media (min-width: 1025px) and (max-width: 1439.98px) {
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-inner { gap: 16px !important; padding: 0 20px !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-inner > .e-con:nth-child(1) { flex: 0 0 auto !important; width: auto !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-inner > .e-con:nth-child(2) { flex: 1 1 auto !important; min-width: 0 !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-inner > .e-con:nth-child(3) { flex: 0 0 auto !important; width: auto !important; gap: 12px !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu > li > a { padding: 8px 2px !important; font-size: 14px !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-widget-image img { max-width: 260px !important; height: auto !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-button { padding: 10px 20px !important; font-size: 14px !important; }
}
/* Extra-tight breakpoint just before dropdown kicks in */
@media (min-width: 1025px) and (max-width: 1199.98px) {
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-widget-image img { max-width: 220px !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-center .elementor-nav-menu > li > a { font-size: 13px !important; padding: 8px 2px !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .csh-header-inner > .e-con:nth-child(3) { gap: 8px !important; }
  .elementor-35 .elementor-element.elementor-element-42299df .elementor-button { padding: 8px 16px !important; font-size: 13px !important; }
}/* End custom CSS */