.qh-article-wrap {
  max-width: 990px;
  margin: auto;
  padding: 40px 24px 85px
}

.qh-article-back {
  display: inline-block;
  color: #057ba9;
  margin-bottom: 20px;
  font-weight: 700
}

.qh-article-wrap h1 {
  font-size: clamp(2rem, 4vw, 3.3rem);
  line-height: 1.15;
  color: #193467;
  margin: 10px 0 14px
}

.qh-article-wrap .qh-news-meta {
  color: #057ba9;
  font-weight: 700;
  margin: 0 0 8px
}

.qh-article-original {
  padding: 12px 18px;
  margin: 0 0 24px;
  background: #e8f5fd;
  border-left: 5px solid #f47726;
  overflow-wrap: anywhere
}

.qh-article-original a {
  font-weight: 700;
  color: #057ba9
}

.qh-article-image {
  width: 100%;
  max-height: 460px;
  object-fit: contain;
  background: #f0f7fb;
  border-radius: 12px;
  display: block;
  margin: 24px auto
}

.qh-article-wrap .qh-article-body {
  font-size: 1.13rem;
  line-height: 1.75;
  color: #263746
}

.qh-article-note {
  font-size: .93rem;
  color: #5c7080;
  margin-top: 35px
}

/* Q-Helix long-form editorial article design */
.qh .qh-article-wrap {
  max-width: 1120px;
  padding: 56px 24px 100px;
  margin: auto
}

.qh .qh-article-heading,
.qh .qh-article-body,
.qh .qh-article-bottom {
  max-width: 840px;
  margin-left: auto;
  margin-right: auto
}

.qh .qh-article-heading h1 {
  font-size: clamp(2.35rem, 4.1vw, 4.2rem);
  letter-spacing: -.035em;
  line-height: 1.13;
  font-weight: 780;
  margin: 14px 0 22px
}

.qh .qh-article-heading .qh-news-meta {
  letter-spacing: .075em;
  text-transform: uppercase;
  font-size: .88rem;
  color: #057ba9
}

.qh .qh-article-original {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: .45rem;
  background: #e8f5fd;
  border-left: 5px solid #f47726;
  padding: 17px 20px;
  margin: 25px 0 35px;
  border-radius: 0 9px 9px 0;
  font-size: .96rem
}

.qh .qh-article-figure {
  margin: 0 auto 40px;
  max-width: 1040px
}

.qh .qh-article-image {
  width: 100%;
  max-height: 610px;
  object-fit: contain;
  background: #f0f7fb;
  border-radius: 14px;
  margin: 0;
  display: block
}

.qh .qh-article-figure figcaption {
  color: #66788b;
  font-size: .85rem;
  padding: 12px 3px;
  line-height: 1.45
}

.qh .qh-article-body {
  font-size: 1.15rem;
  line-height: 1.9;
  color: #263746
}

.qh .qh-article-body p {
  max-width: none;
  margin: 0 0 1.65rem
}

.qh .qh-article-body .qh-article-lead {
  font-size: clamp(1.23rem, 1.6vw, 1.43rem);
  line-height: 1.72;
  color: #193467;
  font-weight: 560
}

.qh .qh-article-bottom {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
  padding-top: 25px;
  margin-top: 36px;
  border-top: 1px solid #cfe0ee;
  font-weight: 700
}

.qh .qh-article-back {
  font-size: .93rem
}

@media(max-width:650px) {
  .qh .qh-article-wrap {
    padding: 35px 18px 65px
  }

  .qh .qh-article-body {
    font-size: 1.05rem
  }

  .qh .qh-article-figure {
    margin-bottom: 25px
  }
}

/* Q-Helix editorial news: desktop date/share rail, full text, bottom gallery */
.qh .qh-article-wrap {
  max-width: 1220px;
  margin: auto;
  padding: 48px 24px 84px
}

.qh .qh-editorial-layout {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: clamp(28px, 5vw, 75px);
  align-items: start
}

.qh .qh-editorial-aside {
  padding: 28px 16px 15px 0;
  border-top: 4px solid #06B1CC;
  position: sticky;
  top: 98px;
  color: #193467
}

.qh .qh-editorial-aside h2 {
  margin: 0 0 9px;
  font-size: .84rem;
  letter-spacing: .11em;
  text-transform: uppercase;
  font-weight: 800;
  color: #057BA9
}

