:root{
  --primary: #0B3D91;
  --primary2: #0A59C7;
  --accent: #00A3FF;

  --text: #0b1020;
  --muted: rgba(15,23,42,.72);

  --radius: 18px;
  --shadow-soft: 0 14px 32px rgba(0,0,0,.12);
  --shadow: 0 18px 44px rgba(0,0,0,.16);

  --container: min(1120px, 92%);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: "Cairo", system-ui, -apple-system, Segoe UI, Arial, sans-serif;
  color: var(--text);
  background:#fff;
  line-height:1.85;
  text-rendering: optimizeLegibility;
}
a{color:inherit; text-decoration:none}
.container{width: var(--container); margin-inline:auto}

.skip-link{
  position:absolute; top:10px; right:10px;
  background:#111; color:#fff;
  padding:10px 12px; border-radius:12px;
  transform: translateY(-140%);
}
.skip-link:focus{transform:none; z-index:9999}
.no-scroll{overflow:hidden}

/* Buttons */
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding: 11px 16px;
  border-radius: 14px;
  border: 1px solid transparent;
  font-weight: 900;
  cursor:pointer;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.btn:active{transform: translateY(1px)}
.btn--primary{
  background: #fff;
  color: var(--primary);
  border: 1px solid rgba(255,255,255,.55);
  box-shadow: 0 12px 28px rgba(0,0,0,.18);
}
.btn--primary:hover{transform: translateY(-1px); box-shadow: 0 16px 34px rgba(0,0,0,.22)}
.btn--header{
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.26);
  color:#fff;
}
.btn--header:hover{background: rgba(255,255,255,.18)}

.icon-btn{
  width: 42px; height: 42px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.12);
  display:inline-grid; place-items:center;
  cursor:pointer;
  transition: transform .18s ease, background .18s ease;
  color:#fff;
}
.icon-btn:hover{transform: translateY(-1px); background: rgba(255,255,255,.18)}

