#main-header {
  position: sticky;
  top: 0;
  z-index: 3000;
  background: #fff;
  margin-top: 0;
  transform: translateY(0);
  transition: transform .42s cubic-bezier(.22, 1, .36, 1), box-shadow .28s ease;
  will-change: transform;
}

#main-header.is-hidden {
  transform: translateY(-105%);
}

#main-header.is-compact {
  box-shadow: 0 16px 35px rgba(15,23,42,.08);
}

html {
  scroll-padding-top: 170px;
}

/* ===== TOP BAR ===== */
.topbar {
  background:#fff;
  border-bottom:1px solid #eee;
  padding:8px 0;
}
.topbar-inner {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:38px;
  flex-wrap:nowrap; /* ✅ keeps everything on one line */
  overflow:hidden;
}
.topbar-logo img {
  height:92px;
  display:block;
}

/* Topbar items */
.topbar-item {
  display:flex;
  align-items:center;
  gap:10px;
  white-space:nowrap;
  text-decoration:none;
  color:inherit;
}
.topbar-icon {
  width:24px;
  height:24px;
  object-fit:contain;
  /* Convert black SVG → #e23b31 automatically */
  filter: invert(28%) sepia(76%) saturate(1902%) hue-rotate(349deg) brightness(91%) contrast(91%);
}
.topbar-item span { font-size:13px; color:#666; }
.topbar-item strong { font-size:15px; font-weight:700; color:#111; }

/* ===== MAIN NAV ===== */
.main-nav {
  background:#fff;
  padding:16px 0;
  border-bottom:1px solid #f1f1f1;
}
.nav-inner {
  display:flex;
  align-items:center;
  justify-content:flex-start; /* ✅ menu aligned to left */
  width:100%;
  gap:32px;
}

/* Menu */
.nav-menu {
  display:flex;
  align-items:center;
  gap:30px;
  list-style:none;
  margin:0;
  padding:0;
  white-space:nowrap;
}
.nav-menu li {
  position: relative;
}
.nav-menu a {
  text-decoration:none;
  font-weight:600;
  color:#111;
  transition:.25s;
}
.nav-menu a:hover,
.nav-menu a.active {
  color:#e23b31;
}
.nav-submenu {
  position: absolute;
  top: calc(100% + 12px);
  left: 0;
  min-width: 230px;
  padding: 10px;
  list-style: none;
  background: #fff;
  border: 1px solid #eee;
  border-radius: 10px;
  box-shadow: 0 18px 40px rgba(0,0,0,.12);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: .2s ease;
  z-index: 50;
}
.nav-submenu a {
  display: block;
  padding: 10px 12px;
  border-radius: 8px;
  font-size: 14px;
}
.nav-submenu a:hover {
  background: rgba(226,59,49,.08);
}
.nav-has-submenu:hover .nav-submenu,
.nav-has-submenu:focus-within .nav-submenu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* CTA Buttons */
.nav-cta {
  margin-left:auto; /* ✅ pushes CTA to the right */
  display:flex;
  align-items:center;
  gap:14px;
}
.btn-red {
  background:#e23b31;
  color:#fff;
  padding:10px 22px;
  border-radius:6px;
  font-weight:600;
  text-decoration:none;
}
.btn-outline-red {
  border:2px solid #e23b31;
  color:#e23b31;
  padding:10px 22px;
  border-radius:6px;
  font-weight:600;
  text-decoration:none;
}
.btn-outline-red:hover { background:#e23b31; color:#fff; }
.language-switcher {
  display: inline-flex;
  align-items: center;
  direction: ltr;
  gap: 2px;
  min-height: 40px;
  padding: 4px;
  border: 1px solid rgba(226, 59, 49, .2);
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(226, 59, 49, .08);
  color: #9f2b25;
  font-size: 13px;
  font-weight: 800;
}
.language-switcher > span {
  display: none;
}
.language-option {
  border: 0;
  background: transparent;
  color: #7a7a7a;
  cursor: pointer;
  font: inherit;
  min-width: 36px;
  min-height: 30px;
  padding: 0 9px;
  border-radius: 999px;
  transition: background .2s ease, color .2s ease, box-shadow .2s ease;
}
.language-option.is-active {
  color: #fff;
  background: linear-gradient(135deg,#ff3d3d 0%,#e40046 100%);
  box-shadow: 0 8px 18px rgba(226,59,49,.18);
}
.topbar-language-switcher {
  margin-left: auto;
  flex: 0 0 auto;
  order: 99;
}
html[dir="rtl"] .topbar-inner {
  direction: ltr;
}
html[dir="rtl"] .topbar-logo {
  flex: 0 0 auto;
}
html[dir="rtl"] .topbar-item div,
html[dir="rtl"] .nav-menu,
html[dir="rtl"] .nav-cta {
  direction: rtl;
}
html[dir="rtl"] .topbar-language-switcher {
  margin-left: auto;
  margin-right: 0;
}
html[dir="rtl"] .nav-submenu {
  left: auto;
  right: 0;
  text-align: right;
}
.skiptranslate,
.goog-te-banner-frame,
.goog-te-balloon-frame,
.goog-te-menu-frame,
.goog-te-gadget,
.goog-te-spinner-pos,
.goog-tooltip,
#goog-gt-tt,
#google_translate_element {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
iframe.skiptranslate,
body > .skiptranslate,
.VIpgJd-ZVi9od-ORHb-OEVmcd,
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf,
.VIpgJd-yAWNEb-L7lbkb {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  width: 0 !important;
  height: 0 !important;
  max-width: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
}
body {
  top: 0 !important;
}
html.rhs-translating body {
  opacity: 0;
}
html.rhs-translation-ready body,
html:not(.rhs-translating) body {
  opacity: 1;
}
.translated-ltr font,
.translated-rtl font {
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: inherit !important;
}
.rhs-hero-arrow,
.rhs-sector-arrow,
.test-arrow,
.rhs-hero-dots button,
.rhs-sector-dots button,
.test-dots button,
[data-no-i18n] {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  user-select: none;
}
.rhs-hero-arrow font,
.rhs-sector-arrow font,
.test-arrow font,
[data-no-i18n] font {
  pointer-events: none;
}
html[dir="rtl"] .rhs-hero-slider,
html[dir="rtl"] #hero-slider,
html[dir="rtl"] .hero-track,
html[dir="rtl"] .rhs-sector-carousel,
html[dir="rtl"] .rhs-sector-window,
html[dir="rtl"] .rhs-sector-track,
html[dir="rtl"] .rhs-sector-dots,
html[dir="rtl"] .rhs-hero-dots {
  direction: ltr;
}
html[dir="rtl"] .rhs-sector-card,
html[dir="rtl"] .slide .rhs-hero-copy,
html[dir="rtl"] .rhs-hero-content {
  direction: rtl;
}
html[dir="rtl"] .rhs-hero-arrow,
html[dir="rtl"] .rhs-sector-arrow {
  direction: ltr;
}
.goog-text-highlight {
  background: transparent !important;
  box-shadow: none !important;
}
html.rhs-google-translate-active [data-reveal],
html.rhs-google-translate-active [data-animate],
html.rhs-google-translate-active .rhs-reveal,
html.rhs-google-translate-active [data-rhs-animate] {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}

/* ===== MOBILE TOGGLE BUTTON ===== */
#nav-toggle {
  display:none;
  background:none;
  border:none;
  cursor:pointer;
}
#nav-toggle span {
  width:24px;
  height:2px;
  background:#111;
  display:block;
  margin:5px 0;
}

/* ✅ Keep phone visible, hide other topbar items */
@media(max-width:1100px){
  .topbar-hours,
  .topbar-address {
    display:none;
  }
  .topbar-phone {
    display:flex;
  }

  .topbar-language-switcher {
    margin-left: auto;
  }
}

/* ✅ Mobile menu open/close */
@media(max-width:900px){
  #nav-toggle { display:block; }

  /* default hidden */
  .nav-menu, .nav-cta { display:none; }

  /* open state */
  .main-nav.is-open .nav-inner {
    flex-wrap:wrap;
    row-gap:14px;
  }

  .main-nav.is-open .nav-menu {
    display:flex;
    flex-direction:column;
    width:100%;
    gap:14px;
    padding:12px 0 0;
  }

  .main-nav.is-open .nav-menu li {
    width: 100%;
  }

  .main-nav.is-open .nav-submenu {
    position: static;
    opacity: 1;
    visibility: visible;
    transform: none;
    box-shadow: none;
    border-radius: 8px;
    margin-top: 8px;
    width: 100%;
    background: #fafafa;
  }

  .main-nav.is-open .nav-cta {
    display:flex;
    width:100%;
    flex-direction:column;
    gap:10px;
    padding:10px 0 0;
    margin-left:0; /* override auto */
  }

  .main-nav.is-open .nav-cta a {
    width:100%;
    text-align:center;
  }

}

/* Your slider spacing reset */
#hero-slider {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.slide {
  margin: 0 !important;
  padding: 0 !important;
}
/* ===== RESPONSIVE MEDIA QUERIES ===== */

/* Hide topbar items except phone on smaller screens */
@media (max-width: 1100px) {
  .topbar-hours,
  .topbar-address {
    display: none;
  }
  .topbar-phone {
    display: flex;
  }
}

/* Mobile menu toggle and responsive menu */
@media (max-width: 900px) {
  #nav-toggle {
    display: block;
  }

  /* Hide menu and CTA by default */
  .nav-menu,
  .nav-cta {
    display: none;
  }

  /* Open state */
  .main-nav.is-open .nav-inner {
    flex-wrap: wrap;
    row-gap: 14px;
  }

  .main-nav.is-open .nav-menu {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 14px;
    padding: 12px 0 0;
  }

  .main-nav.is-open .nav-cta {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: 10px;
    padding: 10px 0 0;
    margin-left: 0; /* override auto */
  }

  .main-nav.is-open .nav-cta a {
    width: 100%;
    text-align: center;
  }
}

