/* Insights: publication masthead, card typesetting, stat cards, cited quotes,
   sources and labelled share buttons (20 Oct 2026, Nick). Loaded after de-insights.css. */

/* Masthead (index) */
.dx-ins .i-mast { padding: clamp(116px, 11vw, 150px) 0 0; }
.dx-ins .i-mast-top { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 16px; padding: 12px 0; border-top: 3px solid var(--i-ink); border-bottom: 1px solid var(--i-ink); font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--i-ink); }
.dx-ins .i-mast-top span:nth-child(2) { text-align: center; }
.dx-ins .i-mast-top span:last-child { text-align: right; }
.dx-ins .i-mast-title { margin: 0; padding: clamp(14px, 2vw, 26px) 0 clamp(6px, 1vw, 12px); font-family: var(--i-wide); font-weight: 800; font-stretch: 125%; text-transform: uppercase; letter-spacing: -.01em; line-height: .82; font-size: clamp(42px, 11.4vw, 162px); text-align: center; color: var(--i-ink); white-space: nowrap; }
.dx-ins .i-mast-title span { color: var(--i-or); }
.dx-ins .i-mast-sub { margin: 0; padding: clamp(10px, 1.2vw, 16px) 0 clamp(12px, 1.6vw, 20px); text-align: center; font-family: var(--i-wide); font-weight: 700; font-stretch: 125%; text-transform: uppercase; letter-spacing: .04em; line-height: 1.1; font-size: clamp(15px, 2.15vw, 31px); color: var(--i-or); }
.dx-ins .i-mast-strap { display: grid; grid-template-columns: minmax(0, 1fr); justify-items: center; padding: 14px 0 18px; border-top: 1px solid var(--i-ink); }
.dx-ins .i-mast-strap p { margin: 0; font-size: clamp(16px, 1.3vw, 18px); line-height: 1.5; color: var(--i-mute); max-width: 62ch; text-align: center; }
.dx-ins .i-mast .i-filters { display: flex; flex-wrap: wrap; justify-content: center; gap: 0; margin: 0 0 clamp(28px, 4vw, 48px); padding: 0; border-top: 3px double var(--i-ink); border-bottom: 1px solid var(--i-ink); }
.dx-ins .i-mast .i-filters button { height: 46px; padding: 0 16px; border: 0; border-radius: 0; background: none; font: 600 12.5px/1 var(--i-sans); letter-spacing: .1em; text-transform: uppercase; color: var(--i-mute); position: relative; }
.dx-ins .i-mast .i-filters button:hover { color: var(--i-ink); }
.dx-ins .i-mast .i-filters button[aria-pressed="true"] { background: none; color: var(--i-ink); }
.dx-ins .i-mast .i-filters button[aria-pressed="true"]::after { content: ''; position: absolute; left: 16px; right: 16px; bottom: 10px; height: 2px; background: var(--i-or); }

/* Card typesetting: a deliberate two line headline (ink, then orange on its
   own line), a hairline, a shorter measure for the standfirst and a read link. */
.dx-ins .i-grid { align-items: start; row-gap: 48px; }
.dx-ins .i-card .i-kicker { margin: 0 0 16px; }
.dx-ins .i-card h3 { margin: 0; padding-bottom: 14px; border-bottom: 1px solid var(--i-line); font-size: clamp(17px, 1.42vw, 20px); line-height: 1.08; letter-spacing: .005em; text-wrap: initial; }
.dx-ins .i-card h3 .i-two { display: block; margin-top: .14em; }
.dx-ins .i-card > p:not(.i-kicker) { margin: 14px 0 0; max-width: 34ch; font-size: 15px; line-height: 1.55; color: var(--i-mute); text-wrap: pretty; }
.dx-ins a.i-card::after { content: 'Read the article \2192'; display: block; margin-top: 16px; font: 600 13.5px/1 var(--i-sans); letter-spacing: .02em; color: var(--i-or); }
.dx-ins a.i-card:hover h3 { text-decoration: none; }
.dx-ins a.i-card:hover h3 .i-two { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 2px; }
.dx-ins .i-card.is-soon h3, .dx-ins .i-card.is-soon > p:not(.i-kicker) { opacity: .78; }
.dx-ins .i-feature-body h2 .i-two { display: block; margin-top: .12em; }

