/*
Theme Name: الدكة الرقمية – Aldakkah Light
Theme URI: https://aldakkah.sa
Author: Madani Halwani
Description: ثيم الدكة الرقمية — نسخة فاتحة احترافية مع لوحة تحكم كاملة
Version: 2.0
Text Domain: aldakkah
Tags: rtl-language, arabic, business, light, full-controls
*/

/* ========================================
   TOKENS
   ======================================== */
:root {
  /* Brand */
  --gold:         #B8922A;
  --gold-hover:   #9A7820;
  --gold-light:   #D4AA4A;
  --gold-pale:    #F5EDD6;
  --gold-subtle:  #FBF7EE;

  /* Backgrounds */
  --bg-page:      #FAFAF7;
  --bg-section:   #F4F0E6;
  --bg-card:      #FFFFFF;
  --bg-dark:      #1A160C;
  --bg-dark2:     #231F13;

  /* Text */
  --text-primary: #1A1806;
  --text-body:    #3D3822;
  --text-muted:   #7A7055;
  --text-light:   #A89F88;
  --text-on-dark: #F5EDD6;

  /* Borders */
  --border:       #E2D9C4;
  --border-dark:  #C8BB9E;

  /* Semantic */
  --success:      #2D7A4F;
  --danger:       #B33A3A;
  --info:         #2A5F8E;

  /* Fonts */
  --font-ar:      'Tajawal', 'Cairo', 'Segoe UI', Arial, sans-serif;
  --font-display: 'Playfair Display', 'Georgia', serif;

  /* Radius */
  --r-sm:  6px;
  --r-md:  14px;
  --r-lg:  24px;
  --r-xl:  40px;

  /* Shadow */
  --shadow-sm:  0 2px 8px rgba(100,80,20,0.07);
  --shadow-md:  0 6px 24px rgba(100,80,20,0.10);
  --shadow-lg:  0 16px 56px rgba(100,80,20,0.14);
  --shadow-gold:0 8px 40px rgba(184,146,42,0.20);

  /* Transition */
  --t:     all 0.32s cubic-bezier(.4,0,.2,1);
  --t-fast:all 0.16s ease;
}

/* ========================================
   RESET
   ======================================== */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; font-size: 16px; }
body {
  font-family: var(--font-ar);
  background: var(--bg-page);
  color: var(--text-body);
  direction: rtl;
  text-align: right;
  line-height: 1.85;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
::selection { background: var(--gold); color: #fff; }
img, video { max-width: 100%; height: auto; display: block; }
ul, ol { list-style: none; }
a { color: var(--gold); text-decoration: none; transition: var(--t-fast); }
a:hover { color: var(--gold-hover); }

/* ========================================
   TYPOGRAPHY
   ======================================== */
h1,h2,h3,h4,h5,h6 { color: var(--text-primary); font-weight: 700; line-height: 1.3; }

.label-tag {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: .72rem; font-weight: 700; letter-spacing: .22em; text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 1rem;
}
.label-tag::before {
  content: ''; width: 28px; height: 2px;
  background: var(--gold); display: block;
}

.sec-title {
  font-size: clamp(1.9rem, 3.5vw, 3rem);
  font-weight: 800; color: var(--text-primary);
  margin-bottom: 1rem;
}
.sec-title span { color: var(--gold); }

.sec-sub {
  font-size: 1.05rem; color: var(--text-muted);
  max-width: 620px; line-height: 2;
  margin-bottom: 2.5rem;
}

/* ========================================
   LAYOUT
   ======================================== */
.container {
  width: 100%; max-width: 1260px;
  margin: 0 auto; padding: 0 2rem;
}
.section { padding: 6rem 0; position: relative; }
.section-white { background: var(--bg-card); }
.section-cream { background: var(--bg-section); }
.section-dark  {
  background: var(--bg-dark);
  color: var(--text-on-dark);
}
.section-dark .sec-title { color: var(--text-on-dark); }
.section-dark .sec-sub   { color: rgba(245,237,214,.65); }

.grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:3.5rem; align-items:center; }
.grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; }
.grid-4 { display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem; }

.center { text-align: center; }
.center .sec-sub { margin-left: auto; margin-right: auto; }

/* ========================================
   DIVIDER
   ======================================== */
.gold-rule { width: 56px; height: 3px; background: var(--gold); margin-bottom: 1.5rem; }
.gold-rule.center { margin-left:auto; margin-right:auto; }