/* About page hero adjustments for smaller screens */
@media (max-width: 992px) {
  .about-page .about-hero {
    height: auto;
    padding: 70px 0 60px;
    background-position: center;
  }
  .about-page .director-card {
    flex-direction: column;
  }
  .about-page .testimonials-grid {
    grid-template-columns: 1fr;
  }
  .about-page .why-grid {
    grid-template-columns: 1fr;
  }
}

/* Final mobile navbar stabilization */
@media (max-width: 900px) {
  html {
    scroll-padding-top: 118px;
  }

  #main-header {
    width: 100%;
    overflow: visible;
  }

  #main-header.is-hidden:has(.main-nav.is-open) {
    transform: translateY(0);
  }

  .topbar {
    padding: 6px 0;
  }

  .topbar-inner {
    min-height: 58px;
    gap: 12px;
    justify-content: space-between;
    overflow: visible;
  }

  .topbar-logo {
    min-width: 0;
    flex: 0 1 auto;
  }

  .topbar-logo img {
    width: clamp(112px, 34vw, 164px);
    height: auto;
    max-height: 58px;
    object-fit: contain;
  }

  .topbar-phone {
    flex: 0 0 auto;
    gap: 8px;
  }

  .topbar-phone .topbar-icon {
    width: 20px;
    height: 20px;
  }

  .topbar-phone span {
    font-size: 11px;
  }

  .topbar-phone strong {
    font-size: 13px;
  }

  .main-nav {
    padding: 10px 0;
  }

  .nav-inner {
    justify-content: flex-end;
    gap: 0;
  }

  #nav-toggle {
    position: relative;
    z-index: 2;
    display: inline-flex;
    width: 42px;
    height: 42px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(226, 59, 49, .18);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 10px 22px rgba(15, 23, 42, .08);
  }

  #nav-toggle span {
    width: 18px;
    margin: 3px 0;
    transition: transform .2s ease, opacity .2s ease;
  }

  .main-nav.is-open #nav-toggle span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }

  .main-nav.is-open #nav-toggle span:nth-child(2) {
    opacity: 0;
  }

  .main-nav.is-open #nav-toggle span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }

  .main-nav.is-open .nav-inner {
    flex-wrap: wrap;
  }

  .main-nav.is-open .nav-menu {
    order: 2;
    width: 100%;
    max-height: min(70vh, 560px);
    overflow-y: auto;
    overscroll-behavior: contain;
    gap: 8px;
    margin-top: 10px;
    padding: 10px;
    border: 1px solid #f0d6d3;
    border-radius: 14px;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 18px 42px rgba(15, 23, 42, .12);
  }

  .main-nav.is-open .nav-menu > li {
    width: 100%;
    border-bottom: 1px solid #f4eeee;
  }

  .main-nav.is-open .nav-menu > li:last-child {
    border-bottom: 0;
  }

  .main-nav.is-open .nav-menu > li > a {
    display: flex;
    min-height: 44px;
    align-items: center;
    justify-content: space-between;
    padding: 0 6px;
    font-size: 15px;
  }

  .main-nav.is-open .nav-has-submenu > a::after {
    content: "+";
    color: #e23b31;
    font-size: 18px;
    line-height: 1;
  }

  .main-nav.is-open .nav-has-submenu.is-submenu-open > a::after {
    content: "-";
  }

  .main-nav.is-open .nav-submenu {
    display: none;
    position: static;
    width: 100%;
    min-width: 0;
    margin: 0 0 10px;
    padding: 6px;
    border: 0;
    border-radius: 10px;
    background: #fff7f6;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    transform: none;
  }

  .main-nav.is-open .nav-has-submenu.is-submenu-open .nav-submenu {
    display: block;
  }

  .main-nav.is-open .nav-submenu a {
    padding: 10px;
    white-space: normal;
  }

  .main-nav.is-open .nav-cta {
    order: 3;
    width: 100%;
    margin-left: 0;
    padding-top: 10px;
  }
}

@media (max-width: 480px) {
  .topbar-inner {
    min-height: 52px;
  }

  .topbar-logo img {
    width: clamp(94px, 32vw, 128px);
    max-height: 50px;
  }

  .topbar-phone {
    width: auto;
    height: 42px;
    min-width: 0;
    padding: 0 11px;
    justify-content: center;
    border: 1px solid rgba(226, 59, 49, .16);
    border-radius: 10px;
    background: #fff7f6;
  }

  .topbar-phone div {
    display: block;
    min-width: 0;
  }

  .topbar-phone span {
    display: none;
  }

  .topbar-phone strong {
    display: block;
    max-width: 128px;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 12px;
    line-height: 1;
  }

  .main-nav.is-open .nav-menu {
    max-height: min(68vh, 500px);
  }

  .topbar-language-switcher {
    min-height: 34px;
    padding: 0 8px;
    font-size: 12px;
  }
}