/* Header */
.header{
  position: sticky;
  top: 0;
  z-index: 80;
  background: linear-gradient(135deg, var(--primary), var(--primary2));
  border-bottom: 1px solid rgba(255,255,255,.14);
}
.header__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
  padding: 12px 0;
}
.brand{display:flex; align-items:center; gap:10px; min-width: 240px}
.brand__logo{
  width: 46px; height: 46px;
  object-fit: contain;
  filter: drop-shadow(0 8px 14px rgba(0,0,0,.28));
}
.brand__text{display:flex; flex-direction:column; line-height:1.15}
.brand__text strong{font-size: 14.5px; color:#fff}
.brand__text small{font-size: 12px; color: rgba(255,255,255,.78)}

.nav{display:flex; align-items:center; gap: 10px}
.nav__link{
  padding: 8px 10px;
  border-radius: 12px;
  color: rgba(255,255,255,.88);
  font-weight: 900;
  transition: background .18s ease, color .18s ease;
}
.nav__link:hover{background: rgba(255,255,255,.12); color:#fff}
.nav__link.is-active{background: rgba(255,255,255,.16); color:#fff}

.header__actions{display:flex; align-items:center; gap: 10px}
.burger{display:none}
.burger__lines{
  width: 18px; height: 12px; position: relative; display:block;
}
.burger__lines::before,
.burger__lines::after{
  content:"";
  position:absolute; left:0; right:0;
  height:2px; border-radius:2px;
  background:#fff;
}
.burger__lines::before{top:0}
.burger__lines::after{bottom:0}

/* Mobile menu */
.mobile{position: fixed; inset:0; z-index: 120;}
.mobile__backdrop{position:absolute; inset:0; background: rgba(0,0,0,.55);}
.mobile__panel{
  position:absolute;
  top: 12px; right: 12px; left: 12px;
  margin: auto; max-width: 520px;
  background: #fff;
  border-radius: 22px;
  box-shadow: var(--shadow);
  padding: 14px;
  transform: translateY(-10px);
  opacity: 0;
  transition: .22s ease;
}
.mobile.is-open .mobile__panel{transform: translateY(0); opacity: 1}
.mobile__head{display:flex; align-items:center; justify-content:space-between; padding: 6px 4px 12px}
.mobile__title{font-weight: 900}
.mobile__links{display:flex; flex-direction:column; gap:6px; padding: 6px 2px}
.mobile__links a{
  padding: 12px 12px;
  border-radius: 14px;
  background: rgba(11,61,145,.06);
  font-weight: 900;
  color: rgba(15,23,42,.88);
}
.mobile__links a:hover{background: rgba(11,61,145,.10)}
.mobile__cta{width:100%; margin-top: 10px}

/* Hero */
.hero{
  position: relative;
  min-height: 70vh;
  overflow:hidden;
  background: #071229;
}
.hero__bg{
  position:absolute; inset:0;
  background-image: url("med/1.jpeg");
  background-size: cover;
  background-position: center;
  transform: scale(1.06);
  filter: saturate(1.05) contrast(1.05);
}
.hero__overlay{
  position:absolute; inset:0;
  background:
    radial-gradient(900px 400px at 20% 25%, rgba(0,163,255,.16), transparent 60%),
    linear-gradient(90deg, rgba(7,18,41,.86) 0%, rgba(7,18,41,.64) 45%, rgba(7,18,41,.25) 75%, rgba(7,18,41,.75) 100%),
    linear-gradient(180deg, rgba(7,18,41,.22) 0%, rgba(7,18,41,.78) 92%);
}
.hero__grid{
  position: relative; z-index:2;
  padding: clamp(32px, 6vw, 76px) 0;
  display:grid;
  grid-template-columns: 1fr;
  align-items: center;
}
.hero__content{
  color:#fff;
  border-radius: 26px;
  padding: clamp(18px, 3vw, 28px);
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.16);
  backdrop-filter: blur(12px);
  box-shadow: 0 22px 58px rgba(0,0,0,.22);
  max-width: 860px;
}
.hero__title{
  margin:0 0 10px;
  font-size: clamp(26px, 4vw, 40px);
  line-height: 1.25;
  font-weight: 900;
}
.hero__text p{
  margin: 0 0 10px;
  color: rgba(255,255,255,.88);
  font-weight: 700;
}
.hero__actions{margin-top: 10px}

/* Page layout */
.page-hero{padding: 28px 0 10px; background: rgba(11,61,145,.04)}
.page-hero__title{margin:0; font-size: 28px; font-weight: 900}
.page{min-height: 60vh}

/* Sections */
.section{padding: clamp(28px, 5vw, 62px) 0}
.section--muted{background: rgba(11,61,145,.04)}
.section__head{margin-bottom: 16px}
.section__title{margin:0; font-size: clamp(18px, 2.4vw, 26px); font-weight: 900}

/* Prose */
.prose p{margin: 0 0 12px; color: rgba(15,23,42,.86); font-weight: 700}

/* Services grid / cards */
.services-grid{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.service-card{
  border-radius: 22px;
  padding: 16px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: var(--shadow-soft);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.service-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 26px 56px rgba(0,0,0,.16);
  border-color: rgba(11,61,145,.20);
}
.service-card__title{margin:0; font-size: 16px; font-weight: 900}

/* Partners */
.partners{
  display:grid;
  grid-template-columns: 46px 1fr 46px;
  gap: 10px;
  align-items:center;
}
.partners__track{
  display:grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 24px) / 3); /* 3 per view */
  gap: 12px;
  overflow:auto;
  scroll-snap-type: x mandatory;
  padding: 6px;
  border-radius: 20px;
  border: 1px solid rgba(0,0,0,.06);
  background: #fff;
  box-shadow: var(--shadow-soft);
}
.partners__track::-webkit-scrollbar{height:10px}
.partners__track::-webkit-scrollbar-thumb{background: rgba(0,0,0,.12); border-radius:999px}
.partner-logo{
  scroll-snap-align: start;
  height: 92px;
  border-radius: 18px;
  border: 1px dashed rgba(0,0,0,.14);
  background: linear-gradient(180deg, rgba(11,61,145,.03), rgba(0,163,255,.03));
}

/* Branch/contact cards */
.branch-grid, .contact-grid{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin-top: 14px;
}
.branch-card, .contact-card{
  border-radius: 22px;
  padding: 16px;
  background:#fff;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: var(--shadow-soft);
}
.branch-card__title, .contact-card__title{margin:0 0 8px; font-weight: 900}
.branch-card__line, .contact-card__line{margin:0 0 6px; font-weight: 800; color: rgba(15,23,42,.80)}

/* Lists */
.list{margin:0; padding:0 18px 0 0}
.list li{margin: 8px 0; font-weight: 800; color: rgba(15,23,42,.80)}

/* Footer */
.footer{
  padding: 18px 0;
  border-top: 1px solid rgba(0,0,0,.08);
  background: #fff;
}
.footer__row{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
}
.footer__name{font-weight: 900; color: rgba(15,23,42,.88)}
.footer__social{
  width: 42px; height: 42px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.10);
  background: #fff;
  display:grid;
  place-items:center;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.footer__social svg{fill: var(--primary)}
.footer__social:hover{transform: translateY(-2px); box-shadow: 0 16px 30px rgba(0,0,0,.12); border-color: rgba(11,61,145,.22)}

/* Reveal */
.reveal{opacity:0; transform: translateY(12px); transition: .6s ease}
.reveal.is-visible{opacity:1; transform:none}

@media (prefers-reduced-motion: reduce){
  .reveal{opacity:1 !important; transform:none !important; transition:none !important}
}

/* Responsive */
@media (max-width: 980px){
  .nav{display:none}
  .burger{display:inline-grid}
  .services-grid{grid-template-columns: repeat(2, 1fr)}
  .partners__track{grid-auto-columns: calc((100% - 12px) / 2)}
  .branch-grid, .contact-grid{grid-template-columns: 1fr}
}
@media (max-width: 560px){
  .header__actions .btn--header{display:none}
  .services-grid{grid-template-columns: 1fr}
  .partners__track{grid-auto-columns: 100%}
}
/* About page hero with image */
.page-hero--image{
  position: relative;
  padding: 52px 0;
  overflow: hidden;
  background: #071229;
}
.page-hero__bg{
  position:absolute; inset:0;
  background-image: url("med/1.jpeg");
  background-size: cover;
  background-position: center;
  transform: scale(1.05);
  filter: saturate(1.05) contrast(1.05);
}
.page-hero__overlay{
  position:absolute; inset:0;
  background:
    radial-gradient(900px 420px at 20% 20%, rgba(0,163,255,.15), transparent 60%),
    linear-gradient(90deg, rgba(7,18,41,.88) 0%, rgba(7,18,41,.68) 46%, rgba(7,18,41,.30) 75%, rgba(7,18,41,.78) 100%),
    linear-gradient(180deg, rgba(7,18,41,.12) 0%, rgba(7,18,41,.86) 92%);
}
.page-hero__inner{position:relative; z-index:2}
.page-hero__title--white{color:#fff}
.page-hero__subtitle{
  margin: 6px 0 0;
  color: rgba(255,255,255,.82);
  font-weight: 800;
}

/* Split layout */
.split{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 18px;
  align-items: center;
}
.split--reverse{grid-template-columns: .85fr 1.15fr}
.split--reverse .split__media{order: 1}
.split--reverse .split__content{order: 2}

.split__content{
  background:#fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 22px;
  padding: 18px;
  box-shadow: var(--shadow-soft);
}
.split__media{
  display:grid;
  place-items:center;
}
.media-card{
  width: 100%;
  border-radius: 22px;
  overflow:hidden;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: var(--shadow-soft);
  background: #fff;
}
.media-card img{
  width:100%;
  height: 360px;
  object-fit: cover;
  display:block;
}
.media-card--logo img{
  height: 260px;
  object-fit: contain;
  padding: 18px;
  background: linear-gradient(180deg, rgba(11,61,145,.03), rgba(0,163,255,.03));
}

/* Section actions */
.section__actions{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 14px;
}
.btn--outline{
  background: transparent;
  border: 1px solid rgba(11,61,145,.28);
  color: var(--primary);
}
.btn--outline:hover{
  background: rgba(11,61,145,.06);
}

/* Note */
.note{
  margin-top: 12px;
  display:flex;
  gap: 10px;
  align-items:flex-start;
  padding: 12px 12px;
  border-radius: 16px;
  border: 1px solid rgba(11,61,145,.12);
  background: rgba(11,61,145,.04);
}
.note__dot{
  width: 10px; height: 10px;
  margin-top: 6px;
  border-radius: 999px;
  background: var(--accent);
}
.note__text{font-weight: 800; color: rgba(15,23,42,.78)}

/* Responsive */
@media (max-width: 980px){
  .split, .split--reverse{grid-template-columns: 1fr}
  .split--reverse .split__media{order: 0}
  .split--reverse .split__content{order: 0}
  .media-card img{height: 260px}
}

/* صورة تغطي الكارد بالكامل (Full Cover) */
.media-card--cover{
  padding: 0 !important;
}

.media-card--cover img{
  width: 100%;
  height: 100%;
  min-height: 360px; /* نفس ارتفاع الكارد */
  display: block;
  object-fit: cover;
  object-position: center;
}

/* للموبايل */
@media (max-width: 980px){
  .media-card--cover img{
    min-height: 260px;
  }
}
/* Services card with image */
.service-card{
  overflow: hidden; /* مهم باش الصورة ما تطلعش برا الراديوس */
  padding: 0;       /* نخلي padding داخل body */
  display: flex;
  flex-direction: column;
  min-height: 260px;
}

.service-card__media{
  position: relative;
  height: 150px;
  width: 100%;
  overflow: hidden;
}

.service-card__media img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  transform: scale(1.02);
  transition: transform .35s ease;
}

.service-card__body{
  padding: 14px 16px 16px;
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.service-card__title{
  margin: 0;
  font-size: 16px;
  font-weight: 900;
}

/* تظليل بسيط فوق الصورة يخلي العنوان يبان أحسن لو احتجته لاحقًا */
.service-card__media::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.00) 60%);
  pointer-events:none;
}