/* ========================================
   BUTTONS
   ======================================== */
.btn {
  display: inline-flex; align-items: center; gap: 8px;
  padding: .85rem 2rem; border-radius: var(--r-sm);
  font-family: var(--font-ar); font-size: .93rem; font-weight: 700;
  cursor: pointer; border: 2px solid transparent; transition: var(--t);
  text-decoration: none;
}
.btn-gold {
  background: var(--gold); color: #fff; border-color: var(--gold);
}
.btn-gold:hover {
  background: var(--gold-hover); border-color: var(--gold-hover);
  color: #fff; transform: translateY(-2px); box-shadow: var(--shadow-gold);
}
.btn-outline {
  background: transparent; color: var(--gold); border-color: var(--gold);
}
.btn-outline:hover {
  background: var(--gold-pale); color: var(--gold-hover); transform: translateY(-2px);
}
.btn-dark {
  background: var(--bg-dark); color: var(--text-on-dark); border-color: var(--bg-dark);
}
.btn-dark:hover { background: var(--bg-dark2); color: var(--gold); transform: translateY(-2px); }

/* ========================================
   HEADER / NAV
   ======================================== */
#site-header {
  position: fixed; top: 0; right: 0; left: 0; z-index: 900;
  background: rgba(250,250,247,.95);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border-bottom: 1px solid transparent;
  padding: 1rem 0;
  transition: var(--t);
}
#site-header.scrolled {
  border-bottom-color: var(--border);
  box-shadow: var(--shadow-sm);
  padding: .7rem 0;
}
/* Dark mode header */
body.mode-dark #site-header {
  background: rgba(10,10,10,.96);
  border-bottom-color: #222;
}
body.mode-dark .nav-menu li a { color: rgba(245,237,214,.7); }
body.mode-dark .nav-menu li a:hover { color: var(--gold); background: rgba(184,146,42,.08); }
body.mode-dark .logo-text .ar { color: #F5EDD6; }

.nav-wrap {
  display: flex; align-items: center; justify-content: space-between; gap: 1.5rem;
}
.site-logo {
  display: flex; align-items: center; gap: 12px; text-decoration: none;
}
.logo-mark {
  width: 42px; height: 42px;
  background: var(--gold);
  border-radius: var(--r-sm);
  display: flex; align-items: center; justify-content: center;
  font-weight: 900; font-size: 1rem; color: #fff;
  letter-spacing: -1px; flex-shrink: 0;
}
.logo-text { line-height: 1.2; }
.logo-text .ar { font-size:1.05rem; font-weight:800; color:var(--text-primary); }
.logo-text .en { font-size:.65rem; font-weight:600; color:var(--gold); letter-spacing:.16em; text-transform:uppercase; }

.nav-menu { display:flex; align-items:center; gap:.2rem; }
.nav-menu li a {
  font-size:.87rem; font-weight:600; color:var(--text-body);
  padding:.45rem .95rem; border-radius:var(--r-sm);
  transition:var(--t-fast); text-decoration:none;
}
.nav-menu li a:hover, .nav-menu li a.current {
  color: var(--gold); background: var(--gold-subtle);
}
.nav-actions { display:flex; align-items:center; gap:.8rem; }

.menu-toggle {
  display:none; flex-direction:column; gap:5px;
  cursor:pointer; padding:8px; background:none; border:none;
}
.menu-toggle span { width:22px; height:2px; background:var(--text-primary); border-radius:2px; transition:var(--t); }

/* ========================================
   HERO
   ======================================== */
.hero {
  min-height: 100vh;
  display: flex; align-items: center;
  padding-top: 80px;
  position: relative; overflow: hidden;
}

/* Hero image bg */
.hero-img-bg {
  position: absolute; inset: 0; z-index: 0;
}
.hero-img-bg img {
  width: 100%; height: 100%; object-fit: cover;
}
.hero-img-bg::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(
    105deg,
    rgba(250,250,247,.97) 0%,
    rgba(250,250,247,.93) 38%,
    rgba(250,250,247,.60) 65%,
    rgba(250,250,247,.15) 100%
  );
}

.hero-content { position:relative; z-index:2; max-width:680px; }

