.blog-list-page{background:var(--cream)}.blog-list-content{max-width:1200px;margin:0 auto;padding:80px 60px 120px}.blog-list-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:48px 32px}.blog-card--featured{grid-column:1 / -1}.blog-card-link{text-decoration:none;color:inherit;display:block;cursor:pointer}.blog-card--featured .blog-card-link{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}.blog-card-img{aspect-ratio:16 / 10;overflow:hidden;position:relative}.blog-card--featured .blog-card-img{aspect-ratio:3 / 2}.blog-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,1,.36,1)}.blog-card:hover .blog-card-img img{transform:scale(1.04)}.blog-card-body{padding-top:20px}.blog-card--featured .blog-card-body{padding-top:0}.blog-card-meta{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-size:.75rem;color:var(--text-muted)}.blog-card-cat{font-weight:500;color:var(--gold);text-transform:uppercase;letter-spacing:.12em;font-size:.65rem}.blog-card-meta-sep{width:4px;height:4px;border-radius:50%;background:var(--border);flex-shrink:0}.blog-card-title{font-family:Playfair Display,serif;font-size:1.25rem;font-weight:600;color:var(--black);line-height:1.35;margin-bottom:12px;transition:color .3s}.blog-card--featured .blog-card-title{font-size:1.8rem}.blog-card:hover .blog-card-title{color:var(--gold)}.blog-card-excerpt{font-size:.88rem;line-height:1.7;color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:20px}.blog-card--featured .blog-card-excerpt{-webkit-line-clamp:4}.blog-card-read{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--gold);transition:gap .3s}.blog-card:hover .blog-card-read{gap:12px}@media(max-width:768px){.blog-list-content{padding:48px 24px 80px}.blog-list-grid{grid-template-columns:1fr;gap:40px}.blog-card--featured .blog-card-link{display:block}.blog-card--featured .blog-card-body{padding-top:20px}.blog-card--featured .blog-card-title{font-size:1.4rem}.blog-card-title{font-size:1.15rem}}@media(min-width:769px)and (max-width:1024px){.blog-list-content{padding:60px 40px 100px}.blog-card--featured .blog-card-link{grid-template-columns:1fr 1fr;gap:32px}}
