/* OWN SHOP */
.shop-card { display: grid; grid-template-columns: 1fr 1.5fr; border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; }
.shop-card-img { background: var(--bg2); display: flex; align-items: center; justify-content: center; min-height: 260px; }
.shop-card-img-text { font-size: 1.8rem; font-weight: 700; color: var(--border-med); letter-spacing: -0.02em; }
.shop-card-info { padding: 2.5rem; }
.shop-tags { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 1rem 0 1.5rem; }

/* PARTNER GRID */
.partner-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1.25rem; }
.partner-card { border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; display: flex; flex-direction: column; }
.partner-card-header { padding: 1.25rem 1.5rem; border-bottom: 1px solid var(--border); display: flex; align-items: center; gap: 1rem; }
.partner-card-icon { font-size: 1.6rem; flex-shrink: 0; }
.partner-card-body { padding: 1.25rem 1.5rem; flex: 1; }
.partner-tags { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 0.9rem; }
.partner-card-footer { padding: 1rem 1.5rem; border-top: 1px solid var(--border); background: var(--bg3); }

/* CAR FINDER */
.car-finder-section { background: var(--bg3); }
.car-finder-card { background: var(--bg); border-radius: var(--radius); border: 1px solid var(--border); overflow: hidden; max-width: 720px; margin: 0 auto; }
.car-finder-header { background: var(--text); color: #fff; padding: 2rem 2rem 1.75rem; }
.car-finder-header h3 { color: #fff; margin-bottom: 0.4rem; }
.car-finder-header p { color: rgba(255,255,255,0.65); margin: 0; font-size: 0.9rem; }
.car-finder-form { padding: 2rem; display: flex; flex-direction: column; gap: 1rem; }
.cf-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.states-note { background: rgba(0,113,227,0.06); border: 1px solid rgba(0,113,227,0.15); border-radius: var(--radius-sm); padding: 0.75rem 1rem; font-size: 0.82rem; color: var(--accent); }

/* APPLY CTA */
.apply-cta { border: 1.5px dashed var(--border-med); border-radius: var(--radius); padding: 2.5rem; text-align: center; max-width: 540px; margin: 0 auto; }

/* ── TABLET ── */
@media (max-width: 960px) { .partner-grid { grid-template-columns: 1fr 1fr; } }

/* ── MOBILE ── */
@media (max-width: 768px) {
  .shop-card { grid-template-columns: 1fr; }
  .shop-card-img { min-height: 140px; }
  .shop-card-info { padding: 1.5rem; }
  .partner-grid { grid-template-columns: 1fr; }
  .car-finder-form { padding: 1.5rem; }
  .car-finder-header { padding: 1.5rem; }
  .cf-row { grid-template-columns: 1fr; }
  .apply-cta { padding: 2rem 1.5rem; }
}