.hero-badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--gold-pale); border: 1px solid var(--border-dark);
  color: var(--gold); padding: .45rem 1.1rem; border-radius: 100px;
  font-size: .78rem; font-weight: 700; letter-spacing: .06em;
  margin-bottom: 2rem;
}
.hero-badge .dot {
  width: 6px; height: 6px; background: var(--gold); border-radius: 50%;
  animation: pulse 2.2s infinite;
}
@keyframes pulse {
  0%,100% { opacity:1; transform:scale(1); }
  50%      { opacity:.4; transform:scale(.7); }
}

.hero-title {
  font-size: clamp(2.8rem, 6vw, 5.5rem);
  font-weight: 900; line-height: 1.08;
  color: var(--text-primary);
  margin-bottom: 1.2rem;
}
.hero-title .gold { color: var(--gold); }

.hero-tagline {
  font-size: 1.1rem; color: var(--text-muted);
  font-style: italic; margin-bottom: .8rem;
  border-right: 3px solid var(--gold); padding-right: 1rem;
}
.hero-desc {
  font-size: 1rem; color: var(--text-muted);
  margin-bottom: 2.5rem; line-height: 2; max-width: 540px;
}
.hero-btns { display:flex; gap:1rem; flex-wrap:wrap; }

.hero-stats {
  display: flex; gap: 2.5rem; flex-wrap: wrap;
  margin-top: 3.5rem; padding-top: 2.5rem;
  border-top: 1px solid var(--border);
}
.h-stat-val {
  font-size: 2rem; font-weight: 800; color: var(--gold); line-height:1; margin-bottom:.25rem;
}
.h-stat-lbl { font-size: .78rem; color: var(--text-light); }

/* ========================================
   STATS STRIP
   ======================================== */
.stats-strip {
  background: var(--bg-dark);
  padding: 3rem 0;
  color: var(--text-on-dark);
}
.stats-strip .wrap {
  display: flex; justify-content: space-around; flex-wrap: wrap; gap: 2rem;
}
.stat-item { text-align:center; }
.stat-num  { font-size: 2.4rem; font-weight:800; color:var(--gold); display:block; margin-bottom:.3rem; }
.stat-lbl  { font-size:.82rem; color:rgba(245,237,214,.6); }

/* ========================================
   IMAGE CARDS / LANDMARK
   ======================================== */
.img-card {
  border-radius: var(--r-lg); overflow:hidden;
  box-shadow: var(--shadow-md);
  position: relative;
}
.img-card img { width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
.img-card:hover img { transform: scale(1.03); }
.img-card-caption {
  position:absolute; bottom:0; right:0; left:0;
  background: linear-gradient(transparent, rgba(26,22,12,.8));
  padding: 1.5rem 1.5rem .8rem;
  color: var(--text-on-dark);
  font-size: .82rem; font-weight:600;
}

/* ========================================
   SECTION CARDS
   ======================================== */
.card {
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: var(--r-md);
  padding: 2rem;
  transition: var(--t);
}
.card:hover {
  border-color: var(--gold);
  box-shadow: var(--shadow-gold);
  transform: translateY(-4px);
}
.card-icon {
  width: 48px; height: 48px;
  background: var(--gold-subtle);
  border: 1px solid var(--border-dark);
  border-radius: var(--r-sm);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.3rem;
  margin-bottom: 1rem;
}
.card h4 { font-size:1rem; font-weight:700; color:var(--text-primary); margin-bottom:.5rem; }
.card p  { font-size:.88rem; color:var(--text-muted); line-height:1.8; }
.card .tag {
  display:inline-block; font-size:.72rem; font-weight:700;
  color:var(--gold); background:var(--gold-pale);
  padding:.2rem .75rem; border-radius:100px; margin-bottom:.8rem;
}

/* Feature card (wider) */
.feat-card {
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: var(--r-lg);
  padding: 2.5rem;
  transition: var(--t);
}
.feat-card:hover { box-shadow: var(--shadow-lg); transform:translateY(-4px); }

/* ========================================
   VALUE CARDS
   ======================================== */
.value-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; }
.value-card {
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: var(--r-md);
  padding: 1.5rem;
  transition: var(--t);
}
.value-card:hover { border-color:var(--gold); box-shadow:var(--shadow-gold); }
.value-card .icon { font-size:1.6rem; margin-bottom:.8rem; }
.value-card h5 { font-size:.95rem; color:var(--gold); font-weight:700; margin-bottom:.4rem; }
.value-card p  { font-size:.83rem; color:var(--text-muted); line-height:1.75; }

