/* ===== RESET & RTL ===== */
* { margin: 0; padding: 0; box-sizing: border-box; }
 :root {
     --tainer:1200px;
     --primary:#0e7c86;
     --muted:#6b8089;
     --shadow:0 10px 30px rgba(14,124,134,.10);
     --border:#e2eef0;
     --muted:#6b8089;
     --bg:#f6fafb;
     --white:#ffffff;
     --radius-sm:10px;
     --primary-light:#e6f4f5;
     --bg:#f6fafb;
     --dark:#10242b;
     
 }
body {
    font-family: 'Tajawal', 'Cairo', sans-serif;
    direction: rtl;
    text-align: right;
    background: #f8f9fa;
    color: #222;
    line-height: 1.6;
}

/* ===== HERO ===== */
.hero {
    min-height: 40vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #0b3d91 0%, #1a6b3c 100%);
    color: #fff;
    text-align: center;
    padding: 2rem;
}
.hero h1 { font-size: clamp(1.8rem, 5vw, 3rem); margin-bottom: 1rem; }
.hero-sub { font-size: 1.2rem; margin-bottom: 2rem; }
.price-badge {
    margin-top: 1.5rem;
    background: #ffd700;
    color: #000;
    display: inline-block;
    padding: 0.5rem 1.5rem;
    border-radius: 50px;
    font-size: 1.3rem;
}

/* ===== BUTTONS ===== */
.btn {
    display: inline-block;
    padding: 0.9rem 2rem;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 700;
    transition: transform .2s, box-shadow .2s;
}
.btn:hover { transform: translateY(-2px); box-shadow: 0 6px 18px rgba(0,0,0,.2); }
.btn-primary { background: #ffd700; color: #0b3d91; }
.btn-whatsapp { background: #25D366; color: #fff; }

/* ===== SERVICE GRID ===== */
.services { padding: 4rem 2rem; }
.services h2 { text-align: center; margin-bottom: 2rem; }
.service-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
    max-width: 1100px;
    margin: 0 auto;
}
.service-card {
    background: #fff;
    padding: 1.8rem;
    border-radius: 16px;
    box-shadow: 0 4px 16px rgba(0,0,0,.06);
    border-right: 5px solid #1a6b3c;
}
.con {
     background:#fff;
     max-width: 90%;
}
/* ===== PRICING ===== */
.pricing { padding: 4rem 2rem; background: #eef7f1; text-align: center; }
.price-box {
    background: #fff;
    max-width: 450px;
    margin: 2rem auto;
    padding: 2.5rem;
    border-radius: 24px;
    box-shadow: 0 8px 30px rgba(0,0,0,.08);
}
.price-number { font-size: 1.5rem; font-weight: 400; color: #0b3d91; }
.price-unit { font-size: 1.2rem; color: #555; }

/* ===== BOOKING FORM ===== */
.booking { padding: 4rem 2rem; max-width: 680px; margin: 0 auto; }
.booking h2 { text-align: center; margin-bottom: 2rem; }
.form-group { margin-bottom: 1.2rem; }
.form-group label { display: block; font-weight: 700; margin-bottom: .4rem; }
.form-group input,
.form-group select {
    width: 100%;
    padding: .8rem 1rem;
    border: 1px solid #ccc;
    border-radius: 10px;
    font-family: inherit;
    font-size: 1rem;
}
.total-preview {
    font-size: 1.2rem;
    font-weight: 700;
    margin: 1.5rem 0;
    text-align: center;
}

/* ===== GALLERY ===== */
.gallery { padding: 4rem 2rem; }
.gallery h2 { text-align: center; margin-bottom: 2rem; }
.gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1rem;
    max-width: 1100px;
    margin: 0 auto;
}
.gallery-grid img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    border-radius: 16px;
    box-shadow: 0 4px 12px rgba(0,0,0,.1);
}
/* ============================================================
   FAQ
   ============================================================ */
.faq{background:linear-gradient(180deg,var(--white),var(--bg))}
.faq .container{max-width:860px}

.faq-list{display:grid;gap:14px}

.faq-item{
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--radius-sm);
  overflow:hidden;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.faq-item[open]{
  border-color:var(--primary);
  box-shadow:var(--shadow);
}

.faq-item summary{
  list-style:none;
  cursor:pointer;
  padding:1.05em 3.2em 1.05em 1.2em;
  font-weight:700;
  color:var(--dark);
  position:relative;
  font-size:1rem;
  transition:color .2s ease;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:hover{color:var(--primary)}

.faq-item summary::before{
  content:"+";
  position:absolute;
  inset-inline-end:1.1em;
  top:50%;
  transform:translateY(-50%);
  width:28px;height:28px;
  display:grid;place-items:center;
  background:var(--primary-light);
  color:var(--primary);
  border-radius:50%;
  font-size:1.15rem;
  font-weight:800;
  transition:transform .25s ease, background .25s ease, color .25s ease;
}
.faq-item[open] summary::before{
  content:"−";
  background:var(--primary);
  color:#fff;
  transform:translateY(-50%) rotate(180deg);
}

.faq-answer{padding:0 1.2em 1.2em}
.faq-answer p{margin:0;color:var(--muted);font-size:.96rem}

.faq-cta{text-align:center;margin-top:2rem;color:var(--muted)}
.faq-cta a{font-weight:700;text-decoration:underline}
.tainer {
  max-width:920px;
  width:100%;
  max-width:var(--tainer);
  margin-inline:auto;
  padding-inline:20px;
}

.section{padding:clamp(48px,7vw,88px) 0}
.section-lead{max-width:720px;color:var(--muted);margin-bottom:2.2rem}

/* ---------- Kicker ---------- */
.kicker{
  display:inline-block;
  font-size:.85rem;
  font-weight:700;
  color:var(--primary);
  background:var(--primary-light);
  padding:.35em 1em;
  border-radius:999px;
  margin-bottom:1rem;
  letter-spacing:.2px;
}

/* ===== FLOATING ACTION BUTTONS ===== */
.fab-container {
    position: fixed;
    bottom: 24px;
    left: 24px;          /* left for RTL layout */
    display: flex;
    flex-direction: column;
    gap: 12px;
    z-index: 1000;
}
.fab {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    color: #fff;
    text-decoration: none;
    box-shadow: 0 6px 20px rgba(0,0,0,.25);
    transition: transform .2s, box-shadow .2s;
}
.fab:hover {
    transform: scale(1.1);
    box-shadow: 0 10px 28px rgba(0,0,0,.35);
}
.fab-whatsapp { background: #25D366; }
.fab-contract { background: #0b3d91; }

/* ===== RESPONSIVE ===== */
@media (max-width: 600px) {
    .hero h1 { font-size: 1.6rem; }
    .price-number { font-size: 3rem; }
    .fab { width: 52px; height: 52px; font-size: 24px; }
}