/* Header & Footer customizer variants (activated by classes set from Appearance > Customize > Header & Footer) */

/* ---- logo ---- */
.logo-image{display:inline-flex;align-items:center}
.logo-img{max-height:80px;width:auto}
.ch-lh-none .logo:hover .logo-mark{transform:rotate(-6deg)}
.ch-lh-none .logo:hover .logo-mark span{transform:rotate(6deg)}
.ch-lh-scale .logo:hover .logo-mark{transform:rotate(-6deg) scale(1.15)}
.ch-lh-scale .logo:hover .logo-mark span{transform:rotate(6deg)}

/* ---- menu hover effects ---- */
.ch-hs-underline .nav-list>li>a::after{content:'';position:absolute;left:1rem;right:1rem;bottom:.35rem;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--t)}
.ch-hs-underline .nav-list>li>a:hover::after,.ch-hs-underline .nav-list>li.active>a::after,.ch-hs-underline .nav-list>li.current-menu-item>a::after{transform:scaleX(1)}
.ch-hs-underline .nav-list>li>a:hover{background:transparent}
.ch-hs-pill .nav-list>li>a:hover{background:var(--accent);color:#171717;border-radius:999px}
.ch-hs-lift .nav-list>li>a:hover{transform:translateY(-3px);background:transparent}
.ch-hs-glow .nav-list>li>a:hover{background:transparent;box-shadow:0 0 0 1px var(--accent),0 8px 24px rgba(255,53,3,.25)}
.ch-hs-none .nav-list>li>a:hover{background:transparent;color:inherit}
.ch-hs-none .nav-list>li.active>a:hover,.ch-hs-none .nav-list>li.nav-highlight>a:hover{color:var(--accent)}

/* ---- dropdown / mega animations ---- */
.ch-dd-fade .mega{transform:translateX(-50%) translateY(0)}
.ch-dd-zoom .mega{transform:translateX(-50%) scale(.92)}
.ch-dd-zoom .nav-list>li:hover>.mega,.ch-dd-zoom .nav-list>li:focus-within>.mega{transform:translateX(-50%) scale(1)}
.ch-dd-rise .mega{transform:translateX(-50%) translateY(40px)}
.ch-dd-none .mega{transition:none!important}

/* ---- header icons ---- */
.h-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:var(--primary);transition:all .25s var(--t)}
.h-icon:hover{color:var(--accent);background:rgba(255,53,3,.08);transform:translateY(-2px)}
.h-icon-count{position:absolute;top:2px;right:0;min-width:16px;height:16px;padding:0 4px;border-radius:99px;background:var(--accent);color:#fff;font-size:.62rem;font-weight:700;display:flex;align-items:center;justify-content:center;font-family:'Poppins',sans-serif}
@media(max-width:1024px){.h-actions .ch-cta2{display:none}}

/* ---- WordPress menu (Appearance > Menus): simple dropdown + automatic mega menu ---- */
.nav-list.ch-wp-menu>li.ch-has-drop{position:relative}
.nav-list.ch-wp-menu>li.current-menu-item>a,.nav-list.ch-wp-menu>li.current-menu-ancestor>a,.nav-list.ch-wp-menu>li.current-menu-parent>a{color:var(--accent)}
.nav-list.ch-wp-menu>li:hover .chev{transform:rotate(180deg)}
.nav-list.ch-wp-menu .sub-menu{list-style:none;margin:0;padding:.5rem;position:absolute;top:calc(100% + 8px);left:0;min-width:230px;background:rgba(255,255,255,.97);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--g1);border-radius:var(--r);box-shadow:var(--shl);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .3s var(--t) .12s,transform .3s var(--t) .12s,visibility 0s linear .42s;z-index:200}
.nav-list.ch-wp-menu .sub-menu::before{content:'';position:absolute;left:0;right:0;top:-12px;height:12px}
.nav-list.ch-wp-menu li{position:relative}
.nav-list.ch-wp-menu>li:not(.ch-has-drop){position:static}
.nav-list.ch-wp-menu li:hover>.sub-menu,.nav-list.ch-wp-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none;pointer-events:auto;transition:opacity .3s var(--t),transform .3s var(--t),visibility 0s}
.nav-list.ch-wp-menu .sub-menu a{display:block;padding:.55rem .85rem;border-radius:6px;font-size:.86rem;color:var(--muted);white-space:nowrap;transition:all .2s var(--t)}
.nav-list.ch-wp-menu .sub-menu a:hover{background:var(--g0);color:var(--primary);padding-left:1.1rem}
.nav-list.ch-wp-menu .sub-menu .sub-menu{top:0;left:100%;margin-left:6px}
.nav-list.ch-wp-menu .sub-menu .sub-menu::before{top:0;left:-8px;right:auto;width:8px;height:100%}
.ch-dd-none .nav-list.ch-wp-menu .sub-menu{transition:none}
.ch-dd-zoom .nav-list.ch-wp-menu .sub-menu{transform:scale(.92)}
.ch-dd-zoom .nav-list.ch-wp-menu li:hover>.sub-menu{transform:none}
.ch-mega-desc{display:block;font-size:.74rem;font-weight:400;color:var(--g4);margin-top:.1rem;white-space:normal}
.mega-cat h5 a{color:inherit;display:inline}
.mega-cat h5 a:hover{text-decoration:underline}
.ch-auto-mega .mega-cat ul a{white-space:normal}

