/* PIM Navigation Enhancer v1.2: adaptive override, scoped to the PIM Bluegreen header. */
.mast .nav{display:flex;align-items:center;gap:clamp(10px,1vw,20px);height:82px;min-width:0}
.mast .brand{flex:0 0 auto;min-width:0;max-width:260px;display:flex;align-items:center}
.mast .brand .pim-custom-logo{max-width:260px;max-height:63px;width:auto;height:auto;object-fit:contain}
.mast .brand-main{font-size:24px}
.mast .navlinks{display:flex;flex:1 1 auto;min-width:0;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:clamp(9px,1vw,18px);margin-left:auto}
.mast .navlinks>li{position:relative;display:flex;flex:0 0 auto;align-items:center;gap:2px;list-style:none;white-space:nowrap;margin:0;padding:0}
.mast .navlinks>li>a,.mast .navlinks>a{display:inline-flex;align-items:center;white-space:nowrap;font-size:clamp(11px,.72vw,13px);font-weight:700;line-height:1.45;padding:15px 0;text-decoration:none;color:#30465a}
.mast .navlinks>li>a:hover,.mast .navlinks>li>a:focus-visible,.mast .navlinks>li.current-menu-item>a,.mast .navlinks>li.current-menu-ancestor>a{color:#07854b}
.mast .nav-actions{flex:0 0 auto;margin-left:clamp(0px,.6vw,12px)}
.mast .nav-actions .call-btn{font-size:12px;padding:13px 16px}
.mast .navlinks .pim-submenu-toggle{display:flex;align-items:center;justify-content:center;flex:0 0 21px;width:21px;height:28px;padding:2px;border:0;border-radius:6px;background:transparent;color:#658094;cursor:pointer}
.mast .navlinks .pim-submenu-toggle:focus-visible{outline:2px solid #07854b;outline-offset:1px}
.mast .navlinks .pim-submenu-toggle svg{width:13px;height:13px;transition:transform .18s ease}
.mast .navlinks .menu-item-has-children:hover>.pim-submenu-toggle svg,.mast .navlinks .menu-item-has-children:focus-within>.pim-submenu-toggle svg,.mast .navlinks .menu-item-has-children.pim-submenu-open>.pim-submenu-toggle svg{transform:rotate(180deg)}
.mast .navlinks .menu-item-has-children{position:relative}
.mast .navlinks .sub-menu{list-style:none;position:absolute;top:100%;left:0;z-index:150;min-width:238px;max-width:min(340px,80vw);margin:0;padding:9px 0;background:#fff;border:1px solid #dfeaf0;border-top:3px solid #07854b;border-radius:0 0 12px 12px;box-shadow:0 19px 38px rgba(8,47,87,.15);display:none;white-space:normal}
.mast .navlinks .sub-menu li{position:relative;display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}
.mast .navlinks .sub-menu li>a{display:block;flex:1 1 auto;font-size:12px;font-weight:650;white-space:normal;line-height:1.5;color:#30465a;padding:11px 16px;text-decoration:none}
.mast .navlinks .sub-menu li>a:hover,.mast .navlinks .sub-menu li>a:focus-visible{background:#edf8f2;color:#056c41}
.mast .navlinks .sub-menu .pim-submenu-toggle{margin-right:9px}
.mast .navlinks .sub-menu .sub-menu{top:-12px;left:100%;border-radius:10px}
@media (min-width:900px){
  .mast .navlinks .menu-item-has-children:hover>.sub-menu,
  .mast .navlinks .menu-item-has-children:focus-within>.sub-menu,
  .mast .navlinks .menu-item-has-children.pim-submenu-open>.sub-menu{display:block}
}
/* At moderate widths use a deliberately collapsed menu, never a second desktop row. */
@media (max-width:899px){
  .mast .nav{height:76px}
  .mast .brand{max-width:260px}
  .mast .navlinks{display:none;position:absolute;top:100%;left:0;right:0;width:100%;max-height:calc(100vh - 76px);overflow-y:auto;overscroll-behavior:contain;flex-direction:column;align-items:stretch;justify-content:flex-start;flex-wrap:nowrap;gap:0;margin:0;padding:12px clamp(20px,4vw,45px) 20px;background:#fff;border-bottom:1px solid #dfeaf0;box-shadow:0 18px 34px rgba(5,43,76,.11);z-index:120}
  .mast .navlinks.open{display:flex}
  .mast .navlinks>li{display:flex;flex-wrap:wrap;gap:0;flex:0 0 auto;width:100%;border-bottom:1px solid #edf2f5;white-space:normal}
  .mast .navlinks>li>a,.mast .navlinks>a{display:block;flex:1 1 auto;font-size:14px;white-space:normal;padding:14px 6px;line-height:1.4}
  .mast .navlinks .pim-submenu-toggle{width:42px;height:44px;flex-basis:42px;background:#f1f6fa;margin:3px 0}
  .mast .navlinks .sub-menu{display:none;flex:0 0 100%;position:static;width:100%;min-width:0;max-width:none;box-shadow:none;border:0;border-left:3px solid #07854b;border-radius:0;margin:0 0 9px 10px;padding:3px 0 3px 8px;background:#f8fbfd}
  .mast .navlinks .menu-item-has-children.pim-submenu-open>.sub-menu{display:block}
  .mast .navlinks .sub-menu li{display:flex;flex-wrap:wrap;border:0}
  .mast .navlinks .sub-menu li>a{font-size:13px;padding:12px 14px}
  .mast .navlinks .sub-menu .sub-menu{position:static;flex:0 0 100%;width:calc(100% - 12px);margin:0 0 5px 12px}
  .mast .mobile-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;margin-left:auto}
  .mast .nav-actions{margin-left:0}
}
@media (max-width:690px){
  .mast .nav{height:70px}
  .mast .brand{max-width:min(60vw,225px)}
  .mast .brand .pim-custom-logo{max-width:100%;max-height:54px}
  .mast .brand-main{font-size:22px}
  .mast .navlinks{max-height:calc(100vh - 70px)}
  .mast .nav-actions .call-btn{display:none}
}
@media (prefers-reduced-motion:reduce){.mast .navlinks .pim-submenu-toggle svg{transition:none}}

/* Compact desktop navigation preserves all destinations. */
@media (min-width:900px) and (max-width:1600px){
  .mast .nav{gap:8px}
  .mast .brand{max-width:205px}
  .mast .brand .pim-custom-logo{max-width:205px;max-height:55px}
  .mast .navlinks{gap:clamp(6px,.55vw,10px)}
  .mast .navlinks>li>a,.mast .navlinks>a{font-size:clamp(10px,.77vw,12px)}
  .mast .navlinks .pim-submenu-toggle{width:16px;flex-basis:16px}
  .mast .nav-actions{display:none}
}
@media (min-width:1601px){
  .mast .brand{max-width:230px}
  .mast .brand .pim-custom-logo{max-width:230px}
  .mast .navlinks{gap:10px}
  .mast .navlinks>li>a,.mast .navlinks>a{font-size:12px}
  .mast .nav-actions .call-btn{font-size:11px;padding:12px}
}

/* v1.2: compact readable labels between 900 and 1450 CSS px; full WordPress names remain available to accessibility APIs. */
@media (min-width:900px) and (max-width:1450px){
  .mast .nav{gap:6px}
  .mast .brand{max-width:185px}
  .mast .brand .pim-custom-logo{max-width:185px;max-height:58px}
  .mast .navlinks{gap:clamp(7px,.8vw,14px);justify-content:space-evenly;margin-left:8px}
  .mast .navlinks>li>a{font-size:11px;line-height:1.25;padding:14px 0}
  .mast .navlinks .pim-submenu-toggle{flex:0 0 15px;width:15px;padding:0}
  .mast .navlinks .pim-submenu-toggle svg{width:11px;height:11px}
  .mast .navlinks .pim-nav-full-label{display:none}
  .mast .navlinks .pim-nav-short-label{display:inline}
  .mast .nav-actions{display:none}
}
@media (min-width:900px) and (max-width:1080px){
  .mast .brand{max-width:156px}
  .mast .brand .pim-custom-logo{max-width:156px}
  .mast .navlinks>li>a{font-size:10.5px}
  .mast .navlinks{gap:7px;justify-content:space-evenly;margin-left:4px}
  .mast .nav{height:73px}
}
@media (min-width:1451px){
  .mast .navlinks .pim-nav-short-label{display:none}
  .mast .navlinks .pim-nav-full-label{display:inline}
}
@media (max-width:899px){
  .mast .navlinks .pim-nav-short-label{display:none}
  .mast .navlinks .pim-nav-full-label{display:inline}
}
/* Hide the mobile toggle on desktop even if theme styles are reordered by a cache optimizer. */
@media (min-width:900px){
  .mast .mobile-toggle{display:none!important}
  .mast .navlinks{display:flex!important;position:static}
}

/* v1.3: three-tier Programs navigation; accessible nested flyouts and touch toggles. */
@media(min-width:900px){
  .mast .navlinks>li>.sub-menu{min-width:255px}
  .mast .navlinks .sub-menu .sub-menu{min-width:235px;top:-3px}
  .mast .navlinks .sub-menu li.menu-item-has-children>a{padding-right:6px}
  .mast .navlinks .sub-menu li.menu-item-has-children>.pim-submenu-toggle svg{transform:rotate(-90deg)}
  .mast .navlinks .sub-menu li.menu-item-has-children.pim-submenu-open>.pim-submenu-toggle svg{transform:rotate(90deg)}
}
@media(max-width:899px){
  .mast .navlinks .sub-menu .sub-menu{background:#f0f7f4;border-left-color:#6bb98c}
  .mast .navlinks .sub-menu .sub-menu li>a{padding-left:18px}
}
