.airbnb-card-season-badge{position:absolute;bottom:16px;left:16px;background:rgba(254,253,251,.96);backdrop-filter:blur(12px);border-radius:var(--radius-md);padding:10px 14px;display:flex;align-items:center;gap:6px;box-shadow:var(--shadow-md);z-index:5;font-family:var(--font-body);border:1px solid rgba(232,227,218,.3);transition:all var(--transition-base)}.airbnb-card:hover .airbnb-card-season-badge{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.airbnb-card-season-badge .date-month{font-size:15px;color:var(--charcoal);line-height:1;font-weight:700;letter-spacing:-.01em}.airbnb-card-season-badge .date-year{font-size:14px;color:var(--charcoal-light);line-height:1;font-weight:500}.airbnb-card-image-container .availability-progress-bar-overlay{bottom:0;left:0;right:0;border-radius:0 0 var(--radius-lg) var(--radius-lg)}.airbnb-card-content{padding:var(--space-md) var(--space-sm) var(--space-sm) var(--space-sm)}.airbnb-card-header{margin-bottom:var(--space-sm)}.airbnb-card-title{font-family:var(--font-display);font-size:1.15rem;font-weight:600;color:var(--charcoal);margin:0 0 6px;line-height:1.3;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color var(--transition-fast)}.airbnb-card:hover .airbnb-card-title{color:var(--primary)}.airbnb-card-subtitle{font-family:var(--font-body);font-size:.9rem;color:var(--charcoal-light);margin:0;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.airbnb-card-price-badge{background:var(--primary);color:var(--on-primary);padding:10px 16px;border-radius:var(--radius-lg);font-family:var(--font-body);font-weight:700;font-size:.95rem;letter-spacing:-.01em;box-shadow:var(--shadow-md);z-index:10;transition:all var(--transition-spring);backdrop-filter:blur(8px)}.airbnb-card:hover .airbnb-card-price-badge{transform:scale(1.05);box-shadow:var(--shadow-lg)}.airbnb-card-favorite{position:absolute;top:16px;right:16px;background:rgba(254,253,251,.96);backdrop-filter:blur(12px);border:1px solid rgba(232,227,218,.3);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.airbnb-card-favorite:hover{transform:scale(1.1);background:white;box-shadow:var(--shadow-md);border-color:var(--primary)}.airbnb-card-favorite svg{color:var(--on-surface-variant);transition:all var(--transition-base)}.airbnb-card-favorite:hover svg{color:var(--primary)}.airbnb-card-favorite.favorited{background:var(--primary);border-color:var(--primary)}.airbnb-card-favorite.favorited svg{color:white}.airbnb-card-favorite.favorited:hover{background:var(--primary-container);border-color:var(--primary-container)}.airbnb-card-image-container{position:relative;width:100%;height:280px;overflow:hidden;border-radius:var(--radius-lg);background:var(--surface-container)}.airbnb-card-image-container img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1)}.airbnb-card:hover .airbnb-card-image-container img{transform:scale(1.08)}.airbnb-card-status-overlay{position:absolute;top:16px;right:16px;z-index:5}.airbnb-card-status-badge{background:rgba(254,253,251,.96);backdrop-filter:blur(12px);border:1px solid rgba(232,227,218,.3);padding:8px 14px;border-radius:var(--radius-md);font-family:var(--font-body);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;box-shadow:var(--shadow-sm);color:var(--charcoal);transition:all var(--transition-base)}.airbnb-status-available{background:var(--success);color:white;border-color:var(--success)}.airbnb-status-partial{background:var(--warning);color:white;border-color:var(--warning)}.airbnb-status-sold{background:var(--charcoal-light);color:white;border-color:var(--charcoal-light)}.animal-grid .airbnb-card,.animals-grid .airbnb-card{animation:staggerFadeIn .6s cubic-bezier(.4,0,.2,1) both}@media (max-width:768px){.airbnb-card-season-badge{bottom:12px;left:12px;padding:8px 12px}.airbnb-card-price-badge{top:12px;left:12px;padding:8px 12px;font-size:.85rem}.airbnb-card-favorite{width:36px;height:36px}.airbnb-card-favorite svg{width:20px;height:20px}.airbnb-card-title{font-size:1rem}.airbnb-card-subtitle{font-size:.85rem}}