/* WP360 Slim Header (2026-10-02). Elementor header template 1128.
   Row: logo (999e8d1) | menu (d462132 > mega-menu 9e7b296) | button (a58e4bd).
   Desktop: a 76px bar, items never wrap, everything on one baseline.
   Phone: logo, Contact Us and Elementor's menu toggle on one 64px bar; the open
   menu is a stacked panel under the bar.

   Selectors are "header.elementor-location-header .elementor-element.elementor-element-ID"
   (specificity 0,3,1) so they out-rank Elementor's own per-element rules
   (".elementor-1128 .elementor-element.elementor-element-ID", 0,3,0), which set the
   same custom properties. */

/* ── The bar, all widths ─────────────────────────────────────────────── */
header.elementor-location-header .elementor-element.elementor-element-dca7a40 {
  --padding-top: 0px;
  --padding-bottom: 0px;
  --padding-left: 24px;
  --padding-right: 24px;
  --gap: 0px 24px;
  --row-gap: 0px;
  --column-gap: 24px;
  --align-items: center;
  --flex-wrap-mobile: nowrap;
}
header.elementor-location-header .elementor-element.elementor-element-dca7a40 > .e-con-inner {
  min-height: 76px;
  align-items: center;
  flex-wrap: nowrap;
}

/* Logo: a fixed height, the column shrinks to it */
header.elementor-location-header .elementor-element.elementor-element-999e8d1 {
  --width: auto;
  width: auto;
  flex: 0 0 auto;
  --justify-content: center;
}
header.elementor-location-header .elementor-element.elementor-element-04f0012,
header.elementor-location-header .elementor-element.elementor-element-04f0012 > .elementor-widget-container {
  width: auto !important;
  max-width: none;
}
header.elementor-location-header .elementor-element.elementor-element-04f0012 img {
  display: block;
  height: 48px;
  width: auto;
  max-width: none;
}

/* Menu column: takes the room between logo and button */
header.elementor-location-header .elementor-element.elementor-element-d462132 {
  --width: auto;
  width: auto;
  flex: 1 1 auto;
  min-width: 0;
  --justify-content: center;
}
header.elementor-location-header .elementor-element.elementor-element-9e7b296 > .elementor-widget-container {
  margin: 0;
}

/* Contact Us column */
header.elementor-location-header .elementor-element.elementor-element-a58e4bd {
  --width: auto;
  width: auto;
  flex: 0 0 auto;
}
header.elementor-location-header .elementor-element.elementor-element-0341aeb .elementor-button {
  font-size: 15px;
  line-height: 1.2;
  padding: 12px 24px;
  white-space: nowrap;
}

/* ── Desktop menu: one centred line ──────────────────────────────────── */
@media (min-width: 1025px) {
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 {
    --n-menu-heading-wrap: nowrap;
    --n-menu-heading-justify-content: center;
    --n-menu-title-font-size: 15px;
    --n-menu-title-padding: 10px 18px 10px 18px;
    --n-menu-title-space-between: 0px;
  }
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 .e-n-menu-heading {
    column-gap: 4px;
  }
}
@media (min-width: 768px) {
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 .e-n-menu-title,
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 .e-n-menu-title > .e-n-menu-title-container,
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 .e-n-menu-title > .e-n-menu-title-container > span {
    font-weight: 600;
    letter-spacing: 0.2px;
    line-height: 1.2;
  }
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 .e-n-menu-dropdown-icon {
    padding-inline-start: 4px;
  }
}

/* ── Tablet: still one line, a notch smaller ─────────────────────────── */
@media (max-width: 1024px) and (min-width: 768px) {
  header.elementor-location-header .elementor-element.elementor-element-dca7a40 {
    --padding-left: 16px;
    --padding-right: 16px;
    --gap: 0px 12px;
    --column-gap: 12px;
  }
  header.elementor-location-header .elementor-element.elementor-element-dca7a40 > .e-con-inner { min-height: 68px; }
  header.elementor-location-header .elementor-element.elementor-element-04f0012 img { height: 40px; }
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 {
    --n-menu-heading-wrap: nowrap;
    --n-menu-heading-justify-content: center;
    --n-menu-title-font-size: 14px;
    --n-menu-title-padding: 8px 10px 8px 10px;
    --n-menu-title-space-between: 0px;
  }
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 .e-n-menu-heading { column-gap: 0px; }
  header.elementor-location-header .elementor-element.elementor-element-0341aeb .elementor-button {
    font-size: 14px;
    padding: 10px 18px;
  }
}

/* ── Phone: logo | Contact Us | toggle on one bar; stacked panel below ── */
@media (max-width: 767px) {
  header.elementor-location-header .elementor-element.elementor-element-dca7a40 {
    position: relative;
    --padding-left: 16px;
    --padding-right: 8px;
    --gap: 0px 10px;
    --column-gap: 10px;
  }
  header.elementor-location-header .elementor-element.elementor-element-dca7a40 > .e-con-inner {
    min-height: 64px;
  }
  /* The logo column takes the slack so the button and toggle sit right */
  header.elementor-location-header .elementor-element.elementor-element-999e8d1 {
    flex: 1 1 auto;
    --justify-content: flex-start;
  }
  header.elementor-location-header .elementor-element.elementor-element-04f0012 img { height: 36px; }
  header.elementor-location-header .elementor-element.elementor-element-a58e4bd {
    order: 2;
    display: flex;
  }
  header.elementor-location-header .elementor-element.elementor-element-0341aeb .elementor-button {
    font-size: 13px;
    padding: 0 14px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
  header.elementor-location-header .elementor-element.elementor-element-d462132 {
    order: 3;
    flex: 0 0 auto;
    --justify-content: center;
    /* Elementor containers are position:relative; static here, or the open
       panel's containing block is this 64px column instead of the bar. */
    position: static;
  }
  /* The toggle is a real tap target */
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 .e-n-menu-toggle {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
  }
  /* The open menu is positioned against the whole bar, not the 44px toggle,
     so it spans the screen right under the bar whatever the toggle's place. */
  header.elementor-location-header .elementor-element.elementor-element-9e7b296,
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 > .elementor-widget-container,
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 .e-n-menu {
    position: static;
  }
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 .e-n-menu[data-layout="dropdown"] .e-n-menu-wrapper {
    left: 0 !important;
    right: 0 !important;
    width: auto !important;
    top: 100% !important;
    margin: 0;
    padding: 6px 12px 14px;
    background: #203d67;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    box-shadow: 0 18px 30px rgba(10, 22, 44, 0.35);
  }
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 {
    --n-menu-heading-wrap: wrap;
    --n-menu-title-flex-grow: 1;
    --n-menu-title-font-size: 17px;
    --n-menu-title-padding: 14px 12px 14px 12px;
    --n-menu-title-space-between: 2px;
    --n-menu-title-justify-content-mobile: flex-start;
  }
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 .e-n-menu[data-layout="dropdown"] .e-n-menu-heading {
    flex-direction: column;
    align-items: stretch;
  }
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 .e-n-menu[data-layout="dropdown"] .e-n-menu-item {
    width: 100%;
  }
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 .e-n-menu[data-layout="dropdown"] .e-n-menu-title {
    width: 100%;
    border-radius: 10px;
    background-color: transparent !important;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.2px;
  }
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 .e-n-menu[data-layout="dropdown"] .e-n-menu-title:hover,
  header.elementor-location-header .elementor-element.elementor-element-9e7b296 .e-n-menu[data-layout="dropdown"] .e-n-menu-title.e-current {
    background-color: rgba(255, 255, 255, 0.1) !important;
  }
}