/* Hover احترافي */
.service-card:hover .service-card__media img{
  transform: scale(1.08);
}
/* Services hero image */
.page-hero--services .page-hero__bg{
  background-image: url("med/5.png");
}

/* خدمات: فهرس سريع */
.services-nav{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: var(--shadow-soft);
  border-radius: 22px;
  padding: 14px;
}
.services-nav__item{
  padding: 10px 12px;
  border-radius: 14px;
  font-weight: 900;
  background: rgba(11,61,145,.06);
  border: 1px solid rgba(11,61,145,.10);
  transition: transform .18s ease, background .18s ease;
}
.services-nav__item:hover{
  transform: translateY(-1px);
  background: rgba(11,61,145,.10);
}

/* بلوك كل خدمة (صورة + محتوى) */
.service-block{
  display:grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 14px;
  align-items: stretch;
}
.service-block--reverse{
  grid-template-columns: 1.1fr .9fr;
}
.service-block--reverse .service-block__media{order: 2;}
.service-block--reverse .service-block__content{order: 1;}

.service-block__media .media-card--cover img{
  min-height: 340px;
}

.service-block__content{
  background:#fff;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: var(--shadow-soft);
  border-radius: 22px;
  padding: 18px;
}

.service-block__title{
  margin: 0 0 6px;
  font-size: clamp(18px, 2.2vw, 26px);
  font-weight: 900;
}
.service-block__desc{
  margin: 0 0 12px;
  font-weight: 800;
  color: rgba(15,23,42,.78);
}

