/* NPBS Product Page Hero Pro v1.2.0 — True Rubik Font Metrics Lock Edition */
.npbs-pph{--npbs-orange:#ff7607;position:relative!important;left:50%!important;width:100vw!important;max-width:none!important;height:var(--pph-h,658px)!important;min-height:var(--pph-h,658px)!important;margin:0 0 0 -50vw!important;padding:0!important;overflow:hidden;background:#07111a;isolation:isolate;color:#fff;box-sizing:border-box!important}
.npbs-pph__media,.npbs-pph__overlay{position:absolute;inset:0;width:100%;height:100%}.npbs-pph__media{z-index:0;background-repeat:no-repeat;background-position:var(--pph-bg-pos,center center);background-size:var(--pph-bg-size,cover)}.npbs-pph__overlay{z-index:1;pointer-events:none}.npbs-pph--overlay-uniform .npbs-pph__overlay,.npbs-pph--overlay-soft .npbs-pph__overlay{background:rgba(5,12,18,calc(var(--pph-overlay,.35) * .85))}.npbs-pph--overlay-bottom .npbs-pph__overlay{background:linear-gradient(0deg,rgba(5,12,18,.68),rgba(5,12,18,.16) 70%)}.npbs-pph--overlay-left .npbs-pph__overlay{background:linear-gradient(90deg,rgba(5,12,18,.68),rgba(5,12,18,.24) 60%,rgba(5,12,18,.1))}.npbs-pph--overlay-none .npbs-pph__overlay{background:transparent}
.npbs-pph>.npbs-pph__inner.container{position:relative;z-index:2;width:min(var(--pph-content,1320px),calc(100% - 56px))!important;max-width:1320px!important;height:100%!important;min-height:0!important;margin:0 auto!important;padding:0!important;display:flex;align-items:center;justify-content:center;box-sizing:border-box!important}.npbs-pph .npbs-pph__content.page-title-inner{width:100%;text-align:center!important;margin:0!important;padding:0!important}.npbs-pph--left .npbs-pph__content.page-title-inner{text-align:left!important;max-width:920px}.npbs-pph--v-upper>.npbs-pph__inner.container{align-items:flex-start;padding-top:110px!important}.npbs-pph--v-lower>.npbs-pph__inner.container{align-items:flex-end;padding-bottom:60px!important}
.npbs-pph .npbs-pph__subtitle.ptitle-sub-title{display:block!important;visibility:visible!important;opacity:1!important;margin:0 auto 8px!important;padding:0!important;color:#fff!important;font-family:Heebo,Arial,Helvetica,sans-serif!important;font-size:var(--pph-sub,14px)!important;line-height:18px!important;font-weight:700!important;letter-spacing:normal!important;text-transform:none!important}.npbs-pph--left .npbs-pph__subtitle.ptitle-sub-title{margin-left:0!important}
.npbs-pph h1.npbs-pph__title.page-title{display:block!important;margin:0!important;padding:0!important;color:#fff!important;font-family:"Rubik",sans-serif!important;font-style:normal!important;font-weight:500!important;font-synthesis:none!important;font-stretch:100%!important;letter-spacing:normal!important;text-transform:none!important;line-height:1!important}.npbs-pph__title-primary,.npbs-pph__title-secondary{display:block!important}.npbs-pph__title-primary{font-size:var(--pph-title,36px)!important;line-height:48.9996px!important;font-weight:500!important}.npbs-pph__title-secondary{margin-top:0!important;font-size:var(--pph-title-2,36px)!important;line-height:48.9996px!important;font-weight:500!important}
.npbs-pph .npbs-pph__breadcrumb.wp-breadcrumb{display:flex!important;flex-wrap:wrap;align-items:center;justify-content:center;gap:0;margin:10px 0 0!important;padding:0!important;color:#fff!important;font-family:Heebo,Arial,Helvetica,sans-serif!important;font-size:14px!important;line-height:25.2px!important;font-weight:500!important;letter-spacing:.2px!important}.npbs-pph--left .npbs-pph__breadcrumb.wp-breadcrumb{justify-content:flex-start}.npbs-pph .npbs-pph__breadcrumb a,.npbs-pph .npbs-pph__breadcrumb span{color:#fff!important;text-decoration:none!important}.npbs-pph .npbs-pph__breadcrumb a:hover{color:var(--npbs-orange)!important}.npbs-pph .npbs-pph__sep{width:18px;color:var(--npbs-orange)!important;font-family:Arial,sans-serif!important;font-size:20px!important;line-height:25.2px!important;font-weight:700!important;text-align:center}
body.npbs-product-page-hero-active #pagetitle,body.npbs-product-page-hero-active .page-title-wrap,body.npbs-product-page-hero-active .cms-page-title,body.npbs-product-page-hero-active .cms-page-title-wrapper,body.npbs-product-page-hero-active .cms-page-title-wrap{display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important}
body.npbs-product-page-hero-active #page{position:relative!important}body.npbs-product-page-hero-active #masthead.site-header{position:absolute!important;top:0!important;left:0!important;right:0!important;width:100%!important;z-index:1000!important;margin:0!important;background:transparent!important;box-shadow:none!important;border:0!important}body.admin-bar.npbs-product-page-hero-active #masthead.site-header{top:0!important}
body.npbs-product-page-hero-active #masthead.site-header,body.npbs-product-page-hero-active #masthead.site-header .site-header-main,body.npbs-product-page-hero-active #masthead.site-header .header-main,body.npbs-product-page-hero-active #masthead.site-header .header-main-inner,body.npbs-product-page-hero-active #masthead.site-header .header-layout,body.npbs-product-page-hero-active #masthead.site-header .header-navigation,body.npbs-product-page-hero-active #masthead.site-header>.container,body.npbs-product-page-hero-active #masthead.site-header .container{background-color:transparent!important;background-image:none!important;box-shadow:none!important;border-color:rgba(255,255,255,.16)!important}
body.npbs-product-page-hero-active #content.site-content,body.npbs-product-page-hero-active #content>.container,body.npbs-product-page-hero-active #content>.container-fluid{padding-top:0!important;margin-top:0!important}
/* Neutralize parent wrappers that previously constrained the hero to the 712px content column. */
body.npbs-product-page-hero-active .entry-content,body.npbs-product-page-hero-active .wpb-content-wrapper{overflow:visible!important}
@media(max-width:1024px){.npbs-pph{height:var(--pph-h-tab,460px)!important;min-height:var(--pph-h-tab,460px)!important}.npbs-pph__media{background-position:var(--pph-bg-pos-tab,center center)}.npbs-pph>.npbs-pph__inner.container{width:min(var(--pph-content,1320px),calc(100% - 42px))!important}.npbs-pph__title-primary{font-size:var(--pph-title-tab,38px)!important}.npbs-pph__title-secondary{font-size:var(--pph-title-2-tab,28px)!important}}
@media(max-width:767px){.npbs-pph{height:var(--pph-h-mob,350px)!important;min-height:var(--pph-h-mob,350px)!important}.npbs-pph__media{background-position:var(--pph-bg-pos-mob,center center)}.npbs-pph>.npbs-pph__inner.container{width:calc(100% - 32px)!important}.npbs-pph__title-primary{font-size:var(--pph-title-mob,32px)!important}.npbs-pph__title-secondary{font-size:var(--pph-title-2-mob,23px)!important;margin-top:3px!important}.npbs-pph .npbs-pph__subtitle.ptitle-sub-title{font-size:13px!important;line-height:18px!important;margin-bottom:7px!important}.npbs-pph .npbs-pph__breadcrumb.wp-breadcrumb{font-size:13px!important;line-height:22px!important;margin-top:8px!important}}

/* v1.2.1 — Vertical Spacing Lock Edition
 * Lock the vertical rhythm against Industic/theme margins at every breakpoint.
 * Subtitle -> H1 = 8px; complete two-line H1 -> Breadcrumb = 10px.
 */
.npbs-pph .npbs-pph__content.page-title-inner > .npbs-pph__subtitle.ptitle-sub-title{
  margin-top:0!important;
  margin-right:auto!important;
  margin-bottom:8px!important;
  margin-left:auto!important;
  padding:0!important;
}
.npbs-pph--left .npbs-pph__content.page-title-inner > .npbs-pph__subtitle.ptitle-sub-title{
  margin-left:0!important;
  margin-right:0!important;
}
.npbs-pph .npbs-pph__content.page-title-inner > h1.npbs-pph__title.page-title{
  margin:0!important;
  padding:0!important;
}
.npbs-pph .npbs-pph__content.page-title-inner > h1.npbs-pph__title.page-title > .npbs-pph__title-primary,
.npbs-pph .npbs-pph__content.page-title-inner > h1.npbs-pph__title.page-title > .npbs-pph__title-secondary{
  margin:0!important;
  padding:0!important;
}
.npbs-pph .npbs-pph__content.page-title-inner > nav.npbs-pph__breadcrumb.wp-breadcrumb{
  margin-top:10px!important;
  margin-right:0!important;
  margin-bottom:0!important;
  margin-left:0!important;
  padding:0!important;
}
@media(max-width:767px){
  .npbs-pph .npbs-pph__content.page-title-inner > .npbs-pph__subtitle.ptitle-sub-title{margin-bottom:8px!important}
  .npbs-pph .npbs-pph__content.page-title-inner > nav.npbs-pph__breadcrumb.wp-breadcrumb{margin-top:10px!important}
}

/* v1.2.2 — Industic Vertical Rhythm & Breadcrumb Edition
 * Use explicit line-box metrics + explicit gaps. This prevents theme H1/span
 * margins and line-height from changing the perceived Subtitle/H1/Breadcrumb rhythm.
 */
.npbs-pph .npbs-pph__content.page-title-inner > .npbs-pph__subtitle.ptitle-sub-title{
  line-height:var(--pph-sub-lh,18px)!important;
  margin:0 auto var(--pph-sub-gap,8px)!important;
}
.npbs-pph--left .npbs-pph__content.page-title-inner > .npbs-pph__subtitle.ptitle-sub-title{
  margin-left:0!important;
  margin-right:0!important;
}
.npbs-pph .npbs-pph__content.page-title-inner > h1.npbs-pph__title.page-title{
  margin:0!important;
  padding:0!important;
  line-height:1!important;
}
.npbs-pph .npbs-pph__title.page-title > .npbs-pph__title-primary{
  margin:0!important;
  padding:0!important;
  line-height:var(--pph-title-lh,49px)!important;
}
.npbs-pph .npbs-pph__title.page-title > .npbs-pph__title-secondary{
  margin:var(--pph-lines-gap,0px) 0 0!important;
  padding:0!important;
  line-height:var(--pph-title-2-lh,49px)!important;
}
.npbs-pph .npbs-pph__content.page-title-inner > nav.npbs-pph__breadcrumb.wp-breadcrumb{
  margin:var(--pph-bc-gap,10px) 0 0!important;
  padding:0!important;
  line-height:var(--pph-bc-lh,25.2px)!important;
}
/* Beat the generic breadcrumb span color rule from both Industic and earlier plugin CSS. */
.npbs-pph .npbs-pph__content.page-title-inner > nav.npbs-pph__breadcrumb.wp-breadcrumb > span.npbs-pph__sep{
  color:var(--npbs-orange,#ff7607)!important;
  opacity:1!important;
}
@media(max-width:767px){
  .npbs-pph .npbs-pph__content.page-title-inner > .npbs-pph__subtitle.ptitle-sub-title{line-height:var(--pph-sub-lh,18px)!important;margin-bottom:var(--pph-sub-gap,8px)!important}
  .npbs-pph .npbs-pph__content.page-title-inner > nav.npbs-pph__breadcrumb.wp-breadcrumb{line-height:var(--pph-bc-lh,25.2px)!important;margin-top:var(--pph-bc-gap,10px)!important}
}

/* v1.2.3 — Industic Breadcrumb Separator Calibration Edition
 * Match the lighter native Industic breadcrumb chevron without changing
 * hero geometry, H1 metrics, or vertical rhythm calibrated in v1.2.2.
 */
.npbs-pph .npbs-pph__content.page-title-inner > nav.npbs-pph__breadcrumb.wp-breadcrumb > span.npbs-pph__sep{
  width:18px!important;
  color:var(--npbs-orange,#ff7607)!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:16px!important;
  line-height:var(--pph-bc-lh,25.2px)!important;
  font-weight:400!important;
  letter-spacing:0!important;
  opacity:1!important;
  text-align:center!important;
}

/* v1.2.4 — Full Image Width / No Horizontal Crop Edition
 * A 1920×658 source can be shown edge-to-edge without cover zoom/cropping.
 * Width is always fitted first; height follows the image's natural ratio.
 */
.npbs-pph--bg-full-width .npbs-pph__media{
  background-size:100% auto!important;
  background-position:var(--pph-bg-pos,center center)!important;
  background-repeat:no-repeat!important;
}
@media(max-width:1024px){
  .npbs-pph--bg-full-width .npbs-pph__media{background-position:var(--pph-bg-pos-tab,center center)!important}
}
@media(max-width:767px){
  .npbs-pph--bg-full-width .npbs-pph__media{background-position:var(--pph-bg-pos-mob,center center)!important}
}

/* v1.2.5 — Industic Overlay Calibration Edition
   Calibrates Uniform/Soft overlays 15% lighter to match the Knowledge Center hero visual density.
   Existing saved 0.42 values render at ~0.357 effective opacity; new default is 0.35 (~0.298 effective). */


/* v1.2.6 — Industic Native Breadcrumb Integration
 * The plugin no longer renders a second breadcrumb. Industic remains the single
 * breadcrumb source inside the Product Hero, preserving its native active-link,
 * underline, separator color, hover behavior and spacing.
 */
.npbs-pph .npbs-pph__content.page-title-inner > .wp-breadcrumb:not(.npbs-pph__breadcrumb),
.npbs-pph .npbs-pph__content.page-title-inner > .cms-breadcrumb{
  position:relative;
  z-index:3;
}


/* v1.2.9 — Context-Aware Breadcrumb Edition
 * The custom hero owns one breadcrumb only. The hidden native Industic page-title
 * wrapper is not used as a second breadcrumb source. Top-level Product Hub pages
 * collapse Home > Parent > Parent to Home > Parent; family/category pages render
 * Home > Industrial Bearings > Current Page.
 */
.npbs-pph .npbs-pph__breadcrumb--context{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
}


/* v1.2.10 — Single Breadcrumb Resolver
 * The NPBS context breadcrumb is the canonical breadcrumb inside this custom hero.
 * Industic can inject another .wp-breadcrumb/.cms-breadcrumb on child pages because
 * the hero intentionally carries native page-title classes. Hide only those duplicate
 * breadcrumb nodes INSIDE the NPBS hero; never globally hide theme breadcrumbs.
 * This preserves:
 *   Product Hub: Home > Industrial Bearings
 *   Child page:  Home > Industrial Bearings > Current Page
 * and leaves unrelated theme breadcrumbs elsewhere untouched.
 */
.npbs-pph .wp-breadcrumb:not(.npbs-pph__breadcrumb--context),
.npbs-pph .cms-breadcrumb:not(.npbs-pph__breadcrumb--context),
.npbs-pph .breadcrumb:not(.npbs-pph__breadcrumb--context),
.npbs-pph .breadcrumbs:not(.npbs-pph__breadcrumb--context){
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
/* Reassert the canonical breadcrumb in case broad Industic breadcrumb rules win later. */
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
}

/* v1.2.16 — Hard Reset 1px Breadcrumb Underline
 * One underline renderer only: a 1px CSS background layer on the inner label.
 * All theme/plugin borders, text decorations and pseudo-element underlines are reset.
 */
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > a.npbs-pph__breadcrumb-link,
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > a.npbs-pph__breadcrumb-link:link,
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > a.npbs-pph__breadcrumb-link:visited,
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > a.npbs-pph__breadcrumb-link:hover,
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > a.npbs-pph__breadcrumb-link:active,
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > a.npbs-pph__breadcrumb-link:focus,
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > a.npbs-pph__breadcrumb-link:focus-visible{
  position:relative!important; display:inline-flex!important; align-items:center!important;
  margin:0!important; padding:0!important; border:0!important; border-bottom:0!important;
  outline:0!important; box-shadow:none!important; text-decoration:none!important;
  text-decoration-line:none!important; text-decoration-thickness:0!important;
  background:none!important; background-image:none!important;
}
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > a.npbs-pph__breadcrumb-link::before,
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > a.npbs-pph__breadcrumb-link::after{
  content:none!important; display:none!important; width:0!important; height:0!important;
  border:0!important; box-shadow:none!important; background:none!important;
}
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > a.npbs-pph__breadcrumb-link > span.npbs-pph__breadcrumb-label{
  position:relative!important; display:inline-block!important;
  margin:0!important; padding:0 0 3px!important;
  border:0!important; border-bottom:0!important; outline:0!important; box-shadow:none!important;
  color:#fff!important; text-decoration:none!important; text-decoration-line:none!important;
  line-height:inherit!important;
  background-color:transparent!important;
  background-image:linear-gradient(var(--npbs-orange,#ff7607),var(--npbs-orange,#ff7607))!important;
  background-repeat:no-repeat!important;
  background-position:50% 100%!important;
  background-size:0 1px!important;
  transition:color .28s ease,background-size .28s ease!important;
}
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > a.npbs-pph__breadcrumb-link > span.npbs-pph__breadcrumb-label::before,
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > a.npbs-pph__breadcrumb-link > span.npbs-pph__breadcrumb-label::after{
  content:none!important; display:none!important; width:0!important; height:0!important;
  border:0!important; box-shadow:none!important; background:none!important;
}
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > a.npbs-pph__breadcrumb-link:hover > span.npbs-pph__breadcrumb-label,
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > a.npbs-pph__breadcrumb-link:focus-visible > span.npbs-pph__breadcrumb-label{
  color:var(--npbs-orange,#ff7607)!important;
  background-size:100% 1px!important;
}
.npbs-pph nav.npbs-pph__breadcrumb.wp-breadcrumb.npbs-pph__breadcrumb--context > span[aria-current="page"]{
  color:#fff!important; border:0!important; border-bottom:0!important; box-shadow:none!important;
  text-decoration:none!important; background:none!important;
}
