.tf-card{display:block;min-width:0;background:var(--tf-surface);border:var(--tf-border-width) solid var(--tf-border);border-radius:var(--tf-radius);overflow:hidden}.tf-card:focus-visible{outline:none;box-shadow:var(--tf-shadow-focus)}.tf-card:active{transform:translateY(var(--tf-press-offset))}.tf-card__media{display:grid;place-items:center;aspect-ratio:3 / 2;color:var(--tf-text-muted);font-family:var(--tf-font-text);font-size:var(--tf-fs-xs);letter-spacing:var(--tf-tracking-wide);text-transform:uppercase}.tf-card__body{min-width:0;padding:var(--tf-space-5)}.tf-card__eyebrow{margin-bottom:var(--tf-space-2);color:var(--tf-text-muted);font-family:var(--tf-font-text);font-size:var(--tf-fs-xs);font-weight:var(--tf-weight-semibold);letter-spacing:var(--tf-tracking-wider);text-transform:uppercase}.tf-card__title{margin:0 0 var(--tf-space-3);font-family:var(--tf-font-display);font-size:var(--tf-fs-xl);font-weight:var(--tf-weight-bold);line-height:var(--tf-leading-snug);overflow-wrap:anywhere}.tf-card__meta{display:flex;flex-wrap:wrap;gap:var(--tf-space-4);color:var(--tf-text-muted);font-family:var(--tf-font-text);font-size:var(--tf-fs-sm)}.tf-card__tags{display:flex;flex-wrap:wrap;gap:var(--tf-space-2);margin-top:var(--tf-space-4)}.tf-card--lg{border-radius:var(--tf-radius-lg);box-shadow:var(--tf-shadow-sm)}.tf-card--lg:hover{box-shadow:var(--tf-shadow-md)}.tf-card--lg:active{transform:translateY(var(--tf-press-offset))}.tf-card--lg .tf-card__title{font-size:var(--tf-fs-2xl);font-weight:var(--tf-weight-black)}.tf-card--compact{box-shadow:var(--tf-shadow-xs)}.tf-card--compact:hover{box-shadow:var(--tf-shadow-sm)}.tf-card--compact:active{transform:translateY(var(--tf-press-offset))}.tf-card--compact .tf-card__title{font-size:var(--tf-fs-md)}.tf-card--horizontal{display:flex;align-items:stretch}.tf-card--horizontal .tf-card__media{flex:0 0 var(--tf-card-media-basis);aspect-ratio:auto}.tf-card--horizontal .tf-card__body{min-width:0;flex:1 1 auto;padding:var(--tf-space-4)}.tf-card--horizontal .tf-card__title{font-size:var(--tf-fs-md)}@media (max-width:768px){.tf-card--horizontal{flex-direction:column}.tf-card--horizontal .tf-card__media{flex:none;aspect-ratio:3 / 2}}