.qh .qh-editorial-aside #d-meta {
  font-size: 1rem;
  line-height: 1.65;
  letter-spacing: normal;
  text-transform: none;
  font-weight: 700;
  color: #193467;
  margin-bottom: 25px;
  display: block
}

.qh .qh-share-links {
  display: flex;
  gap: 9px;
  flex-wrap: wrap
}

.qh .qh-share-links a {
  display: grid;
  place-items: center;
  width: 39px;
  height: 39px;
  border: 1.5px solid #bed7e7;
  border-radius: 50%;
  font-weight: 800;
  background: #E8F5FD;
  color: #193467;
  text-decoration: none;
  font-size: 1rem
}

.qh .qh-share-links a:hover,
.qh .qh-share-links a:focus-visible {
  background: #193467;
  color: white
}

.qh .qh-share-status {
  font-size: .8rem;
  margin: 10px 0 0;
  color: #057BA9
}

.qh .qh-editorial-main {
  min-width: 0;
  max-width: 850px
}

.qh .qh-article-heading,
.qh .qh-article-body {
  max-width: none;
  margin-left: 0;
  margin-right: 0
}

.qh .qh-article-heading h1 {
  font-size: clamp(2.35rem, 4.4vw, 3.85rem);
  font-weight: 850;
  letter-spacing: -.035em;
  line-height: 1.14;
  margin: 5px 0 28px;
  color: #193467
}

.qh .qh-article-original {
  margin: 0 0 37px;
  display: flex;
  flex-wrap: wrap;
  background: #E8F5FD;
  border-left: 4px solid #F47726;
  border-radius: 0 9px 9px 0;
  gap: .45rem
}

.qh .qh-article-original a {
  font-weight: 800;
  color: #057BA9
}

.qh .qh-article-body {
  font-size: 1.125rem;
  line-height: 1.9;
  color: #263746
}

.qh .qh-article-body p {
  margin-bottom: 1.7rem;
  max-width: none
}

.qh .qh-gallery {
  max-width: 1000px;
  margin: 45px auto 0 !important;
  border-top: 3px solid #06B1CC;
  padding: 27px 0 0
}

.qh .qh-gallery h2 {
  font-size: 2rem;
  margin: 0 0 6px;
  color: #193467
}

.qh .qh-gallery-intro {
  color: #53697e;
  margin: 0 0 21px
}

.qh .qh-gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px
}

.qh .qh-gallery .qh-article-figure {
  grid-column: span 2;
  margin: 0;
  border: 1px solid #cfe0ee;
  border-radius: 12px;
  overflow: hidden;
  background: #f0f7fb;
  max-width: none
}

.qh .qh-gallery .qh-article-image {
  width: 100%;
  height: auto;
  max-height: 580px;
  aspect-ratio: 16 / 10;
  object-fit: contain;
  border-radius: 0;
  margin: 0
}

.qh .qh-gallery figcaption {
  padding: 10px 16px;
  color: #566b7e
}

.qh .qh-btn-outline {
  display: inline-flex;
  border: 2px solid #193467;
  border-radius: 100px;
  padding: 11px 19px;
  text-decoration: none;
  color: #193467 !important;
  font-size: .95rem;
  margin: 0 0 35px
}

.qh .qh-btn-outline:hover {
  background: #193467;
  color: white !important;
  text-decoration: none
}

@media(max-width:760px) {
  .qh .qh-editorial-layout {
    grid-template-columns: 1fr;
    gap: 20px
  }

  .qh .qh-editorial-aside {
    position: static;
    display: flex;
    gap: 14px 25px;
    align-items: center;
    flex-wrap: wrap;
    padding: 12px 0;
    border-top-width: 3px
  }

  .qh .qh-editorial-aside #d-meta {
    margin: 0 12px 0 0
  }

  .qh .qh-editorial-aside h2 {
    margin: 0
  }

  .qh .qh-gallery-grid {
    grid-template-columns: 1fr
  }

  .qh .qh-gallery .qh-article-figure {
    grid-column: span 1
  }

  .qh .qh-article-wrap {
    padding: 26px 17px 55px
  }
}

/* Gallery and navigation refinements; shared header/footer untouched. */
.qh .qh-article-back.qh-btn-outline {
  background: #F47726;
  border: 2px solid #F47726;
  color: #193467 !important;
  font-weight: 800;
  transition: background .18s ease, border-color .18s ease
}

