/* ============================================================
   الصفحة الرئيسية لموقع الطبيب / المركز الطبي - تصميم مستقل
   عن باقي الموقع (بادئة الكلاسات: dh- = Doctor Home)
   ============================================================ */

:root{
  --dh-primary:#0e7c7b;
  --dh-primary-dark:#095d5c;
  --dh-accent:#f0b429;
  --dh-navy:#0b2e3e;
  --dh-text:#33424e;
  --dh-muted:#6c8189;
  --dh-bg-soft:#f4f9f9;
  --dh-border:#e4edee;
  --dh-radius:16px;
  --dh-shadow:0 10px 30px rgba(11,46,62,.08);
  --dh-shadow-hover:0 16px 40px rgba(11,46,62,.14);
}

.dh-wrap{overflow-x:hidden;}
.dh-wrap *{box-sizing:border-box;}
.dh-section{padding:56px 0;}
.dh-section-title{
  font-weight:800; font-size:1.9rem; color:var(--dh-navy); margin-bottom:6px;
  position:relative; display:inline-block;
}
.dh-section-title::after{
  content:''; position:absolute; right:0; bottom:-10px; width:56px; height:4px;
  background:var(--dh-accent); border-radius:4px;
}
.dh-section-sub{color:var(--dh-muted); margin-bottom:34px; font-size:.98rem;}
.dh-section-head{margin-bottom:30px;}

/* -------------------- Animations -------------------- */
@keyframes dhFadeUp{
  from{opacity:0; transform:translateY(22px);}
  to{opacity:1; transform:translateY(0);}
}
.dh-animate{opacity:0;}
.dh-animate.dh-in{animation:dhFadeUp .7s ease forwards;}

