/* Inner pages: light header (keep), teal accents restored */
body.page .main-header-bar,
body.page .ast-primary-header-bar,
body.page .site-header .ast-builder-grid-row-container-inner,
body:not(.home) .main-header-bar,
body:not(.home) .ast-primary-header-bar{
  background:#ffffff!important;
  background-color:#ffffff!important;
  box-shadow:0 1px 0 rgba(0,0,0,.08)!important;
  border-bottom:1px solid rgba(0,0,0,.06)!important;
}
body.page .main-header-menu .menu-link,
body:not(.home) .main-header-menu .menu-link,
body:not(.home) .site-description,
body:not(.home) .site-description .fe-tag{
  color:#173038!important;
  -webkit-text-fill-color:#173038!important;
}
body:not(.home) .site-description .fe-tag-accent{
  background:linear-gradient(120deg,#1f6f78,#2a9a8f)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
}
body:not(.home) .site-description .fe-dot{
  background:#1f6f78!important;
  box-shadow:0 0 0 3px rgba(31,111,120,.15)!important;
}
body.page .main-header-menu .menu-link:hover,
body.page .main-header-menu .current-menu-item > .menu-link,
body:not(.home) .main-header-menu .menu-link:hover{
  color:#1f6f78!important;
}
/* restored teal menu hovers sitewide */
.main-header-menu .menu-link:hover,
.main-header-menu .menu-item:hover > .menu-link,
.main-header-menu .current-menu-item > .menu-link,
.main-header-menu .current-menu-ancestor > .menu-link,
.ast-builder-menu-1 .menu-item:hover > .menu-link,
.ast-builder-menu-1 .current-menu-item > .menu-link,
.ast-theme-transparent-header .main-header-menu .menu-link:hover,
.ast-theme-transparent-header .main-header-menu .menu-item:hover > .menu-link{
  color:#1f6f78!important;
}

/* Sticky nav: follows scroll */
#masthead,
#masthead.site-header,
.ast-primary-header-wrap,
header.site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 100000 !important;
  width: 100% !important;
}
#masthead .ast-primary-header-bar,
#masthead .main-header-bar,
.ast-theme-transparent-header #masthead .main-header-bar,
.ast-theme-transparent-header .ast-primary-header-bar,
.ast-theme-transparent-header .ast-builder-grid-row-container-inner {
  background: rgba(255,255,255,.94) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 1px 0 rgba(23,48,56,.08) !important;
  border: 0 !important;
}
.main-header-menu .sub-menu,
.ast-builder-menu .sub-menu {
  z-index: 100001 !important;
}

/* Menu polish */
#masthead .site-header-inner,
#masthead .ast-builder-grid-row,
#masthead .ast-builder-grid-row-container-inner{
  align-items:center!important;
  gap:.35rem 1rem!important;
}
.ast-site-identity a.fe-brand-home,
a.fe-brand-home{
  max-width:min(36vw,340px)!important;
}
.site-description,
a.fe-brand-home .site-description{
  font-size:clamp(.95rem,1.35vw,1.28rem)!important;
  gap:.28rem .45rem!important;
}
.ast-desktop .main-header-menu,
.ast-desktop .ast-builder-menu-1 .main-header-menu{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:0!important;
}
.ast-desktop .main-header-menu > .menu-item > .menu-link{
  white-space:nowrap!important;
  padding:.45rem .62rem!important;
  font-size:.9rem!important;
  font-weight:650!important;
  letter-spacing:-.015em!important;
  line-height:1.2!important;
  border-radius:8px!important;
}
.ast-desktop .main-header-menu > .menu-item-has-children > .menu-link{
  padding-right:1.05rem!important;
}
.ast-desktop .main-header-menu > .menu-item > .menu-link:hover,
.ast-desktop .main-header-menu > .menu-item:hover > .menu-link{
  background:transparent!important;
  color:#8b2942!important;
}
.ast-desktop .main-header-menu .sub-menu{
  border-radius:12px!important;
  overflow:hidden;
  margin-top:0!important;
}
.ast-desktop .main-header-menu .sub-menu .menu-link{
  padding:.55rem 1rem!important;
  font-size:.9rem!important;
  white-space:nowrap!important;
}
@media (max-width:1200px){
  .ast-site-identity a.fe-brand-home,a.fe-brand-home{max-width:min(30vw,280px)!important}
  .ast-desktop .main-header-menu > .menu-item > .menu-link{padding:.4rem .48rem!important;font-size:.82rem!important}
}
/* header compact */
#masthead .ast-primary-header-bar,
#masthead .main-header-bar{
  padding-top:4px!important;
  padding-bottom:4px!important;
  min-height:0!important;
}

