/*
Theme Name: Neam Recovery
Theme URI: https://neam.org.sa/
Author: Neam Site Recovery
Description: Lightweight Arabic recovery theme for Neam Association.
Version: 1.0.0
Text Domain: neam-recovery
*/

:root {
  --neam-green: #176b4d;
  --neam-green-dark: #0d4f39;
  --neam-gold: #d6a94a;
  --neam-ink: #17211d;
  --neam-muted: #65736c;
  --neam-surface: #f7faf8;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--neam-ink);
  background: #fff;
  font-family: Tahoma, Arial, sans-serif;
  line-height: 1.8;
}
a { color: var(--neam-green); }
img { max-width: 100%; height: auto; }

.site-header {
  position: relative;
  z-index: 30;
  background: rgba(255,255,255,.97);
  border-bottom: 1px solid #e4ebe7;
  box-shadow: 0 6px 24px rgba(23,107,77,.07);
}
.header-inner {
  width: min(1180px, calc(100% - 32px));
  min-height: 82px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}
.brand {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--neam-green-dark);
  text-decoration: none;
  font-weight: 800;
  white-space: nowrap;
}
.brand-mark {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  color: #fff;
  background: linear-gradient(145deg, var(--neam-green), var(--neam-green-dark));
  box-shadow: 0 8px 18px rgba(23,107,77,.24);
  font-size: 19px;
}
.brand-text { font-size: 17px; }
.primary-nav ul {
  list-style: none;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
  padding: 0;
  margin: 0;
}
.primary-nav a {
  display: block;
  padding: 10px 12px;
  color: #23372f;
  border-radius: 10px;
  text-decoration: none;
  font-size: 14px;
  font-weight: 700;
}
.primary-nav a:hover,
.primary-nav .current-menu-item > a {
  color: #fff;
  background: var(--neam-green);
}
.site-main { min-height: 60vh; }
.content-shell {
  width: min(1100px, calc(100% - 32px));
  margin: 46px auto;
}
.front-page-content { width: 100%; overflow: hidden; }
.front-page-content .cover-section {
  min-height: clamp(460px, 65vh, 680px) !important;
  color: #fff;
  background-color: var(--neam-green-dark) !important;
  background-image:
    radial-gradient(circle at 18% 22%, rgba(214,169,74,.34), transparent 30%),
    linear-gradient(135deg, rgba(23,107,77,.96), rgba(8,55,39,.98)) !important;
}
.front-page-content .cover-section :is(h1,h2,h3,h4,p,a) { color: #fff; }
.neam-image-missing { display: none !important; }
.entry-title { color: var(--neam-green-dark); line-height: 1.35; }
.entry-content { overflow-wrap: anywhere; }
.entry-content::after { content: ""; display: block; clear: both; }
.post-card {
  padding: 24px;
  margin-bottom: 20px;
  border: 1px solid #e2ebe6;
  border-radius: 18px;
  background: var(--neam-surface);
}
.post-card h2 { margin-top: 0; }

.site-footer {
  margin-top: 60px;
  padding: 36px 0;
  color: #edf8f3;
  background: linear-gradient(145deg, var(--neam-green-dark), #0a3829);
}
.footer-inner {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}
.site-footer a { color: #fff; }
.footer-note { color: #bfd8cc; font-size: 13px; }

@media (max-width: 900px) {
  .header-inner { padding: 15px 0; align-items: flex-start; flex-direction: column; }
  .primary-nav { width: 100%; overflow-x: auto; padding-bottom: 4px; }
  .primary-nav ul { flex-wrap: nowrap; width: max-content; }
  .primary-nav a { background: #f1f7f4; }
  .brand-text { font-size: 15px; }
}

@media (max-width: 560px) {
  .header-inner, .content-shell, .footer-inner { width: min(100% - 22px, 1180px); }
  .brand-mark { width: 42px; height: 42px; border-radius: 12px; }
  .site-footer { margin-top: 36px; }
}
