:root{--bg-start:#f9fafb;--bg-end:#f3f4f6;--text:#0f172a;--muted:#64748b;--card:#ffffff;--card-muted:#1f2937;--link:#2563eb;--link-hover:#1e40af;--shadow:0 6px 18px rgba(0,0,0,.08);--shadow-lg:0 10px 24px rgba(0,0,0,.12);--radius-lg:16px}.page{min-height:100vh}.container{max-width:1120px;margin:0 auto;padding:1rem 1rem 8rem}@media (min-width:640px){.container{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.container{padding-left:2rem;padding-right:2rem}}.home-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:stretch;background:#F6F6F6;max-width:900px;margin:0 auto 3rem;overflow:hidden}.home-hero-media{position:relative;min-height:100%}.home-hero-media img{display:block;width:100%;height:100%;object-fit:cover}.home-hero-text{padding:2.5rem;color:var(--text);align-self:center}.home-hero-text p{font-size:1.0625rem;line-height:1.7;margin:0 0 1.25rem}.home-hero-text p:last-child{margin-bottom:0}.home-hero-text a{color:var(--link-hover);text-decoration:none}.home-hero-text a:hover{text-decoration:underline}@media (max-width:640px){.home-hero{grid-template-columns:1fr}.home-hero-media img{max-height:420px}.home-hero-text{padding:1.75rem 1.5rem}}.section-divider{max-width:900px;margin:0 auto 1.25rem;border:none;border-top:1px solid rgba(15,23,42,.15)}.section-title{max-width:900px;margin:0 auto 1.5rem;font-size:1.75rem;font-weight:700;color:var(--text)}.see-all-wrap{max-width:900px;margin:1.5rem auto 0;display:flex;justify-content:center}.see-all-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem 1.5rem;border:1px solid var(--text);border-radius:50px;color:var(--text);font-size:.95rem;font-weight:500;text-decoration:none;transition:all .2s ease}.see-all-btn:hover{background:var(--text);color:#fff}.blog-index-title{font-size:2rem;font-weight:700;color:var(--text);margin-bottom:1.5rem;text-align:center}.posts{display:grid;gap:2rem;grid-template-columns:1fr;max-width:900px;margin-left:auto;margin-right:auto}.card{background:var(--card);overflow:hidden;border-bottom:1px solid rgba(15,23,42,.08)}.card-media{position:relative;display:flex;justify-content:center;align-items:center;max-width:600px;background:transparent;overflow:hidden;margin:0 auto 1rem}.card-media-img{display:block;max-width:100%;max-height:338px;width:auto;height:auto;object-fit:contain}.card-media:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.2),rgba(0,0,0,.1),transparent);pointer-events:none}.card-body{padding:1.5rem 2rem 1.25rem}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.85rem}.card-meta{display:flex;gap:.5rem;align-items:center;color:var(--muted);font-size:.95rem;margin-bottom:0;margin-top:.3rem;flex-shrink:0;white-space:nowrap}.card-dot{opacity:.6}.card .card-title{font-weight:700;font-size:32px;line-height:38px;color:var(--text)}.card .card-title:hover{color:var(--text);text-decoration:none}.card-desc{color:var(--muted);line-height:1.6;font-size:1rem;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:.4rem;margin-top:0;text-align:left}.read-more{display:inline-flex;align-items:center;gap:0;line-height:1;color:var(--link);font-weight:200;text-decoration:none;font-size:1rem;border-radius:8px;transition:all .2s ease}.read-more:hover{color:var(--link-hover)}.card-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:0;margin-bottom:.75rem}.card-tag{background:#f3f4f6;padding:.25rem .75rem;border-radius:50px;font-size:.75rem;font-weight:500;letter-spacing:.025em}.tag-filter-section{margin-bottom:3rem}.tag-filter-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;cursor:pointer;user-select:none}.tag-filter-title{font-size:1.25rem;font-weight:600;margin:0}.tag-filter-toggle{background:none;border:none;font-size:1.25rem;cursor:pointer;padding:0;color:var(--muted);transition:transform .2s ease}.tag-filter-toggle.expanded{transform:rotate(180deg)}.tag-list{display:flex;flex-wrap:wrap;gap:.75rem}.tag-button{background:#f3f4f6;color:#374151;border:2px solid transparent;padding:.5rem 1rem;border-radius:50px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.tag-button:hover{background:#e5e7eb}.tag-button.active{background:#000000;color:#ffffff;border-color:#000000}.clear-filters{background:none;border:1px solid var(--muted);color:var(--muted);padding:.5rem 1rem;border-radius:50px;font-size:.875rem;cursor:pointer;transition:all .2s ease}.clear-filters:hover{background:var(--muted);color:var(--card)}