/* ========================================
   COMPARISON TABLE
   ======================================== */
.cmp-wrap { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; }
.cmp-card {
  border: 1px solid var(--border);
  border-radius: var(--r-lg); overflow:hidden;
  background: var(--bg-card);
}
.cmp-card.gold-border { border-color: var(--gold); box-shadow: var(--shadow-gold); }
.cmp-head {
  padding: 1.2rem 1.8rem;
  background: var(--bg-section);
  display:flex; align-items:center; gap:10px;
}
.cmp-card.gold-border .cmp-head {
  background: var(--gold-subtle);
  border-bottom: 2px solid var(--gold);
}
.cmp-head h3 { font-size:1rem; font-weight:700; color:var(--text-primary); }
.badge-featured {
  margin-right: auto;
  background: var(--gold); color:#fff;
  font-size:.7rem; font-weight:700; padding:.2rem .8rem;
  border-radius:100px;
}
.cmp-body { padding:1.5rem 1.8rem; }
.cmp-row {
  display:flex; justify-content:space-between;
  padding:.7rem 0; border-bottom:1px solid var(--border);
  font-size:.88rem;
}
.cmp-row:last-child { border-bottom:none; }
.cmp-row .lbl { color:var(--text-muted); }
.cmp-row .val { font-weight:700; color:var(--text-primary); }
.cmp-row .val.gold { color:var(--gold); }

/* ========================================
   EQUITY TABLE
   ======================================== */
.tbl-wrap { overflow-x:auto; }
table.ald-table {
  width:100%; border-collapse:collapse; font-size:.9rem;
}
.ald-table thead tr {
  background: var(--gold-subtle);
  border-bottom: 2px solid var(--gold);
}
.ald-table th {
  padding:1rem 1.3rem; text-align:right;
  font-size:.8rem; font-weight:700; color:var(--gold);
  text-transform:uppercase; letter-spacing:.08em;
}
.ald-table td {
  padding:.9rem 1.3rem; border-bottom:1px solid var(--border);
  color:var(--text-body); vertical-align:top; line-height:1.65;
}
.ald-table tbody tr:hover { background:var(--bg-section); }
.ald-table td:first-child { font-weight:700; color:var(--text-primary); }
.ald-table td.gold  { color:var(--gold); font-weight:700; }
.ald-table td.red   { color:var(--danger); font-weight:700; }
.ald-table td.green { color:var(--success); font-weight:700; }

/* ========================================
   LIFECYCLE STEPS
   ======================================== */
.lifecycle {
  display:grid; grid-template-columns:repeat(4,1fr);
  position:relative; gap:0; margin-top:3rem;
}
.lifecycle::before {
  content:''; position:absolute;
  top:36px; right:12.5%; left:12.5%;
  height:2px; background:linear-gradient(to left, var(--gold), var(--border));
  z-index:0;
}
.lc-step { position:relative; z-index:1; padding:0 1rem; text-align:center; }
.lc-num {
  width:44px; height:44px; border-radius:50%;
  background:var(--gold); color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-weight:800; font-size:1rem; margin:0 auto 1.5rem;
  box-shadow:0 0 0 5px var(--bg-page), 0 0 0 7px var(--border-dark);
}
.lc-title { font-size:.95rem; font-weight:700; color:var(--text-primary); margin-bottom:.35rem; }
.lc-dur   { font-size:.75rem; color:var(--gold); font-weight:600; margin-bottom:.7rem; }
.lc-desc  { font-size:.82rem; color:var(--text-muted); line-height:1.75; }

/* ========================================
   SWOT
   ======================================== */