.service-block__sub{
  margin: 10px 0 10px;
  font-weight: 900;
  font-size: 16px;
  color: rgba(15,23,42,.88);
}

/* قائمة الفروع */
.service-block__list{
  margin: 0;
  padding: 0 18px 0 0;
  display: grid;
  gap: 8px;
}
.service-block__list li{
  font-weight: 800;
  color: rgba(15,23,42,.80);
  background: rgba(11,61,145,.04);
  border: 1px solid rgba(11,61,145,.08);
  border-radius: 16px;
  padding: 10px 12px;
}

/* Responsive */
@media (max-width: 980px){
  .service-block,
  .service-block--reverse{
    grid-template-columns: 1fr;
  }
  .service-block--reverse .service-block__media{order: 0;}
  .service-block--reverse .service-block__content{order: 0;}
  .service-block__media .media-card--cover img{min-height: 260px;}
}
/* Branches hero image */
.page-hero--branches .page-hero__bg{
  background-image: url("med/branches-hero.jpg");
}

/* Branch cards */
.branch-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
.branch-card{
  background:#fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 22px;
  padding: 16px;
  box-shadow: var(--shadow-soft);
}
.branch-card__title{
  margin: 0 0 10px;
  font-weight: 900;
  font-size: 18px;
}
.branch-card__line{
  margin: 0 0 10px;
  font-weight: 800;
  color: rgba(15,23,42,.78);
}
.branch-card__link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-weight: 900;
  color: var(--primary);
  background: rgba(11,61,145,.06);
  border: 1px solid rgba(11,61,145,.12);
  padding: 10px 12px;
  border-radius: 14px;
}
.branch-card__link:hover{background: rgba(11,61,145,.10);}

