/* 2026-08-02 — authoritative requested fixes. Loaded last on every page. */

/* Remove the redundant red page-name kicker and its short rule from ONLY the
   first interior leader panel. Main page titles and all later section labels stay. */
body.interior-page > main > section:first-child .jmf-matched-interior-kicker,
body.interior-page > main > section:first-child .jmf-trc-kicker,
body.interior-page > main > section:first-child .products-eyebrow,
body.interior-page > main > section:first-child .page-eyebrow,
body.interior-page > main > section:first-child .section-eyebrow,
body.interior-page > main > section:first-child .eyebrow,
body.interior-page > main > section:first-child .hero-kicker,
body.interior-page > main > section:first-child .page-kicker,
body.interior-page > main > section:first-child [class*="hero-kicker"],
body.interior-page > main > section:first-child [class*="page-kicker"] {
  display: none !important;
}
body.interior-page > main > section:first-child .jmf-matched-interior-kicker::before,
body.interior-page > main > section:first-child .jmf-matched-interior-kicker::after,
body.interior-page > main > section:first-child .jmf-trc-kicker::before,
body.interior-page > main > section:first-child .jmf-trc-kicker::after,
body.interior-page > main > section:first-child .products-eyebrow::before,
body.interior-page > main > section:first-child .products-eyebrow::after,
body.interior-page > main > section:first-child .page-eyebrow::before,
body.interior-page > main > section:first-child .page-eyebrow::after,
body.interior-page > main > section:first-child .section-eyebrow::before,
body.interior-page > main > section:first-child .section-eyebrow::after,
body.interior-page > main > section:first-child .eyebrow::before,
body.interior-page > main > section:first-child .eyebrow::after {
  content: none !important;
  display: none !important;
}
body.interior-page > main > section:first-child .jmf-hero-copy-lock > h1,
body.interior-page > main > section:first-child h1:first-of-type {
  margin-top: 0 !important;
}

@media (min-width: 901px) {
  /* Exactly one red rule under the visible header logo, including homepage. */
  html body .jmf-logo-link {
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
  }
  html body .jmf-logo-link::before { content: none !important; display:none !important; }
  html body .jmf-logo-link::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 2px !important;
    width: 100% !important;
    height: 2px !important;
    background: #d7192f !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  /* Quote modal must sit above the fixed header and fit inside one desktop view. */
  #quoteModal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483647 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 14px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }
  #quoteModal.is-open { display: flex !important; }
  #quoteModal .quote-modal-backdrop { position:absolute !important; inset:0 !important; }
  #quoteModal .quote-modal-panel {
    position: relative !important;
    width: min(900px, calc(100vw - 28px)) !important;
    height: auto !important;
    max-height: calc(100vh - 28px) !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    border-width: 2px !important;
    border-radius: 18px !important;
    box-sizing: border-box !important;
  }
  #quoteModal .quote-modal-close {
    position:absolute !important;
    top:8px !important;
    right:10px !important;
    width:34px !important;
    height:34px !important;
    font-size:24px !important;
    line-height:30px !important;
  }
  #quoteModal .quote-modal-header {
    display:grid !important;
    grid-template-columns: 260px minmax(0,1fr) !important;
    gap:22px !important;
    align-items:center !important;
    padding:14px 48px 12px 24px !important;
  }
  #quoteModal .quote-modal-header > img {
    width:250px !important;
    max-width:100% !important;
    height:auto !important;
    margin:0 !important;
  }
  #quoteModal .quote-modal-header h2 {
    margin:0 0 3px !important;
    font-size:30px !important;
    line-height:1 !important;
  }
  #quoteModal .quote-modal-header p {
    margin:0 !important;
    font-size:14px !important;
    line-height:1.25 !important;
  }
  #quoteModal .quote-form {
    padding:14px 24px 12px !important;
    width:100% !important;
    box-sizing:border-box !important;
  }
  #quoteModal .quote-form-grid {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:9px 18px !important;
  }
  #quoteModal .quote-form label {
    gap:4px !important;
    font-size:13px !important;
    line-height:1.15 !important;
  }
  #quoteModal .quote-form input,
  #quoteModal .quote-form select {
    min-height:36px !important;
    height:36px !important;
    padding:7px 10px !important;
    font-size:14px !important;
    border-radius:9px !important;
  }
  #quoteModal .quote-form-bottom {
    display:grid !important;
    grid-template-columns: 38% minmax(0,1fr) !important;
    gap:18px !important;
    align-items:end !important;
    margin-top:10px !important;
  }
  #quoteModal .quote-form-doctor {
    display:flex !important;
    align-items:flex-end !important;
    justify-content:center !important;
    height:250px !important;
    overflow:hidden !important;
  }
  #quoteModal .quote-form-doctor img {
    display:block !important;
    width:auto !important;
    max-width:100% !important;
    height:250px !important;
    object-fit:contain !important;
    object-position:center bottom !important;
  }
  #quoteModal .quote-form-notes { min-width:0 !important; }
  #quoteModal .quote-form textarea {
    width:100% !important;
    min-height:190px !important;
    height:190px !important;
    padding:9px 11px !important;
    font-size:14px !important;
    line-height:1.25 !important;
    border-radius:10px !important;
    box-sizing:border-box !important;
  }
  #quoteModal .quote-form-actions {
    display:flex !important;
    justify-content:flex-end !important;
    gap:12px !important;
    margin-top:10px !important;
  }
  #quoteModal .quote-form-actions button {
    min-width:150px !important;
    min-height:40px !important;
    padding:9px 18px !important;
    font-size:14px !important;
  }
  #quoteModal .quote-form-note {
    margin:6px 0 0 !important;
    font-size:11px !important;
    line-height:1.2 !important;
    text-align:right !important;
  }
}

@media (min-width: 901px) and (max-height: 760px) {
  #quoteModal .quote-modal-header { padding-top:10px !important; padding-bottom:9px !important; }
  #quoteModal .quote-form { padding-top:10px !important; padding-bottom:8px !important; }
  #quoteModal .quote-form-doctor,
  #quoteModal .quote-form-doctor img { height:205px !important; }
  #quoteModal .quote-form textarea { min-height:150px !important; height:150px !important; }
}
