/* Bagus shared header: consolidated desktop/tablet/mobile rules. Old patch blocks removed. */
:root {
  --bagus-header-height: 7.4rem;
  --bagus-mobile-header-height: 7.4rem;
  --bagus-header-control-height: 4.2rem;
  --bagus-gold: #f6c744;
  --bagus-dark: #15161c;
  --bagus-light: #ffffff;
}
.site-header,
.site-header * { box-sizing: border-box; }
.site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 2147483000 !important;
  width: 100% !important;
  min-width: 0 !important;
  height: var(--bagus-header-height) !important;
  min-height: var(--bagus-header-height) !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
html.theme-dark .site-header,
html[data-theme="dark"] .site-header,
body.theme-dark .site-header,
body[data-theme="dark"] .site-header { background: rgba(15,16,21,.96) !important; color: #f6f3ee !important; }
html.theme-light .site-header,
html[data-theme="light"] .site-header,
body.theme-light .site-header,
body[data-theme="light"] .site-header { background: rgba(255,255,255,.98) !important; color: #15161c !important; }
.site-header::before,
.site-header::after { display: none !important; content: none !important; }
.site-header .container.nav,
.site-header .nav,
.site-header > .container {
  position: relative !important;
  width: min(var(--max, 118rem), calc(100% - 9.6rem)) !important;
  max-width: min(var(--max, 118rem), calc(100% - 9.6rem)) !important;
  height: var(--bagus-header-height) !important;
  min-height: var(--bagus-header-height) !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 2.4rem !important;
  overflow: visible !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
.site-header .brand {
  position: relative !important;
  z-index: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 1rem !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
  min-width: 0 !important;
}
.site-header .brand-text {
  display: inline-block !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.1 !important;
  font-size: 1.35rem !important;
  letter-spacing: .1em !important;
  white-space: nowrap !important;
}
html.theme-dark .site-header .brand-text,
html.theme-dark .site-header .nav-links a,
html[data-theme="dark"] .site-header .brand-text,
html[data-theme="dark"] .site-header .nav-links a,
body.theme-dark .site-header .brand-text,
body.theme-dark .site-header .nav-links a,
body[data-theme="dark"] .site-header .brand-text,
body[data-theme="dark"] .site-header .nav-links a { color: #f6f3ee !important; -webkit-text-fill-color: #f6f3ee !important; }
html.theme-light .site-header .brand-text,
html.theme-light .site-header .nav-links a,
html[data-theme="light"] .site-header .brand-text,
html[data-theme="light"] .site-header .nav-links a,
body.theme-light .site-header .brand-text,
body.theme-light .site-header .nav-links a,
body[data-theme="light"] .site-header .brand-text,
body[data-theme="light"] .site-header .nav-links a { color: #15161c !important; -webkit-text-fill-color: #15161c !important; }
.site-header .brand-logo-wrap,
.site-header .bagus-fixed-logo-wrap,
.site-header .brand-logo,
.site-header .bagus-fixed-logo,
.site-header .custom-logo {
  display: block !important;
  width: 4.2rem !important;
  height: 4.2rem !important;
  max-width: 4.2rem !important;
  max-height: 4.2rem !important;
  min-width: 4.2rem !important;
  object-fit: contain !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  -webkit-filter: none !important;
  overflow: hidden !important;
}
.site-header .nav-links { z-index: 2 !important; border: 0 !important; box-shadow: none !important; }
.site-header .nav-links .bagus-primary-menu,
.site-header .nav-links .sub-menu { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.site-header .nav-links .bagus-primary-menu { display: flex !important; align-items: center !important; justify-content: center !important; gap: 2.8rem !important; }
.site-header .nav-links li { position: relative !important; list-style: none !important; margin: 0 !important; padding: 0 !important; }
.site-header .nav-links a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 4rem !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  cursor: pointer !important;
  touch-action: manipulation !important;
}
.site-header .nav-links a::after { background: var(--bagus-gold) !important; height: .16rem !important; border: 0 !important; box-shadow: none !important; }
.site-header .nav-links .sub-menu {
  position: absolute !important;
  top: calc(100% + .9rem) !important;
  left: 0 !important;
  min-width: 20rem !important;
  display: none !important;
  flex-direction: column !important;
  gap: .4rem !important;
  padding: .8rem !important;
  border-radius: 1.4rem !important;
  background: var(--bagus-dark) !important;
  border: 1px solid rgba(246,199,68,.24) !important;
  box-shadow: 0 1.6rem 4rem rgba(0,0,0,.28) !important;
  z-index: 2147483000 !important;
}
.site-header .nav-links li:hover > .sub-menu,
.site-header .nav-links li:focus-within > .sub-menu { display: flex !important; }
.site-header .nav-links .sub-menu a { width: 100% !important; padding: .9rem 1.1rem !important; border-radius: 1rem !important; white-space: nowrap !important; }
.site-header .nav-links .menu-item-has-children > a { gap: .45rem !important; }
.site-header .nav-links .menu-item-has-children > a::before {
  content: "›" !important;
  order: 2 !important;
  font-size: 1.2em !important;
  line-height: 1 !important;
  color: var(--bagus-gold) !important;
  transform: rotate(90deg) !important;
}
.site-header .header-actions {
  position: relative !important;
  z-index: 3 !important;
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 1rem !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.site-header .language-switcher select,
.site-header .theme-toggle,
.site-header .nav-toggle {
  height: var(--bagus-header-control-height) !important;
  min-height: var(--bagus-header-control-height) !important;
  max-height: var(--bagus-header-control-height) !important;
  margin: 0 !important;
  border-radius: 1.6rem !important;
}
.site-header .language-switcher select {
  width: 7.2rem !important;
  min-width: 7.2rem !important;
  max-width: 7.2rem !important;
  padding: 0 2.8rem 0 1.2rem !important;
  background-repeat: no-repeat !important;
  background-position: right 1.2rem center !important;
  background-size: 1.2rem .8rem !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}
.site-header .theme-toggle,
.site-header .nav-toggle {
  width: var(--bagus-header-control-height) !important;
  min-width: var(--bagus-header-control-height) !important;
  max-width: var(--bagus-header-control-height) !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  touch-action: manipulation !important;
}
.site-header .nav-toggle { display: none !important; }
html.theme-light .site-header .language-switcher select,
body.theme-light .site-header .language-switcher select,
html[data-theme="light"] .site-header .language-switcher select,
body[data-theme="light"] .site-header .language-switcher select { background-color: #fff !important; color: #15161c !important; -webkit-text-fill-color: #15161c !important; border-color: rgba(21,22,28,.22) !important; }
html.theme-dark .site-header .language-switcher select,
body.theme-dark .site-header .language-switcher select,
html[data-theme="dark"] .site-header .language-switcher select,
body[data-theme="dark"] .site-header .language-switcher select { background-color: rgba(255,255,255,.08) !important; color: #f6f3ee !important; -webkit-text-fill-color: #f6f3ee !important; border-color: rgba(255,255,255,.32) !important; }
html.theme-light .site-header .theme-toggle,
body.theme-light .site-header .theme-toggle,
html[data-theme="light"] .site-header .theme-toggle,
body[data-theme="light"] .site-header .theme-toggle { background: #15161c !important; border-color: #15161c !important; color: #fff !important; }
html.theme-dark .site-header .theme-toggle,
body.theme-dark .site-header .theme-toggle,
html[data-theme="dark"] .site-header .theme-toggle,
body[data-theme="dark"] .site-header .theme-toggle { background: #fff !important; border-color: rgba(255,255,255,.72) !important; color: #15161c !important; }
.site-header .theme-toggle .theme-toggle-icon { color: var(--bagus-gold) !important; -webkit-text-fill-color: var(--bagus-gold) !important; }
body .site-header .theme-toggle .theme-toggle-text { display: none !important; }
@media screen and (min-width: 981px) {
  body.admin-bar .site-header { top: 32px !important; }
  .site-header .nav-links {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%,-50%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: calc(100% - 58rem) !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 2.8rem !important;
    white-space: nowrap !important;
    overflow: visible !important;
    background: transparent !important;
  }
}
@media screen and (min-width: 981px) and (max-width: 1180px) {
  .site-header .container.nav,
  .site-header .nav,
  .site-header > .container { width: calc(100% - 4.8rem) !important; max-width: calc(100% - 4.8rem) !important; }
  .site-header .nav-links { gap: 2rem !important; max-width: calc(100% - 48rem) !important; }
}
@media screen and (max-width: 980px) {
  html { width: 100% !important; max-width: 100% !important; overflow-x: hidden !important; scroll-padding-top: var(--bagus-mobile-header-height) !important; }
  body { width: 100% !important; max-width: 100% !important; min-width: 0 !important; padding-top: var(--bagus-mobile-header-height) !important; overflow-x: hidden !important; overscroll-behavior-x: none !important; }
  body.admin-bar { padding-top: var(--bagus-mobile-header-height) !important; }
  body.nav-open { overflow: hidden !important; touch-action: none !important; }
  #page, .site, .site-content { transform: none !important; filter: none !important; perspective: none !important; }
  body > .site-header,
  .site-header {
    position: fixed !important;
    inset: 0 0 auto 0 !important;
    width: auto !important;
    max-width: none !important;
    height: var(--bagus-mobile-header-height) !important;
    min-height: var(--bagus-mobile-header-height) !important;
    overflow: visible !important;
  }
  body.admin-bar > .site-header,
  body.admin-bar .site-header { top: 0 !important; inset: 0 0 auto 0 !important; }
  .site-header .container.nav,
  .site-header .nav,
  .site-header > .container {
    width: 100% !important;
    max-width: none !important;
    height: var(--bagus-mobile-header-height) !important;
    min-height: var(--bagus-mobile-header-height) !important;
    padding: 0 1.2rem !important;
    gap: .8rem !important;
  }
  .site-header .brand { flex: 0 0 4.2rem !important; width: 4.2rem !important; max-width: 4.2rem !important; min-width: 4.2rem !important; overflow: hidden !important; gap: 0 !important; }
  .site-header .brand-text { display: none !important; visibility: hidden !important; width: 0 !important; max-width: 0 !important; }
  .site-header .brand-logo-wrap,
  .site-header .bagus-fixed-logo-wrap,
  .site-header .brand-logo,
  .site-header .bagus-fixed-logo,
  .site-header .custom-logo { width: 4.2rem !important; height: 4.2rem !important; max-width: 4.2rem !important; max-height: 4.2rem !important; min-width: 4.2rem !important; }
  .site-header .header-actions { flex: 1 1 auto !important; justify-content: flex-end !important; gap: .8rem !important; }
  .site-header .nav-toggle { display: inline-flex !important; position: relative !important; z-index: 2147483003 !important; pointer-events: auto !important; color: var(--bagus-gold) !important; -webkit-text-fill-color: var(--bagus-gold) !important; background: #15161c !important; border: 1px solid var(--bagus-gold) !important; }
  .site-header .language-switcher select { width: 7.2rem !important; min-width: 7.2rem !important; max-width: 7.2rem !important; }
  .site-header .theme-toggle,
  .site-header .nav-toggle { width: var(--bagus-header-control-height) !important; min-width: var(--bagus-header-control-height) !important; max-width: var(--bagus-header-control-height) !important; }
  .site-header .nav-links {
    position: fixed !important;
    top: calc(var(--bagus-mobile-header-height) + .8rem) !important;
    left: max(1.2rem, env(safe-area-inset-left)) !important;
    right: max(1.2rem, env(safe-area-inset-right)) !important;
    bottom: auto !important;
    width: auto !important;
    max-width: none !important;
    max-height: calc(100dvh - var(--bagus-mobile-header-height) - 2.4rem) !important;
    margin: 0 !important;
    padding: 1.8rem !important;
    display: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 1rem !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
    touch-action: pan-y !important;
    pointer-events: auto !important;
    z-index: 2147483001 !important;
    border-radius: 1.8rem !important;
    background: #15161c !important;
    border: 1px solid rgba(246,199,68,.28) !important;
    box-shadow: 0 1.8rem 4.2rem rgba(0,0,0,.28) !important;
  }
  .site-header .nav-links.active,
  body.nav-open .site-header .nav-links.active { display: flex !important; visibility: visible !important; opacity: 1 !important; }
  .site-header .nav-links .bagus-primary-menu { flex-direction: column !important; align-items: stretch !important; justify-content: flex-start !important; gap: .8rem !important; width: 100% !important; }
  .site-header .nav-links li,
  .site-header .nav-links .bagus-primary-menu > li,
  .site-header .nav-links .sub-menu li { width: 100% !important; }
  .site-header .nav-links a { display: flex !important; align-items: center !important; justify-content: flex-start !important; width: 100% !important; min-height: 5.2rem !important; padding: 1.2rem 1.4rem !important; border-radius: 1.2rem !important; color: #f6f3ee !important; -webkit-text-fill-color: #f6f3ee !important; line-height: 1.25 !important; }
  .site-header .nav-links a:hover,
  .site-header .nav-links a:focus-visible,
  .site-header .nav-links a.is-active { color: var(--bagus-gold) !important; -webkit-text-fill-color: var(--bagus-gold) !important; background: rgba(246,199,68,.1) !important; }
  .site-header .nav-links a::after { display: none !important; content: none !important; }
  .site-header .nav-links .sub-menu { position: static !important; display: flex !important; width: 100% !important; min-width: 0 !important; margin-top: .45rem !important; padding: .5rem 0 .2rem 1.2rem !important; border: 0 !important; border-left: 2px solid rgba(246,199,68,.34) !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
  .site-header .nav-links .menu-item-has-children > a { justify-content: space-between !important; }
  .site-header .nav-links .menu-item-has-children > a::before { transform: none !important; }
}
@media screen and (min-width: 705px) and (max-width: 980px) {
  .site-header .brand { flex: 0 1 auto !important; width: auto !important; max-width: min(36rem,44vw) !important; min-width: 0 !important; gap: 1rem !important; overflow: visible !important; }
  .site-header .brand-text { display: inline-block !important; visibility: visible !important; width: auto !important; max-width: 28rem !important; overflow: hidden !important; white-space: nowrap !important; text-overflow: ellipsis !important; font-size: 1.3rem !important; letter-spacing: .12em !important; line-height: 1.1 !important; }
}
@media screen and (max-width: 420px) {
  .site-header .container.nav,
  .site-header .nav,
  .site-header > .container { padding: 0 1rem !important; gap: .7rem !important; }
  .site-header .brand { flex-basis: 4.2rem !important; width: 4.2rem !important; max-width: 4.2rem !important; min-width: 4.2rem !important; }
  .site-header .language-switcher select { width: 6.8rem !important; min-width: 6.8rem !important; max-width: 6.8rem !important; }
  .site-header .theme-toggle .theme-toggle-text { display: none !important; }
  .site-header .nav-links { left: 1rem !important; right: 1rem !important; padding: 1.4rem !important; max-height: calc(100dvh - var(--bagus-mobile-header-height) - 2rem) !important; }
  .site-header .nav-links a { min-height: 4.8rem !important; padding: 1rem 1.2rem !important; }
}
.whatsapp,.whatsapp:hover,.whatsapp:focus,.whatsapp:active,body.theme-light .whatsapp,body.theme-dark .whatsapp,body[data-theme="light"] .whatsapp,body[data-theme="dark"] .whatsapp{background:#25d366!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0!important;border-radius:50%!important;font-size:0!important;line-height:1!important;box-shadow:0 1.4rem 4.2rem rgba(37,211,102,.36)!important}.whatsapp .whatsapp-icon,.whatsapp svg{display:block!important;width:2.9rem!important;height:2.9rem!important;color:#fff!important;fill:currentColor!important;position:static!important;transform:none!important;margin:0!important;padding:0!important}
@media screen and (max-width:980px){.whatsapp-modal,.whatsapp-modal.is-open{position:fixed!important;inset:0!important;z-index:2147483647!important;padding:max(1rem,env(safe-area-inset-top)) 1rem max(1rem,env(safe-area-inset-bottom)) 1rem!important;align-items:flex-start!important;justify-content:center!important;overflow-y:auto!important;background:rgba(8,10,16,.72)!important}.whatsapp-modal__dialog{position:relative!important;z-index:2!important;width:min(100%,62rem)!important;max-height:calc(100dvh - 2rem)!important;margin:0 auto!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}.whatsapp-modal__close{position:sticky!important;top:0!important;margin-left:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:5!important;background:#f6c744!important;color:#111318!important;border-color:rgba(17,19,24,.2)!important;box-shadow:0 1rem 2.4rem rgba(0,0,0,.22)!important}body.modal-open .site-header{pointer-events:none!important}}

/* v1.2.3 navigation active-state and modal stacking fixes */
.site-header .nav-links:not(.bagus-nav-resolved) .current-menu-item>a,.site-header .nav-links:not(.bagus-nav-resolved) .current_page_item>a,.site-header .nav-links:not(.bagus-nav-resolved) .current-menu-ancestor>a,.site-header .nav-links:not(.bagus-nav-resolved) .current_page_ancestor>a,.site-header .nav-links a.is-active,.site-header .nav-links a[aria-current="page"]{color:var(--bagus-gold)!important;-webkit-text-fill-color:var(--bagus-gold)!important}
.site-header .nav-links:not(.bagus-nav-resolved) .current-menu-item>a::after,.site-header .nav-links:not(.bagus-nav-resolved) .current_page_item>a::after,.site-header .nav-links:not(.bagus-nav-resolved) .current-menu-ancestor>a::after,.site-header .nav-links:not(.bagus-nav-resolved) .current_page_ancestor>a::after,.site-header .nav-links a.is-active::after,.site-header .nav-links a[aria-current="page"]::after{opacity:1!important;transform:scaleX(1)!important}
.whatsapp-modal,.whatsapp-modal.is-open{position:fixed!important;inset:0!important;z-index:2147483647!important;isolation:isolate!important}
.whatsapp-modal__backdrop{z-index:0!important}
.whatsapp-modal__dialog{z-index:2!important}
body.modal-open{overflow:hidden!important}
body.modal-open .site-header{z-index:2147482000!important;pointer-events:none!important}
@media screen and (max-width:980px){.site-header .nav-links:not(.bagus-nav-resolved) .current-menu-item>a,.site-header .nav-links:not(.bagus-nav-resolved) .current_page_item>a,.site-header .nav-links:not(.bagus-nav-resolved) .current-menu-ancestor>a,.site-header .nav-links:not(.bagus-nav-resolved) .current_page_ancestor>a,.site-header .nav-links a.is-active,.site-header .nav-links a[aria-current="page"]{color:var(--bagus-gold)!important;-webkit-text-fill-color:var(--bagus-gold)!important;background:rgba(246,199,68,.1)!important}}

/* v1.2.5 translucent global header background
 * Adjust only these two opacity values later if a stronger or lighter glass effect is preferred.
 */
:root{
  --bagus-header-bg-dark:rgba(15,16,21,.78);
  --bagus-header-bg-light:rgba(255,255,255,.78);
  --bagus-header-blur:18px;
}
.site-header,
html.theme-dark .site-header,
body.theme-dark .site-header,
html[data-theme="dark"] .site-header,
body[data-theme="dark"] .site-header{
  background:var(--bagus-header-bg-dark)!important;
  -webkit-backdrop-filter:saturate(145%) blur(var(--bagus-header-blur))!important;
  backdrop-filter:saturate(145%) blur(var(--bagus-header-blur))!important;
  border-bottom-color:rgba(255,255,255,.10)!important;
  box-shadow:0 .8rem 2.4rem rgba(0,0,0,.14)!important;
}
html.theme-light .site-header,
body.theme-light .site-header,
html[data-theme="light"] .site-header,
body[data-theme="light"] .site-header{
  background:var(--bagus-header-bg-light)!important;
  -webkit-backdrop-filter:saturate(145%) blur(var(--bagus-header-blur))!important;
  backdrop-filter:saturate(145%) blur(var(--bagus-header-blur))!important;
  border-bottom-color:rgba(21,22,28,.10)!important;
  box-shadow:0 .8rem 2.4rem rgba(21,22,28,.10)!important;
}
@media (prefers-reduced-transparency:reduce){
  .site-header,
  html.theme-dark .site-header,
  body.theme-dark .site-header,
  html[data-theme="dark"] .site-header,
  body[data-theme="dark"] .site-header{background:rgba(15,16,21,.94)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  html.theme-light .site-header,
  body.theme-light .site-header,
  html[data-theme="light"] .site-header,
  body[data-theme="light"] .site-header{background:rgba(255,255,255,.94)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
}
