/* Search result card and the compact "mini" card. */

.cottage-card {
  display: flex; flex-direction: column;
  overflow: hidden;
  background: var(--color-surface);
  border-radius: 18px;
  box-shadow: var(--shadow-card);
}
.cottage-card__media { position: relative; height: 210px; }
.cottage-card__badge { position: absolute; top: 12px; left: 12px; }
.cottage-card__save { position: absolute; top: 8px; right: 8px; }

.cottage-card__body {
  flex: 1;
  display: flex; flex-direction: column; gap: var(--space-2);
  padding: 14px var(--space-4) var(--space-4);
}
.cottage-card__head { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--space-3); }
.cottage-card__name {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 20px;
  letter-spacing: -0.01em;
  line-height: 1.2;
}
.cottage-card__name a { color: var(--color-ink); text-decoration: none; }
.cottage-card__name a:hover { color: var(--color-primary); text-decoration: underline; }
.cottage-card__place { font-size: var(--text-sm); color: var(--color-ink-subtle); }

.cottage-card__foot {
  margin-top: auto;
  padding-top: var(--space-3);
  border-top: 1px solid var(--color-border);
  display: flex; align-items: flex-end; justify-content: space-between; gap: var(--space-3);
}

@media (min-width: 768px) {
  .cottage-card__media { height: 200px; }
}
@media (min-width: 1024px) {
  .cottage-card__media { height: 230px; }
  .cottage-card__body { padding: var(--space-4) var(--space-5) var(--space-5); }
}

/* Mini card */
.mini-card {
  display: flex; flex-direction: column;
  overflow: hidden;
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  color: var(--color-ink);
  text-decoration: none;
}
.mini-card:hover { color: var(--color-ink); box-shadow: var(--shadow-raised); }
.mini-card__photo { height: 150px; }
.mini-card__body { display: flex; flex-direction: column; gap: 2px; padding: 12px 14px 14px; }
.mini-card__meta, .mini-card__price { font-size: var(--text-sm); color: var(--color-ink-subtle); }
.mini-card__price { margin-top: var(--space-1); color: var(--color-ink); }
