.projects-grid{grid-template-columns:repeat(auto-fill,minmax(460px,1fr));gap:32px;display:grid}.project-card{border-radius:var(--radius-lg);background:var(--color-surface-card);border:1px solid var(--color-border);transition:all var(--transition-smooth);overflow:hidden}.project-card:hover{border-color:var(--color-border-hover);transform:translateY(-6px);box-shadow:0 20px 45px -10px #000c,0 0 30px #a8758626}.project-image-wrap{aspect-ratio:16/9;background:#100b10;width:100%;position:relative;overflow:hidden}.project-image-wrap img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-smooth)}.project-card:hover .project-image-wrap img{transform:scale(1.05)}.project-badge-tag{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--color-rose-light);letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius-full);background:#0b090bcc;border:1px solid #a8758666;padding:5px 12px;font-size:.75rem;position:absolute;top:16px;left:16px}.project-body{flex-direction:column;padding:28px;display:flex}.project-header-row{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.project-title{color:var(--color-text);font-size:1.55rem}.project-year{color:var(--color-text-dim);font-size:.85rem}.project-desc{color:var(--color-text-muted);margin-bottom:20px;font-size:.95rem;line-height:1.6}.project-tech-tags{flex-wrap:wrap;gap:8px;margin-bottom:22px;display:flex}.tech-tag{border-radius:var(--radius-sm);color:var(--color-rose-light);background:#30252b66;border:1px solid #30252bcc;padding:4px 10px;font-size:.78rem}.brand-palette-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px;display:grid}.brand-color-item{cursor:pointer;flex-direction:column;align-items:center;display:flex;position:relative}.brand-palette-swatch{aspect-ratio:1;border:1px solid #ffffff1a;border-radius:12px;justify-content:center;align-items:center;width:100%;transition:transform .2s;display:flex;box-shadow:0 4px 12px #00000080}.brand-palette-swatch:hover{transform:translateY(-2px)}.brand-color-hex{color:#f1ecee;margin-top:6px;font-family:monospace;font-size:.72rem}.brand-typography-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.brand-typography-card{background:#0b090b;border:1px solid #30252b;border-radius:12px;padding:16px}