.swot-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; }
.swot-card {
  background:var(--bg-card); border:1px solid var(--border);
  border-radius:var(--r-md); padding:1.8rem;
}
.swot-card.s { border-top:3px solid var(--success); }
.swot-card.w { border-top:3px solid var(--danger); }
.swot-card.o { border-top:3px solid var(--gold); }
.swot-card.t { border-top:3px solid #6B4FDB; }
.swot-card h5 { font-size:.8rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; margin-bottom:.8rem; }
.swot-card.s h5 { color:var(--success); }
.swot-card.w h5 { color:var(--danger); }
.swot-card.o h5 { color:var(--gold); }
.swot-card.t h5 { color:#6B4FDB; }
.swot-card p { font-size:.85rem; color:var(--text-muted); line-height:1.8; }

/* ========================================
   KPI CARDS
   ======================================== */
.kpi-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
.kpi-card {
  background:var(--bg-card); border:1px solid var(--border);
  border-radius:var(--r-md); padding:2rem 1.5rem; text-align:center;
  transition:var(--t);
}
.kpi-card:hover { border-color:var(--gold); box-shadow:var(--shadow-gold); transform:translateY(-4px); }
.kpi-cat  { font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.14em; color:var(--gold); margin-bottom:.8rem; }
.kpi-val  { font-size:2.2rem; font-weight:800; color:var(--text-primary); line-height:1; margin-bottom:.4rem; }
.kpi-lbl  { font-size:.8rem; color:var(--text-muted); }

/* ========================================
   REVENUE CARDS
   ======================================== */
.rev-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; }
.rev-card {
  background:var(--bg-card); border:1px solid var(--border);
  border-radius:var(--r-md); padding:2rem;
  display:flex; gap:1.2rem; align-items:flex-start;
  transition:var(--t);
}
.rev-card:hover { border-color:var(--gold); box-shadow:var(--shadow-gold); }
.rev-ico {
  width:46px; height:46px; background:var(--gold-subtle);
  border:1px solid var(--border-dark); border-radius:var(--r-sm);
  display:flex; align-items:center; justify-content:center;
  font-size:1.3rem; flex-shrink:0;
}
.rev-info h4 { font-size:.95rem; font-weight:700; color:var(--text-primary); margin-bottom:.3rem; }
.rev-rate    { font-size:.78rem; color:var(--gold); font-weight:700; margin-bottom:.4rem; }
.rev-desc    { font-size:.82rem; color:var(--text-muted); line-height:1.75; }

/* ========================================
   TEAM CARDS
   ======================================== */
.team-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
.team-card {
  background:var(--bg-card); border:1px solid var(--border);
  border-radius:var(--r-md); overflow:hidden;
  transition:var(--t);
}
.team-card:hover { box-shadow:var(--shadow-lg); transform:translateY(-5px); }
.team-photo {
  height: 200px; background:var(--bg-section);
  position:relative; overflow:hidden;
}
.team-photo img { width:100%; height:100%; object-fit:cover; }
.team-photo--logo {
  display:flex; align-items:center; justify-content:center;
  background:var(--bg-section);
}
.team-photo--logo img {
  width:auto; height:auto;
  max-width:72%; max-height:72%;
  object-fit:contain;
}
.team-photo .no-photo {
  width:100%; height:100%; display:flex; align-items:center; justify-content:center;
  background:var(--gold-subtle);
  border-bottom:3px solid var(--gold);
}
.team-photo .no-photo-ico { font-size:3rem; line-height:1; }
.team-info { padding:1.5rem; }
.team-role { font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.12em; color:var(--gold); margin-bottom:.4rem; }
.team-name { font-size:1rem; font-weight:700; color:var(--text-primary); margin-bottom:.6rem; }
.team-duties { font-size:.82rem; color:var(--text-muted); line-height:1.75; }

/* ========================================
   LANDMARKS GALLERY
   ======================================== */
.landmarks-grid {
  display:grid;
  grid-template-columns: 1.5fr 1fr;
  grid-template-rows: 280px 200px;
  gap:1.2rem;
}
.landmark-item {
  border-radius:var(--r-lg); overflow:hidden;
  position:relative; background:var(--bg-section);
}
.landmark-item.tall { grid-row: span 2; }
.landmark-item img { width:100%; height:100%; object-fit:cover; transition:.6s ease; }
.landmark-item:hover img { transform:scale(1.05); }
.landmark-cap {
  position:absolute; bottom:0; right:0; left:0;
  background:linear-gradient(transparent, rgba(26,22,12,.75));
  padding:1.5rem .9rem .6rem;
  color:#fff; font-size:.78rem; font-weight:600;
}

/* ========================================
   AUDIENCE TABS
   ======================================== */
.aud-tabs { display:flex; gap:.5rem; flex-wrap:wrap; margin-bottom:2rem; }
.aud-tab {
  padding:.55rem 1.4rem; border-radius:100px;
  font-size:.85rem; font-weight:700;
  cursor:pointer; transition:var(--t-fast);
  border:1.5px solid var(--border-dark);
  background:transparent; color:var(--text-muted);
  font-family:var(--font-ar);
}
.aud-tab.active,.aud-tab:hover {
  background:var(--gold); color:#fff; border-color:var(--gold);
}
.aud-content { display:none; }
.aud-content.active { display:block; animation:fadeUp .3s ease; }
@keyframes fadeUp { from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:none} }

