/* Layer 28 — one typography, baseline and underline for all four desktop nav items. */
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links>details.services-dropdown{position:relative;display:flex;align-items:center;flex:none;z-index:100}
.nav-links>details.services-dropdown>summary,
.nav-links>a{
  box-sizing:border-box;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  height:40px;
  min-height:40px;
  margin:0;
  padding:0;
  border:0;
  white-space:nowrap;
  font-family:inherit;
  font-size:13px;
  font-weight:600;
  letter-spacing:0;
  line-height:1;
  color:#4d5b55;
  text-decoration:none;
  vertical-align:middle;
}
.nav-links>details.services-dropdown>summary{cursor:pointer;list-style:none}
.nav-links>details.services-dropdown>summary::marker{content:""}
.nav-links>details.services-dropdown>summary::-webkit-details-marker{display:none}
.nav-links>details.services-dropdown>summary>span{display:none!important}
/* Identical underline for all four header labels. */
.nav-links>details.services-dropdown>summary::after,
.nav-links>a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  width:100%;
  height:2px;
  background:#1b5d3a;
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .2s ease;
  pointer-events:none;
}
.nav-links>details.services-dropdown:hover>summary,
.nav-links>details.services-dropdown[open]>summary,
.nav-links>details.services-dropdown:focus-within>summary,
.nav-links>a:hover,.nav-links>a:focus-visible,.nav-links>a[aria-current="page"]{color:#1b5d3a}
.nav-links>details.services-dropdown:hover>summary::after,
.nav-links>details.services-dropdown[open]>summary::after,
.nav-links>details.services-dropdown:focus-within>summary::after,
.nav-links>a:hover::after,.nav-links>a:focus-visible::after,
.nav-links>a[aria-current="page"]::after{transform:scaleX(1)}
.nav-links>details.services-dropdown>.services-dropdown-panel{
  display:none;
  position:absolute;
  top:100%;
  left:0;
  z-index:120;
  min-width:215px;
  max-width:285px;
  padding:12px 18px;
  border:1px solid #dce6dc;
  border-radius:14px;
  background:#fff;
  box-shadow:0 14px 32px rgba(21,43,30,.13);
}
.nav-links>details.services-dropdown:nth-last-child(2)>.services-dropdown-panel{left:auto;right:0}
.nav-links>details.services-dropdown[open]>.services-dropdown-panel{display:block}
.nav-links .services-dropdown-panel a{
  display:block;position:relative;width:max-content;max-width:100%;
  padding:11px 0;font-size:13px;font-weight:600;line-height:1.4;
  color:#354e40;text-decoration:none
}
.nav-links .services-dropdown-panel a::after{
  content:"";position:absolute;left:0;bottom:5px;width:100%;height:2px;
  background:#1b5d3a;transform:scaleX(0);transform-origin:left;
  transition:transform .2s ease;pointer-events:none
}
.nav-links .services-dropdown-panel a:hover::after,
.nav-links .services-dropdown-panel a:focus-visible::after,
.nav-links .services-dropdown-panel a[aria-current="page"]::after{transform:scaleX(1)}
.nav-links>details.services-dropdown>summary:focus-visible,
.nav-links>a:focus-visible,.nav-links .services-dropdown-panel a:focus-visible{outline:2px solid #1b5d3a;outline-offset:3px}
@media(min-width:971px){
  .nav-links>details.services-dropdown:hover>.services-dropdown-panel,
  .nav-links>details.services-dropdown:focus-within>.services-dropdown-panel{display:block}
  .nav-links:has(>details.services-dropdown:hover)>details.services-dropdown:not(:hover)>.services-dropdown-panel{display:none!important}
}
@media(max-width:970px){body.nav-open .nav-links{display:none}}
@media(prefers-reduced-motion:reduce){
  .nav-links>details.services-dropdown>summary::after,
  .nav-links>a::after,.nav-links .services-dropdown-panel a::after{transition:none}
}

/* Layer 29: override legacy !important underline rules in critical CSS.
   ALL four top-level navigation items now share the exact same underline box. */
@media (min-width:971px) {
  .header .nav-links > details.services-dropdown > summary,
  .header .nav-links > a {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    height:40px !important;
    min-height:40px !important;
    box-sizing:border-box !important;
    margin:0 !important;
    padding:0 !important;
    font-size:13px !important;
    line-height:1 !important;
    font-weight:600 !important;
    letter-spacing:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    transform:none !important;
  }
  .header .nav-links > details.services-dropdown > summary::after,
  .header .nav-links > a::after {
    content:"" !important;
    display:block !important;
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    width:100% !important;
    height:2px !important;
    background:#1b5d3a !important;
    transform:scaleX(0) !important;
    transform-origin:left center !important;
    transition:transform .2s ease !important;
    pointer-events:none !important;
  }
  .header .nav-links > details.services-dropdown:hover > summary::after,
  .header .nav-links > details.services-dropdown[open] > summary::after,
  .header .nav-links > details.services-dropdown:focus-within > summary::after,
  .header .nav-links > a:hover::after,
  .header .nav-links > a:focus-visible::after,
  .header .nav-links > a[aria-current="page"]::after {
    transform:scaleX(1) !important;
  }
}
