/* FINAL DESKTOP HEADER + LEADER POSITION HOTFIX. Mobile intentionally untouched. */
@media (min-width:901px){
  :root{--jmf-hotfix-header-h:82px;--jmf-hotfix-logo-w:292px;--jmf-hotfix-red:#e21d3a;}
  html{scroll-padding-top:var(--jmf-hotfix-header-h)!important;}
  html body{
    margin:0!important;
    padding-top:var(--jmf-hotfix-header-h)!important;
  }

  /* One identical, thin fixed header on every desktop page. */
  html body .jmf-header{
    position:fixed!important;
    top:0!important;left:0!important;right:0!important;bottom:auto!important;
    width:100%!important;
    height:var(--jmf-hotfix-header-h)!important;
    min-height:var(--jmf-hotfix-header-h)!important;
    max-height:var(--jmf-hotfix-header-h)!important;
    margin:0!important;
    padding:0 24px!important;
    display:flex!important;
    align-items:center!important;
    box-sizing:border-box!important;
    background:#fff!important;
    border:0!important;
    border-bottom:1px solid rgba(3,29,67,.12)!important;
    box-shadow:none!important;
    overflow:visible!important;
    z-index:2147483000!important;
  }

  /* Cropped logo fills the box; visible logo and red rule are exactly equal width. */
  html body .jmf-logo-link{
    position:absolute!important;
    left:24px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    width:var(--jmf-hotfix-logo-w)!important;
    height:72px!important;
    margin:0!important;
    padding:0 0 7px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    border:0!important;
  }
  html body .jmf-logo-link::after{
    content:""!important;
    position:absolute!important;
    left:0!important;right:0!important;bottom:2px!important;
    width:100%!important;
    height:2px!important;
    background:var(--jmf-hotfix-red)!important;
  }
  html body .jmf-header .jmf-logo{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    max-height:54px!important;
    margin:0 auto!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center center!important;
  }

  html body .jmf-nav{
    position:absolute!important;
    left:50%!important;top:0!important;
    transform:translateX(-50%)!important;
    width:max-content!important;
    height:var(--jmf-hotfix-header-h)!important;
    margin:0!important;padding:0!important;
    display:flex!important;
    align-items:stretch!important;
    justify-content:center!important;
    gap:clamp(24px,2.35vw,44px)!important;
    overflow:visible!important;
  }
  html body .jmf-nav-item{height:100%!important;display:flex!important;align-items:stretch!important;position:relative!important;overflow:visible!important;}
  html body .jmf-nav-link{height:100%!important;display:flex!important;align-items:center!important;padding:0!important;margin:0!important;line-height:1!important;white-space:nowrap!important;}
  html body .jmf-dropdown-menu{top:calc(var(--jmf-hotfix-header-h) - 1px)!important;z-index:2147483001!important;}

  html body .jmf-header-actions{
    position:absolute!important;
    right:24px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    height:auto!important;
    margin:0!important;padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
  }
  html body .jmf-quote{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:44px!important;
    margin:0!important;
    padding:12px 22px!important;
    line-height:1!important;
    box-sizing:border-box!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
  }

  /* Fixed header occupies 82px; all page content starts exactly below it. */
  html body>main,
  html body.interior-page>main,
  html body>main[style]{
    position:relative!important;
    top:auto!important;left:auto!important;right:auto!important;
    width:100%!important;max-width:none!important;
    margin:0!important;padding:0!important;
    transform:none!important;
  }

  /* All interior leaders use the same geometry and are fully visible. */
  html body.interior-page>main>section:first-child,
  html body.interior-page .jmf-mockup-leader,
  html body.interior-page .jmf-matched-interior-hero,
  html body.interior-page .jmf-trc-hero{
    position:relative!important;
    top:auto!important;left:auto!important;right:auto!important;
    width:100%!important;
    height:300px!important;
    min-height:300px!important;
    max-height:300px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    border-top:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  html body.interior-page .jmf-mockup-leader>.products-hero-inner,
  html body.interior-page .jmf-mockup-leader>.jmf-trc-hero-inner,
  html body.interior-page .jmf-mockup-leader>.container{
    position:relative!important;
    z-index:2!important;
    top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;
    width:min(1160px,calc(100% - 56px))!important;
    max-width:1160px!important;
    height:auto!important;
    margin:0 auto!important;
    padding:0!important;
    transform:none!important;
    display:block!important;
    text-align:left!important;
  }
  html body.interior-page .jmf-mockup-leader .jmf-hero-copy-lock{
    position:relative!important;
    width:42%!important;
    max-width:460px!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
  }
  html body.interior-page .jmf-matched-interior-kicker,
  html body.interior-page .jmf-trc-kicker{
    position:relative!important;
    top:auto!important;left:auto!important;right:auto!important;
    display:block!important;
    width:max-content!important;
    max-width:100%!important;
    margin:0 0 20px!important;
    padding:0 0 10px!important;
    transform:none!important;
    overflow:visible!important;
    color:#ff304d!important;
    font-family:Arial,sans-serif!important;
    font-size:14px!important;
    font-weight:800!important;
    line-height:1!important;
    letter-spacing:.045em!important;
    text-transform:uppercase!important;
    text-align:left!important;
  }
  html body.interior-page .jmf-matched-interior-kicker::after,
  html body.interior-page .jmf-trc-kicker::after{
    content:""!important;
    position:absolute!important;
    left:0!important;bottom:0!important;
    width:34px!important;height:2px!important;
    background:#ff304d!important;
  }
  html body.interior-page .jmf-matched-interior-title,
  html body.interior-page .jmf-trc-hero h1{
    position:relative!important;
    top:auto!important;left:auto!important;right:auto!important;
    display:block!important;
    width:auto!important;
    max-width:460px!important;
    height:auto!important;max-height:none!important;
    margin:0!important;padding:0!important;
    transform:none!important;
    overflow:visible!important;
    white-space:normal!important;
    color:#fff!important;
    font-family:Georgia,'Times New Roman',serif!important;
    font-size:44px!important;
    font-weight:700!important;
    line-height:1.02!important;
    letter-spacing:-.025em!important;
    text-align:left!important;
  }
}

@media (min-width:901px) and (max-width:1320px){
  :root{--jmf-hotfix-logo-w:252px;}
  html body .jmf-logo-link{left:16px!important;}
  html body .jmf-header-actions{right:16px!important;}
  html body .jmf-nav{gap:18px!important;}
  html body .jmf-nav-link{font-size:13px!important;}
  html body .jmf-quote{font-size:12px!important;padding:11px 15px!important;}
}

/* 2026-08-02 structural alignment correction: keep all desktop content directly below the identical fixed header. */
@media (min-width:901px){
  html body{padding-top:82px!important;}
  html body>.jmf-header{height:82px!important;min-height:82px!important;max-height:82px!important;}
  html body>main{margin:0!important;margin-top:0!important;padding:0!important;padding-top:0!important;top:auto!important;transform:none!important;}
  html body.interior-page>main>section:first-child{margin:0!important;margin-top:0!important;padding:0!important;top:auto!important;transform:none!important;height:300px!important;min-height:300px!important;max-height:300px!important;overflow:hidden!important;display:flex!important;align-items:center!important;}
}
