/* خط IBM Plex Sans Arabic مستضاف على الموقع نفسه */
@font-face{font-family:"IBM Plex Sans Arabic";font-weight:400;font-style:normal;font-display:swap;src:url("../assets/fonts/IBMPlexSansArabic-Regular.woff") format("woff")}
@font-face{font-family:"IBM Plex Sans Arabic";font-weight:500;font-style:normal;font-display:swap;src:url("../assets/fonts/IBMPlexSansArabic-Medium.woff") format("woff")}
@font-face{font-family:"IBM Plex Sans Arabic";font-weight:600 700;font-style:normal;font-display:swap;src:url("../assets/fonts/IBMPlexSansArabic-SemiBold.woff") format("woff")}

/* قيصرين للمشاريع المتحدة - ملف التنسيق */

/* ===== المتغيرات: الألوان والأبعاد (عدّل الألوان من هنا) ===== */
:root {
  --brown:#7A4F20;
  --brown2:#93601F;
  --sand:#C5AE8C;
  --bg:#FFFFFF;
  --soft:#F4F1EC;
  --ink:#3A3A3A;
  --mute:#6b6459;
  --line:#e4ddd2;
  --onbrown:#fff;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}

/* ===== الأساسيات ===== */
html {
  scroll-behavior:smooth;
  scroll-padding-top:70px;
}
* {
  box-sizing:border-box;
}
body {
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:"IBM Plex Sans Arabic",Tahoma,Arial,sans-serif;
  line-height:1.9;
  font-size:17px;
}
img {
  max-width:100%;
}
a {
  color:inherit;
}
:focus-visible {
  outline:3px solid var(--sand);
  outline-offset:3px;
}
.wrap {
  max-width:1100px;
  margin:0 auto;
  padding:0 22px;
}

/* ===== الهيدر (الشريط العلوي) ===== */
header {
  position:sticky;
  top:env(safe-area-inset-top,0px);
  z-index:5;
  background:var(--bg);
  border-bottom:1px solid var(--line);
}
header .wrap {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  height:64px;
}
header img {
  height:38px;
  background:#fff;
  border-radius:6px;
  padding:2px 6px;
}

/* ===== الواجهة الرئيسية ===== */
.hero {
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,#B08550,#93601F 55%,#7A4F20);
  color:#fff;
  padding:96px 0 110px;
}
.hero svg {
  position:absolute;
  inset-inline-end:-90px;
  top:50%;
  transform:translateY(-50%);
  height:130%;
  opacity:.16;
}
.hero .wrap {
  position:relative;
}
.hero h1 {
  font-size:clamp(40px,7vw,76px);
  line-height:1.25;
  margin:0 0 6px;
  font-weight:700;
}
.hero .en {
  font-size:clamp(18px,2.6vw,26px);
  font-weight:500;
  opacity:.9;
  direction:ltr;
  text-align:right;
  margin:0 0 28px;
}
.hero p.lead {
  max-width:34ch;
  font-size:clamp(20px,2.4vw,26px);
  margin:0 0 34px;
}
.btn {
  display:inline-block;
  padding:12px 26px;
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  margin-inline-end:10px;
}
.btn.w {
  background:#fff;
  color:#7A4F20;
}
.btn.o {
  border:2px solid #fff;
  color:#fff;
}

/* ===== الأقسام والعناوين ===== */
section {
  padding:80px 0;
}
section.alt {
  background:var(--soft);
}
h2 {
  display:inline-block;
  background:var(--brown2);
  color:#fff;
  font-size:26px;
  margin:0 0 30px;
  padding:4px 28px;
  border-radius:14px;
  font-weight:700;
  line-height:1.7;
}

/* ===== من نحن ===== */
.about {
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:48px;
  align-items:start;
}
.about p {
  margin:0 0 14px;
}
.panel {
  background:var(--soft);
  border-radius:28px 28px 28px 70px;
  padding:28px;
}
section.alt .panel {
  background:var(--bg);
}
.panel h3 {
  margin:0 0 8px;
  color:var(--brown);
  font-size:20px;
}
.panel p {
  color:var(--mute);
  margin:0 0 18px;
  font-size:16px;
}
@media(max-width:820px) {
  .about {
    grid-template-columns:1fr;
  }
}

/* ===== البطاقات ===== */
.grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:18px;
}
.card {
  background:var(--soft);
  border-radius:26px 26px 26px 60px;
  padding:26px 24px 30px;
}
section.alt .card {
  background:var(--bg);
}
.card h3 {
  margin:0 0 6px;
  font-size:19px;
  color:var(--brown);
}
.card p {
  margin:0;
  color:var(--mute);
  font-size:15.5px;
}
.tag {
  display:inline-block;
  font-size:13px;
  color:var(--brown);
  border:1px solid var(--brown);
  border-radius:999px;
  padding:0 12px;
  margin-bottom:12px;
  line-height:1.7;
}
.sub {
  color:var(--mute);
  max-width:60ch;
  margin:-14px 0 30px;
}