.pill{
  display:inline-block;
  font-weight: 900;
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(11,61,145,.18);
  background: rgba(11,61,145,.06);
  color: var(--primary);
  margin-bottom: 8px;
}
.pill--dark{
  border-color: rgba(0,0,0,.12);
  background: rgba(0,0,0,.04);
  color: rgba(15,23,42,.85);
}

.branch-card__phones,
.branch-card__admin{
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.phone{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.08);
  background: #fff;
  font-weight: 900;
  color: rgba(15,23,42,.88);
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.phone:hover{
  transform: translateY(-1px);
  box-shadow: 0 16px 34px rgba(0,0,0,.12);
  border-color: rgba(11,61,145,.22);
}
.phone--admin{
  background: rgba(11,61,145,.06);
  border-color: rgba(11,61,145,.16);
}

/* Contact layout */
.contact-layout{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  align-items: start;
}
.contact-panel,
.contact-form-card{
  background:#fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 22px;
  padding: 16px;
  box-shadow: var(--shadow-soft);
}
.contact-panel__title,
.contact-form-card__title{
  margin: 0 0 12px;
  font-weight: 900;
  font-size: 18px;
}

.contact-panel__block{margin-bottom: 14px;}
.contact-panel__block:last-child{margin-bottom:0;}

.contact-list{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:10px;
}
.contact-list li{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px;
  border-radius: 18px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(11,61,145,.03);
}
.label{font-weight: 900; color: rgba(15,23,42,.88);}
.link{
  font-weight: 900;
  color: var(--primary);
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(11,61,145,.14);
  padding: 8px 10px;
  border-radius: 12px;
}
.link:hover{background:#fff;}

.phones{
  display:grid;
  gap:8px;
}

.muted{
  margin: 0;
  font-weight: 800;
  color: rgba(15,23,42,.70);
}

/* Form */
.form{display:grid; gap: 12px;}
.field{display:grid; gap: 8px;}
.field__label{font-weight: 900;}
.field__input{
  width:100%;
  border-radius: 16px;
  border: 1px solid rgba(0,0,0,.10);
  padding: 12px 12px;
  font-family: inherit;
  outline: none;
}
.field__input:focus{
  border-color: rgba(11,61,145,.32);
  box-shadow: 0 0 0 5px rgba(0,163,255,.12);
}
.field__textarea{resize: vertical; min-height: 140px;}
.form__submit{width: 100%;}
.form__hint{
  margin: 0;
  font-weight: 800;
  color: rgba(15,23,42,.62);
  font-size: 13px;
}

/* Responsive */
@media (max-width: 980px){
  .branch-grid{grid-template-columns: 1fr;}
  .contact-layout{grid-template-columns: 1fr;}
}
/* Hero image for branches page */
.page-hero--branches .page-hero__bg{
  background-image: url("med/branches-hero.jpg");
}

/* Contact image card */
.contact-image-card{
  background:#fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 22px;
  overflow: hidden;
  box-shadow: var(--shadow-soft);
  display: grid;
}

.contact-image-card .media-card{
  border: 0;
  box-shadow: none;
  border-radius: 0;
}

.contact-image-card__caption{
  padding: 14px 16px 16px;
}

.contact-image-card__title{
  margin: 0 0 6px;
  font-weight: 900;
  font-size: 18px;
}

.contact-image-card__text{
  margin: 0;
  font-weight: 800;
  color: rgba(15,23,42,.72);
}
/* Partners section */
.partners__intro{
  margin: 0 0 10px;
  font-weight: 800;
  color: rgba(15,23,42,.72);
}

.partners{
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 10px;
  align-items: center;
  margin-top: 10px;
}

.partners__btn{
  width: 44px;
  height: 44px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.08);
  background: #fff;
  box-shadow: var(--shadow-soft);
  font-size: 22px;
  font-weight: 900;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.partners__btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 18px 36px rgba(0,0,0,.14);
  border-color: rgba(11,61,145,.20);
}

.partners__track{
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 20px) / 3);
  gap: 10px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  padding: 6px;
  border-radius: 22px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(11,61,145,.03);
  box-shadow: var(--shadow-soft);
}
.partners__track::-webkit-scrollbar{height: 10px;}
.partners__track::-webkit-scrollbar-thumb{background: rgba(0,0,0,.18); border-radius: 999px;}
.partners__track::-webkit-scrollbar-track{background: rgba(0,0,0,.06); border-radius: 999px;}

