.card{background:var(--surface-2);border:1px solid var(--border-soft);border-radius:.75rem;flex-direction:column;height:100%;transition:border-color .2s,transform .2s,box-shadow .2s;display:flex;overflow:hidden}.card:hover{border-color:var(--border);box-shadow:0 .6rem 1.4rem -.7rem color-mix(in srgb, var(--text) 28%, transparent);transform:translateY(-3px)}.card[data-variant=bare]{background:0 0;border:none;border-radius:0}.card[data-variant=bare]:hover{box-shadow:none;transform:none}.card[data-variant=accent]{border-left:.1875rem solid var(--gold);border-radius:.5rem}.card-media{width:100%;aspect-ratio:var(--card-ratio,3 / 4);background:var(--surface);flex:none;position:relative;overflow:hidden}.card-img{object-fit:cover;image-rendering:auto}.card-body{flex-direction:column;padding:.9rem 1rem 1.1rem;display:flex}.card-eyebrow{font-family:var(--font-text);letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);font-size:.5rem;font-weight:500}.card-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);margin:.3rem 0 0;font-size:.95rem;font-weight:700;line-height:1.1}.card-subtitle{font-family:var(--font-text);color:var(--gold);margin:.35rem 0 0;font-size:.62rem;font-weight:600}.card-text{font-family:var(--font-text);color:var(--text-muted);margin-top:.45rem;font-size:.58rem;line-height:1.6}.card-text>p+p{margin-top:.6rem}.card-text[data-clamped]{-webkit-line-clamp:var(--card-clamp,4);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.card-more{cursor:pointer;font-family:var(--font-text);letter-spacing:.1em;text-transform:uppercase;color:var(--gold);background:0 0;border:none;align-self:flex-start;margin-top:.4rem;padding:0;font-size:.5rem;font-weight:600}.card-more:hover{text-decoration:underline}.card-more:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:.15rem}.card-actions{margin-top:.75rem}.card-body>:first-child{margin-top:0}@media (prefers-reduced-motion:reduce){.card{transition:none}.card:hover{transform:none}}@media (max-width:40rem){.card-title{font-size:.8rem}.card-subtitle{font-size:.55rem}.card-text{font-size:.5rem}.card-body{padding:.8rem .9rem .95rem}}