/* ===== لماذا تختارنا ===== */
.why {
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:12px;
  max-width:640px;
}
.why li {
  display:flex;
  align-items:center;
  gap:16px;
  background:var(--bg);
  border-radius:999px;
  padding:12px 24px;
  font-weight:500;
  counter-increment:n;
}
.why li::before {
  content:counter(n);
  font-size:30px;
  font-weight:700;
  color:var(--brown);
  min-width:30px;
  text-align:center;
  line-height:1;
}
.why {
  counter-reset:n;
}

/* ===== القيم ===== */
.vals {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.vals span {
  background:var(--soft);
  padding:6px 22px;
  border-radius:999px;
  font-weight:500;
}

/* ===== التواصل ===== */
.contact {
  background:linear-gradient(135deg,#93601F,#7A4F20);
  color:#fff;
  text-align:center;
}
.contact h2 {
  background:#fff;
  color:#7A4F20;
}
.contact .rows {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:40px;
  margin:10px 0 28px;
  font-size:20px;
}
.contact small {
  display:block;
  opacity:.8;
  font-size:14px;
}
.contact .tagline {
  font-size:22px;
  margin:0 0 22px;
}

/* ===== التذييل ===== */
footer {
  padding:22px 0;
  font-size:14px;
  color:var(--mute);
  text-align:center;
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto;
  }
}

/* ===== الحركات والانتقالات ===== */
.progress {
  position:fixed;
  top:0;
  inset-inline:0;
  height:3px;
  z-index:9;
  background:var(--brown2);
  transform-origin:right;
  transform:scaleX(0);
}
header {
  transition:box-shadow .3s,background .3s;
}
header.s {
  box-shadow:0 6px 24px rgba(60,40,10,.12);
}
header .wrap {
  transition:height .3s;
}
header.s .wrap {
  height:54px;
}
.hero .wrap {
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:30px;
  align-items:center;
}
.hero svg path {
  stroke-dasharray:1700;
  stroke-dashoffset:0;
}

/* ===== حركة الظهور عند التمرير ===== */
.js .hero svg path {
  animation:draw 3s ease-out both;
}
@keyframes draw {
  from{stroke-dashoffset:1700}to{stroke-dashoffset:0};
}
.js .hero .t>* {
  animation:up .9s cubic-bezier(.2,.7,.2,1) both;
}
.js .hero .t>*:nth-child(2) {
  animation-delay:.12s;
}
.js .hero .t>*:nth-child(3) {
  animation-delay:.24s;
}
.js .hero .t>*:nth-child(4) {
  animation-delay:.36s;
}
.js .hero .figure {
  animation:pop 1.1s .25s cubic-bezier(.2,.7,.2,1) both;
}
@keyframes up {
  from{opacity:0;
  transform:translateY(34px)}to{opacity:1;
  transform:none};
}
@keyframes pop {
  from{opacity:0;
  transform:translateX(-50px) scale(.94)}to{opacity:1;
  transform:none};
}

/* ===== الصور ===== */
.figure {
  position:relative;
  display:flex;
  justify-content:center;
  align-items:flex-end;
  min-height:360px;
}
.figure::before {
  content:"";
  position:absolute;
  inset:8% 6% 0;
  background:#C5AE8C;
  border-radius:46% 46% 8% 8%/36% 36% 8% 8%;
  opacity:.55;
}
.figure img {
  position:relative;
  max-height:520px;
  width:auto;
  will-change:transform;
}
.hero .figure img {
  max-height:540px;
  margin-bottom:-110px;
}
.btn {
  transition:transform .25s,box-shadow .25s,background .25s;
}
.btn:hover {
  transform:translateY(-3px);
  box-shadow:0 10px 22px rgba(0,0,0,.2);
}
.js [data-r] {
  opacity:0;
  transform:translateY(40px);
  transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);
  transition-delay:var(--d,0s);
}
.js [data-r="l"] {
  transform:translateX(-60px);
}
.js [data-r="s"] {
  transform:scale(.9);
}
.js h2[data-r] {
  opacity:1;
  transform:none;
  clip-path:inset(0 0 0 100%);
  transition:clip-path .9s cubic-bezier(.7,0,.2,1);
}
.js [data-r].in {
  opacity:1;
  transform:none;
}
.js h2[data-r].in {
  clip-path:inset(0 0 0 0);
}
.card {
  transition:transform .35s,box-shadow .35s,background .35s;
}
.card:hover {
  box-shadow:0 18px 36px rgba(90,60,20,.16);
}
.js .card.in:hover {
  transform:translateY(-8px);
}
.card:hover h3 {
  color:var(--brown2);
}
.vals span {
  transition:background .25s,color .25s,transform .25s;
}
.vals span:hover {
  background:var(--brown2);
  color:#fff;
  transform:translateY(-3px);
}
.why li {
  transition:transform .3s,box-shadow .3s;
}
.why li:hover {
  transform:translateX(-8px);
  box-shadow:0 8px 20px rgba(0,0,0,.1);
}
.banner {
  margin-top:50px;
}
.banner .figure {
  min-height:0;
}
.banner .figure::before {
  inset:18% 0 0;
  border-radius:40px 40px 8px 8px;
}
.banner img {
  max-height:380px;
}
.split {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:40px;
  align-items:end;
}
@media(max-width:820px) {
  .hero .wrap,.split {
    grid-template-columns:1fr;
  }
  .hero .figure img {
    margin-bottom:-90px;
    max-height:380px;
  }
  .hero {
    padding-bottom:90px;
  }
}
@media(prefers-reduced-motion:reduce) {
  .js [data-r],.js h2[data-r] {
    opacity:1!important;
    transform:none!important;
    clip-path:none!important;
    transition:none;
  }
  .js .hero * {
    animation:none!important;
  }
}
header {
  background:#fff!important;
  border-bottom:1px solid #e9e2d6;
}
.brand {
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color:#3A3A3A;
}
.brand svg {
  height:40px;
  width:auto;
  flex:none;
}
.brand span {
  display:flex;
  flex-direction:column;
  line-height:1.35;
}
.brand b {
  font-size:16px;
  font-weight:700;
  color:#3A3A3A;
}
.brand i {
  font-style:normal;
  font-size:12px;
  font-weight:500;
  color:#3A3A3A;
  direction:ltr;
  text-align:right;
}
.hero .wrap {
  grid-template-columns:1fr;
}
.hero {
  padding:120px 0 130px;
}
.split {
  grid-template-columns:1fr;
}
@media(max-width:480px) {
  .brand i {
    display:none;
  }
  .brand b {
    font-size:15px;
  }
}

