/* ============================================================
   OMNEX — Insights index + Article reading experience
   Builds on styles.css (same tokens, fonts, nav, footer).
   ============================================================ */

/* ---------- shared: page offset under fixed nav ---------- */
.ins-page{padding-top:74px;}

/* ---------- breadcrumb ---------- */
.crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);}
.crumbs a{color:var(--muted);transition:color .2s;}
.crumbs a:hover{color:var(--brass-deep);}
.crumbs .sep{color:var(--muted-2);}
.crumbs [aria-current]{color:var(--ink-2);}

/* ============================================================
   INSIGHTS INDEX — masthead
   ============================================================ */
.ins-masthead{padding-block:clamp(26px,4vw,46px) clamp(18px,2.4vw,26px);border-bottom:1px solid var(--line);}
.ins-masthead .eyebrow{margin-bottom:12px;}
.ins-masthead h1{font-size:clamp(1.9rem,4vw,3.1rem);letter-spacing:-0.015em;line-height:1.05;max-width:20ch;}
.ins-masthead .lede{margin-top:16px;font-size:clamp(1.02rem,1.3vw,1.16rem);color:var(--muted);max-width:58ch;}

/* category filter */
.ins-filter{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;}
.ins-chip{font-family:var(--head);font-weight:600;font-size:.9rem;color:var(--ink-2);background:var(--paper-card);border:1px solid var(--line-strong);border-radius:100px;padding:9px 18px;transition:all .2s var(--ease);cursor:pointer;}
.ins-chip:hover{border-color:var(--ink);}
.ins-chip.is-active{background:var(--brass);color:#fff;border-color:var(--brass);}

/* ---------- featured article ---------- */
.ins-featured{padding-block:clamp(24px,3vw,40px);}
.ins-featured__card{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(28px,4vw,56px);align-items:center;}
.ins-featured__media{aspect-ratio:16/9;border-radius:var(--radius-lg);overflow:hidden;display:block;}
.ins-featured__media img{width:100%;height:100%;object-fit:cover;display:block;}
.ins-featured__tag{display:inline-flex;align-items:center;gap:.6em;font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--brass);margin-bottom:18px;}
.ins-featured__tag::before{content:"";width:22px;height:1px;background:var(--brass);}
.ins-featured h2{font-size:clamp(1.9rem,3.4vw,2.9rem);letter-spacing:-0.02em;line-height:1.06;text-transform:none;font-family:var(--head);font-weight:700;}
.ins-featured h2 a:hover{color:var(--brass-deep);}
.ins-featured__dek{margin-top:18px;font-size:1.16rem;color:var(--muted);max-width:46ch;}
.ins-featured__meta{margin-top:24px;font-family:var(--mono);font-size:.76rem;letter-spacing:.04em;color:var(--muted-2);text-transform:uppercase;}
.ins-featured__cta{margin-top:26px;}

/* ---------- index grid (reuses .posts/.post from styles.css) ---------- */
.ins-grid-wrap{padding-bottom:clamp(64px,8vw,110px);}
.ins-grid-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:28px;border-top:1px solid var(--line);padding-top:30px;}
.ins-grid-head h2{font-size:1.4rem;font-family:var(--head);font-weight:700;text-transform:none;letter-spacing:-0.01em;}
.ins-grid-head .count{font-family:var(--mono);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);}
.post.is-hidden{display:none;}
/* explicit click affordance on index cards */
.ins-grid-wrap .post__link::after{content:"Read article \2192";margin-top:14px;font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--brass-deep);opacity:.82;transition:opacity .2s var(--ease),transform .2s var(--ease);}
.ins-grid-wrap .post__link:hover::after{opacity:1;transform:translateX(3px);}
.ins-grid-wrap .post{transition:transform .25s var(--ease);}
.ins-grid-wrap .post__link:hover{cursor:pointer;}

