/* Al-Rasheed & Partners — pure CSS, no frameworks. Mobile-first. */
:root{
  --green:#1a6b3c;
  --green-dark:#124d2b;
  --sand:#f5f1e6;
  --sand-dark:#e8dfc9;
  --dark:#1c1c1c;
  --muted:#5f6b62;
  --white:#ffffff;
  --radius:14px;
  --shadow:0 8px 24px rgba(28,28,28,.10);
  --font-body:"Rubik",system-ui,-apple-system,"Segoe UI",Tahoma,Arial,sans-serif;
  --font-head:"Rubik",system-ui,"Segoe UI",Tahoma,Arial,sans-serif;
  --container:1120px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--dark);
  background:var(--white);
  line-height:1.6;
}
img{max-width:100%;height:auto;display:block;border-radius:10px}
h1,h2,h3{font-family:var(--font-head);line-height:1.2;margin:0 0 .6em}
h1{font-size:2.1rem}
h2{font-size:1.6rem}
p{margin:0 0 1em}
a{color:var(--green)}
a:hover{color:var(--green-dark)}
/* Phone numbers always LTR, even inside dir="rtl" */
a[href^="tel:"]{direction:ltr;unicode-bidi:isolate;white-space:nowrap;display:inline-block}
.container{max-width:var(--container);margin:0 auto;padding:0 1rem}
.narrow{max-width:760px}
.center{text-align:center}
.muted{color:var(--muted)}
.kicker{
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.8rem;
  font-weight:700;
  color:var(--green);
  margin:0 0 .5em;
}
.lead{font-size:1.1rem;color:#33413a}
.skip-link{
  position:absolute;left:-9999px;top:0;
  background:var(--dark);color:var(--white);
  padding:.6em 1em;z-index:200;border-radius:0 0 8px 0;
}
.skip-link:focus{left:0}

/* Header */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(255,255,255,.96);
  border-bottom:1px solid #e5e0d2;
  backdrop-filter:blur(6px);
}
.site-header.scrolled{box-shadow:0 4px 16px rgba(0,0,0,.08)}
.header-inner{
  display:flex;align-items:center;gap:1rem;
  padding:.7rem 1rem;
}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--dark)}
.brand img{width:60px;height:auto;border-radius:8px}
.brand-text{display:flex;flex-direction:column;line-height:1.2}
.brand-text strong{font-family:var(--font-head);font-size:1.05rem}
.brand-text small{color:var(--muted);font-size:.75rem}
.site-nav{margin-left:auto}
.site-nav ul{
  display:flex;gap:.25rem;list-style:none;
  margin:0;padding:0;
}
.site-nav a{
  display:block;padding:.55em .8em;border-radius:8px;
  text-decoration:none;color:var(--dark);font-weight:600;
}
.site-nav a:hover{background:var(--sand)}
.site-nav a.active{background:var(--green);color:var(--white)}
.header-actions{margin-left:.5rem;display:flex;align-items:center;gap:.6rem}
.btn{
  display:inline-block;background:var(--green);color:var(--white);
  padding:.7em 1.2em;border-radius:999px;text-decoration:none;
  font-weight:700;border:2px solid var(--green);
}
.btn:hover{background:var(--green-dark);border-color:var(--green-dark);color:var(--white)}
.btn-small{padding:.5em .9em;font-size:.9rem}
.btn-outline{background:transparent;color:var(--green)}
.btn-outline:hover{background:var(--green);color:var(--white)}
.btn-light{background:var(--white);color:var(--green-dark);border-color:var(--white)}
.btn-outline-light{background:transparent;color:var(--white);border-color:var(--white)}
.btn-outline-light:hover{background:var(--white);color:var(--green-dark)}
.nav-toggle{
  display:none;background:var(--green);border:0;border-radius:8px;
  width:44px;height:40px;cursor:pointer;
  flex-direction:column;align-items:center;justify-content:center;gap:5px;
}
.nav-toggle span{display:block;width:22px;height:2px;background:var(--white)}

