/* ── BUSINESS DETAIL PAGE ─────────────────────────────────── */
.biz-photo-strip {
  display: grid; grid-template-columns: 2fr 1fr;
  height: 260px; background: #1B4332; overflow: hidden;
}
.photo-main {
  display: flex; align-items: center; justify-content: center;
  font-size: 80px; background: #f0fdf4; border-right: 3px solid white;
}
.photo-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3px; background: #eee; }
.photo-thumb {
  display: flex; align-items: center; justify-content: center;
  font-size: 28px; background: #f7f6f0; cursor: pointer;
  transition: opacity .15s;
}
.photo-thumb:hover { opacity: .85; }
.photo-more-btn {
  background: rgba(27,67,50,.7); color: white;
  font-size: 13px; font-weight: 700;
}
.photo-more-btn span { font-size: 12px; }

.biz-layout {
  display: flex; gap: 22px; max-width: 1060px;
  margin: 0 auto; padding: 24px 16px 60px; align-items: flex-start;
}
.biz-left  { flex: 1; min-width: 0; }
.biz-right { width: 256px; flex-shrink: 0; position: sticky; top: 80px; }

/* Header block */
.biz-header-block { background: white; border: 1px solid #e8e8e0; border-radius: 14px; padding: 22px; margin-bottom: 14px; }
.biz-status-badges { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 10px; }
.biz-title    { font-size: 26px; font-weight: 800; color: #1B4332; letter-spacing: -.5px; margin-bottom: 4px; }
.biz-title-ar { font-family: 'Noto Naskh Arabic',serif; font-size: 18px; color: #888; direction: rtl; margin-bottom: 10px; }
.biz-subtitle-row { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 16px; }
.biz-cat-pill   { background: #f0fdf4; color: #166534; font-size: 12px; font-weight: 600; padding: 3px 10px; border-radius: 99px; }
.biz-price-pill { background: #fffbeb; color: #92400e; font-size: 12px; font-weight: 700; padding: 3px 10px; border-radius: 99px; }
.biz-loc-pill   { display: flex; align-items: center; gap: 3px; font-size: 12px; color: #666; }
.biz-rating-pill{ font-size: 13px; font-weight: 700; color: #1B4332; }
.biz-actions    { display: flex; gap: 8px; flex-wrap: wrap; }
.biz-btn {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 13px; font-weight: 600; padding: 9px 16px;
  border-radius: var(--radius); border: 1.5px solid #e8e8e0;
  background: white; cursor: pointer; text-decoration: none;
  color: #333; transition: all .15s;
}
.biz-btn:hover { border-color: #1B4332; color: #1B4332; }
.biz-btn.primary { background: #1B4332; color: white; border-color: #1B4332; }
.biz-btn.primary:hover { background: #144226; }

/* Sections */
.biz-section { background: white; border: 1px solid #e8e8e0; border-radius: 14px; padding: 20px 22px; margin-bottom: 14px; }
.biz-section-title { font-size: 13px; font-weight: 700; color: #1B4332; margin-bottom: 14px; padding-bottom: 8px; border-bottom: 1px solid #f0f0f0; }
.biz-desc-text { font-size: 14px; color: #555; line-height: 1.75; }
.biz-hours-text { font-size: 13px; color: #555; line-height: 1.8; }

/* Info grid */
.biz-info-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.info-item { display: flex; align-items: flex-start; gap: 10px; font-size: 13px; }
.info-item i { font-size: 16px; color: #1B4332; flex-shrink: 0; margin-top: 2px; }
.info-lbl { font-size: 10px; font-weight: 700; color: #aaa; text-transform: uppercase; letter-spacing: .4px; margin-bottom: 2px; }
.info-val { font-size: 13px; color: #333; font-weight: 500; }
.info-val a { color: #1B4332; }

/* Tags */
.biz-tags-wrap { display: flex; gap: 7px; flex-wrap: wrap; }
.biz-tag { background: #F7F6F0; border: 1px solid #e8e8e0; border-radius: 99px; padding: 4px 12px; font-size: 12px; color: #555; }

/* Rating summary */
.rating-summary { display: flex; gap: 20px; align-items: center; background: #F7F6F0; border-radius: 10px; padding: 14px; margin-bottom: 16px; }
.rating-big { text-align: center; flex-shrink: 0; }
.rating-big-num { font-size: 38px; font-weight: 900; color: #1B4332; line-height: 1; }
.rating-stars { color: #D4A017; font-size: 16px; margin: 3px 0; }
.rating-count { font-size: 11px; color: #aaa; }
.rating-bars { flex: 1; }
.rbar-row { display: flex; align-items: center; gap: 7px; font-size: 11px; margin-bottom: 5px; }
.rbar-lbl { width: 10px; text-align: right; color: #888; }
.rbar-track { flex: 1; height: 7px; background: #e0e0e0; border-radius: 4px; overflow: hidden; }
.rbar-fill { height: 100%; background: #D4A017; border-radius: 4px; }
.rbar-cnt { width: 18px; color: #aaa; font-size: 10px; }

/* Review cards */
.review-card { border: 1px solid #f0f0f0; border-radius: 10px; padding: 13px; margin-bottom: 10px; }
.rev-top { display: flex; gap: 10px; align-items: center; margin-bottom: 8px; }
.rev-avatar { width: 34px; height: 34px; border-radius: 50%; background: #1B4332; color: white; display: flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 700; flex-shrink: 0; }
.rev-name { font-size: 13px; font-weight: 600; color: #333; }
.rev-body { font-size: 13px; color: #666; line-height: 1.6; }
.review-form-wrap { border-top: 1px solid #f0f0f0; padding-top: 20px; margin-top: 20px; }

/* Star picker */
.star-picker { display: flex; gap: 4px; cursor: pointer; }
.star-opt { font-size: 28px; color: #ddd; transition: color .1s; }
.star-opt:hover { color: #D4A017; }

/* Right sidebar */
.biz-map-wrap { border: 1px solid #e8e8e0; border-radius: 12px; overflow: hidden; margin-bottom: 12px; }
.map-directions-btn {
  display: flex; align-items: center; justify-content: center; gap: 6px;
  background: #1B4332; color: white; font-size: 13px; font-weight: 700;
  padding: 10px; text-decoration: none; transition: background .15s;
}
.map-directions-btn:hover { background: #144226; }

.sb-card { background: white; border: 1px solid #e8e8e0; border-radius: 12px; padding: 14px; margin-bottom: 12px; }
.sb-card-title { font-size: 10px; font-weight: 800; color: #D4A017; text-transform: uppercase; letter-spacing: .6px; margin-bottom: 12px; }
.sb-contact-row { display: flex; align-items: flex-start; gap: 9px; margin-bottom: 10px; font-size: 12px; text-decoration: none; color: #333; }
.sb-contact-row:last-child { margin-bottom: 0; }
.sb-contact-row i { font-size: 15px; color: #1B4332; flex-shrink: 0; margin-top: 1px; }
.sb-sub { font-size: 10px; color: #aaa; margin-top: 1px; }

.claim-box { background: linear-gradient(135deg,#1B4332,#2D6A4F); border-radius: 12px; padding: 16px; text-align: center; margin-bottom: 12px; }
.claim-box h4 { color: white; font-size: 13px; font-weight: 700; margin-bottom: 6px; }
.claim-box p  { color: rgba(255,255,255,.6); font-size: 11px; line-height: 1.5; margin-bottom: 12px; }
.claim-btn { display: block; background: #D4A017; color: #1B4332; font-size: 12px; font-weight: 800; padding: 9px; border-radius: 6px; text-decoration: none; transition: background .15s; }
.claim-btn:hover { background: #b8870f; }

.similar-row { display: flex; gap: 9px; align-items: center; padding: 8px 0; border-bottom: 1px solid #f5f5f5; text-decoration: none; color: inherit; cursor: pointer; }
.similar-row:last-child { border-bottom: none; }
.similar-icon { width: 36px; height: 36px; border-radius: 7px; background: #f0fdf4; display: flex; align-items: center; justify-content: center; font-size: 18px; flex-shrink: 0; }
.similar-name { font-size: 12px; font-weight: 600; color: #1B4332; }
.similar-meta { font-size: 10px; color: #aaa; }

/* Responsive */
@media (max-width: 700px) {
  .biz-layout { flex-direction: column; }
  .biz-right  { width: 100%; position: static; }
  .biz-photo-strip { grid-template-columns: 1fr; height: 160px; }
  .photo-grid { display: none; }
  .biz-info-grid { grid-template-columns: 1fr; }
}

/* RTL */
body.rtl .biz-layout       { flex-direction: row-reverse; }
body.rtl .biz-status-badges{ flex-direction: row-reverse; }
body.rtl .biz-subtitle-row { flex-direction: row-reverse; }
body.rtl .biz-actions      { flex-direction: row-reverse; }
body.rtl .info-item        { flex-direction: row-reverse; text-align: right; }
body.rtl .biz-tags-wrap    { flex-direction: row-reverse; }
body.rtl .rating-summary   { flex-direction: row-reverse; }
body.rtl .rev-top          { flex-direction: row-reverse; }
body.rtl .sb-contact-row   { flex-direction: row-reverse; text-align: right; }
/* Business page refresh */
.biz-layout{max-width:1180px;gap:28px;padding:28px 24px 60px}.biz-right{width:280px}.biz-header-block,.biz-section{padding:26px;border-color:#dce5de}.biz-title{font-size:32px;line-height:1.2;overflow-wrap:anywhere}.biz-title-ar{display:table;margin:8px 0 14px;color:#617267}.biz-actions .biz-btn{min-height:44px;font-size:14px}.business-at-a-glance{display:grid;gap:8px;margin:18px 0;color:#465c50;font-size:14px;line-height:1.7}.business-at-a-glance strong{color:#1b4332;margin-right:8px}.business-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:20px}.business-gallery a{display:block;overflow:hidden;border-radius:12px}.business-gallery img{width:100%;height:110px;object-fit:cover;display:block}.business-gallery .gallery-cover{grid-column:1/-1}.business-gallery .gallery-cover img{height:auto;max-height:400px;aspect-ratio:16/9}.photo-placeholder{display:flex;gap:12px;align-items:center;background:#edf3ee;color:#52665a;border:1px dashed #becfc2;padding:18px;border-radius:12px;margin-bottom:20px;font-size:13px}.photo-placeholder i{font-size:24px}.biz-section-title{font-size:17px}.info-lbl,.sb-sub,.rating-count,.similar-meta{color:#65756b}.info-val,.sb-contact-row,.biz-desc-text,.rev-body{overflow-wrap:anywhere}.claim-box p{color:#e0ede3}.star-opt{border:0;background:transparent;padding:4px;min-width:42px}.review-note{font-size:13px;color:#617267;margin-bottom:14px}a:focus-visible,button:focus-visible{outline:3px solid #bd8b1e;outline-offset:3px}
@media(max-width:760px){.biz-layout,body.rtl .biz-layout{display:flex;flex-direction:column;padding:16px;gap:12px}.biz-left,.biz-right{width:100%;min-width:0}.biz-right{position:static}.biz-title{font-size:26px}.biz-header-block,.biz-section{padding:20px}.biz-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.biz-btn{justify-content:center;padding:10px;overflow-wrap:anywhere}.biz-info-grid{grid-template-columns:1fr}.business-gallery{gap:6px}.business-gallery img{height:75px}.rating-summary{gap:14px}.rating-bars{min-width:0}.form-input,.form-textarea{font-size:16px}}
