/* Insights index. Follows BRAND-GUIDELINES.md: min text 14px (13px mobile), purple as accent, flat surfaces. */
.blog-page{background:#f7f6f2;color:#242326}
.blog-page header nav a[aria-current=page]{color:#7040ae}
.blog-main{max-width:1320px;margin:0 auto;padding:72px 5% 96px}
.blog-hero{max-width:880px;margin-bottom:56px}
.blog-hero .eyebrow{font-size:13px;letter-spacing:.08em;color:#7040ae;font-weight:500}
.blog-hero h1{font-size:clamp(44px,6vw,80px);line-height:1.04;letter-spacing:-.035em;font-weight:400;margin:20px 0 24px}
.blog-hero h1 em{font-style:normal;color:#8a6fa5}
.blog-hero p{font-size:18px;line-height:1.65;color:#6b6470;max-width:560px;margin:0}
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:40px;padding-bottom:28px;border-bottom:1px solid #dcd7e0}
.filters button{font:inherit;font-size:15px;cursor:pointer;border:1px solid #dcd7e0;background:#fff;color:#242326;border-radius:999px;padding:10px 18px;display:inline-flex;gap:10px;align-items:center;transition:background .2s,border-color .2s,color .2s}
.filters button span{font-size:14px;color:#6b6470}
.filters button:hover{border-color:#b9a3d6}
.filters button[aria-pressed=true]{background:#242326;border-color:#242326;color:#f7f6f2}
.filters button[aria-pressed=true] span{color:#c9bdd3}
.filters button:focus-visible,.post a:focus-visible{outline:3px solid #9870c3;outline-offset:4px}
.post a{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid #dcd7e0;border-radius:22px;padding:32px;color:inherit;text-decoration:none;transition:border-color .25s,box-shadow .25s,transform .35s cubic-bezier(.16,1,.3,1)}
.post a:hover{border-color:#b9a3d6;box-shadow:0 18px 40px rgba(53,38,59,.07);transform:translateY(-3px)}
.post .meta{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;font-size:14px;color:#6b6470;margin-bottom:22px}
.post .cat{color:#7040ae;font-weight:500}
.post h2{font-size:24px;line-height:1.25;letter-spacing:-.015em;font-weight:400;margin:0 0 14px}
.post p{font-size:16px;line-height:1.6;color:#6b6470;margin:0 0 28px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.post .read{margin-top:auto;font-size:15px;color:#242326;display:inline-flex;gap:10px;align-items:center}
.post .read b{font-weight:400;color:#7040ae;transition:transform .3s cubic-bezier(.16,1,.3,1)}
.post a:hover .read b{transform:translate(3px,-3px)}
.feature-wrap{margin-bottom:24px}
.post.featured a{background:#242326;border-color:#242326;color:#f7f6f2;padding:48px;display:grid;grid-template-columns:1.2fr 1fr;gap:16px 64px;align-items:end}
.post.featured .meta{grid-column:1/-1;color:#c9bdd3}
.post.featured .cat{color:#c7b3e3}
.post.featured h2{font-size:clamp(32px,3.4vw,48px);line-height:1.1;letter-spacing:-.03em;margin:0}
.post.featured p{color:#c9bdd3;font-size:18px;margin:0 0 18px;-webkit-line-clamp:4}
.post.featured .read{color:#f7f6f2;grid-column:2}
.post.featured .read b{color:#c7b3e3}
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post[hidden]{display:none}
.empty{font-size:16px;color:#6b6470}
.blog-cta{margin-top:88px;border-top:1px solid #dcd7e0;padding-top:56px;display:flex;justify-content:space-between;align-items:flex-end;gap:32px}
.blog-cta h2{font-size:clamp(30px,3vw,42px);letter-spacing:-.03em;font-weight:400;margin:0 0 12px}
.blog-cta p{font-size:17px;color:#6b6470;margin:0}
@media(max-width:1000px){.post-grid{grid-template-columns:1fr 1fr}.post.featured a{grid-template-columns:1fr}.post.featured .read{grid-column:1}}
@media(max-width:700px){.blog-main{padding:40px 20px 72px}.blog-hero{margin-bottom:36px}.blog-hero p{font-size:16px}.post-grid{grid-template-columns:1fr;gap:16px}.post a,.post.featured a{padding:26px}.post h2{font-size:22px}.post p{font-size:15px}.post.featured p{font-size:16px}.filters{flex-wrap:nowrap;overflow-x:auto;margin:0 -20px 28px;padding:0 20px 20px;scrollbar-width:none}.filters button{flex:none;font-size:14px}.blog-cta{flex-direction:column;align-items:flex-start;margin-top:64px}}
@media(prefers-reduced-motion:reduce){.post a,.post .read b{transition:none}}