/* Tagline bigger, menu stays in one row */
#masthead .ast-builder-grid-row,
#masthead .ast-builder-grid-row-container-inner{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:.6rem 1rem!important;
}
#masthead .ast-site-identity,
#masthead .site-branding{
  flex:0 1 auto!important;
  min-width:0!important;
  max-width:none!important;
}
#masthead .ast-builder-menu-1,
#masthead .ast-header-menu{
  flex:1 1 auto!important;
  min-width:0!important;
}
.ast-site-identity a.fe-brand-home,
a.fe-brand-home{
  max-width:none!important;
}
.site-description,
a.fe-brand-home .site-description{
  font-size:clamp(1.18rem,1.75vw,1.55rem)!important;
  white-space:nowrap!important;
  gap:.32rem .5rem!important;
}
.ast-desktop .main-header-menu{
  flex-wrap:nowrap!important;
  justify-content:flex-end!important;
}
.ast-desktop .main-header-menu > .menu-item > .menu-link{
  white-space:nowrap!important;
  padding:.4rem .52rem!important;
  font-size:.86rem!important;
}
@media (max-width:1180px){
  .site-description,a.fe-brand-home .site-description{font-size:clamp(1.05rem,1.5vw,1.32rem)!important}
  .ast-desktop .main-header-menu > .menu-item > .menu-link{padding:.35rem .42rem!important;font-size:.8rem!important}
}

/* Submenu hover bridge — can move mouse onto items */
.ast-desktop .main-header-menu > .menu-item-has-children{
  position:relative!important;
}
.ast-desktop .main-header-menu > .menu-item-has-children::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:100%;
  height:18px;
  z-index:100002;
}
.ast-desktop .main-header-menu .sub-menu{
  margin-top:0!important;
  top:100%!important;
  padding-top:10px!important;
  overflow:visible!important;
  pointer-events:auto!important;
}
.ast-desktop .main-header-menu > .menu-item-has-children:hover > .sub-menu,
.ast-desktop .main-header-menu > .menu-item-has-children:focus-within > .sub-menu,
.ast-desktop .main-header-menu > .menu-item-has-children > .sub-menu:hover{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}

/* Mobile header wrap */
@media (max-width:921px){
  #masthead .ast-builder-grid-row,
  #masthead .ast-builder-grid-row-container-inner{
    flex-wrap:nowrap!important;
    gap:.4rem!important;
  }
  .ast-site-identity a.fe-brand-home,
  a.fe-brand-home{
    max-width:min(72vw,280px)!important;
  }
  .site-description,
  a.fe-brand-home .site-description{
    white-space:normal!important;
    font-size:1.05rem!important;
    line-height:1.15!important;
    gap:.2rem .35rem!important;
  }
}
/* Visible mobile menu button */
.ast-header-break-point .ast-button-wrap,
.ast-header-break-point .menu-toggle.main-header-menu-toggle,
.ast-mobile-header-wrap .ast-button-wrap,
.ast-mobile-header-wrap .menu-toggle{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center!important;
  justify-content:center!important;
  width:44px!important;
  height:44px!important;
  margin:0!important;
  padding:0!important;
  color:#0f242a!important;
  background:#fff!important;
  border:1px solid rgba(23,48,56,.2)!important;
  border-radius:10px!important;
  box-shadow:0 1px 0 rgba(0,0,0,.04)!important;
}
.ast-header-break-point .menu-toggle .mobile-menu-toggle-icon,
.ast-header-break-point .menu-toggle .menu-toggle-icon,
.ast-mobile-header-wrap .menu-toggle svg,
.ast-header-break-point .ast-mobile-svg-trigger svg{
  color:#0f242a!important;
  fill:#0f242a!important;
  stroke:#0f242a!important;
}
.ast-header-break-point .menu-toggle .mobile-menu-toggle-icon:before,
.ast-header-break-point .ast-mobile-menu-trigger-minimal .mobile-menu-toggle-icon:before{
  background:#0f242a!important;
  box-shadow:0 7px 0 #0f242a, 0 14px 0 #0f242a!important;
  color:#0f242a!important;
}

/* === fe-heading-weight === */
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content .wp-block-heading,
.fe-hero-title,
.fe-page-hero h1,
.fe-page-hero .wp-block-heading,
.fe-section h2,
.fe-section h3,
.fe-cta h2,
.fe-cta .wp-block-heading,
.fe-cta-band h2,
.fe-cta-band .wp-block-heading,
.fe-work-item h3{
  font-weight:600!important;
}