.blog-page{min-height:100vh}.blog-layout{padding:40px 0 80px}.blog-layout__hero{text-align:center;max-width:720px;margin:0 auto 40px}.blog-layout__hero h1{margin:10px 0 12px;font-size:clamp(30px,4vw,44px);font-weight:800;letter-spacing:-.03em}.blog-layout__hero p{margin:0;color:var(--muted);line-height:1.6}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.blog-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.92);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.blog-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px -20px rgba(109,40,217,.22)}.blog-card__image{aspect-ratio:16/9;background:var(--p-50);object-fit:cover;width:100%}.blog-card__body{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1}.blog-card__date{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.04em}.blog-card h2{margin:0;font-size:18px;font-weight:700;letter-spacing:-.02em;line-height:1.25}.blog-card h2 a{color:inherit;text-decoration:none}.blog-card h2 a:hover{color:var(--accent-strong)}.blog-card p{margin:0;flex:1;font-size:14px;color:var(--muted);line-height:1.55}.blog-card__link{font-size:13px;font-weight:600;color:var(--accent-strong)}.blog-article{max-width:760px;margin:0 auto;padding:36px 40px;border-radius:20px;border:1px solid var(--line);background:rgba(255,255,255,.94);box-shadow:0 16px 40px -24px rgba(15,23,42,.1)}.blog-article__meta{font-family:var(--mono);font-size:12px;color:var(--muted);margin-bottom:16px}.blog-article h1{margin:0 0 12px;font-size:clamp(28px,4vw,40px);font-weight:800;letter-spacing:-.03em;line-height:1.1}.blog-article__excerpt{margin:0 0 24px;font-size:17px;color:var(--muted);line-height:1.6}.blog-article__image{width:100%;border-radius:14px;margin-bottom:28px}.blog-article__back{display:inline-flex;margin-top:28px;font-weight:600;color:var(--accent-strong)}.richtext h2,.richtext h3,.richtext h4{margin:1.75rem 0 .75rem;letter-spacing:-.02em}.richtext p{margin:0 0 1rem;line-height:1.7;color:var(--ink-2)}.richtext ol,.richtext ul{margin:0 0 1rem;padding-left:1.35rem}.richtext a{color:var(--accent-strong);text-decoration:underline}@media (max-width:900px){.blog-grid{grid-template-columns:1fr}}@media (max-width:640px){.blog-article{padding:24px 20px}}