/* ===== الشريط العلوي المتحرك (القائمة) ===== */
header { transition: transform .4s ease, box-shadow .3s; }
.nav { position: relative; display: flex; gap: 26px; font-size: 15px; }
.nav a { padding: 6px 2px; text-decoration: none; color: #7A4F20; font-weight: 500; transition: color .25s; }
.nav a:hover, .nav a.on { color: #93601F; }
.nav-ind { position: absolute; bottom: -2px; left: 0; height: 3px; width: 0; border-radius: 3px; background: var(--brown2); transition: transform .4s cubic-bezier(.7,0,.2,1), width .4s; }
.burger { display: none; width: 44px; height: 44px; border: 0; background: none; cursor: pointer; position: relative; }
.burger span { position: absolute; left: 11px; right: 11px; height: 2px; border-radius: 2px; background: #7A4F20; transition: transform .35s, opacity .2s, top .35s; }
.burger span:nth-child(1) { top: 15px; }
.burger span:nth-child(2) { top: 21px; }
.burger span:nth-child(3) { top: 27px; }
.menu-open .burger span:nth-child(1) { top: 21px; transform: rotate(45deg); }
.menu-open .burger span:nth-child(2) { opacity: 0; }
.menu-open .burger span:nth-child(3) { top: 21px; transform: rotate(-45deg); }

/* ===== الجوال والتابلت ===== */
@media (max-width: 820px) {
  .burger { display: block; }
  .nav { position: absolute; top: 100%; inset-inline: 0; flex-direction: column; gap: 0; padding: 8px 22px 20px; background: #fff; border-bottom: 1px solid #e9e2d6; box-shadow: 0 18px 30px rgba(60,40,10,.12); clip-path: inset(0 0 100% 0); visibility: hidden; transition: clip-path .45s cubic-bezier(.7,0,.2,1), visibility 0s .45s; }
  .menu-open .nav { clip-path: inset(0); visibility: visible; transition-delay: 0s; }
  .nav a { padding: 14px 4px; font-size: 17px; border-bottom: 1px solid #f0eae0; opacity: 0; transform: translateY(-8px); transition: opacity .3s, transform .3s, color .25s; }
  .menu-open .nav a { opacity: 1; transform: none; transition-delay: calc(var(--i) * .05s + .12s); }
  .nav-ind { display: none; }
}
@media (max-width: 600px) {
  body { font-size: 16px; }
  .wrap { padding: 0 18px; }
  section { padding: 56px 0; }
  h2 { font-size: 22px; margin-bottom: 24px; }
  .hero { padding: 80px 0 90px; }
  .hero h1 { font-size: 34px; }
  .hero svg { height: 90%; inset-inline-end: -140px; }
  .hero .btn, .contact .btn { display: block; margin: 0 0 12px; padding: 14px 20px; text-align: center; }
  .grid { grid-template-columns: 1fr; }
  .card { padding: 22px 20px 26px; }
  .why li { padding: 12px 18px; border-radius: 22px; }
  .vals span { padding: 4px 16px; font-size: 15px; }
  .panel { padding: 22px; }
  .banner { margin-top: 32px; }
  .banner img { max-height: 240px; }
  .contact .rows { flex-direction: column; gap: 22px; font-size: 18px; }
}

/* ===== زر اللغة ===== */
.tools { display: flex; align-items: center; gap: 8px; }
.lang { height: 38px; min-width: 46px; padding: 0 14px; border: 1.5px solid #7A4F20; border-radius: 999px; background: #fff; color: #7A4F20; font-family: inherit; font-size: 14px; font-weight: 700; cursor: pointer; transition: background .25s, color .25s; }
.lang:hover { background: #7A4F20; color: #fff; }
.nav { margin-inline-start: auto; margin-inline-end: 18px; }
@media (min-width: 821px) and (max-width: 1000px) { .nav { gap: 18px; font-size: 14px; } }

/* ===== اتجاه الإنجليزية (LTR) ===== */
html[dir="ltr"] .progress { transform-origin: left; }
html[dir="ltr"] .js h2[data-r] { clip-path: inset(0 100% 0 0); }
html[dir="ltr"] .js h2[data-r].in { clip-path: inset(0); }
html[dir="ltr"] .hero .en { direction: rtl; text-align: left; }
html[dir="ltr"] .brand i { text-align: left; }
html[dir="ltr"] .why li:hover { transform: translateX(8px); }

@media (max-width: 820px) { .nav { margin: 0; } }

/* ===== حسابات التواصل داخل معلومات التواصل ===== */

/* ===== إضافات: الأقسام الجديدة ===== */
[hidden] { display: none !important; }
.lang { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.hero { background: linear-gradient(135deg, #9A6B38, #93601F 55%, #7A4F20); }
.hero .en { opacity: .95; }

/* مشاريعنا: رقمان فقط */
.stats { padding: 56px 0; }
.stats .stat-row { display: flex; flex-wrap: wrap; gap: 18px; }
.stats .stat-row > div { flex: 1 1 220px; background: var(--soft); border-radius: 26px 26px 26px 60px; padding: 22px 28px 26px; }
.stats p { margin: 0; font-size: 52px; font-weight: 700; line-height: 1.2; color: var(--brown); }
.stats small { color: var(--mute); font-size: 16px; }

/* مناطق التوريد */
.areas { display: flex; flex-wrap: wrap; gap: 12px; }
.areas span { background: var(--soft); padding: 6px 22px; border-radius: 999px; font-weight: 500; }
.areas span:first-child { background: var(--brown2); color: #fff; }

/* الأسئلة الشائعة */
.faq { max-width: 760px; display: grid; gap: 12px; }
.faq details { background: var(--bg); border-radius: 22px; padding: 4px 24px; }
.faq summary { cursor: pointer; font-weight: 700; color: var(--brown); padding: 12px 0; list-style: none; display: flex; justify-content: space-between; gap: 12px; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; font-size: 24px; line-height: 1.4; }
.faq details[open] summary::after { content: "\2212"; }
.faq details p { margin: 0 0 14px; color: var(--mute); font-size: 16px; }

/* نموذج عرض السعر */
.quote { max-width: 760px; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; background: var(--soft); border-radius: 28px 28px 28px 70px; padding: 28px; }
.quote label { display: grid; gap: 4px; font-size: 15px; font-weight: 500; color: var(--brown); }
.quote select, .quote input { font: inherit; font-size: 16px; color: var(--ink); background: #fff; border: 1.5px solid var(--line); border-radius: 14px; padding: 10px 14px; width: 100%; }
.quote select:focus, .quote input:focus { border-color: var(--brown2); outline: 3px solid var(--sand); outline-offset: 1px; }
.quote .qbtn { grid-column: 1 / -1; justify-self: start; background: var(--brown2); color: #fff; border: 0; font: inherit; font-weight: 700; cursor: pointer; margin: 0; }
@media (max-width: 600px) { .quote { grid-template-columns: 1fr; padding: 22px; } .quote .qbtn { justify-self: stretch; } .stats p { font-size: 44px; } }

/* خدمات إضافية: أصغر حجماً وأقل بروزاً */
.extra h2 { font-size: 21px; background: var(--sand); color: #3A2A12; }
.extra .grid { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 14px; }
.extra .card { padding: 18px 20px 22px; border-radius: 20px 20px 20px 44px; }
.extra .card h3 { font-size: 16.5px; }
.extra .card p { font-size: 14.5px; }
.extra { padding: 56px 0; }

/* حسابات التواصل: أيقونات متناسقة تحت العنوان وفي المنتصف */
.contact .socials { display: flex; justify-content: center; gap: 12px; margin: 0 0 28px; }
.contact .socials a { width: 40px; height: 40px; border-radius: 50%; border: 1px solid rgba(255,255,255,.45); display: grid; place-items: center; color: #fff; text-decoration: none; transition: background .25s, color .25s, border-color .25s; }
.contact .socials a svg { width: 18px; height: 18px; display: block; }
.contact .socials a:hover { background: #fff; color: #7A4F20; border-color: #fff; }
.contact small { opacity: .92; }
.contact .btn.o { margin-top: 0; }
footer .reg { margin-top: 4px; font-size: 13px; }

/* إمكانية الوصول: تقليل الحركة */
@media (prefers-reduced-motion: reduce) {
  .progress, .nav-ind, .btn, .card, .vals span, .why li, .socials a, header { transition: none !important; }
  .btn:hover, .card:hover, .vals span:hover, .why li:hover, .socials a:hover { transform: none !important; }
}

/* ===== خدمات إضافية: التبويبات ===== */
.tablist { display: flex; gap: 8px; overflow-x: auto; padding: 2px 2px 10px; scrollbar-width: thin; }
.tablist button { flex: none; font: inherit; font-size: 15px; font-weight: 500; color: var(--brown); background: #fff; border: 1.5px solid var(--line); border-radius: 999px; padding: 6px 18px; cursor: pointer; transition: background .25s, color .25s, border-color .25s; }
.tablist button:hover { border-color: var(--brown2); }
.tablist button[aria-selected="true"] { background: var(--brown2); border-color: var(--brown2); color: #fff; }
.tabpanel { background: #fff; border-radius: 26px 26px 26px 60px; padding: 28px 30px 30px; max-width: 760px; animation: up .5s cubic-bezier(.2,.7,.2,1) both; }
.tabpanel .intro { margin: 0 0 12px; font-size: 17px; }
.tabpanel ul { margin: 0 0 22px; padding-inline-start: 22px; color: var(--mute); font-size: 16px; }
.tabpanel li { margin-bottom: 4px; }
.tabpanel .svc-cta { background: var(--brown2); color: #fff; margin: 0; }
.tabpanel .how { display: block; margin-top: 12px; color: var(--mute); font-size: 14px; }
.extra .tag { margin-bottom: 8px; }
@media (max-width: 600px) { .tabpanel { padding: 22px 20px 24px; } .tabpanel .svc-cta { display: block; text-align: center; } }
@media (prefers-reduced-motion: reduce) { .tabpanel { animation: none; } .tablist button { transition: none; } }

/* ===== خدمات إضافية: أسئلة اختيارية لكل خدمة ===== */
.svc-form { margin: 0; }
.svc-form .opt { margin: 0 0 12px; font-size: 15px; font-weight: 500; color: var(--brown); }
.svc-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 12px 14px; margin: 0 0 20px; }
.svc-fields label { display: grid; gap: 4px; font-size: 15px; font-weight: 500; color: var(--brown); }
.svc-fields select, .svc-fields input { font: inherit; font-size: 16px; color: var(--ink); background: var(--soft); border: 1.5px solid var(--line); border-radius: 14px; padding: 9px 14px; width: 100%; }
.svc-fields select:focus, .svc-fields input:focus { border-color: var(--brown2); outline: 3px solid var(--sand); outline-offset: 1px; }
.tabpanel button.svc-cta { border: 0; font: inherit; font-weight: 700; cursor: pointer; }
@media (max-width: 600px) { .tabpanel button.svc-cta { display: block; width: 100%; } }
