/* Insights pages (insights.html, post.html). Same tokens as styles.css: navy #0F2D49, gold #CCBF90,
   bronze #7D6A3E, ink #1B2733, slate #33404D / #4A5563, rule #D5DCE4, mist #F1F4F7. */
.ins-wrap{max-width:1200px;margin:0 auto;padding:72px 32px 96px;display:flex;flex-direction:column;gap:40px}
.ins-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 32px}
.ins-card{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:inherit}
.ins-card:hover .ins-card-title,.ins-card:focus-visible .ins-card-title{color:#7D6A3E}
.ins-cover{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;background:#F1F4F7}
.ins-cover-empty{border:1px solid #D5DCE4}
.ins-eyebrow{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#7D6A3E;font-weight:600}
.ins-eyebrow a{color:#7D6A3E;text-decoration:none}
.ins-eyebrow a:hover{text-decoration:underline;text-underline-offset:4px}
.ins-card-title{margin:0;font-family:'Source Serif 4',serif;font-weight:500;font-size:24px;line-height:1.25;color:#0F2D49}
.ins-excerpt{margin:0;font-size:16px;line-height:1.6;color:#4A5563;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ins-meta{font-size:14px;color:#4A5563}
.ins-pill[aria-current="page"]{background:#CCBF90;border-color:#CCBF90;color:#0F2D49;font-weight:600}
.ins-status{margin:0;font-size:17px;color:#4A5563}
.ins-status:empty{display:none}
.ins-err{color:#A3262A}
.ins-more{display:flex;justify-content:center}
.ins-more button[hidden]{display:none}
.ins-more button[disabled]{opacity:.65;cursor:progress}
.ins-skel{background:linear-gradient(90deg,#F1F4F7 0%,#E6EBF0 50%,#F1F4F7 100%);background-size:200% 100%;animation:ins-shimmer 1.4s ease-in-out infinite}
.ins-skel-line{height:18px;border-radius:2px}
.ins-skel-short{width:60%}
@keyframes ins-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}
@media (prefers-reduced-motion:reduce){.ins-skel{animation:none}}

.ins-article{max-width:760px;margin:0 auto;padding:56px 32px 72px;display:flex;flex-direction:column;gap:18px}
.ins-back{align-self:flex-start;font-size:15px;color:#0F2D49;text-underline-offset:4px}
.ins-back::before{content:"\2190\00a0"}
.ins-title{margin:0;font-family:'Source Serif 4',serif;font-weight:500;font-size:46px;line-height:1.12;letter-spacing:-0.01em;color:#0F2D49}
.ins-lede{margin:0;font-size:18px;color:#4A5563}
.ins-byline{margin:0}
.ins-hero-img{width:100%;height:auto;display:block;margin-top:10px}
.ins-body{font-size:18px;line-height:1.7;color:#1B2733;padding-top:10px}
.ins-body>*:first-child{margin-top:0}
.ins-body p{margin:0 0 1.1em}
.ins-body h2{margin:1.6em 0 .5em;font-family:'Source Serif 4',serif;font-weight:600;font-size:30px;line-height:1.2;color:#0F2D49}
.ins-body h3{margin:1.4em 0 .45em;font-family:'Source Serif 4',serif;font-weight:600;font-size:24px;line-height:1.25;color:#0F2D49}
.ins-body h4{margin:1.3em 0 .4em;font-size:19px;font-weight:600;color:#0F2D49}
.ins-body ul,.ins-body ol{margin:0 0 1.1em;padding-left:1.4em}
.ins-body li{margin:.35em 0}
.ins-body li>p{margin:0}
.ins-body li::marker{color:#7D6A3E}
.ins-body blockquote{margin:1.4em 0;padding:4px 0 4px 22px;border-left:3px solid #CCBF90;font-family:'Source Serif 4',serif;font-size:21px;line-height:1.5;color:#0F2D49}
.ins-body blockquote p{margin:0 0 .5em}
.ins-body figure{margin:1.6em 0}
.ins-body figure img,.ins-gallery img{width:100%;height:auto;display:block}
.ins-body figcaption{margin-top:8px;font-size:14px;color:#4A5563;text-align:center}
.ins-body hr{border:0;border-top:1px solid #D5DCE4;margin:2em 0}
.ins-body a{color:#0F2D49;text-underline-offset:3px}
.ins-body a:hover{color:#7D6A3E}
.ins-body pre{background:#F1F4F7;padding:16px;overflow-x:auto;font-size:15px}
.ins-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:1.6em 0}
.ins-body a.ins-btn{display:inline-block;background:#0F2D49;color:#FFFFFF;padding:14px 24px;font-size:16px;font-weight:600;text-decoration:none;border-radius:2px}
.ins-body a.ins-btn:hover{color:#CCBF90}

@media (max-width:860px){
  .ins-grid{grid-template-columns:1fr;gap:40px}
  .ins-title{font-size:34px !important}
  .ins-body{font-size:17px}
  .ins-body h2{font-size:25px !important}
  .ins-body h3{font-size:21px}
  .ins-article{padding:36px 20px 56px !important}
}
@media (min-width:861px) and (max-width:1100px){.ins-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