/* ========================================
   QUOTE BLOCK
   ======================================== */
.quote-block {
  border-right: 4px solid var(--gold);
  padding: 1.2rem 1.5rem;
  background: var(--gold-subtle);
  border-radius: 0 var(--r-sm) var(--r-sm) 0;
  color: var(--text-body);
  font-size: .9rem; line-height: 1.9;
  margin: 1.5rem 0;
}

/* ========================================
   DARK SECTION CARDS
   ======================================== */
.dark-card {
  background: var(--bg-dark2); border:1px solid rgba(255,255,255,.08);
  border-radius:var(--r-md); padding:2rem;
}
.dark-card h4 { color:var(--gold); }
.dark-card p  { color:rgba(245,237,214,.7); }

/* ========================================
   CONTACT SECTION
   ======================================== */
.contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:start; }
.contact-info-list li {
  display:flex; align-items:flex-start; gap:1rem;
  padding:1rem 0; border-bottom:1px solid var(--border);
  font-size:.9rem; color:var(--text-body);
}
.contact-info-list li:last-child { border:none; }
.contact-ico {
  width:36px; height:36px; background:var(--gold-subtle);
  border:1px solid var(--border-dark);
  border-radius:var(--r-sm); display:flex;
  align-items:center; justify-content:center;
  flex-shrink:0;
}

/* ========================================
   FOOTER
   ======================================== */
