/* ==============================================
   HEADER BASE STYLES
   ============================================== */

.main-header,
.second-header {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  background: transparent;
  padding: 2px 0;
  backdrop-filter: blur(0px);
  /* Add min-height to prevent collapse */
  min-height: 80px;
}

.main-header.scrolled,
.second-header.scrolled {
  background: rgba(255, 255, 255, 0.95) !important;
  backdrop-filter: blur(15px);
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  padding: 2px 0;
  min-height: 70px;
}

/* ==============================================
   LOGO MANAGEMENT
   ============================================== */

.header-logo {
  transition: all 0.4s ease;
  display: inline-block;
}

/* Default: white logo for transparent header */
.main-header .header-logo img,
.second-header .header-logo img {
  transition: all 0.4s ease;
  filter: brightness(0) invert(1);
}

/* Scrolled: original logo colors */
.main-header.scrolled .header-logo img,
.second-header.scrolled .header-logo img {
  filter: none;
}

/* Homepage: hide logo until scroll */
body.home .main-header .header-logo,
body.page-id-72 .main-header .header-logo {
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
}

body.home .main-header.scrolled .header-logo,
body.page-id-72 .main-header.scrolled .header-logo {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* ==============================================
   BURGER MENU ICON
   ============================================== */

.burger-menu .elementor-icon i,
.burger-menu .elementor-icon svg {
  display: none !important;
}

.burger-menu .elementor-icon {
  width: 50px !important;
  height: 40px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  cursor: pointer;
  color: #918f90;
}

.burger-menu .elementor-icon::before,
.burger-menu .elementor-icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 50px;
  height: 3.3px;
  background: currentColor;
  pointer-events: none;
  transition: transform 0.8s ease, top 0.8s ease, opacity 0.8s ease,
    box-shadow 0.8s ease;
  transform-origin: center center;
}

.burger-menu .elementor-icon::before {
  transform: translate(-50%, -50%);
  box-shadow: 0 -10px 0 currentColor, 0 10px 0 currentColor;
}

.burger-menu .elementor-icon::after {
  opacity: 0;
  transform: translate(-50%, -50%);
}

.burger-menu.active .elementor-icon::before {
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  box-shadow: none;
}

.burger-menu.active .elementor-icon::after {
  opacity: 1;
  top: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}

.burger-menu:hover .elementor-icon::before,
.burger-menu.active:hover .elementor-icon::after {
  opacity: 0.4 !important;
}

/* ==============================================
   LANGUAGE MENU (shared by both headers)
   ============================================== */

/* Hide toggle arrows */
.langmenu
  .trp-language-switcher-container
  .uael-has-submenu-container
  .uael-menu-toggle,
.langmenu
  .trp-language-switcher-container
  .uael-has-submenu-container
  .sub-arrow,
.langmenu
  .trp-language-switcher-container
  .uael-has-submenu-container
  .uael-menu-toggle
  i,
.langmenu li.menu-item-has-children > a:after,
.langmenu i {
  display: none !important;
  visibility: hidden !important;
}

/* Dropdown container */
.langmenu .sub-menu {
  background: #000 !important;
  padding: 0 !important;
  width: 40px !important;
  min-width: 0 !important;
  border-radius: 4px;
  overflow: hidden;
}

.langmenu .sub-menu li {
  margin: 0 !important;
  padding: 0 !important;
  height: 30px !important;
  line-height: 32px !important;
  list-style: none;
}

.langmenu .sub-menu li > a {
  display: block !important;
  width: 80% !important;
  height: 100% !important;
  text-align: center !important;
  color: #fff !important;
  text-decoration: none !important;
  padding: 0 !important;
}

.langmenu .sub-menu li > a:hover {
  background: #222 !important;
}

/* ==============================================
   BUTTON BOUNCE ANIMATION
   ============================================== */

@keyframes press-once {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}

.bbutton {
  transform-origin: center center;
  will-change: transform;
}

.bbutton:hover {
  animation: press-once 0.3s ease-out 0s 1 both;
}

/* ==============================================
   HERO SECTION ADJUSTMENTS
   ============================================== */

.elementor-location-header ~ .elementor-section:first-child,
.elementor-location-header ~ main .elementor-section:first-child {
  padding-top: 0 !important;
}

.hero-section {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ==============================================
   MOBILE FIXES - CRITICAL
   ============================================== */

@media (max-width: 1024px) {
  .main-header,
  .second-header {
    padding: 15px 0 !important;
    min-height: 70px !important;
    /* Force GPU acceleration */
    transform: translate3d(0, 0, 0) !important;
    -webkit-transform: translate3d(0, 0, 0) !important;
    will-change: background, padding;
    /* DISABLE backdrop-filter on mobile - causes performance issues */
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    /* Faster transitions */
    transition: padding 0.2s ease, background 0.2s ease !important;
  }

  .main-header.scrolled,
  .second-header.scrolled {
    padding: 10px 0 !important;
    min-height: 60px !important;
    /* Solid background instead of backdrop blur on mobile */
    background: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  /* Faster logo transitions on mobile */
  .header-logo,
  .header-logo img {
    transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease,
      filter 0.2s ease !important;
  }
}

@media (max-width: 768px) {
  .main-header,
  .second-header {
    padding: 12px 0 !important;
    min-height: 65px !important;
  }

  .main-header.scrolled,
  .second-header.scrolled {
    padding: 8px 0 !important;
    min-height: 55px !important;
  }
}

/* Safari-specific fixes */
@supports (-webkit-touch-callout: none) {
  .main-header,
  .second-header {
    position: fixed !important;
    top: 0 !important;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

/* iOS-specific: prevent elastic scroll issues */
@supports (-webkit-overflow-scrolling: touch) {
  body {
    position: relative;
  }
  
  .main-header,
  .second-header {
    position: fixed !important;
    top: 0 !important;
    transform: translate3d(0, 0, 0);
  }
}