.qe-front-header, .qe-front-welcome {
 --front-navy: #0b2451;
 --front-blue: #0875ed;
 --front-border: #e1e8f1;
 color: var(--front-navy);
}
.qe-front-header { background: #fff; border-bottom: 1px solid var(--front-border); }
.qe-front-masthead { min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.qe-front-masthead .custom-logo { display: block; max-width: min(280px, 68vw); max-height: 58px; width: auto; height: auto; }
.qe-front-brand { color: var(--front-navy); font-weight: 750; text-decoration: none; }
.qe-front-nav { border-top: 1px solid var(--front-border); }
.qe-front-nav ul, .qe-front-topics ul { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; margin: 0; padding: 0; list-style: none; }
.qe-front-nav a, .qe-front-topics a { display: flex; align-items: center; justify-content: center; color: var(--front-navy); text-decoration: none; text-align: center; font-size: .88rem; font-weight: 650; min-height: 44px; padding: 8px; }
.qe-front-nav a:hover, .qe-front-topics a:hover { text-decoration: underline; }
.qe-front-welcome { background: linear-gradient(115deg,#f3f7fc,#edf5fd); border: 1px solid #e1e8f1; border-radius: 10px; }
.qe-front-hero { display: grid; grid-template-columns: 1.28fr 1fr; align-items: center; padding: clamp(20px,5vw,60px); gap: 12px; }
.qe-front-copy { min-width: 0; }
.qe-front-copy h1 { margin: .22em 0 .4em; color: var(--front-navy); font-size: clamp(1.85rem,4.25vw,3.45rem); line-height: 1.06; letter-spacing: -.045em; }
.qe-front-copy p { max-width: 40ch; color: #52647b; }
.qe-front-copy .qe-front-kicker { margin: 0; text-transform: uppercase; font-size: .73rem; letter-spacing: .15em; font-weight: 700; }
.qe-front-art { display: block; width: 100%; height: auto; }
.qe-front-topics { padding: 0 clamp(10px,4vw,45px) clamp(20px,4vw,46px); scroll-margin-top: 48px; }
.qe-front-topics li + li { border-left: 1px solid var(--front-border); }
.qe-front-topics a { flex-direction: column; gap: 8px; padding-block: 12px; }
.qe-front-topics svg { color: #125ca7; }
.qe-front-welcome + .qe-section { margin-top: clamp(24px,4vw,44px); }
@media (max-width: 680px) {
 .qe-front-hero { grid-template-columns: 1fr; }
 .qe-front-copy { display: contents; }
 .qe-front-copy h1 { margin: 0; font-size: clamp(1.55rem, 6vw, 1.85rem); line-height: 1.12; overflow-wrap: anywhere; }
 .qe-front-copy p:not(.qe-front-kicker) { order: 1; margin: 0; }
 .qe-front-art { max-width: 350px; justify-self: center; }
 .qe-front-nav ul, .qe-front-topics ul { grid-auto-flow: row; grid-template-columns: repeat(auto-fit,minmax(125px,1fr)); }
 .qe-front-topics li + li { border-left: 0; }
 .qe-front-topics li { border-bottom: 1px solid var(--front-border); }
}

.qe-front-masthead .qe-search { margin: 0; }
.qe-front-masthead .qe-search input { min-height: 44px; }
.qe-front-nav-mobile { display: none; }
.qe-story-image img { border-radius: 10px; }
.qe-category-lead { border-radius: 10px; }
.qe-category-lead .qe-story > p:last-child { margin-bottom: 0; }

@media (min-width: 901px) {
 .qe-category-lead .qe-story:has(.qe-story-image) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-content: center;
  column-gap: clamp(24px, 4vw, 48px);
 }
 .qe-category-lead .qe-story-image { grid-column: 1; grid-row: 1 / span 4; align-self: center; margin: 0; }
 .qe-category-lead .qe-story:has(.qe-story-image) > :not(.qe-story-image) { grid-column: 2; }
}
@media (max-width: 900px) {
 .qe-category-lead .qe-story-image { max-width: none; }
}
@media (max-width: 680px) {
 .qe-front-masthead { flex-wrap: wrap; padding-block: 12px; }
 .qe-front-masthead .qe-search { width: 100%; }
 .qe-front-masthead .qe-search input { flex: 1; width: auto; }
 .qe-front-nav-desktop { display: none; }
 .qe-front-nav-mobile { display: block; }
 .qe-front-nav-mobile summary { display: flex; align-items: center; gap: 10px; min-height: 44px; cursor: pointer; font-weight: 700; }
 .qe-front-nav-mobile summary::-webkit-details-marker { display: none; }
 .qe-front-nav-mobile ul { display: block; padding-bottom: 8px; }
 .qe-front-nav-mobile a { justify-content: flex-start; text-align: left; }
}
