.blog-root{flex-direction:column;min-height:100dvh;display:flex}.blog-content{z-index:1;flex:1;position:relative}.blog-main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:6rem 2rem 5rem}.blog-header{text-align:center;margin-bottom:4rem}.blog-badge{background:var(--brand-light);color:var(--brand);border:1px solid var(--brand-mid);letter-spacing:.15em;text-transform:uppercase;border-radius:100px;margin-bottom:1.2rem;padding:.25rem 1rem;font-size:.65rem;font-weight:700;display:inline-block}.blog-title{letter-spacing:-.045em;color:var(--ink);margin-bottom:.7rem;font-size:clamp(2rem,5vw,3rem);font-weight:800;line-height:1.1}.blog-subtitle{color:var(--ink-mid);max-width:480px;margin:0 auto;font-size:1rem;font-weight:300;line-height:1.7}.blog-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem;display:grid}.blog-card{border:1.5px solid var(--border);cursor:pointer;background:#fff;border-radius:1.5rem;flex-direction:column;justify-content:space-between;padding:2rem;transition:all .3s;display:flex}.blog-card:hover{box-shadow:var(--shadow-mid);border-color:var(--brand-light);transform:translateY(-4px)}.blog-card-meta{color:var(--ink-soft);justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:.75rem;display:flex}.blog-card-category{color:var(--brand);font-weight:700}.blog-card-readtime{color:var(--ink-soft)}.blog-card-title{color:var(--ink);letter-spacing:-.02em;margin:0 0 .75rem;font-size:1.35rem;font-weight:800;line-height:1.3}.blog-card-text{color:#4a3a3a;line-clamp:3;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0 0 1.5rem;font-size:.95rem;font-weight:300;line-height:1.6;display:-webkit-box;overflow:hidden}.blog-card-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:1rem;font-size:.8rem;display:flex}.blog-card-date{color:var(--ink-soft);font-weight:300}.blog-card-link{color:var(--brand);font-weight:700}.blog-back-btn{cursor:pointer;color:var(--ink-mid);background:0 0;border:none;border-radius:.6rem;align-items:center;gap:.4rem;padding:.4rem .2rem;font-size:.8rem;font-weight:700;transition:all .25s;display:flex}.blog-back-btn:hover{color:var(--brand);background:var(--surface-mid)}.blog-post{max-width:720px;margin:2rem auto;display:block}.blog-post-header{border-bottom:1.5px solid var(--border);margin-bottom:2rem;padding-bottom:2rem}.blog-meta{color:var(--ink-soft);align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.85rem;display:flex}.blog-category{color:var(--brand);font-weight:700}.blog-divider{color:var(--border)}.blog-date{color:var(--ink-soft)}.blog-post-title{letter-spacing:-.045em;color:var(--ink);margin:0 0 .8rem;font-size:2.5rem;font-weight:700;line-height:1.2}.blog-post-description{color:var(--ink-mid);margin:0;font-size:1.1rem;font-weight:300;line-height:1.6}.blog-post-content{margin:2rem 0 3rem;font-family:Inter,-apple-system,sans-serif}.blog-post-content p{color:#4a3a3a;margin-bottom:1.5rem;font-size:.95rem;font-weight:300;line-height:1.8}.blog-post-content h2{color:var(--brand-dark);letter-spacing:-.02em;margin:2rem 0 1rem;font-size:1.5rem;font-weight:700}.blog-post-content blockquote{border-left:4px solid var(--brand);background:var(--brand-light);color:var(--brand-dark);border-radius:.5rem;margin:1.5rem 0;padding:1.2rem 1.5rem;font-size:.95rem;font-style:italic}.blog-post-content img{border-radius:1rem;width:100%;height:auto;margin:2.5rem 0;display:block;box-shadow:0 10px 20px #0000000d}.blog-post-content ul{margin:1.5rem 0;padding-left:1.5rem;list-style-type:disc}.blog-post-content li{color:#4a3a3a;margin-bottom:.75rem;line-height:1.6}.blog-not-found{text-align:center;padding:4rem 0}.blog-not-found h2{color:var(--ink);margin-bottom:1.5rem;font-size:1.8rem;font-weight:800}.blog-footer{justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.blog-footer-note{color:var(--ink-soft);font-size:.76rem}.blog-logo{color:var(--ink);letter-spacing:-.03em;flex-shrink:0;font-family:Sora,-apple-system,sans-serif;font-size:1.1rem;font-weight:800;text-decoration:none}.blog-logo span{color:var(--brand)}@media (max-width:768px){.blog-main{padding:5rem 1.5rem 3rem}.blog-grid{grid-template-columns:1fr}.blog-post-title{font-size:1.85rem}.blog-footer{text-align:center;flex-direction:column;gap:.5rem}}@media (max-width:600px){.blog-main{padding:5rem 1.2rem 3rem}.blog-title{font-size:1.75rem}.blog-post-title{font-size:1.5rem}.blog-card{padding:1.5rem}}