/* newsletter strip */
.ins-news{padding-block:clamp(48px,6vw,80px);}
.ins-news__inner{background:var(--dark);color:var(--on-dark);border-radius:var(--radius-lg);padding:clamp(34px,5vw,64px);display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(28px,4vw,56px);align-items:center;}
.ins-news h2{font-size:clamp(1.7rem,3vw,2.5rem);}
.ins-news p{margin-top:16px;color:var(--on-dark-muted);font-size:1.1rem;max-width:42ch;}
.ins-news__form{display:flex;gap:10px;flex-wrap:wrap;}
.ins-news__form input{flex:1;min-width:200px;font-family:var(--body);font-size:1rem;color:#fff;background:rgba(255,255,255,.06);border:1px solid var(--line-dark);border-radius:var(--radius);padding:15px 16px;}
.ins-news__form input::placeholder{color:var(--on-dark-muted);}
.ins-news__form input:focus{outline:none;border-color:#fff;}
.ins-news__note{margin-top:14px;font-family:var(--mono);font-size:.72rem;letter-spacing:.04em;color:var(--on-dark-muted);text-transform:uppercase;}

/* ============================================================
   ARTICLE
   ============================================================ */
.art-head{padding-block:clamp(32px,4vw,52px) clamp(28px,3vw,40px);max-width:820px;}
.art-head .crumbs{margin-bottom:28px;}
.art-tag{display:inline-flex;align-items:center;gap:.6em;font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--brass);margin-bottom:20px;}
.art-tag::before{content:"";width:22px;height:1px;background:var(--brass);}
.art-head h1{font-size:clamp(2rem,4.6vw,3.4rem);letter-spacing:-0.02em;line-height:1.04;text-transform:none;font-family:var(--head);font-weight:700;}
.art-dek{margin-top:22px;font-size:clamp(1.14rem,1.7vw,1.34rem);color:var(--muted);line-height:1.5;max-width:60ch;}

.art-byline{display:flex;align-items:center;gap:16px;margin-top:30px;padding-top:26px;border-top:1px solid var(--line);flex-wrap:wrap;}
.art-avatar{width:48px;height:48px;border-radius:100px;background:var(--brass-tint);border:1px solid rgba(4,58,78,.2);display:grid;place-items:center;font-family:var(--head);font-weight:700;color:var(--brass-deep);flex:none;}
.art-byline__who .n{font-family:var(--head);font-weight:600;font-size:1rem;}
.art-byline__who .t{font-size:.86rem;color:var(--muted);}
.art-byline__meta{margin-left:auto;font-family:var(--mono);font-size:.74rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted-2);text-align:right;}

.art-hero{aspect-ratio:16/8;border-radius:var(--radius-lg);margin-block:clamp(28px,3vw,44px);}
img.art-hero{aspect-ratio:16/10;width:100%;height:auto;display:block;object-fit:cover;background:var(--paper-alt);}

/* body layout: centered measure with sticky aside on wide screens */
.art-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(36px,5vw,72px);}
@media (min-width:1080px){
  .art-layout{grid-template-columns:minmax(0,1fr) 248px;align-items:start;}
}

.art-body{max-width:680px;font-size:1.14rem;line-height:1.72;color:var(--ink-2);}
.art-body > * + *{margin-top:1.35em;}
.art-body h2{font-family:var(--head);font-weight:700;font-size:clamp(1.5rem,2.4vw,1.95rem);letter-spacing:-0.02em;line-height:1.18;color:var(--ink);text-transform:none;margin-top:1.9em;scroll-margin-top:96px;}
.art-body h3{font-family:var(--head);font-weight:600;font-size:1.24rem;color:var(--ink);margin-top:1.6em;}
.art-body p{text-wrap:pretty;}
.art-body a{color:var(--brass-deep);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:rgba(4,58,78,.4);transition:text-decoration-color .2s;}
.art-body a:hover{text-decoration-color:var(--brass-deep);}
.art-body strong{font-weight:600;color:var(--ink);}
.art-body ul,.art-body ol{padding-left:1.3em;display:grid;gap:.6em;}
.art-body ul{list-style:none;padding-left:0;}
.art-body ul li{position:relative;padding-left:1.6em;}
.art-body ul li::before{content:"";position:absolute;left:.1em;top:.66em;width:7px;height:7px;border-right:2px solid var(--brass);border-bottom:2px solid var(--brass);transform:rotate(-45deg);}
.art-body ol{list-style:none;counter-reset:step;padding-left:0;display:grid;gap:1em;}
.art-body ol li{position:relative;padding-left:2.6em;counter-increment:step;}
.art-body ol li::before{content:counter(step);position:absolute;left:0;top:-.05em;width:1.7em;height:1.7em;background:var(--brass);color:#fff;border-radius:var(--radius);display:grid;place-items:center;font-family:var(--head);font-weight:600;font-size:.86rem;}
.art-body h2 + p, .art-body h3 + p{margin-top:.7em;}

/* quick answer / definition lead box (GEO: AI engines extract these) */
.quick-answer{background:var(--brass-tint);border:1px solid rgba(4,58,78,.18);border-left:3px solid var(--brass);border-radius:var(--radius);padding:24px 26px;}
.quick-answer .qa-label{font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);margin-bottom:10px;display:block;}
.quick-answer p{font-size:1.12rem;color:var(--ink);line-height:1.6;}

