.card.svelte-oviq8z{display:block;background:var(--bg-card, white);border-radius:var(--border-radius);overflow:hidden;color:var(--text-primary, inherit);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;animation-fill-mode:both;animation-duration:.5s;animation-delay:var(--stagger-delay, 0ms)}.card-style-flat.svelte-oviq8z{border:none;box-shadow:none;background:transparent}.card-style-raised.svelte-oviq8z{border:1px solid var(--bg-glow, rgba(0, 0, 0, .1))}.card-style-glass.svelte-oviq8z{background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}[data-theme=dark] .card-style-glass.svelte-oviq8z{background:#1e1e28b3;border:1px solid rgba(255,255,255,.1)}.card-style-bordered.svelte-oviq8z{border:2px solid var(--bg-glow, rgba(0, 0, 0, .1));background:transparent}.shadow-none.svelte-oviq8z{box-shadow:none}.shadow-subtle.svelte-oviq8z{box-shadow:0 2px 8px #00000014}.shadow-medium.svelte-oviq8z{box-shadow:0 4px 16px #0000001f}.shadow-dramatic.svelte-oviq8z{box-shadow:0 8px 32px #0003}.hover-scale.svelte-oviq8z:hover{transform:translateY(-8px)}.hover-glow.svelte-oviq8z:hover{box-shadow:0 0 30px var(--accent-1, rgba(102, 126, 234, .4))}.card.svelte-oviq8z:hover{border-color:color-mix(in srgb,var(--color-primary) 30%,transparent)}.anim-fade.svelte-oviq8z{animation-name:svelte-oviq8z-fadeIn}.anim-slide.svelte-oviq8z{animation-name:svelte-oviq8z-slideIn}.anim-scale.svelte-oviq8z{animation-name:svelte-oviq8z-scaleIn}.anim-bounce.svelte-oviq8z{animation-name:svelte-oviq8z-bounceIn;animation-duration:.6s;animation-timing-function:cubic-bezier(.34,1.56,.64,1)}@keyframes svelte-oviq8z-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes svelte-oviq8z-slideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes svelte-oviq8z-scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes svelte-oviq8z-bounceIn{0%{opacity:0;transform:scale(.3) translateY(40px)}50%{opacity:.9;transform:scale(1.05) translateY(-10px)}70%{transform:scale(.95) translateY(5px)}to{opacity:1;transform:scale(1) translateY(0)}}.card-image.svelte-oviq8z{position:relative;aspect-ratio:var(--aspect-ratio, 16 / 9);overflow:hidden}.card-image.svelte-oviq8z img:where(.svelte-oviq8z){width:100%;height:100%;object-fit:cover;transition:transform .5s ease,filter .3s ease}.card-image.has-position.svelte-oviq8z img:where(.svelte-oviq8z){object-fit:unset}.filter-grayscale.svelte-oviq8z img:where(.svelte-oviq8z){filter:grayscale(100%)}.filter-grayscale.svelte-oviq8z:hover img:where(.svelte-oviq8z){filter:grayscale(0%)}.filter-sepia.svelte-oviq8z img:where(.svelte-oviq8z){filter:sepia(50%)}.filter-sepia.svelte-oviq8z:hover img:where(.svelte-oviq8z){filter:sepia(0%)}.filter-saturate.svelte-oviq8z img:where(.svelte-oviq8z){filter:saturate(1.3)}.card.svelte-oviq8z:hover .card-image:where(.svelte-oviq8z) img:where(.svelte-oviq8z){transform:scale(1.05)}.card-overlay.svelte-oviq8z{position:absolute;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--color-primary) 85%,transparent);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.card.svelte-oviq8z:hover .card-overlay:where(.svelte-oviq8z){opacity:1}.view-project.svelte-oviq8z{color:#fff;font-weight:600;font-size:1.125rem;padding:.75rem 1.5rem;border:2px solid white;border-radius:var(--border-radius)}.card-content.svelte-oviq8z{padding:1.5rem}.card-style-flat.svelte-oviq8z .card-content:where(.svelte-oviq8z){padding:1rem 0}.card-header.svelte-oviq8z{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.5rem}.card-title.svelte-oviq8z{font-size:1.25rem;font-weight:600;line-height:1.3}.card-year.svelte-oviq8z{flex-shrink:0;padding:.25rem .75rem;background:var(--gradient-primary);border-radius:20px;font-size:.75rem;font-weight:600}.card-year.ongoing.svelte-oviq8z{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.card-client.svelte-oviq8z{color:var(--color-primary);font-size:.875rem;font-weight:500;margin-bottom:.25rem}.card-date.svelte-oviq8z{color:var(--color-text-muted);font-size:.8rem;margin-bottom:.75rem}.card-description.svelte-oviq8z{color:var(--color-text-muted);font-size:.875rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:1rem}.card-tags.svelte-oviq8z{display:flex;flex-wrap:wrap;gap:.5rem}