/* Share buttons (labelled) */
.dx-ins .a-share { align-items: center; gap: 8px; flex-wrap: wrap; }
.dx-ins .a-share-label { margin-right: 4px; font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--i-mute); }
.dx-ins .a-share .a-share-btn { width: auto; height: 38px; padding: 0 14px 0 12px; border-radius: 99px; display: inline-flex; align-items: center; gap: 8px; font: 500 14px/1 var(--i-sans); text-decoration: none; color: var(--i-ink); white-space: nowrap; }
.dx-ins .a-share .a-share-btn svg { width: 16px; height: 16px; flex: none; }
.dx-ins .a-share svg.is-fill { fill: currentColor; stroke: none; }
.dx-ins .a-share .a-share-btn:focus-visible { outline: 2px solid var(--i-or); outline-offset: 2px; }
.dx-ins .a-share .a-share-btn.is-done { background: var(--i-ink); color: #fff; border-color: var(--i-ink); }

/* Stat cards */
.dx-ins .a-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 1.6em !important; margin-bottom: .4em !important; }
.dx-ins .a-stat { background: var(--i-soft); border-radius: 18px; padding: 20px 20px 18px; display: flex; flex-direction: column; gap: 8px; }
.dx-ins .a-stat-fig { margin: 0; font-family: var(--i-wide); font-weight: 700; font-stretch: 125%; text-transform: uppercase; font-size: clamp(26px, 2.4vw, 34px); line-height: 1; color: var(--i-or); }
.dx-ins .a-stat-txt { margin: 0; font-size: 15px; line-height: 1.45; color: var(--i-ink); }
.dx-ins .a-stat-src { margin: auto 0 0; padding-top: 6px; font-size: 12.5px; line-height: 1.4; color: var(--i-mute); }
.dx-ins .a-stat-src a { color: inherit; }

/* Cited quotes */
.dx-ins .a-cite { margin: 2em 0 !important; }
.dx-ins .a-cite .a-quote { margin: 0 !important; }
.dx-ins .a-cite figcaption { margin: 12px 0 0 29px; font-size: 14px; line-height: 1.45; color: var(--i-mute); }
.dx-ins .a-cite figcaption b { color: var(--i-ink); font-weight: 600; }
.dx-ins .a-cite figcaption a { color: inherit; }

/* Sources */
.dx-ins .a-sources { margin-top: 2.6em !important; padding-top: 22px; border-top: 1px solid var(--i-line); font-size: 14px; line-height: 1.55; color: var(--i-mute); }
.dx-ins .a-sources p { margin: 0 0 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; font-size: 12px; color: var(--i-ink); }
.dx-ins .a-sources ol { margin: 0; padding-left: 18px; display: grid; gap: 6px; }
.dx-ins .a-sources a { color: inherit; text-decoration-color: var(--i-line); }

@media (max-width: 760px) {
  .dx-ins .i-mast-top { grid-template-columns: 1fr auto; }
  .dx-ins .i-mast-top span:nth-child(2) { display: none; }
  .dx-ins .i-mast .i-filters { justify-content: flex-start; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
  .dx-ins .i-mast .i-filters::-webkit-scrollbar { display: none; }
  .dx-ins .i-mast .i-filters button { flex: none; padding: 0 12px; }
  .dx-ins .i-mast .i-filters button[aria-pressed="true"]::after { left: 12px; right: 12px; }
}
@media (max-width: 640px) {
  .dx-ins .a-stats { grid-template-columns: minmax(0, 1fr); }
  .dx-ins .a-cite figcaption { margin-left: 23px; }
  .dx-ins .a-share-label { width: 100%; }
  .dx-ins .i-card h3 { font-size: 19px; }
  .dx-ins .i-card > p:not(.i-kicker) { max-width: none; }
}
