

/* ===== Font Awesome FIX (prevents boxes) ===== */
.fa-solid, .fa-regular, .fa-brands,
.fa-solid::before, .fa-regular::before, .fa-brands::before,
.fa::before, .fas::before, .far::before, .fal::before {
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900;
}

.fa-brands, .fa-brands::before {
  font-family: "Font Awesome 6 Brands" !important;
  font-weight: 400;
}

/* ===== FIX: restore Font Awesome font for icons (restaurant page) ===== */
.fa-solid::before,
.fa-regular::before,
.fa-brands::before,
.fas::before,
.far::before,
.fal::before,
.fa::before{
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  font-style: normal !important;
}

.fa-brands::before{
  font-family: "Font Awesome 6 Brands" !important;
  font-weight: 400 !important;
}

/* =========================
   Grid
   ========================= */
.kr-cards{
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap:16px;
}

/* =========================
   Card Base (cleaner + premium)
   ========================= */
.kr-card{
  background:#fff;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 10px 26px rgba(17,24,39,.08);
  border:1px solid rgba(17,24,39,.06);
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
  display:flex;
  flex-direction:column;
}
.kr-card:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 40px rgba(17,24,39,.14);
  border-color:rgba(232,104,0,.25);
}

/* =========================
   Image (better crop + overlay)
   ========================= */
.kr-card__image{
  position:relative;
  background:#f3f4f6;
}
.kr-card__image::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom, rgba(0,0,0,0) 55%, rgba(0,0,0,.35) 100%);
  pointer-events:none;
}
.kr-card__image img{
  width:100%;
  height:178px;
  object-fit:cover;
  display:block;
}

/* =========================
   Badges (more consistent)
   ========================= */
.kr-badge{
  position:absolute;
  font-size:11px;
  font-weight:900;
  padding:5px 10px;
  border-radius:999px;
  letter-spacing:.2px;
  box-shadow:0 6px 16px rgba(0,0,0,.18);
  backdrop-filter: blur(4px);
}

.kr-badge--promo{
  top:10px;
  right:10px;
  background:rgba(255,215,0,.95);
  color:#111;
}

.kr-badge--offer{
  bottom:10px;
  left:10px;
  background:rgba(232,104,0,.95);
  color:#fff;
}
.kr-badge--offer small{
  display:block;
  font-size:10px;
  font-weight:800;
  opacity:.9;
  margin-top:1px;
  line-height:1.1;
}

/* =========================
   Body (tighter + better rhythm)
   ========================= */
.kr-card__body{
  padding:12px 14px 12px;
  display:flex;
  flex-direction:column;
  gap:6px;
}

/* =========================
   Name (stronger)
   ========================= */
.kr-card__name{
  margin:0;
  font-size:18px;
  font-weight:950;
  line-height:1.18;
  color:#111827;
  cursor:pointer;
  letter-spacing:-.2px;
}
.kr-card__name:hover{
  color:#e86800;
}

/* =========================
   Cuisine row (micro + icon)
   ========================= */
.kr-card__meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.kr-card__cuisine{
  display:inline-flex;
  align-items:center;
  gap:7px;
  font-size:11px;          /* smaller than before */
  font-weight:800;
  color:#6b7280;
  line-height:1;
  padding:6px 10px;
  border-radius:999px;
  background:#f9fafb;
  border:1px solid #eef2f7;
  max-width:100%;
}

.kr-card__cuisine i{
  font-size:12px;
  color:#e86800;
  flex-shrink:0;
}

/* =========================
   Address (clamped + cleaner)
   ========================= */
.kr-card__address{
  margin:2px 0 0;
  font-size:12px;
  color:#374151;
  display:flex;
  align-items:center;
  gap:6px;
}

.kr-card__address i{
  font-size:12px;
  color:#9ca3af;
  flex-shrink:0;
}

.kr-card__address a{
  color:inherit;
  text-decoration:none;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  display:block;
  max-width:100%;
}
.kr-card__address a:hover{
  color:#111827;
  text-decoration:underline;
  text-underline-offset:2px;
}

/* =========================
   Phone (reduce spacing before actions)
   ========================= */
.kr-card__phone{
  margin-top:2px; /* reduced */
}

.kr-card__phone a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:13px;
  font-weight:800;
  color:#111827;
  text-decoration:none;
}

.kr-card__phone a::before{
  content:"\f095";
  font-family:"Font Awesome 6 Free";
  font-weight:900;
  color:#16a34a;
  font-size:12px;
}

.kr-card__phone a:hover{
  color:#16a34a;
}

/* =========================
   Actions (less wasted space)
   ========================= */
.kr-card__actions{
  margin-top:6px;       /* reduced */
  display:flex;
  gap:8px;
}

.kr-card__actions button{
  flex:1;
  border:1px solid rgba(17,24,39,.08);
  padding:8px 0;        /* reduced */
  border-radius:12px;
  font-size:12.5px;     /* slightly smaller */
  font-weight:900;
  cursor:pointer;
  background:#f3f4f6;
  transition:transform .12s ease, background .12s ease, border-color .12s ease;
}

.kr-card__actions button:hover{
  background:#e5e7eb;
  transform:translateY(-1px);
  border-color:rgba(17,24,39,.14);
}

.kr-card__actions button[data-action="reserve"]{
  background:#e86800;
  border-color:rgba(232,104,0,.35);
  color:#fff;
}
.kr-card__actions button[data-action="reserve"]:hover{
  background:#c93c20;
}

/* Optional: tighter on very small screens */
@media (max-width: 360px){
  .kr-card__image img{ height:165px; }
  .kr-card__body{ padding:12px; }
}