/* -------------------- Hero Slider -------------------- */
.dh-hero{
  position:relative; width:100%; height:560px; overflow:hidden; border-radius:0 0 28px 28px;
  background:linear-gradient(135deg, var(--dh-navy), var(--dh-primary));
}
.dh-hero-slide{
  position:absolute; inset:0; opacity:0; visibility:hidden; transition:opacity .8s ease;
  display:flex; align-items:center;
}
.dh-hero-slide.active{opacity:1; visibility:visible;}
.dh-hero-slide-bg{
  position:absolute; inset:0; background-size:cover; background-position:center;
}
.dh-hero-slide-bg::after{
  content:''; position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(11,46,62,.86) 0%, rgba(11,46,62,.55) 55%, rgba(11,46,62,.25) 100%);
}
.dh-hero-content{position:relative; z-index:2; color:#fff; max-width:640px; padding:0 20px;}
.dh-hero-content h1{font-size:2.6rem; font-weight:800; margin-bottom:16px; line-height:1.3;}
.dh-hero-content p{font-size:1.1rem; color:#e7f2f1; margin-bottom:26px;}
.dh-hero-cta{
  display:inline-flex; align-items:center; gap:10px; background:var(--dh-accent); color:#1b1b1b;
  font-weight:700; padding:13px 30px; border-radius:50px; transition:.25s; text-decoration:none;
}
.dh-hero-cta:hover{background:#ffcb52; transform:translateY(-2px); color:#1b1b1b;}
.dh-hero-fallback{
  display:flex; align-items:center; justify-content:center; height:100%; color:#fff; text-align:center; flex-direction:column;
}
.dh-hero-arrows{position:absolute; inset-inline:0; top:50%; transform:translateY(-50%); display:flex; justify-content:space-between; padding:0 18px; z-index:3; pointer-events:none;}
.dh-hero-arrow{
  pointer-events:all; width:46px; height:46px; border-radius:50%; border:none; background:rgba(255,255,255,.18);
  color:#fff; backdrop-filter:blur(4px); font-size:1.1rem; display:flex; align-items:center; justify-content:center; transition:.2s;
}
.dh-hero-arrow:hover{background:rgba(255,255,255,.35);}
.dh-hero-dots{position:absolute; bottom:22px; inset-inline:0; display:flex; justify-content:center; gap:8px; z-index:3;}
.dh-hero-dot{width:10px; height:10px; border-radius:50%; background:rgba(255,255,255,.4); border:none; transition:.2s;}
.dh-hero-dot.active{background:var(--dh-accent); width:26px; border-radius:6px;}

@media (max-width:768px){
  .dh-hero{height:440px; border-radius:0 0 18px 18px;}
  .dh-hero-content h1{font-size:1.7rem;}
  .dh-hero-content p{font-size:.95rem;}
}

/* -------------------- Quick Info Cards -------------------- */
.dh-quick-wrap{margin-top:-60px; position:relative; z-index:5;}
.dh-quick-card{
  background:#fff; border-radius:var(--dh-radius); box-shadow:var(--dh-shadow); padding:28px 26px;
  height:100%; transition:.25s;
}
.dh-quick-card:hover{box-shadow:var(--dh-shadow-hover); transform:translateY(-4px);}
.dh-quick-icon{
  width:52px; height:52px; border-radius:14px; background:var(--dh-bg-soft); color:var(--dh-primary);
  display:flex; align-items:center; justify-content:center; font-size:1.3rem; margin-bottom:16px;
}
.dh-quick-card h3{font-weight:800; font-size:1.15rem; color:var(--dh-navy); margin-bottom:14px;}

.dh-contact-list{list-style:none; padding:0; margin:0;}
.dh-contact-list li{display:flex; align-items:flex-start; gap:10px; margin-bottom:12px; color:var(--dh-text); font-size:.95rem;}
.dh-contact-list a{color:var(--dh-text); text-decoration:none;}
.dh-contact-list a:hover{color:var(--dh-primary);}
.dh-contact-list i{color:var(--dh-primary); margin-top:3px;}

.dh-appointment-form .form-control{
  border-radius:10px; border:1px solid var(--dh-border); padding:10px 14px; margin-bottom:10px; font-size:.92rem;
}
.dh-appointment-form .form-control:focus{border-color:var(--dh-primary); box-shadow:0 0 0 .18rem rgba(14,124,123,.12);}
.dh-btn-primary{
  display:inline-block; width:100%; background:var(--dh-primary); color:#fff; border:none; border-radius:10px;
  padding:11px 0; font-weight:700; transition:.2s; cursor:pointer;
}
.dh-btn-primary:hover{background:var(--dh-primary-dark); color:#fff;}
.dh-form-alert{border-radius:10px; padding:10px 14px; font-size:.88rem; margin-bottom:12px;}
.dh-form-alert.ok{background:#e5f6ee; color:#166a44;}
.dh-form-alert.error{background:#fdeaea; color:#a12222;}
.dh-honeypot{position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden;}

.dh-workhours-list{list-style:none; padding:0; margin:0;}
.dh-workhours-list li{
  display:flex; justify-content:space-between; padding:9px 0; border-bottom:1px dashed var(--dh-border); font-size:.92rem; color:var(--dh-text);
}
.dh-workhours-list li:last-child{border-bottom:none;}
.dh-workhours-list li.today{color:var(--dh-primary); font-weight:800;}
.dh-workhours-list .closed{color:#c0392b;}

/* -------------------- About Doctor / Achievements / Success -------------------- */
.dh-about-row{display:flex; gap:24px; flex-wrap:wrap; align-items:stretch;}
.dh-doctor-card{
  flex:1 1 50%; min-width:320px; background:#fff; border-radius:var(--dh-radius); box-shadow:var(--dh-shadow);
  padding:32px; display:flex; gap:24px; align-items:center;
}
.dh-doctor-card img{width:150px; height:150px; border-radius:18px; object-fit:cover; flex-shrink:0;}
.dh-doctor-card h3{font-weight:800; color:var(--dh-navy); font-size:1.4rem; margin-bottom:4px;}
.dh-doctor-card .dh-specialty{color:var(--dh-primary); font-weight:700; margin-bottom:10px;}
.dh-doctor-card p{color:var(--dh-text); font-size:.94rem; line-height:1.8;}
.dh-doctor-card .dh-exp-badge{
  display:inline-block; background:var(--dh-bg-soft); color:var(--dh-primary); font-weight:700;
  padding:5px 14px; border-radius:50px; font-size:.85rem; margin-bottom:10px;
}

.dh-side-col{flex:1 1 calc(25% - 12px); min-width:220px; display:flex; flex-direction:column; gap:24px;}
.dh-achieve-card, .dh-story-card{
  background:#fff; border-radius:var(--dh-radius); box-shadow:var(--dh-shadow); padding:24px; flex:1;
}
.dh-achieve-card h4, .dh-story-card h4{font-weight:800; color:var(--dh-navy); font-size:1.05rem; margin-bottom:16px;}
.dh-achieve-grid{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.dh-achieve-item{text-align:center;}
.dh-achieve-item .num{font-weight:800; font-size:1.35rem; color:var(--dh-primary); display:block;}
.dh-achieve-item .lbl{font-size:.78rem; color:var(--dh-muted);}
.dh-story-item{margin-bottom:14px; padding-bottom:14px; border-bottom:1px solid var(--dh-border);}
.dh-story-item:last-child{margin-bottom:0; padding-bottom:0; border-bottom:none;}
.dh-story-item .type{font-size:.72rem; color:var(--dh-primary); font-weight:700;}
.dh-story-item p{font-size:.85rem; color:var(--dh-text); margin:4px 0 0;}

@media (max-width:992px){
  .dh-about-row{flex-direction:column;}
  .dh-doctor-card{flex-direction:column; text-align:center;}
  .dh-side-col{flex-direction:row;}
}
@media (max-width:576px){
  .dh-side-col{flex-direction:column;}
}

/* -------------------- Services Slider -------------------- */
.dh-services-head{display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:20px; flex-wrap:wrap; gap:12px;}
.dh-services-arrows{display:flex; gap:10px;}
.dh-services-arrow{
  width:42px; height:42px; border-radius:50%; border:1px solid var(--dh-border); background:#fff;
  color:var(--dh-primary); display:flex; align-items:center; justify-content:center; transition:.2s;
}
.dh-services-arrow:hover{background:var(--dh-primary); color:#fff; border-color:var(--dh-primary);}
.dh-services-track{
  display:flex; gap:20px; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:10px; scroll-behavior:smooth;
  -ms-overflow-style:none; scrollbar-width:none;
}
.dh-services-track::-webkit-scrollbar{display:none;}
.dh-service-card{
  flex:0 0 260px; scroll-snap-align:start; background:#fff; border-radius:var(--dh-radius); box-shadow:var(--dh-shadow);
  padding:26px; text-align:center; transition:.25s;
}
.dh-service-card:hover{box-shadow:var(--dh-shadow-hover); transform:translateY(-6px);}
.dh-service-icon{
  width:64px; height:64px; margin:0 auto 16px; border-radius:16px; overflow:hidden; background:var(--dh-bg-soft);
  display:flex; align-items:center; justify-content:center; font-size:1.7rem; color:var(--dh-primary);
}
.dh-service-icon img{width:100%; height:100%; object-fit:cover;}
.dh-service-card h4{font-weight:800; font-size:1.05rem; color:var(--dh-navy); margin-bottom:8px;}
.dh-service-card p{font-size:.86rem; color:var(--dh-muted); margin-bottom:14px; min-height:40px;}
.dh-service-link{color:var(--dh-primary); font-weight:700; font-size:.86rem; text-decoration:none;}
.dh-service-link:hover{text-decoration:underline;}

/* -------------------- Latest Topics -------------------- */
.dh-topics-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:22px;}
.dh-topic-card{
  background:#fff; border-radius:var(--dh-radius); box-shadow:var(--dh-shadow); overflow:hidden; transition:.25s;
  display:flex; flex-direction:column;
}
.dh-topic-card:hover{box-shadow:var(--dh-shadow-hover); transform:translateY(-4px);}
.dh-topic-card img{width:100%; height:150px; object-fit:cover;}
.dh-topic-body{padding:16px;}
.dh-topic-cat{color:var(--dh-primary); font-size:.72rem; font-weight:700;}
.dh-topic-body h4{font-size:.98rem; font-weight:700; color:var(--dh-navy); margin:8px 0; line-height:1.5;}
.dh-topic-body h4 a{color:inherit; text-decoration:none;}
.dh-topic-body h4 a:hover{color:var(--dh-primary);}
.dh-topic-excerpt{font-size:.82rem; color:var(--dh-muted); margin-bottom:8px;}
.dh-topic-meta{font-size:.75rem; color:#9aa9ae;}
.dh-topics-more{text-align:center; margin-top:30px;}
.dh-topics-more a{
  display:inline-block; border:1.5px solid var(--dh-primary); color:var(--dh-primary); font-weight:700;
  padding:10px 30px; border-radius:50px; transition:.2s; text-decoration:none;
}
.dh-topics-more a:hover{background:var(--dh-primary); color:#fff;}

@media (max-width:992px){
  .dh-topics-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:576px){
  .dh-topics-grid{grid-template-columns:1fr;}
  .dh-section{padding:38px 0;}
}