.qh .qh-article-back.qh-btn-outline:hover,
.qh .qh-article-back.qh-btn-outline:focus-visible {
  background: #FFB16B;
  border-color: #FFB16B;
  color: #193467 !important
}

.qh .qh-gallery {
  width: auto;
  max-width: 850px;
  margin: 50px 0 0 calc(190px + clamp(28px, 5vw, 75px)) !important;
  padding-top: 28px
}

.qh .qh-gallery-grid {
  display: block
}

.qh .qh-gallery .qh-article-figure {
  margin: 0;
  max-width: none;
  border-radius: 9px;
  border: 0;
  overflow: hidden;
  background: #f0f7fb
}

.qh .qh-gallery .qh-article-image {
  width: 100%;
  height: auto;
  max-height: 540px;
  aspect-ratio: 16/9;
  object-fit: contain;
  cursor: zoom-in
}

.qh .qh-gallery-hero {
  position: relative
}

.qh .qh-gallery-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  margin: 14px 0
}

.qh .qh-gallery-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap
}

.qh .qh-gallery-action {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
  min-height: 42px;
  padding: 9px 14px;
  border: 1.5px solid #193467;
  border-radius: 999px;
  background: #fff;
  color: #193467 !important;
  text-decoration: none;
  font: 700 .9rem 'Segoe UI', Arial, sans-serif;
  cursor: pointer
}

.qh .qh-gallery-action:hover:not(:disabled),
.qh .qh-gallery-action:focus-visible {
  background: #E8F5FD;
  text-decoration: none
}

.qh .qh-gallery-action:disabled {
  opacity: .35;
  cursor: not-allowed
}

.qh .qh-gallery-count {
  font-size: .85rem;
  font-weight: 700;
  color: #53697e
}

.qh .qh-gallery-thumbnails {
  display: flex;
  gap: 12px;
  overflow-x: auto;
  padding: 7px 2px 13px;
  scrollbar-width: thin
}

.qh .qh-gallery-thumb {
  flex: 0 0 122px;
  height: 78px;
  border: 3px solid transparent;
  border-radius: 7px;
  background: #edf4f8;
  padding: 0;
  cursor: pointer;
  overflow: hidden
}

.qh .qh-gallery-thumb[aria-current=true] {
  border-color: #F47726
}

.qh .qh-gallery-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block
}

.qh .qh-gallery-thumb:hover {
  border-color: #06B1CC
}

.qh .qh-gallery-empty {
  color: #53697e
}

.qh .qh-image-lightbox[hidden] {
  display: none !important
}

.qh .qh-image-lightbox {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(0, 0, 0, .96);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 65px 70px 55px
}

.qh .qh-lightbox-photo {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain
}

.qh .qh-lightbox-top {
  position: absolute;
  top: 10px;
  left: 16px;
  right: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: white;
  font-weight: 700
}

.qh .qh-lightbox-tools {
  display: flex;
  gap: 12px;
  align-items: center
}

.qh .qh-lightbox-tools a,
.qh .qh-lightbox-tools button {
  color: white !important;
  background: transparent;
  border: 1px solid #aaa;
  border-radius: 999px;
  padding: 8px 12px;
  text-decoration: none;
  cursor: pointer;
  font: 700 .9rem Arial
}

.qh .qh-lightbox-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 43px;
  height: 43px;
  border-radius: 50%;
  background: transparent;
  border: 1px solid white;
  color: white;
  cursor: pointer;
  font-size: 1.4rem
}

.qh .qh-lightbox-nav.prev {
  left: 10px
}

.qh .qh-lightbox-nav.next {
  right: 10px
}

.qh .qh-lightbox-nav:disabled {
  opacity: .3;
  cursor: default
}

/* Remove common theme/plugin scroll-to-top overlays only; preserve other navigation. */
#ast-scroll-top,
.ast-scroll-to-top,
.scroll-to-top,
.back-to-top,
#back-to-top,
#scrollToTop,
.wpfront-scroll-top-container {
  display: none !important
}

@media(max-width:760px) {
  .qh .qh-gallery {
    margin: 35px 0 0 !important;
    max-width: none
  }

  .qh .qh-image-lightbox {
    padding: 75px 43px 50px
  }

  .qh .qh-gallery-thumb {
    flex-basis: 90px;
    height: 60px
  }
}