.partner-card{
  scroll-snap-align: start;
  background: #fff;
  border-radius: 18px;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: var(--shadow-soft);
  padding: 12px;

  /* الجديد */
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 92px;
}

.partner-card__logo{
  /* شعار مربع */
  width: 64px;
  height: 64px;
  flex: 0 0 64px;

  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.08);
  background: linear-gradient(180deg, rgba(11,61,145,.04), rgba(0,163,255,.03));
  display: grid;
  place-items: center;
  overflow: hidden;
}

.partner-card__logo img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 10px;
  display: block;
}

.partner-card__name{
  /* الاسم جنب الشعار */
  font-weight: 900;
  font-size: 14px;
  color: rgba(15,23,42,.88);
  line-height: 1.4;

  /* باش ما يطلعش خارج الكارد */
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.partner-card__logo img{
  width: 100%;
  height: 100%;
  object-fit: cover;      /* يملّي المربع بالكامل */
  object-position: center;
  padding: 0;             /* مهم */
  display: block;
}

.partners__hint{
  margin: 10px 0 0;
  font-weight: 800;
  color: rgba(15,23,42,.62);
  font-size: 13px;
}

/* Responsive: 2 per view */
@media (max-width: 980px){
  .partners__track{
    grid-auto-columns: calc((100% - 10px) / 2);
  }
}

/* Responsive: 1 per view */
@media (max-width: 700px){
  .partners{
    grid-template-columns: 1fr;
  }
  .partners__btn{
    display:none;
  }
  .partners__track{
    grid-auto-columns: 100%;
  }
}
/* ✅ Mobile menu stacking fix */
.mobile{
  position: fixed;
  inset: 0;
  z-index: 9999;              /* فوق الهيدر */
}

.mobile__backdrop{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.55);
  z-index: 1;                  /* تحت البانل */
}

.mobile__panel{
  position: absolute;
  top: 0;
  right: 0;                    /* RTL */
  height: 100%;
  width: min(86vw, 360px);
  background: #fff;
  z-index: 2;                  /* فوق الـbackdrop */
  pointer-events: auto;        /* مهم */
}

/* لو كان فيه أي ستايل سابق يمنع الضغط */
.mobile.is-open .mobile__panel,
.mobile.is-open .mobile__links,
.mobile.is-open .mobile__links a{
  pointer-events: auto;
}
