.insight-card { color: inherit; display: block; text-decoration: none; }
.insight-card:focus-visible { outline: 3px solid #3bceac; outline-offset: 4px; }
.insight-article { background: #fff; color: #333; }
.insight-wrap { margin: 0 auto; max-width: 1120px; padding-left: 24px; padding-right: 24px; }
.insight-hero { background: linear-gradient(135deg, #333 0%, #263f3a 100%); color: #fff; padding: 190px 0 80px; }
.insight-back { color: #bff6e9; display: inline-block; font-size: 14px; font-weight: 600; margin-bottom: 48px; text-decoration: none; }
.insight-kicker, .insight-aside-label, .insight-cta p { color: #3bceac; font-size: 12px; font-weight: 700; letter-spacing: .18em; margin: 0 0 18px; text-transform: uppercase; }
.insight-hero h1 { color: #fff; font-family: Oswald, sans-serif; font-size: clamp(42px, 6vw, 72px); font-weight: 600; letter-spacing: -.02em; line-height: 1.07; margin: 0; max-width: 940px; }
.insight-meta { align-items: center; color: rgba(255,255,255,.72); display: flex; font-size: 14px; gap: 12px; margin-top: 30px; }
.insight-layout { display: grid; gap: 72px; grid-template-columns: minmax(0, 730px) minmax(240px, 1fr); padding-bottom: 100px; padding-top: 80px; }
.insight-content { font-size: 17px; line-height: 1.85; }
.insight-content .insight-lead { color: #40504c; font-size: 22px; line-height: 1.65; margin: 0 0 58px; }
.insight-content section { border-top: 1px solid #e2e7e5; padding: 42px 0 16px; }
.insight-content h2, .insight-aside h2, .insight-cta h2 { color: #333; font-family: Oswald, sans-serif; font-weight: 600; line-height: 1.2; }
.insight-content h2 { font-size: 32px; margin: 0 0 22px; }
.insight-content p { margin: 0 0 22px; }
.insight-aside { align-self: start; background: #f1faf7; border-top: 4px solid #3bceac; padding: 30px; position: sticky; top: 130px; }
.insight-aside h2 { font-size: 27px; margin: 0 0 16px; }
.insight-aside p:not(.insight-aside-label) { font-size: 15px; line-height: 1.65; }
.insight-aside a, .insight-cta a { background: #3bceac; color: #fff; display: inline-block; font-weight: 700; margin-top: 12px; padding: 13px 20px; text-decoration: none; }
.insight-cta { background: #edf7f4; padding: 72px 0; text-align: center; }
.insight-cta h2 { font-size: clamp(32px, 5vw, 48px); margin: 0 auto 22px; max-width: 760px; }
@media (max-width: 800px) { .insight-hero { padding: 145px 0 60px; } .insight-back { margin-bottom: 32px; } .insight-layout { grid-template-columns: 1fr; padding-top: 56px; } .insight-aside { position: static; } }
