/* Home "Questar in the news" cards ([questar_news_cards], inc/structured.php), from the
   old news.css. The headline, introduction and "All coverage" link are Divi modules;
   these rules style the cards and the outlet row. */
.qc-news .news-grid { display: grid; grid-template-columns: 1.25fr 1fr 1fr; gap: 22px; }
.qc-news .ncard { background: var(--white); border-radius: var(--r); padding: 28px; color: var(--text); display: flex; flex-direction: column; box-shadow: 0 12px 32px rgba(0, 0, 0, .18); }
.qc-news .ncard .outlet { font-family: var(--display); font-weight: 500; font-size: 17px; color: var(--navy); }
.qc-news .ncard .topic { font-size: 13px; color: var(--slate); margin: 2px 0 16px; }
.qc-news .ncard blockquote { margin: 0 0 18px; padding: 0; border: 0; font-size: 15.5px; line-height: 1.6; color: var(--text); flex: 1; }
.qc-news .ncard .by { font-size: 13.5px; color: var(--slate); margin-bottom: 14px; }
.qc-news .ncard .by b { color: var(--navy); font-weight: 600; }
.qc-news .ncard.feature { grid-row: span 2; background: linear-gradient(160deg, var(--white) 0%, #eef7fc 100%); }
.qc-news .ncard.feature .badge { display: inline-flex; align-items: center; gap: 8px; background: var(--sky); color: var(--deep); font-weight: 600; font-size: 13px; padding: 8px 12px; border-radius: 999px; margin-bottom: 18px; align-self: flex-start; }
.qc-news .ncard.feature h3 { font-family: var(--display); font-weight: 300; font-size: 30px; line-height: 1.1; color: var(--navy); margin: 0 0 14px; padding: 0; }
.qc-news .ncard.feature .fine { font-size: 12px; color: var(--slate); line-height: 1.5; margin: 18px 0 0; padding-top: 14px; border-top: 1px solid var(--gray); }
.qc-news .ncard.has-pic { padding-top: 0; overflow: hidden; }
.qc-news .ncard .pic { display: block; position: relative; aspect-ratio: 16/9; margin: 0 -28px 22px; background: var(--navy); overflow: hidden; }
.qc-news .ncard .pic img { width: 100%; height: 100%; object-fit: cover; display: block; }
.qc-news .ncard .pic .tile { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; padding: 16px; text-align: center; background: var(--grad-navy); color: var(--white); font-family: var(--display); font-weight: 300; font-size: 22px; line-height: 1.15; }
.qc-news .ncard .pic .tile::before { content: ""; position: absolute; inset: 0; background: url(../brand_star.svg) no-repeat 110% 120%/70% auto; opacity: .14; }
.qc-news .ncard .pic .tile span { position: relative; }
.qc-news .ncard.feature .pic { margin-bottom: 24px; }
/* An award's or ranking's badge (an item with Kind: recognition; inc/structured.php adds is-badge):
   shown whole on white, with room around it, instead of cropped to the frame like a photograph. */
.qc-news .ncard .pic.is-badge { background: #ffffff; }
.qc-news .ncard .pic.is-badge img { object-fit: contain; padding: 7%; box-sizing: border-box; }
.qc-news .news-more { margin-top: 32px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; }
.qc-news .news-more .outlets { display: flex; gap: 32px; flex-wrap: wrap; font-family: var(--display); font-size: 16px; color: rgba(255, 255, 255, .55); }
/* The "All coverage" link beside the headline. */
.qc-light-link { color: #ffffff !important; font-weight: 600; font-size: 15px; display: inline-flex; align-items: center; gap: 8px; }
.qc-light-link svg { width: 14px; height: 14px; }
@media (max-width: 1000px) {
	.qc-news .news-grid { grid-template-columns: 1fr 1fr; }
	.qc-news .ncard.feature { grid-column: 1 / -1; grid-row: auto; }
}
@media (max-width: 700px) {
	.qc-news .news-grid { grid-template-columns: 1fr; }
}
