.chip[data-v-321d2fac]{align-items:center;background-color:var(--bg-alt);border:none;border-radius:var(--s-radius-xl);color:var(--text);cursor:pointer;display:inline-flex;flex:0 1 auto;font-family:inherit;font-size:var(--t-sm);gap:var(--grid-gap-xs);justify-content:center;line-height:1.2;margin:3px;min-height:36px;min-width:36px;outline:1px solid var(--fg-border);outline-offset:1px;padding:clamp(8px,2vw,12px) clamp(12px,3vw,16px);position:relative;text-align:center;transition:all .3s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;z-index:1}.chip.active[data-v-321d2fac],.chip.focused[data-v-321d2fac],.chip[data-v-321d2fac]:active,.chip[data-v-321d2fac]:hover{background-color:var(--cyan);outline-color:var(--cyan);transform:scale(1.05);z-index:10}.chip[data-v-321d2fac]:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}.chip[data-v-321d2fac]:after{background-color:var(--darkgrey);border-radius:8px;box-shadow:0 4px 12px #00000026;color:var(--white);content:attr(description);font-size:var(--t-sm);left:50%;line-height:1.4;max-width:min(250px,90vw);opacity:0;overflow-wrap:break-word;padding:12px;pointer-events:none;position:absolute;top:120%;transform:translate(-50%);transition:opacity .2s ease;white-space:normal;width:-moz-max-content;width:max-content;z-index:1000}.chip.focused[data-v-321d2fac]:after,.chip[data-v-321d2fac]:active:after,.chip[data-v-321d2fac]:hover:after{opacity:1}.chip[data-v-321d2fac]:not([description]):after{content:none}@media(max-width:1024px){.chip[data-v-321d2fac]{font-size:var(--t-sm);margin:2px;min-height:32px;padding:8px 12px}.chip[data-v-321d2fac]:after{font-size:var(--t-xxs);max-width:180px;padding:var(--s-1)}}@media(max-width:480px){.chip[data-v-321d2fac]{margin:1px;min-height:28px;padding:6px 10px}.chip[data-v-321d2fac],.chip[data-v-321d2fac]:after{font-size:var(--t-xxs)}.chip[data-v-321d2fac]:after{max-width:120px;padding:6px;top:110%}}@media(prefers-contrast:high){.chip[data-v-321d2fac]{outline:3px solid currentColor}.chip.focused[data-v-321d2fac],.chip[data-v-321d2fac]:active,.chip[data-v-321d2fac]:hover{outline:3px solid var(--cyan)}}@media(prefers-reduced-motion:reduce){.chip[data-v-321d2fac]{transition:none}.chip.focused[data-v-321d2fac],.chip[data-v-321d2fac]:active,.chip[data-v-321d2fac]:hover{transform:none}.chip[data-v-321d2fac]:after{transition:none}}.sr-only[data-v-321d2fac]{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.chip-icon[data-v-321d2fac]{align-items:center;display:inline-flex;flex-shrink:0;height:1rem;width:1rem}.chip-icon[data-v-321d2fac] svg{fill:currentColor;height:100%;width:100%}<style>.card--timeline[data-v-e5e1bde3]{background-color:var(--bg-alt);cursor:default;gap:var(--s-3);max-width:none;padding:var(--s-3)}.card--timeline[data-v-e5e1bde3]:active,.card--timeline[data-v-e5e1bde3]:hover{border-color:var(--fg-border);outline-color:var(--fg-border);scale:1;transform:none}.card--timeline .card__image:hover img[data-v-e5e1bde3]{transform:none}.card--timeline .card__image[data-v-e5e1bde3]:after{display:none}.card--timeline .card__top-area[data-v-e5e1bde3]{align-items:flex-start;display:flex;gap:var(--s-3);margin-bottom:var(--s-3)}.card--timeline .card__image[data-v-e5e1bde3]{border-radius:var(--s-radius-s);flex-shrink:0;height:120px;order:1;width:50%}.card--timeline .card__title-area[data-v-e5e1bde3]{display:flex;flex-direction:column;gap:var(--s-2);order:2;padding-top:var(--s-1);width:50%}.card--timeline .card__title[data-v-e5e1bde3]{font-size:var(--t-base);font-weight:600;line-height:1.3}.card--timeline .card__badges[data-v-e5e1bde3]{display:flex;gap:var(--s-2);margin:0}.card--timeline .card__content[data-v-e5e1bde3]{display:flex;flex:1;flex-direction:column;gap:var(--s-3);padding:0;width:100%}.card__timeline-description[data-v-e5e1bde3]{color:var(--fg-text);display:block;font-size:var(--t-sm);line-height:1.5;white-space:normal}.card__timeline-description[data-v-e5e1bde3] strong{color:var(--fg-headline);font-weight:600}.card__timeline-description[data-v-e5e1bde3] em{color:var(--fg-text-accent);font-style:italic}.card__timeline-description[data-v-e5e1bde3] pre{background:var(--bg-default);border:1px solid var(--bg-border);border-radius:var(--s-radius-s);font-family:monospace;overflow-x:auto;padding:var(--s-3)}.card__timeline-description[data-v-e5e1bde3] a{color:var(--fg-accent);text-decoration:underline}.card__tags[data-v-e5e1bde3]{align-items:center;display:flex;flex-wrap:wrap;gap:var(--s-1)}.card__tag[data-v-e5e1bde3]{background:var(--bg-default);border:1px solid var(--bg-border);border-radius:var(--s-radius-s);font-size:var(--t-xxs);padding:4px 8px}.card__highlight-badge[data-v-e5e1bde3],.card__year-badge[data-v-e5e1bde3]{border:1px solid var(--fg-accent);border-radius:var(--s-radius-s);color:var(--fg-accent);font-size:var(--t-sm);font-weight:600;padding:6px 10px;text-transform:uppercase}.card__highlight-badge[data-v-e5e1bde3]{background:var(--fg-accent);color:var(--bg-default)}@media(max-width:830px){.card--timeline[data-v-e5e1bde3]{gap:0;padding:var(--s-3)}.card--timeline .card__top-area[data-v-e5e1bde3]{flex-direction:row;margin-bottom:var(--s-3)}.card--timeline .card__image[data-v-e5e1bde3]{aspect-ratio:16/9;height:auto;width:33.333%}.card--timeline .card__title-area[data-v-e5e1bde3]{padding-top:0;width:66.667%}.card--timeline .card__title[data-v-e5e1bde3]{font-size:var(--t-base)}}@media(max-width:480px){.card--timeline[data-v-e5e1bde3]{padding:var(--s-2)}.card--timeline .card__top-area[data-v-e5e1bde3]{gap:var(--s-2);margin-bottom:var(--s-2)}.card--timeline .card__title[data-v-e5e1bde3],.card__timeline-description[data-v-e5e1bde3]{font-size:var(--t-sm)}}<style>.card--portfolio[data-v-77445781]{display:flex;flex-direction:column;padding:0}.card--portfolio .card__content[data-v-77445781]{width:100%}.card__image--portfolio[data-v-77445781]{align-items:center;aspect-ratio:16/9;background:#f8f8f8;border-radius:var(--s-radius-xl) var(--s-radius-xl) 0 0;display:flex;justify-content:center;overflow:hidden;position:relative;width:100%}.card__image--portfolio .card__img[data-v-77445781]{background:#f8f8f8;border-radius:inherit;display:block;height:100%;-o-object-fit:cover!important;object-fit:cover!important;width:100%}.card--portfolio .card__badges[data-v-77445781]{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-bottom:var(--s-3)}.card--portfolio .card__highlight-badge[data-v-77445781],.card--portfolio .card__year-badge[data-v-77445781]{background:var(--bg-default);border:1px solid var(--fg-accent);border-radius:var(--s-radius-s);color:var(--fg-accent);font-size:var(--t-xxs);font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.card--portfolio .card__highlight-badge[data-v-77445781]{background:var(--fg-accent);color:var(--bg-default)}@media(max-width:768px){.card--portfolio[data-v-77445781]{margin:2px}.card--portfolio .card__content[data-v-77445781]{gap:var(--s-2);justify-content:center;padding:var(--s-3);width:66.667%}.card--portfolio .card__title[data-v-77445781]{font-size:var(--t-base);line-height:1.2;margin-bottom:var(--s-1)}.card--portfolio .card__description[data-v-77445781]{font-size:var(--t-sm);-webkit-line-clamp:2;line-clamp:2;line-height:1.4;margin-bottom:var(--s-2)}.card--portfolio .card__category[data-v-77445781],.card--portfolio .card__meta[data-v-77445781]{font-size:var(--t-xxs);margin-bottom:var(--s-1)}.card--portfolio .card__badges[data-v-77445781]{gap:var(--s-1);margin-bottom:var(--s-2)}.card--portfolio .card__highlight-badge[data-v-77445781],.card--portfolio .card__year-badge[data-v-77445781]{font-size:var(--t-xxs);padding:3px 6px}}@media(max-width:480px){.card--portfolio[data-v-77445781]{flex-direction:row;gap:0;overflow:hidden}.card__image--portfolio[data-v-77445781]{border-radius:var(--s-radius-s) 0 0 var(--s-radius-s);flex-shrink:0;width:33.333%}.card--portfolio .card__content[data-v-77445781]{gap:var(--s-1);padding:var(--s-2)}.card--portfolio .card__description[data-v-77445781],.card--portfolio .card__title[data-v-77445781]{font-size:var(--t-sm);margin-bottom:var(--s-1)}.card--portfolio .card__badges[data-v-77445781]{margin-bottom:var(--s-1)}.card--portfolio .card__highlight-badge[data-v-77445781],.card--portfolio .card__year-badge[data-v-77445781]{padding:2px 4px}}.card-highlight[data-v-a0d37699]{border-radius:var(--s-radius-xl);display:grid;height:100%;overflow:hidden}.highlight-img[data-v-a0d37699],.highlight-overlay[data-v-a0d37699]{grid-area:1/1}.highlight-img[data-v-a0d37699]{filter:brightness(.7);height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .4s ease;width:100%}.highlight-overlay[data-v-a0d37699]{background:linear-gradient(0deg,rgba(0,0,0,.7),transparent 60%);display:flex;flex-direction:column;justify-content:flex-end;padding:var(--s-5);z-index:1}.highlight-title[data-v-a0d37699]{color:#fff;font-size:var(--t-md);line-height:1.2;margin:0}.highlight-meta[data-v-a0d37699]{color:#fffc;font-size:var(--t-sm);margin:var(--s-1) 0 0}[data-v-a0d37699] .card-link:hover .highlight-img{transform:scale(1.05)}.card--icon-card[data-v-8ddcf3fa]{align-items:center;background-color:var(--bg-alt);max-width:none;padding:var(--s-4)}.card--icon-card .card__icon[data-v-8ddcf3fa]{align-items:center;color:var(--fg-text-accent);display:flex;font-size:var(--t-6xl);justify-content:center;margin-bottom:var(--s-2);transition:transform .3s;width:100%}.card--icon-card:hover .card__icon[data-v-8ddcf3fa]{transform:scale(1.1);transition:transform .5s}.card--icon-card .card__title[data-v-8ddcf3fa]{color:var(--fg-headline);font-size:var(--t-2xl);font-weight:300;margin:var(--s-2) 0;text-align:center}.card--icon-card .card__description[data-v-8ddcf3fa]{display:block;-webkit-line-clamp:unset;line-clamp:unset;line-height:1.6;max-height:none;text-align:center}.card--icon-card[data-v-8ddcf3fa]:hover{border-color:var(--fg-text-accent)}@media(max-width:989px){.card--icon-card[data-v-8ddcf3fa]{padding:var(--s-2)}.card--icon-card .card__icon[data-v-8ddcf3fa]{font-size:var(--t-5xl)}.card--icon-card .card__title[data-v-8ddcf3fa]{font-size:var(--t-lg)}.card--icon-card .card__description[data-v-8ddcf3fa]{font-size:var(--t-paragraph-small)}}.match-tilt-wrapper[data-v-c68179f5]{display:flex;flex-direction:column;height:100%;padding:1.75rem;position:relative;transform-style:preserve-3d;width:100%}.match-tilt-wrapper.is-clustered[data-v-c68179f5]{border-color:color-mix(in srgb,var(--cluster-color) 30%,transparent);box-shadow:0 40px 80px #00000080,0 0 20px color-mix(in srgb,var(--cluster-color) 20%,transparent),0 0 30px var(--swipe-glow,transparent)}.card-inner[data-v-c68179f5]{display:flex;flex-direction:column;height:100%;z-index:2}.card-header[data-v-c68179f5]{margin-bottom:1.25rem}.card-title[data-v-c68179f5]{color:#fff;display:-webkit-box;font-size:var(--t-lg);font-weight:900;letter-spacing:-.03em;-webkit-line-clamp:2;line-height:1.1;margin-bottom:var(--s-3);-webkit-box-orient:vertical;overflow:hidden}.card-meta[data-v-c68179f5]{align-items:center;display:flex;gap:var(--grid-gap-md);justify-content:space-between;overflow:hidden}.card-tags-wrapper[data-v-c68179f5]{flex:1;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent);min-width:0;position:relative}.card-tags[data-v-c68179f5]{display:flex;gap:var(--grid-gap-xs);overflow:hidden;white-space:nowrap}.tag-chip[data-v-c68179f5]{background:color-mix(in srgb,var(--cluster-color,var(--fg-accent)) 10%,transparent);border:1px solid color-mix(in srgb,var(--cluster-color,var(--fg-accent)) 25%,transparent);border-radius:6px;color:var(--cluster-color,var(--fg-accent));flex-shrink:0;font-weight:800;letter-spacing:.02em;margin-right:.4rem;padding:.3rem .7rem;text-transform:uppercase}.card-date[data-v-c68179f5],.tag-chip[data-v-c68179f5]{font-size:var(--t-xxs)}.card-date[data-v-c68179f5]{color:var(--fg-accent);opacity:.6}.card-body[data-v-c68179f5]{flex-grow:1;margin-bottom:var(--s-4);overflow-y:auto}.card-description[data-v-c68179f5]{color:#fff9;font-size:var(--t-base);line-height:1.5;margin-top:var(--s-1)}.card-why[data-v-c68179f5]{background:#ffffff05;border-left:2px solid var(--cluster-color,var(--fg-accent));border-radius:var(--s-radius-lg);margin-top:var(--s-4);padding:1.25rem}.why-label[data-v-c68179f5]{color:var(--cluster-color,var(--fg-accent));font-size:var(--t-xxs);letter-spacing:.1em;margin-bottom:.4rem;opacity:.8}.card-why p[data-v-c68179f5]{color:#fffc;font-size:var(--t-sm);font-style:italic;margin:0}.card-footer[data-v-c68179f5]{border-top:1px solid hsla(0,0%,100%,.05);margin-top:auto;padding-top:var(--s-3)}.immersive-link[data-v-c68179f5]{align-items:center;color:var(--cluster-color,var(--fg-accent));display:inline-flex;font-size:var(--t-sm);font-weight:700;gap:var(--grid-gap-xs);text-decoration:none;transition:all .2s ease}.immersive-link[data-v-c68179f5]:hover{text-shadow:0 0 8px var(--cluster-color,var(--fg-accent));transform:translate(5px)}.card-glow[data-v-c68179f5]{background:radial-gradient(circle,var(--cluster-color,var(--fg-accent)) 0,transparent 70%);filter:blur(40px);height:200px;opacity:0;pointer-events:none;position:absolute;width:200px;z-index:-1}.text-glow[data-v-c68179f5]{text-shadow:0 0 15px hsla(0,0%,100%,.1)}.card-link{color:inherit;display:block;text-decoration:none}.card{align-self:self-start;background:linear-gradient(135deg,var(--bg-alt) 70%,var(--bg-default) 100%);border-radius:var(--s-radius-xl);box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;margin:4px;max-width:400px;opacity:1;outline:2px solid var(--fg-border);transition:border-color .3s,scale .3s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.card:active{scale:.95}.card.animate{animation:fadeInUp .5s ease-in-out forwards}.card--interactive:hover{outline-color:var(--fg-accent)}.card__content{padding:var(--s-4)}.card__title{font-size:var(--t-md);font-weight:400;margin:0 0 var(--s-2) 0;width:100%}.card__description{color:var(--text);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;line-height:1.5;margin-bottom:var(--s-2);-webkit-box-orient:vertical;max-height:4.5em;overflow:hidden;text-overflow:ellipsis}.card__meta{color:var(--fg-text);font-size:var(--t-sm);margin:0 0 var(--s-2) 0;opacity:.7}.card__period{color:var(--fg-text-light);font-size:var(--t-sm);font-style:italic;margin-top:var(--s-2)}.card__image{background:var(--gradient-cyan);border-radius:var(--s-radius-xl) var(--s-radius-xl) 0 0;overflow:hidden;position:relative;width:100%}.card__image:after{background:var(--gradient-cyan);content:"";inset:0;opacity:0;position:absolute;transition:opacity .3s ease}.card__image:not(:has(img[src])):after{opacity:1}.card__image img{height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .3s ease;width:100%}.card__cta,.card__image img:not([src]),.card__image img[src=""]{display:none}.card__cta{padding:0 var(--s-4) var(--s-4) var(--s-4);position:relative;z-index:2}.card__icon{color:var(--fg-text-accent);font-size:var(--t-6xl);margin-bottom:var(--s-2)}.card__external-icon{bottom:var(--s-2);color:var(--cyan);height:3rem;opacity:.3;position:absolute;right:var(--s-2);transition:opacity .3s ease,transform .3s ease;width:3rem;z-index:5}.card__external-icon :deep(svg){height:100%;width:100%}.card-link:hover .card__external-icon{opacity:1;transform:scale(1.1)}.card-link[target=_blank]:after{background-position:50%;background-repeat:no-repeat;background-size:contain;bottom:var(--s-2);content:"";height:2rem;opacity:.5;position:absolute;right:var(--s-2);transition:opacity .3s ease;width:2rem;z-index:2}.card-link:hover[target=_blank]:after{opacity:1}.card-link:focus-visible,.card:focus-visible,.card__content:focus-visible{border-radius:var(--s-radius-xl);outline:2px solid var(--fg-accent);outline-offset:2px}@media screen and (max-width:768px){.card{margin:2px;max-width:100%}}.card--match{-webkit-backdrop-filter:blur(30px) saturate(1.5);backdrop-filter:blur(30px) saturate(1.5);background:#0a0c12cc;border:1px solid var(--swipe-border,hsla(0,0%,100%,.1));box-shadow:0 40px 80px #00000080,0 0 30px var(--swipe-glow,transparent);height:100%;margin:0;max-width:none;overflow:hidden;position:relative}.card--match:before{background:var(--swipe-tint,transparent);content:"";inset:0;mix-blend-mode:screen;opacity:calc(var(--swipe-opacity, 0));pointer-events:none;position:absolute;z-index:0}