#site-footer {
  background: var(--bg-dark);
  color: var(--text-on-dark);
  padding: 4rem 0 2rem;
}
.footer-grid {
  display: grid; grid-template-columns: 1.6fr 1fr 1fr;
  gap: 4rem;
  padding-bottom: 3rem;
  border-bottom: 1px solid rgba(255,255,255,.08);
  margin-bottom: 2rem;
}
.footer-brand .logo-text .ar { color:#fff; }
.footer-brand p { font-size:.87rem; color:rgba(245,237,214,.55); margin-top:1rem; line-height:1.85; max-width:280px; }
.footer-col h4 { font-size:.8rem; font-weight:700; text-transform:uppercase; letter-spacing:.14em; color:rgba(245,237,214,.5); margin-bottom:1.2rem; }
.footer-col ul li { margin-bottom:.55rem; }
.footer-col ul li a { font-size:.87rem; color:rgba(245,237,214,.65); transition:var(--t-fast); }
.footer-col ul li a:hover { color:var(--gold); }
.footer-bottom { display:flex; justify-content:space-between; align-items:center; font-size:.8rem; color:rgba(245,237,214,.35); }
.footer-bottom a { color:var(--gold); }
.social-links { display:flex; gap:.7rem; margin-top:1.2rem; }
.social-link {
  width:34px; height:34px; border-radius:var(--r-sm);
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  display:flex; align-items:center; justify-content:center;
  color:rgba(245,237,214,.6); font-size:.8rem; transition:var(--t-fast);
  text-decoration:none;
}
.social-link:hover { background:var(--gold); color:#fff; border-color:var(--gold); }

/* ========================================
   ANIMATIONS
   ======================================== */
.aos { opacity:0; transform:translateY(28px); transition:opacity .65s ease, transform .65s ease; }
.aos.in { opacity:1; transform:none; }
.aos-delay-1 { transition-delay:.1s; }
.aos-delay-2 { transition-delay:.2s; }
.aos-delay-3 { transition-delay:.3s; }

/* ========================================
   ADMIN BAR
   ======================================== */
.admin-bar #site-header { top: 32px; }

/* ========================================
   RESPONSIVE
   ======================================== */
@media (max-width:1024px){
  .grid-3 { grid-template-columns:1fr 1fr; }
  .grid-4 { grid-template-columns:1fr 1fr; }
  .lifecycle { grid-template-columns:1fr 1fr; }
  .lifecycle::before { display:none; }
  .kpi-grid { grid-template-columns:1fr 1fr; }
  .team-grid { grid-template-columns:1fr 1fr; }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .landmarks-grid { grid-template-columns:1fr; grid-template-rows:auto; }
  .landmark-item.tall { grid-row:auto; }
}

@media(max-width:768px){
  .nav-menu,.nav-actions .btn-gold { display:none; }
  .menu-toggle { display:flex; }
  .mobile-open .nav-menu {
    display:flex; flex-direction:column; gap:1rem;
    position:fixed; inset:0; background:var(--bg-page); z-index:1000;
    align-items:center; justify-content:center; font-size:1.2rem;
  }
  .grid-2 { grid-template-columns:1fr; gap:2rem; }
  .cmp-wrap { grid-template-columns:1fr; }
  .swot-grid { grid-template-columns:1fr; }
  .value-grid { grid-template-columns:1fr; }
  .rev-grid { grid-template-columns:1fr; }
  .kpi-grid { grid-template-columns:1fr; }
  .team-grid { grid-template-columns:1fr; }
  .contact-grid { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr; gap:2rem; }
  .footer-bottom { flex-direction:column; gap:1rem; text-align:center; }
  .section { padding:4rem 0; }
  .container { padding:0 1.2rem; }
  .hero-stats { flex-wrap:wrap; gap:1.5rem; }
  .lifecycle { grid-template-columns:1fr; }
}

/* ========================================
   HERO — ALWAYS DARK (both modes)
   ======================================== */
.hero {
  background: #0A0A0A !important;
  color: #F5EDD6;
}
.hero .hero-title { color: #F5EDD6; }
.hero .hero-tagline { color: rgba(245,237,214,.7); border-color: var(--gold); }
.hero .hero-desc { color: rgba(245,237,214,.6); }
.hero .h-stat-val { color: var(--gold); }
.hero .h-stat-lbl { color: rgba(245,237,214,.5); }
.hero .hero-stats { border-top-color: rgba(255,255,255,.1); }
.hero .btn-outline { color: var(--gold); border-color: var(--gold); }
.hero .btn-outline:hover { background: rgba(184,146,42,.15); }

/* ========================================
   HERO IMAGE BG
   ======================================== */
.hero-img-bg {
  position: absolute; inset: 0; z-index: 0;
}
.hero-img-bg img { width:100%; height:100%; object-fit:cover; }
.hero-img-bg::after {
  content:''; position:absolute; inset:0;
  background: linear-gradient(105deg,
    rgba(10,10,10,.97) 0%,
    rgba(10,10,10,.9) 38%,
    rgba(10,10,10,.6) 68%,
    rgba(10,10,10,.18) 100%);
}
.hero-content { position:relative; z-index:2; max-width:680px; }
.hero-badge {
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(184,146,42,.15); border:1px solid rgba(184,146,42,.35);
  color:var(--gold); padding:.45rem 1.1rem; border-radius:100px;
  font-size:.78rem; font-weight:700; letter-spacing:.06em; margin-bottom:2rem;
}
.hero-badge .dot { width:6px; height:6px; background:var(--gold); border-radius:50%; animation:pulse 2.2s infinite; }
@keyframes pulse {0%,100%{opacity:1;transform:scale(1);}50%{opacity:.4;transform:scale(.7);}}

.hero-title { font-size:clamp(2.8rem,6vw,5.5rem); font-weight:900; line-height:1.08; margin-bottom:1.2rem; }
.hero-title .gold { color:var(--gold); }
.hero-tagline { font-size:1.1rem; font-style:italic; margin-bottom:.8rem; border-right:3px solid var(--gold); padding-right:1rem; }
.hero-desc { font-size:1rem; margin-bottom:2.5rem; line-height:2; max-width:540px; }
.hero-btns { display:flex; gap:1rem; flex-wrap:wrap; }
.hero-stats { display:flex; gap:2.5rem; flex-wrap:wrap; margin-top:3.5rem; padding-top:2.5rem; }
.h-stat-val { font-size:2rem; font-weight:800; line-height:1; margin-bottom:.25rem; }
.h-stat-lbl { font-size:.78rem; }

/* ========================================
   DARK MODE — body.mode-dark
   ======================================== */
body.mode-dark { background:#0A0A0A; }
/* (overrides injected via PHP dynamic_css in wp_head) */

/* Logo */
.site-logo img { display:block; }

/* ========================================
   FIELD IMAGES SECTION
   ======================================== */
.fields-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; margin-top:2.5rem; }
.field-card {
  border-radius:var(--r-lg); overflow:hidden;
  box-shadow:var(--shadow-md); position:relative;
}
.field-card img { width:100%; height:220px; object-fit:cover; transition:.6s; }
.field-card:hover img { transform:scale(1.05); }
.field-cap {
  position:absolute; bottom:0; right:0; left:0;
  background:linear-gradient(transparent,rgba(10,10,10,.85));
  padding:1.5rem 1rem .7rem; color:#fff;
  font-size:.9rem; font-weight:700;
}

/* ================================================
   ORIGINAL HERO — Dark v1 Style (Restored)
   ================================================ */
.hero-orig {
  min-height: 100vh;
  display: flex; align-items: center;
  padding-top: 80px;
  background: #0A0A0A;
  position: relative; overflow: hidden;
  color: #fff;
}

.hero-orig-bg {
  position: absolute; inset: 0; z-index: 0; pointer-events: none;
}

.hero-orig-gradient {
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 20% 50%, rgba(201,168,76,.08) 0%, transparent 60%),
    radial-gradient(ellipse 60% 80% at 80% 20%, rgba(201,168,76,.05) 0%, transparent 50%),
    linear-gradient(180deg, #0A0A0A 0%, #0D0D0D 100%);
}

.hero-orig-dots {
  position: absolute; inset: 0;
  background-image: radial-gradient(circle, rgba(201,168,76,.06) 1px, transparent 1px);
  background-size: 40px 40px;
}

/* Rotating geometric — positioned right side */
.hero-orig-geo {
  position: absolute;
  left: -2%;
  top: 50%; transform: translateY(-50%);
  width: 48%;
  display: flex; align-items: center; justify-content: center;
  opacity: .1;
}
.hero-geo-svg {
  width: 540px; height: 540px;
  animation: geo-spin 70s linear infinite;
}
@keyframes geo-spin { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }

/* Content */
.hero-orig-content {
  position: relative; z-index: 2;
  max-width: 800px;
}

.hero-orig-title {
  font-size: clamp(3rem, 7vw, 6.2rem);
  font-weight: 900; line-height: 1.08;
  color: #fff; margin-bottom: 1.2rem;
}
.hero-orig-title .gold-word {
  background: linear-gradient(135deg, #C9A84C, #E8C97A);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.hero-orig-tagline {
  font-size: 1.2rem; color: rgba(245,237,214,.7);
  font-style: italic; margin-bottom: .8rem;
}

.hero-orig-desc {
  font-size: 1.05rem; color: rgba(245,237,214,.55);
  max-width: 580px; margin-bottom: 2.8rem; line-height: 2;
}

.hero-orig-btns { display: flex; gap: 1rem; flex-wrap: wrap; }

.btn-orig-primary {
  display: inline-flex; align-items: center; gap: 8px;
  background: #C9A84C; color: #0A0A0A;
  padding: .9rem 2.2rem; border-radius: 4px;
  font-weight: 700; font-size: .95rem;
  border: 2px solid #C9A84C; transition: all .3s;
  text-decoration: none; font-family: var(--font-ar);
}
.btn-orig-primary:hover {
  background: #E8C97A; border-color: #E8C97A; color: #0A0A0A;
  transform: translateY(-2px);
  box-shadow: 0 12px 40px rgba(201,168,76,.35);
}

.btn-orig-outline {
  display: inline-flex; align-items: center; gap: 8px;
  background: transparent; color: #C9A84C;
  padding: .9rem 2.2rem; border-radius: 4px;
  font-weight: 700; font-size: .95rem;
  border: 2px solid #C9A84C; transition: all .3s;
  text-decoration: none; font-family: var(--font-ar);
}
.btn-orig-outline:hover {
  background: rgba(201,168,76,.1); color: #E8C97A;
  transform: translateY(-2px);
}

.hero-orig-stats {
  display: flex; gap: 3rem; flex-wrap: wrap;
  margin-top: 4rem; padding-top: 3rem;
  border-top: 1px solid rgba(255,255,255,.08);
}
.ho-val {
  font-size: 2.2rem; font-weight: 800;
  color: #C9A84C; line-height: 1; margin-bottom: .3rem;
}
.ho-lbl { font-size: .78rem; color: rgba(245,237,214,.45); }

/* Responsive */
@media(max-width:768px){
  .hero-orig-geo { display: none; }
  .hero-orig-stats { flex-wrap: wrap; gap: 1.5rem; }
  .hero-orig-title { font-size: clamp(2.6rem,8vw,3.5rem); }
}