/* ---- FIX: mega menu vanished when the cursor moved from the link onto the panel ----
   1) invisible hover bridge under the hovered link (only exists while hovering, so it never blocks the page),
   2) short close delay so the panel survives a diagonal mouse path. */
.nav-list>li.ch-has-mega:hover>a::before,.nav-list>li.ch-has-mega:focus-within>a::before{content:'';position:absolute;left:0;right:0;top:100%;height:110px;background:transparent}
.nav-list>li:has(>.mega):hover>a::before,.nav-list>li:has(>.mega):focus-within>a::before{content:'';position:absolute;left:0;right:0;top:100%;height:110px;background:transparent}
.nav-list>li>.mega{transition:opacity .3s var(--t) .12s,transform .3s var(--t) .12s,visibility 0s linear .42s}
.nav-list>li:hover>.mega,.nav-list>li:focus-within>.mega,.nav-list>li>.mega:hover{transition:opacity .3s var(--t),transform .3s var(--t),visibility 0s}
.ch-dd-none .nav-list>li>.mega{transition:none}

/* mobile list from a WordPress menu */
.ch-m-wp{list-style:none;padding:0;margin:2rem 0 0}
.ch-m-wp li{padding:1rem 0;border-bottom:1px solid var(--g1)}
.ch-m-wp a{font-family:'Poppins',sans-serif;font-size:1.05rem;color:#171717}
.ch-m-wp .sub-menu{list-style:none;padding:0 0 0 1rem;margin:.75rem 0 -.25rem}
.ch-m-wp .sub-menu li{padding:.6rem 0;border:0}
.ch-m-wp .sub-menu a{font-size:.9rem;color:var(--muted)}

/* ---- footer menus ---- */
.f-col ul li{list-style:none}
.f-links ul{display:flex;gap:1.5rem}
.f-links a{color:rgba(255,255,255,.5);font-size:.82rem}
.f-links a:hover{color:var(--accent)}

/* ---- footer link hover variants ---- */
.ch-fh-underline .f-col ul a:hover{transform:none;text-decoration:underline;text-underline-offset:4px}
.ch-fh-color .f-col ul a:hover{transform:none}
.ch-fh-none .f-col ul a:hover{transform:none;color:inherit}
/* ---- social hover variants ---- */
.ch-fs-scale .f-social a:hover{transform:scale(1.18)}
.ch-fs-rotate .f-social a:hover{transform:rotate(360deg)}
.ch-fs-none .f-social a:hover{transform:none;background:rgba(255,255,255,.08);color:#fff}

/* ---- Customizer preview / narrow desktops (1025-1240px) ----
   The Customizer preview frame is ~300px narrower than the browser window, so the full desktop header
   (logo + 8 menu items + button) used to overflow and break the layout. Same design, just tighter spacing. */
@media(min-width:1025px) and (max-width:1240px){
  .header-inner{gap:.75rem}
  .logo{flex-shrink:0}
  .main-nav{min-width:0}
  .nav-list{gap:0;flex-wrap:nowrap}
  .nav-list>li>a{padding:.6rem .6rem;font-size:.82rem}
  .nav-list>li.nav-highlight>a{padding:.5rem .7rem}
  .h-actions{flex-shrink:0;gap:.5rem}
  .h-actions .btn{padding:.6rem 1rem;font-size:.8rem}
  .h-actions .ch-cta2{display:none}
  .nav-cat-badge{display:none}
}
@media(min-width:1025px) and (max-width:1100px){
  .nav-list>li>a{padding:.55rem .45rem;font-size:.78rem}
  .logo-text{font-size:1.15rem}
}
/* scroll-reveal content must never stay hidden inside the Customizer preview */
.customize-preview .reveal{opacity:1;transform:none}
