/* Zahov managed-page brand normalization v4.0.0.
   IMPORTANT: scoped to plugin-managed pages so Elementor fallbacks stay untouched. */
:root{--zahov-brand-teal:#2a7287;--zahov-brand-teal-dark:#225e70}
.zahov-plugin-page button,.zahov-plugin-page input[type="button"],.zahov-plugin-page input[type="submit"],.zahov-plugin-page input[type="reset"],.zahov-plugin-page .elementor-button,.zahov-plugin-page .wp-element-button,.zahov-plugin-page a.button{transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}
.zahov-plugin-page button:hover,.zahov-plugin-page button:focus-visible,.zahov-plugin-page input[type="button"]:hover,.zahov-plugin-page input[type="button"]:focus-visible,.zahov-plugin-page input[type="submit"]:hover,.zahov-plugin-page input[type="submit"]:focus-visible,.zahov-plugin-page input[type="reset"]:hover,.zahov-plugin-page input[type="reset"]:focus-visible,.zahov-plugin-page .elementor-button:hover,.zahov-plugin-page .elementor-button:focus-visible,.zahov-plugin-page .wp-element-button:hover,.zahov-plugin-page .wp-element-button:focus-visible,.zahov-plugin-page a.button:hover,.zahov-plugin-page a.button:focus-visible{background-color:var(--zahov-brand-teal);border-color:var(--zahov-brand-teal);color:#fff;box-shadow:none}
.zahov-plugin-page .elementor-nav-menu--main .elementor-item{font-size:12px;font-weight:600;letter-spacing:.035em;text-transform:none}
.zahov-plugin-page .elementor-nav-menu--main .elementor-item:after,.zahov-plugin-page .elementor-nav-menu--main .elementor-item:before{height:1px;background-color:var(--zahov-brand-teal)}
.zahov-plugin-page .elementor-nav-menu--main .elementor-item:hover,.zahov-plugin-page .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var(--zahov-brand-teal-dark)}
.zahov-plugin-page .zahov-products-section__more:hover,.zahov-plugin-page .zahov-products-section__more:focus-visible,.zahov-plugin-page .zahov-products-lightbox button:hover,.zahov-plugin-page .zahov-products-lightbox button:focus-visible{background:var(--zahov-brand-teal);border-color:var(--zahov-brand-teal);color:#fff;box-shadow:none}

/* Zahov v8.6.0 — right-aligned navigation utilities: REF search + social media. */
.zahov-nav-socials,.zahov-nav-utilities{display:inline-flex!important;align-items:center!important;justify-content:flex-end!important;gap:3px!important;margin-left:auto!important;padding:0 0 0 14px!important;border-left:1px solid rgba(23,31,34,.12)!important;line-height:1!important;vertical-align:middle!important;white-space:nowrap!important}
.zahov-nav-search,.zahov-nav-social{box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 36px!important;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;margin:0!important;padding:0!important;color:#213f47!important;background:transparent!important;border:0!important;border-radius:50%!important;box-shadow:none!important;text-decoration:none!important;font-size:0!important;line-height:0!important;cursor:pointer!important;transition:transform .18s ease,background-color .18s ease,color .18s ease!important}
.zahov-nav-search{margin-right:4px!important;position:relative!important}
.zahov-nav-search:after{content:"";position:absolute;right:-4px;top:9px;bottom:9px;width:1px;background:rgba(23,31,34,.12)}
.zahov-nav-search .zahov-search-icon,.zahov-nav-social .zahov-social-icon,.zahov-nav-social svg{display:block!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;margin:0!important;padding:0!important;overflow:visible!important;pointer-events:none!important}
.zahov-nav-social .zahov-social-icon,.zahov-nav-social svg{fill:currentColor!important}
.zahov-nav-search:hover,.zahov-nav-search:focus-visible,.zahov-nav-social:hover,.zahov-nav-social:focus-visible{color:#fff!important;background:#2a7287!important;transform:translateY(-1px)!important;outline:none!important}
.zahov-nav-search:focus-visible,.zahov-nav-social:focus-visible{outline:2px solid rgba(42,114,135,.28)!important;outline-offset:2px!important}

/* Global product REF search dialog. */
body.zahov-ref-search-open{overflow:hidden!important}
.zahov-ref-modal[hidden]{display:none!important}
.zahov-ref-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:24px;font-family:Inter,Manrope,Arial,sans-serif}
.zahov-ref-modal__backdrop{position:absolute;inset:0;background:rgba(11,16,18,.68);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.zahov-ref-modal__dialog{position:relative;z-index:1;width:min(760px,100%);max-height:min(82vh,820px);overflow:auto;background:#f8f7f3;color:#171d1f;border:1px solid rgba(255,255,255,.2);box-shadow:0 30px 100px rgba(0,0,0,.28);padding:44px 46px 38px}
.zahov-ref-modal__close{position:absolute;top:18px;right:20px;width:38px;height:38px;border:0;border-radius:50%;background:transparent;color:#2a3437;font:300 30px/1 Arial,sans-serif;cursor:pointer}
.zahov-ref-modal__close:hover,.zahov-ref-modal__close:focus-visible{background:rgba(42,114,135,.09);color:#2a7287;outline:none}
.zahov-ref-modal__eyebrow{display:block;margin:0 0 12px;color:#2a7287;font-size:10px;font-weight:700;letter-spacing:.18em}
.zahov-ref-modal h2{margin:0 48px 10px 0!important;font-size:clamp(30px,5vw,48px)!important;line-height:1.04!important;font-weight:500!important;letter-spacing:-.035em!important;color:#171d1f!important}
.zahov-ref-modal p{margin:0 0 28px!important;color:#657075!important;font-size:14px!important;line-height:1.6!important}
.zahov-ref-modal__field{display:flex;align-items:center;gap:12px;border-bottom:1px solid #9ba5a8;padding:0 0 11px;margin:0 0 12px}
.zahov-ref-modal__search-icon{display:flex;width:22px;height:22px;color:#2a7287;flex:0 0 22px}
.zahov-ref-modal__search-icon svg{width:22px;height:22px}
.zahov-ref-modal__field input{width:100%!important;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;padding:7px 0!important;font-size:21px!important;line-height:1.3!important;color:#171d1f!important;border-radius:0!important}
.zahov-ref-modal__field input::placeholder{color:#a2aaad}
.zahov-ref-modal__status{min-height:22px;margin:0 0 8px;color:#697377;font-size:12px}
.zahov-ref-modal__results{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}
.zahov-ref-modal__result{display:grid;grid-template-columns:76px minmax(0,1fr) 20px;gap:13px;align-items:center;min-height:76px;padding:8px;background:#fff;border:1px solid rgba(23,29,31,.09);color:#171d1f!important;text-decoration:none!important;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.zahov-ref-modal__result:hover,.zahov-ref-modal__result:focus-visible{border-color:rgba(42,114,135,.48);transform:translateY(-1px);box-shadow:0 9px 25px rgba(25,38,42,.08);outline:none}
.zahov-ref-modal__result-media{width:76px;height:60px;overflow:hidden;background:#e9e9e6}
.zahov-ref-modal__result-media img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.zahov-ref-modal__result-copy{min-width:0;display:flex;flex-direction:column;gap:5px}
.zahov-ref-modal__result-copy strong{font-size:14px;letter-spacing:.02em;color:#1d282b}
.zahov-ref-modal__result-copy small{font-size:11px;line-height:1.35;color:#747e81;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.zahov-ref-modal__result-arrow{font-size:18px;color:#2a7287}

/* Practical front-end image-copy deterrence. This intentionally does not alter media URLs. */
html body img{-webkit-user-drag:none!important;-webkit-touch-callout:none!important;user-select:none!important;-webkit-user-select:none!important}

@media(max-width:900px){
  .zahov-nav-socials,.zahov-nav-utilities{margin-left:8px!important;padding-left:8px!important}
}
@media(max-width:767px){
  .zahov-nav-socials,.zahov-nav-utilities{display:flex!important;width:100%!important;min-height:54px!important;margin:12px 0 0!important;padding:12px 0 0!important;border-left:0!important;border-top:1px solid rgba(23,31,34,.12)!important;gap:7px!important;justify-content:flex-start!important}
  .zahov-nav-search,.zahov-nav-social{flex-basis:42px!important;width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;background:rgba(42,114,135,.06)!important}
  .zahov-nav-search{margin-right:7px!important}
  .zahov-nav-search:after{right:-7px;top:10px;bottom:10px}
  .zahov-nav-search .zahov-search-icon,.zahov-nav-social .zahov-social-icon,.zahov-nav-social svg{width:19px!important;height:19px!important;min-width:19px!important;min-height:19px!important}
  .zahov-ref-modal{padding:12px;align-items:end}
  .zahov-ref-modal__dialog{width:100%;max-height:88vh;padding:32px 20px 24px}
  .zahov-ref-modal__close{top:10px;right:12px}
  .zahov-ref-modal h2{font-size:34px!important;margin-right:32px!important}
  .zahov-ref-modal__results{grid-template-columns:1fr}
}


/* Zahov v8.8.0 — bilingual navigation foundation. */
@media(min-width:901px){
  header .elementor-nav-menu--main,header nav,.elementor-location-header .elementor-nav-menu--main,.elementor-location-header nav{width:100%!important;max-width:none!important}
  header ul.elementor-nav-menu,.elementor-location-header ul.elementor-nav-menu,header nav>ul{display:flex!important;align-items:center!important;width:100%!important;max-width:none!important;flex-wrap:nowrap!important}
  header ul.elementor-nav-menu>li:not(.zahov-nav-utilities),.elementor-location-header ul.elementor-nav-menu>li:not(.zahov-nav-utilities){flex:0 1 auto!important}
  header .elementor-nav-menu--main .elementor-item,.elementor-location-header .elementor-nav-menu--main .elementor-item{padding-left:10px!important;padding-right:10px!important;white-space:nowrap!important}
  .zahov-nav-utilities{flex:0 0 auto!important}
}
.zahov-language-switcher{box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-width:72px!important;height:34px!important;margin-left:7px!important;padding:0 10px!important;border-left:1px solid var(--zahov-lang-border,rgba(23,31,34,.42))!important;color:var(--zahov-lang-inactive,#58676b)!important;background:transparent!important;text-decoration:none!important;font:700 11px/1 Inter,Manrope,Arial,sans-serif!important;letter-spacing:.06em!important;transition:color .18s ease,background-color .18s ease!important}
.zahov-language-choice{color:var(--zahov-lang-inactive,#58676b)!important;opacity:1!important;transition:color .18s ease,opacity .18s ease!important}
.zahov-language-choice.is-active{color:var(--zahov-lang-active,#205c6d)!important;opacity:1!important;font-weight:850!important}
.zahov-language-divider{color:var(--zahov-lang-divider,rgba(24,48,55,.64))!important;font-weight:600!important;letter-spacing:0!important}
.zahov-language-switcher:hover,.zahov-language-switcher:focus-visible{background:rgba(42,114,135,.09)!important;outline:none!important}
.zahov-language-switcher:hover .zahov-language-choice,.zahov-language-switcher:focus-visible .zahov-language-choice{opacity:1!important}
@media(max-width:767px){.zahov-language-switcher{min-width:76px!important;height:42px!important;margin-left:5px!important;padding:0 11px!important;border-left:1px solid var(--zahov-lang-border,rgba(23,31,34,.42))!important;background:rgba(42,114,135,.07)!important}}

/* Zahov v9.2.6 — true edge-to-edge desktop header with logo inside the navigation bar. */
@media(min-width:901px){
  .elementor-location-header[data-zahov-inline-header="1"],header[data-zahov-inline-header="1"]{overflow:visible!important}
  [data-zahov-inline-header="1"] [data-zahov-original-logo="1"],
  [data-zahov-inline-header="1"] [data-zahov-logo-only-row="1"]{display:none!important}
  [data-zahov-inline-header="1"] [data-zahov-nav-fullwidth="1"]{
    box-sizing:border-box!important;
    width:100vw!important;
    max-width:none!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    padding:0!important;
  }
  [data-zahov-inline-header="1"] [data-zahov-nav-list="1"]{
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
    width:100%!important;
    max-width:none!important;
    min-height:82px!important;
    margin:0!important;
    padding:0 clamp(16px,2.1vw,32px)!important;
    gap:0!important;
  }
  [data-zahov-inline-header="1"] .zahov-nav-logo{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex:0 0 auto!important;
    margin:0 clamp(20px,3.2vw,52px) 0 0!important;
    padding:0!important;
    border:0!important;
  }
  [data-zahov-inline-header="1"] .zahov-nav-logo__link{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:auto!important;
    height:64px!important;
    margin:0!important;
    padding:0!important;
    line-height:1!important;
  }
  [data-zahov-inline-header="1"] .zahov-nav-logo__image{
    display:block!important;
    width:auto!important;
    height:auto!important;
    max-width:156px!important;
    max-height:58px!important;
    object-fit:contain!important;
    margin:0!important;
    padding:0!important;
  }
  [data-zahov-inline-header="1"] [data-zahov-nav-list="1"]>li:not(.zahov-nav-logo):not(.zahov-nav-utilities){
    flex:0 0 auto!important;
    margin:0!important;
  }
  [data-zahov-inline-header="1"] [data-zahov-nav-list="1"]>li:not(.zahov-nav-logo):not(.zahov-nav-utilities)>a{
    padding-left:clamp(8px,1vw,14px)!important;
    padding-right:clamp(8px,1vw,14px)!important;
    white-space:nowrap!important;
  }
  [data-zahov-inline-header="1"] .zahov-nav-utilities{
    flex:0 0 auto!important;
    margin-left:auto!important;
    padding-left:clamp(10px,1.2vw,18px)!important;
  }
}
@media(max-width:900px){
  .zahov-nav-logo{display:none!important}
  [data-zahov-original-logo="1"],[data-zahov-logo-only-row="1"]{display:revert!important}
}


/* Zahov v9.2.6 — Hello Elementor desktop header conflict fix.
   Keeps the native branding logo and navigation on ONE edge-to-edge row.
   This intentionally overrides legacy #site-header width/flex rules. */
@media(min-width:901px){
  #site-header.site-header{
    width:100%!important;
    max-width:none!important;
  }
  #site-header.site-header .header-inner{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    min-height:82px!important;
    margin:0!important;
    padding:0 clamp(16px,1.5vw,24px)!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:clamp(16px,2vw,30px)!important;
  }
  #site-header.site-header .site-branding{
    display:flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
  #site-header.site-header .site-title,
  #site-header.site-header .site-title a{
    margin:0!important;
    padding:0!important;
  }
  #site-header.site-header .site-title a{
    width:clamp(142px,12.5vw,175px)!important;
    height:60px!important;
  }
  #site-header.site-header .site-navigation{
    box-sizing:border-box!important;
    display:block!important;
    flex:1 1 auto!important;
    min-width:0!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
  #site-header.site-header .site-navigation > ul.menu,
  #site-header.site-header .site-navigation > ul[data-zahov-nav-list="1"]{
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:82px!important;
    margin:0!important;
    padding:0!important;
    gap:2px!important;
  }
  #site-header.site-header .site-navigation > ul.menu > li:not(.zahov-nav-utilities),
  #site-header.site-header .site-navigation > ul[data-zahov-nav-list="1"] > li:not(.zahov-nav-utilities){
    flex:0 0 auto!important;
  }
  #site-header.site-header .site-navigation > ul.menu > li > a{
    padding-left:clamp(7px,.75vw,11px)!important;
    padding-right:clamp(7px,.75vw,11px)!important;
    white-space:nowrap!important;
  }
  #site-header.site-header .zahov-nav-utilities{
    flex:0 0 auto!important;
    margin-left:auto!important;
    padding-left:clamp(9px,1vw,15px)!important;
  }
  /* Default Hello header already owns the logo; never clone a second one into its menu. */
  #site-header.site-header .zahov-nav-logo{
    display:none!important;
  }
  /* Undo the legacy generic full-width NAV rule that caused the second row. */
  #site-header.site-header nav,
  #site-header.site-header .site-navigation{
    width:auto!important;
  }
}