/* key takeaways */
.takeaways{background:var(--paper-card);border:1px solid var(--line-strong);border-radius:var(--radius-lg);padding:28px 30px;}
.takeaways h2{margin:0 0 16px;font-size:1.2rem;font-family:var(--head);font-weight:700;text-transform:none;letter-spacing:-0.01em;color:var(--ink);}
.takeaways ul{display:grid;gap:12px;padding:0;}
.takeaways li{position:relative;padding-left:30px;font-size:1.02rem;color:var(--ink-2);line-height:1.5;}
.takeaways li svg{position:absolute;left:0;top:3px;width:18px;height:18px;color:var(--brass);}

/* pull quote */
.pullquote{border-left:3px solid var(--brass);padding:6px 0 6px 26px;margin-block:1.6em;font-family:var(--head);font-weight:500;font-size:1.4rem;line-height:1.4;color:var(--ink);letter-spacing:-0.01em;}

/* inline mid-article CTA */
.art-inline-cta{background:var(--dark);color:var(--on-dark);border-radius:var(--radius-lg);padding:30px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.art-inline-cta b{font-family:var(--head);font-weight:600;font-size:1.2rem;color:#fff;display:block;}
.art-inline-cta span{color:var(--on-dark-muted);font-size:.98rem;margin-top:4px;display:block;}
.art-inline-cta .btn{flex:none;}
.art-inline-cta .btn--primary{background:var(--ink);color:#fff;border-color:rgba(255,255,255,0.28);}
.art-inline-cta .btn--primary:hover{background:#000;color:#fff;border-color:rgba(255,255,255,0.45);}
.art-inline-cta .btn--primary svg{color:var(--gold);}

/* small print / disclaimer */
.art-note{font-size:.92rem;color:var(--muted);font-style:italic;border-top:1px solid var(--line);padding-top:20px;}

/* sticky aside: TOC + CTA */
.art-aside{position:sticky;top:96px;display:grid;gap:24px;}
.toc{border-left:2px solid var(--line);padding-left:18px;}
.toc__label{font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px;}
.toc a{display:block;font-size:.92rem;color:var(--muted);padding:6px 0;line-height:1.4;transition:color .2s;border-left:2px solid transparent;margin-left:-20px;padding-left:18px;}
.toc a:hover{color:var(--ink);}
.toc a.is-active{color:var(--brass-deep);border-left-color:var(--brass);font-weight:500;}
.aside-cta{background:var(--paper-card);border:1px solid var(--line-strong);border-radius:var(--radius-lg);padding:24px;}
.aside-cta .stars{margin-bottom:12px;}
.aside-cta b{font-family:var(--head);font-weight:700;font-size:1.1rem;display:block;letter-spacing:-0.01em;}
.aside-cta p{font-size:.92rem;color:var(--muted);margin-top:8px;line-height:1.5;}
.aside-cta .btn{margin-top:16px;}
@media (max-width:1079px){.art-aside{display:none;}}

/* author card + related + cta footer */
.art-foot{border-top:1px solid var(--line);margin-top:clamp(48px,6vw,72px);padding-top:clamp(40px,5vw,56px);}
.author-card{display:flex;gap:20px;align-items:flex-start;background:var(--paper-card);border:1px solid var(--line);border-radius:var(--radius-lg);padding:28px 30px;max-width:680px;}
.author-card .art-avatar{width:60px;height:60px;font-size:1.2rem;}
.author-card h3{font-size:1.16rem;font-family:var(--head);font-weight:700;letter-spacing:-0.01em;}
.author-card .role{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--brass);margin-top:4px;}
.author-card p{color:var(--muted);font-size:.98rem;margin-top:12px;line-height:1.55;}

.related{padding-block:clamp(56px,7vw,96px);}
.related__head{margin-bottom:36px;}
.related__head .eyebrow{margin-bottom:14px;}
.related__head h2{font-size:clamp(1.7rem,3vw,2.4rem);}

.art-bookcta .cta__grid{align-items:center;}

/* ---------- responsive ---------- */
@media (max-width:900px){
  .ins-featured__card{grid-template-columns:1fr;}
  .ins-featured__media{order:-1;}
  .ins-news__inner{grid-template-columns:1fr;}
  .art-byline__meta{margin-left:0;text-align:left;width:100%;}
}