/* Hero + sections */
.hero{background:var(--sand);padding:2.5rem 0}
.hero-grid{display:grid;gap:1.5rem;align-items:center}
.hero-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1rem}
.partners{background:var(--green);color:var(--white)}
.partners-row{
  display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:center;
  padding:.9rem 1rem;font-weight:800;letter-spacing:.08em;font-size:.9rem;
}
.section{padding:2.5rem 0}
.section-alt{background:#faf8f1}
.page-hero{background:var(--sand);padding:2rem 0;border-bottom:1px solid var(--sand-dark)}
.cards-3,.cards-4,.cards-2{display:grid;gap:1rem;margin-top:1.2rem}
.card{
  background:var(--white);border:1px solid #e7e1d0;
  border-radius:var(--radius);padding:1.1rem;
  box-shadow:var(--shadow);
}
.card h2,.card h3{margin-top:.4rem}
.card img{margin:-.2rem -0.1rem .8rem;width:calc(100% + .2rem)}
.split{display:grid;gap:1.5rem;align-items:center}
.check-list{padding-left:1.1rem}
.check-list li{margin:.3em 0}
.stats-band{background:var(--green);color:var(--white)}
.stats-grid{display:grid;gap:1rem;text-align:center;padding:1.2rem 0}
.stats-grid strong{display:block;font-size:1.8rem;font-family:var(--font-head)}
.cta{background:var(--green-dark);color:var(--white)}
.cta-inner{display:grid;gap:1rem;align-items:center;padding:2rem 0}
.cta h2{color:var(--white)}
.cta-actions{display:flex;gap:.7rem;flex-wrap:wrap}

/* Gallery */
.gallery-grid{display:grid;gap:.9rem;grid-template-columns:1fr}
.gallery-grid figure{
  margin:0;background:var(--white);border:1px solid #e7e1d0;
  border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);
}
.gallery-grid img{border-radius:0;cursor:zoom-in;aspect-ratio:4/3;object-fit:cover;width:100%}
.gallery-grid figcaption{padding:.5rem .8rem;font-size:.9rem;color:var(--muted)}
dialog.gallery-lightbox{border:0;border-radius:12px;padding:0;max-width:min(92vw,900px)}
dialog.gallery-lightbox img{border-radius:12px 12px 0 0;max-height:75vh;width:100%;object-fit:contain;background:#000}
dialog.gallery-lightbox form{display:flex;justify-content:flex-end;padding:.5rem .8rem}
dialog::backdrop{background:rgba(0,0,0,.65)}

/* Forms */
.contact-form{background:var(--white);border:1px solid #e7e1d0;border-radius:var(--radius);padding:1.2rem;box-shadow:var(--shadow)}
.field{margin-bottom:1rem}
.field label{display:block;font-weight:700;margin-bottom:.3rem}
.field input,.field textarea{
  width:100%;padding:.7em .8em;border:1px solid #c9c2ab;
  border-radius:8px;font:inherit;background:#fffdf7;
}
.field input:focus,.field textarea:focus{outline:2px solid var(--green);border-color:var(--green)}
.error{color:#a4262c;font-size:.85rem}
.form-status{font-weight:600;min-height:1.4em}
details{background:var(--white);border:1px solid #e7e1d0;border-radius:10px;padding:.8rem 1rem;margin:.6rem 0}
summary{cursor:pointer;font-weight:700}

/* Footer */
.site-footer{background:var(--dark);color:#e9e6da;margin-top:0}
.footer-grid{display:grid;gap:1.5rem;padding:2rem 0}
.site-footer h2{font-size:1.1rem;color:var(--white)}
.site-footer a{color:#ffe9a8}
.footer-links{list-style:none;margin:0;padding:0}
.footer-links li{margin:.3em 0}
.footer-bar{border-top:1px solid #333;padding:.8rem 0;font-size:.9rem;color:#c9c5b6}

/* Reveal */
.reveal{opacity:1}
.reveal.is-hidden{opacity:0;transform:translateY(12px)}
.reveal.is-visible{opacity:1;transform:none;transition:opacity .5s ease,transform .5s ease}

/* Scroll top */
.scroll-top{
  position:fixed;right:18px;bottom:18px;z-index:120;
  width:44px;height:44px;border-radius:50%;border:0;
  background:var(--green);color:var(--white);font-size:1.3rem;cursor:pointer;
  box-shadow:var(--shadow);
}

/* Responsive */
@media (min-width:700px){
  h1{font-size:2.6rem}
  .hero-grid,.split,.cta-inner{grid-template-columns:1fr 1fr}
  .cards-2{grid-template-columns:1fr 1fr}
  .cards-3{grid-template-columns:1fr 1fr}
  .cards-4{grid-template-columns:1fr 1fr}
  .gallery-grid{grid-template-columns:1fr 1fr}
  .stats-grid{grid-template-columns:repeat(4,1fr)}
  .footer-grid{grid-template-columns:1.2fr .8fr 1fr}
}
@media (min-width:1024px){
  .cards-3{grid-template-columns:repeat(3,1fr)}
  .cards-4{grid-template-columns:repeat(4,1fr)}
  .gallery-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:921px){
  .site-nav{
    display:none;position:absolute;top:100%;left:0;right:0;
    background:var(--white);border-bottom:1px solid #e5e0d2;
  }
  .site-nav.open{display:block}
  .site-nav ul{flex-direction:column;padding:.6rem}
  .site-nav a{padding:.8em 1em}
  .nav-toggle{display:flex}
  .header-actions{margin-left:auto}
  .btn-small{font-size:.8rem}
}
@media (max-width:600px){
  .header-inner{flex-wrap:wrap}
  .brand-text small{display:none}
  .hero{padding:1.6rem 0}
  .section{padding:1.8rem 0}
  .gallery-grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal.is-visible{transition:none}
}
[lang="ar"] .skip-link{left:auto;right:-9999px;}
/* RTL + Arabic (Rubik site-wide, EN + AR) */
html[dir="rtl"] body{
  font-family:"Rubik",Tahoma,"Segoe UI",system-ui,-apple-system,Arial,sans-serif;
  letter-spacing:0;
}
html[dir="rtl"] h1,
html[dir="rtl"] h2,
html[dir="rtl"] h3{
  font-family:"Rubik",Tahoma,"Segoe UI",sans-serif;
  letter-spacing:0;
}
html[dir="rtl"] .kicker{letter-spacing:0}
html[dir="rtl"] .site-nav{margin-left:0;margin-right:auto}
html[dir="rtl"] .header-actions{margin-left:0;margin-right:.5rem}
html[dir="rtl"] .check-list{padding-left:0;padding-right:1.1rem}
html[dir="rtl"] .scroll-top{right:auto;left:18px}
html[dir="rtl"] .site-nav ul{letter-spacing:0}
.lang-switch{white-space:nowrap}
