/* Project-level fixes that must override the compiled application styles. */

/* Arabic typography: Cairo across the entire public site. */
html[lang="ar"],
html[lang="ar"] body,
html[dir="rtl"],
html[dir="rtl"] body,
body[data-language="ar"],
body[data-language="ar"] *,
html[lang="ar"] *,
html[dir="rtl"] * {
  font-family: "Cairo", "Noto Sans Arabic", Tahoma, Arial, sans-serif !important;
}

/* Contact address: one white color only, including nested/highlighted spans. */
html[data-theme="dark"] [class*="contact"] [class*="address"],
html[data-theme="dark"] [class*="contact"] [class*="address"] *,
html[data-theme="dark"] [class*="address-card"],
html[data-theme="dark"] [class*="address-card"] * {
  color: #fff !important;
}

/* Keep the map action visually actionable. */
html[data-theme="dark"] [class*="contact"] [class*="address"] a,
html[data-theme="dark"] [class*="address-card"] a {
  color: #fff !important;
}

.team-grid .team-card-lead {
  grid-column: span 1 !important;
}

.team-grid .team-card {
  display: flex !important;
  flex-direction: column;
  aspect-ratio: auto;
  min-height: 0 !important;
  height: auto !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 18px;
  box-shadow: none !important;
}

.team-grid .team-photo {
  position: relative !important;
  inset: auto !important;
  flex: 0 0 auto;
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: linear-gradient(90deg, #42d5da 0%, #0968d7 100%) !important;
  border-radius: 18px !important;
}

.team-grid .team-photo.team-photo-fitted {
  background-image: linear-gradient(90deg, #42d5da 0%, #0968d7 100%) !important;
}

.team-grid .team-photo img {
  position: absolute !important;
  inset: 0 !important;
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center top !important;
  background: transparent !important;
  opacity: 1 !important;
}

.team-grid .team-photo::after { background: none !important; }
.team-grid .team-card:hover .team-photo img { transform: none !important; }

.team-grid .team-photo img[src*="/khalid_mishal.jpg"],
.team-grid .team-photo img[src*="/khalid-alhazeem.jpg"] {
  inset: auto !important;
  top: 50% !important;
  right: auto !important;
  bottom: auto !important;
  left: 50% !important;
  width: 90% !important;
  height: auto !important;
  object-fit: contain !important;
  transform: translate(-50%, -50%) !important;
}

.team-grid .team-card:hover .team-photo img[src*="/khalid_mishal.jpg"],
.team-grid .team-card:hover .team-photo img[src*="/khalid-alhazeem.jpg"] { transform: translate(-50%, -50%) !important; }

.team-grid .team-info {
  position: relative !important;
  z-index: 2;
  inset: auto !important;
  display: block !important;
  width: 100%;
  min-height: 72px !important;
  padding: 12px 6px 0 !important;
  color: #0b2c3b;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  pointer-events: none;
  text-align: center;
  text-wrap: balance;
}

.team-grid .team-info small,
.team-grid .team-info h3,
.team-grid .team-card-lead .team-info h3 {
  display: inline !important;
  margin: 0 !important;
  line-height: 1.45 !important;
  text-shadow: none !important;
}

.team-grid .team-info small { color: #16879c !important; font-size: clamp(16px, 1.35vw, 18px) !important; font-weight: 700 !important; white-space: nowrap; }
.team-grid .team-info small::after { content: " "; }
.team-grid .team-info h3,
.team-grid .team-card-lead .team-info h3 { color: #092b3a !important; font-size: clamp(18px, 1.65vw, 21px) !important; font-weight: 700 !important; }
.team-grid .team-info span { display: none !important; }
html[data-theme="dark"] .team-grid .team-info small { color: #65d7e7 !important; }
html[data-theme="dark"] .team-grid .team-info h3,
html[data-theme="dark"] .team-grid .team-card-lead .team-info h3 { color: #f5fbfd !important; }
.team-slider-dots { display: none; }

@media (max-width: 720px) {
  .team-grid.team-mobile-carousel { display: flex !important; grid-template-columns: none !important; gap: 14px !important; width: auto; margin-inline: -7px; padding: 2px 7px 10px; overflow-x: auto !important; overscroll-behavior-inline: contain; scroll-behavior: smooth; scroll-snap-type: inline mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .team-grid.team-mobile-carousel::-webkit-scrollbar { display: none; }
  .team-grid.team-mobile-carousel .team-card,
  .team-grid.team-mobile-carousel .team-card-lead { flex: 0 0 calc(100vw - 56px) !important; width: calc(100vw - 56px) !important; grid-column: auto !important; scroll-snap-align: center; scroll-snap-stop: always; }
  .team-slider-dots { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 18px; }
  .team-slider-dot { width: 9px; height: 9px; padding: 0; background: #aacbd3; border: 0; border-radius: 999px; cursor: pointer; transition: width 180ms ease, background-color 180ms ease; }
  .team-slider-dot.is-active { width: 25px; background: #168ea5; }
}

body.sabeq-forms-open { overflow: hidden !important; }
.sabeq-forms-overlay { position: fixed; inset: 0; z-index: 99999; display: grid; place-items: center; padding: 22px; background: rgba(3,18,28,.78); backdrop-filter: blur(10px); }
.sabeq-forms-overlay[hidden] { display: none !important; }
.sabeq-forms-dialog { width: min(1180px,100%); height: min(820px,calc(100vh - 44px)); display: grid; grid-template-rows: auto 1fr auto; overflow: hidden; color: #102b39; background: #f7fbfc; border: 1px solid rgba(26,145,170,.26); border-radius: 24px; box-shadow: 0 28px 80px rgba(0,0,0,.34); }
.sabeq-forms-header { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:22px 24px 18px; color:#f4fbfd; background:linear-gradient(135deg,#061f2d 0%,#0c4055 64%,#0e7186 100%); }
.sabeq-forms-header h2 { margin:0 0 5px; font-size:clamp(25px,3vw,36px); line-height:1.2; }
.sabeq-forms-header p { margin:0; color:#cce7ed; font-size:17px; }
.sabeq-forms-close { width:42px; min-width:42px; height:42px; display:grid; place-items:center; padding:0; color:#fff; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.24); border-radius:12px; font:inherit; font-size:27px; cursor:pointer; }
.sabeq-forms-main { min-height:0; display:grid; grid-template-columns:minmax(280px,.82fr) minmax(0,1.65fr); }
.sabeq-forms-sidebar { min-height:0; display:grid; grid-template-rows:auto auto 1fr; gap:12px; padding:18px; background:#edf6f8; border-inline-end:1px solid #d4e6ea; }
.sabeq-forms-search,.sabeq-forms-category,.sabeq-forms-editor { width:100%; color:#102b39; background:#fff; border:1px solid #bfd9df; border-radius:12px; font:inherit; font-size:17px; }
.sabeq-forms-search,.sabeq-forms-category { min-height:48px; padding:10px 13px; }
.sabeq-forms-list { min-height:0; display:flex; flex-direction:column; gap:9px; overflow:auto; padding:2px; }
.sabeq-form-item { width:100%; padding:13px 14px; color:#183847; text-align:start; background:#fff; border:1px solid #d5e6ea; border-radius:13px; font:inherit; cursor:pointer; transition:160ms ease; }
.sabeq-form-item:hover,.sabeq-form-item:focus-visible { border-color:#1b93aa; transform:translateY(-1px); }
.sabeq-form-item.is-active { color:#fff; background:#0d6073; border-color:#0d6073; }
.sabeq-form-item strong,.sabeq-form-item small { display:block; }
.sabeq-form-item strong { font-size:17px; line-height:1.35; }
.sabeq-form-item small { margin-top:5px; color:#66828d; font-size:14px; line-height:1.45; }
.sabeq-form-item.is-active small { color:#d4eef3; }
.sabeq-forms-workspace { min-width:0; min-height:0; display:grid; grid-template-rows:auto 1fr; gap:13px; padding:20px; }
.sabeq-forms-selected h3 { margin:0 0 4px; color:#092b3b; font-size:24px; }
.sabeq-forms-selected p { margin:0; color:#58727d; font-size:16px; }
.sabeq-forms-editor { min-height:0; resize:none; padding:18px; line-height:1.9; direction:rtl; text-align:right; outline:none; }
.sabeq-forms-editor:focus { border-color:#158aa2; box-shadow:0 0 0 3px rgba(21,138,162,.12); }
.sabeq-forms-footer { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px 20px; background:#fff; border-top:1px solid #d4e6ea; }
.sabeq-forms-note { margin:0; color:#5d747d; font-size:14px; line-height:1.5; }
.sabeq-forms-actions { display:flex; gap:9px; flex-wrap:wrap; }
.sabeq-forms-action { min-height:43px; padding:9px 16px; color:#0d6073; background:#e8f4f6; border:1px solid #b7d8df; border-radius:11px; font:inherit; font-size:16px; cursor:pointer; }
.sabeq-forms-action.is-primary { color:#fff; background:#0d6073; border-color:#0d6073; }
.sabeq-forms-status { min-height:22px; margin-top:4px; color:#0b7184; font-size:14px; }
.sabeq-forms-empty { padding:24px 12px; color:#6c8189; text-align:center; font-size:16px; }

@media (max-width:820px) {
  .sabeq-forms-overlay { padding:8px; }
  .sabeq-forms-dialog { height:calc(100vh - 16px); border-radius:17px; }
  .sabeq-forms-header { padding:16px; }
  .sabeq-forms-main { grid-template-columns:1fr; grid-template-rows:minmax(240px,42%) 1fr; }
  .sabeq-forms-sidebar { border-inline-end:0; border-bottom:1px solid #d4e6ea; padding:12px; }
  .sabeq-forms-workspace { padding:14px; }
  .sabeq-forms-selected h3 { font-size:20px; }
  .sabeq-forms-footer { align-items:stretch; flex-direction:column; padding:11px 14px; }
  .sabeq-forms-actions { display:grid; grid-template-columns:1fr 1fr; }
}
@media (max-width:480px) {
  .sabeq-forms-header p { font-size:14px; }
  .sabeq-forms-main { grid-template-rows:minmax(220px,40%) 1fr; }
  .sabeq-forms-search,.sabeq-forms-category,.sabeq-form-item strong { font-size:15px; }
  .sabeq-forms-editor { padding:13px; font-size:15px; }
}

