/* ═══════════════════════════════════════════
   UDRUS ACADEMY — main.css
   ═══════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=DM+Sans:wght@300;400;500;600&family=Noto+Naskh+Arabic:wght@400;500;600&display=swap');

/* ── VARIABLES ── */
:root {
  --emerald:      #0d4a3a;
  --emerald-mid:  #166348;
  --emerald-light:#1e7d5a;
  --emerald-glow: #22c98a;
  --gold:         #c9a84c;
  --gold-light:   #e8c96e;
  --gold-pale:    #f5e6b8;
  --cream:        #faf8f3;
  --cream-dark:   #f0ece0;
  --dark:         #0a1a15;
  --text:         #1c2e27;
  --text-muted:   #5a7066;
  --shadow-card:  0 4px 32px rgba(13,74,58,0.08);
  --shadow-soft:  0 8px 40px rgba(13,74,58,0.10);

  /* dark mode overrides applied via [data-theme="dark"] */
  --bg:           var(--cream);
  --bg-alt:       #fff;
  --bg-dark-sec:  var(--cream-dark);
  --surface:      #fff;
  --border:       rgba(13,74,58,0.07);
}

[data-theme="dark"] {
  --bg:           #0b1e18;
  --bg-alt:       #0f2820;
  --bg-dark-sec:  #091710;
  --surface:      #122a22;
  --cream:        #0b1e18;
  --cream-dark:   #091710;
  --text:         #e8f0ec;
  --text-muted:   #7aab96;
  --border:       rgba(201,168,76,0.12);
  --shadow-card:  0 4px 32px rgba(0,0,0,0.3);
}

/* ── RESET & BASE ── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; font-size: 16px; }

body {
  background: var(--bg);
  color: var(--text);
  font-family: 'DM Sans', sans-serif;
  overflow-x: hidden;
  line-height: 1.7;
  transition: background 0.4s, color 0.4s;
  cursor: none; /* custom cursor active */
}

/* ── SCROLLBAR ── */
::-webkit-scrollbar { width: 5px; }
::-webkit-scrollbar-track { background: var(--bg); }
::-webkit-scrollbar-thumb { background: var(--emerald-light); border-radius: 3px; }

/* ══════════════════════════════
   CUSTOM CURSOR
══════════════════════════════ */
#cursor-outer {
  position: fixed; z-index: 99999; pointer-events: none;
  width: 36px; height: 36px;
  border: 1.5px solid rgba(201,168,76,0.5);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  transition: width 0.3s, height 0.3s, border-color 0.3s, background 0.3s, opacity 0.3s;
  mix-blend-mode: normal;
  top: 0; left: 0;
  will-change: transform;
}
#cursor-dot {
  position: fixed; z-index: 99999; pointer-events: none;
  width: 6px; height: 6px;
  background: var(--gold);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  top: 0; left: 0;
  transition: width 0.2s, height 0.2s, opacity 0.2s;
  will-change: transform;
  box-shadow: 0 0 8px rgba(201,168,76,0.7);
}
#cursor-trail {
  position: fixed; z-index: 99998; pointer-events: none;
  top: 0; left: 0;
  width: 12px; height: 12px;
  border-radius: 50%;
  background: rgba(201,168,76,0.25);
  transform: translate(-50%,-50%);
  will-change: transform;
  transition: opacity 0.3s;
}
body:has(a:hover) #cursor-outer,
body:has(button:hover) #cursor-outer {
  width: 52px; height: 52px;
  border-color: var(--gold);
  background: rgba(201,168,76,0.07);
}

/* ══════════════════════════════
   SPLASH SCREEN
══════════════════════════════ */
body.splash-active { overflow: hidden; }

#splash {
  position: fixed; inset: 0; z-index: 9999;
  background: var(--dark);
  display: flex; align-items: center; justify-content: center;
  flex-direction: column;
  overflow: hidden;
}
#splash::before {
  content: '';
  position: absolute; inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke='rgba(201,168,76,0.06)' stroke-width='0.8'%3E%3Cpolygon points='60,5 95,30 95,90 60,115 25,90 25,30'/%3E%3Cpolygon points='60,20 82,35 82,85 60,100 38,85 38,35'/%3E%3Ccircle cx='60' cy='60' r='15'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 120px 120px;
  pointer-events: none;
}
#splash::after {
  content: '';
  position: absolute; top:50%; left:50%;
  transform: translate(-50%,-50%);
  width:600px; height:600px;
  background: radial-gradient(ellipse, rgba(13,74,58,0.35) 0%, transparent 70%);
  pointer-events: none;
  animation: splashGlow 3s ease-in-out infinite;
}
@keyframes splashGlow {
  0%,100%{ transform:translate(-50%,-50%) scale(1); }
  50%    { transform:translate(-50%,-50%) scale(1.15); }
}
.splash-content { position:relative; z-index:2; display:flex; flex-direction:column; align-items:center; }
.splash-ring {
  width:130px; height:130px; border-radius:50%;
  border:1px solid rgba(201,168,76,0.25);
  display:flex; align-items:center; justify-content:center;
  position:relative; margin-bottom:44px;
  opacity:0; animation: splashRingIn 1s 0.2s cubic-bezier(.2,.8,.3,1) forwards;
}
.splash-ring::before { content:''; position:absolute; inset:8px; border-radius:50%; border:1px solid rgba(201,168,76,0.15); }
.splash-ring::after  { content:''; position:absolute; inset:-16px; border-radius:50%; border:1px solid rgba(201,168,76,0.08); animation:splashRingRotate 12s linear infinite; }
@keyframes splashRingRotate { to{ transform:rotate(360deg); } }
@keyframes splashRingIn { from{opacity:0;transform:scale(0.6)} to{opacity:1;transform:scale(1)} }
.splash-moon { font-size:2.6rem; filter:drop-shadow(0 0 18px rgba(201,168,76,0.5)); animation:splashMoonPulse 3s ease-in-out infinite; }
@keyframes splashMoonPulse { 0%,100%{filter:drop-shadow(0 0 18px rgba(201,168,76,0.4))} 50%{filter:drop-shadow(0 0 32px rgba(201,168,76,0.8))} }
.splash-bismillah {
  font-family:'Noto Naskh Arabic',serif;
  font-size:clamp(1.8rem,5vw,2.8rem); font-weight:500;
  color:var(--gold-light); letter-spacing:0.06em; text-align:center;
  opacity:0; animation:splashTextIn 1.2s 0.7s cubic-bezier(.2,.8,.3,1) forwards;
  text-shadow:0 0 40px rgba(201,168,76,0.3); margin-bottom:6px;
}
.splash-transliteration {
  font-family:'Cormorant Garamond',serif; font-size:0.95rem; font-weight:300; font-style:italic;
  color:rgba(255,255,255,0.3); letter-spacing:0.18em; text-align:center;
  opacity:0; animation:splashTextIn 1s 1.1s cubic-bezier(.2,.8,.3,1) forwards; margin-bottom:52px;
}
.splash-divider {
  width:0; height:1px; margin-bottom:44px;
  background:linear-gradient(90deg,transparent,rgba(201,168,76,0.5),transparent);
  animation:splashLineExpand 0.9s 1.4s cubic-bezier(.2,.8,.3,1) forwards;
}
@keyframes splashLineExpand { to{width:200px} }
.splash-name {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.8rem,8vw,5rem); font-weight:500;
  color:#fff; letter-spacing:0.1em; text-align:center;
  opacity:0; transform:translateY(16px);
  animation:splashTextIn 1.1s 1.6s cubic-bezier(.2,.8,.3,1) forwards;
  line-height:1; margin-bottom:10px;
}
.splash-name span { background:linear-gradient(135deg,var(--gold),var(--gold-light)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.splash-tagline {
  font-size:0.78rem; font-weight:400; letter-spacing:0.22em; text-transform:uppercase;
  color:rgba(255,255,255,0.28); text-align:center;
  opacity:0; animation:splashTextIn 1s 2s cubic-bezier(.2,.8,.3,1) forwards;
}
@keyframes splashTextIn { from{opacity:0;transform:translateY(14px)} to{opacity:1;transform:translateY(0)} }
.splash-progress-wrap { position:absolute; bottom:48px; left:50%; transform:translateX(-50%); width:180px; z-index:2; }
.splash-progress-track { width:100%; height:1px; background:rgba(255,255,255,0.08); border-radius:2px; overflow:hidden; }
.splash-progress-bar { height:100%; width:0; background:linear-gradient(90deg,var(--emerald-glow),var(--gold)); border-radius:2px; animation:splashProgress 2.8s 0.8s cubic-bezier(.4,0,.2,1) forwards; }
@keyframes splashProgress { to{width:100%} }
.curtain { position:fixed; left:0; right:0; z-index:9998; pointer-events:none; transition:transform 1.1s cubic-bezier(.76,0,.24,1); }
.curtain-top { top:0; height:50vh; background:var(--dark); transform:translateY(0); }
.curtain-bottom { bottom:0; height:50vh; background:var(--dark); transform:translateY(0); }
.curtain-top.open    { transform:translateY(-100%); }
.curtain-bottom.open { transform:translateY(100%); }
.curtain-line {
  position:fixed; left:0; right:0; z-index:9999; top:50%; transform:translateY(-50%);
  height:1px; background:linear-gradient(90deg,transparent 0%,var(--gold) 30%,var(--gold-light) 50%,var(--gold) 70%,transparent 100%);
  opacity:0; pointer-events:none; transition:opacity 0.3s; box-shadow:0 0 12px rgba(201,168,76,0.6);
}

/* ══════════════════════════════
   NAV — BOTTOM BAR
══════════════════════════════ */
nav {
  position:fixed; top:0; left:0; right:0; z-index:100;
  padding:0 5%;
  display:flex; align-items:center; justify-content:space-between;
  height:76px;
  background:rgba(250,248,243,0.85);
  backdrop-filter:blur(24px) saturate(1.4);
  border-top:1px solid rgba(201,168,76,0.15);
  transition:background 0.4s, box-shadow 0.4s;
  box-shadow:0 4px 32px rgba(0,0,0,0.06);
}
[data-theme="dark"] nav { background:rgba(8,18,14,0.95); border-bottom-color:rgba(201,168,76,0.12); box-shadow:0 4px 32px rgba(0,0,0,0.18); }
nav.scrolled { background:rgba(250,248,243,0.97); box-shadow:0 6px 40px rgba(0,0,0,0.12); }
[data-theme="dark"] nav.scrolled { background:rgba(8,18,14,0.98); box-shadow:0 6px 40px rgba(0,0,0,0.25); }

.nav-left, .nav-center, .nav-right { display:flex; align-items:center; }
.nav-left { gap:32px; }
.nav-right { gap:16px; }

.nav-logo {
  font-family:'Cormorant Garamond',serif;
  font-size:1.4rem; font-weight:600; color:var(--emerald);
  letter-spacing:0.02em; display:flex; align-items:center; gap:10px; text-decoration:none;
}
[data-theme="dark"] .nav-logo { color:var(--gold-light); }
.logo-gem {
  width:32px; height:32px;
  background:linear-gradient(135deg,var(--emerald-mid),var(--emerald-glow));
  border-radius:8px; display:flex; align-items:center; justify-content:center;
  font-size:0.9rem; color:#fff; box-shadow:0 4px 14px rgba(13,74,58,0.3);
}
.nav-links { display:flex; align-items:center; gap:28px; list-style:none; margin:0; padding:0; }
.nav-links li { margin:0; }
.nav-links a {
  text-decoration:none; color:rgba(40,40,40,0.6);
  font-size:0.84rem; font-weight:500; letter-spacing:0.03em;
  transition:color 0.25s, transform 0.25s; position:relative;
}
.nav-links a::after { content:''; position:absolute; top:-8px; left:50%; right:50%; height:2px; background:var(--gold); transition:left 0.3s ease, right 0.3s ease; border-radius:2px; }
.nav-links a:hover { color:#000; transform:translateY(-1px); }
[data-theme="dark"] .nav-links a { color:rgba(255,255,255,0.55); }
[data-theme="dark"] .nav-links a:hover { color:var(--gold-light); }
.nav-links a:hover::after { left:0; right:0; }
.nav-cta {
  background:linear-gradient(135deg,var(--emerald),var(--emerald-mid));
  color:#fff !important; padding:10px 24px; border-radius:50px;
  font-weight:600 !important; font-size:0.82rem !important;
  box-shadow:0 4px 16px rgba(13,74,58,0.25);
  transition:transform 0.2s, box-shadow 0.2s !important;
}
.nav-cta::after { display:none !important; }
.nav-cta:hover { transform:translateY(-2px) !important; box-shadow:0 6px 22px rgba(13,74,58,0.35) !important; color:#fff !important; }

/* controls */
.nav-controls { display:flex; align-items:center; gap:8px; }

.lang-toggle {
  width:32px; height:32px; border-radius:50%;
  background:rgba(0,0,0,0.06); border:1px solid rgba(0,0,0,0.04);
  display:flex; align-items:center; justify-content:center;
  cursor:pointer; font-size:0.7rem; font-weight:600; color:rgba(0,0,0,0.6);
  transition:all 0.2s; user-select:none;
}
.lang-toggle:hover { background:rgba(0,0,0,0.09); }
[data-theme="dark"] .lang-toggle { background:rgba(255,255,255,0.1); border-color:rgba(255,255,255,0.05); color:rgba(255,255,255,0.7); }

.theme-switch {
  width:48px; height:26px; border-radius:13px;
  background:rgba(0,0,0,0.08); border:1px solid rgba(0,0,0,0.05);
  cursor:pointer; position:relative; transition:background 0.3s;
  flex-shrink:0; display:flex; align-items:center; padding:0 3px;
}
[data-theme="dark"] .theme-switch { background:rgba(255,255,255,0.12); border-color:rgba(255,255,255,0.08); }
.theme-switch-knob {
  width:20px; height:20px; border-radius:50%;
  background:#fff; box-shadow:0 1px 4px rgba(0,0,0,0.15);
  display:flex; align-items:center; justify-content:center;
  transition:transform 0.3s ease; transform:translateX(0);
}
[data-theme="dark"] .theme-switch-knob { transform:translateX(20px); background:#2a2a2a; }
.theme-icon { font-size:0.7rem; line-height:1; }

.nav-hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; }
.nav-hamburger span { width:24px; height:2px; background:rgba(255,255,255,0.8); border-radius:2px; transition:all 0.3s; }
.mobile-menu {
  display:none; flex-direction:column;
  position:fixed; top:76px; left:0; right:0; z-index:99;
  background:rgba(250,248,243,0.98); backdrop-filter:blur(24px);
  border-bottom:1px solid rgba(0,0,0,0.05); padding:12px 0; box-shadow:0 12px 32px rgba(0,0,0,0.1);
}
[data-theme="dark"] .mobile-menu { background:rgba(10,26,21,0.98); border-bottom-color:rgba(255,255,255,0.05); }
.mobile-menu.open { display:flex; }
.mobile-menu a { padding:14px 5%; font-size:0.95rem; color:rgba(40,40,40,0.8); text-decoration:none; font-weight:500; border-bottom:1px solid rgba(0,0,0,0.05); }
[data-theme="dark"] .mobile-menu a { color:rgba(255,255,255,0.7); border-bottom-color:rgba(255,255,255,0.05); }
.mobile-menu a:hover { color:var(--emerald); background:rgba(0,0,0,0.02); }
[data-theme="dark"] .mobile-menu a:hover { color:#fff; background:rgba(255,255,255,0.04); }

/* ══════════════════════════════
   PAGE TRANSITION OVERLAY
══════════════════════════════ */
.page-transition-overlay {
  position:fixed; inset:0; z-index:9999;
  pointer-events:none;
  display:flex;
}
.page-transition-overlay .pt-slice {
  flex:1;
  background:var(--emerald);
  transform:scaleY(0);
  transform-origin:bottom;
}
[data-theme="dark"] .page-transition-overlay .pt-slice { background:#0a1a15; }
.page-transition-overlay.animate-out .pt-slice {
  animation:ptSliceIn 0.55s cubic-bezier(.77,0,.18,1) forwards;
}
.page-transition-overlay.animate-in .pt-slice {
  transform:scaleY(1);
  transform-origin:top;
  animation:ptSliceOut 0.5s 0.1s cubic-bezier(.77,0,.18,1) forwards;
}
@keyframes ptSliceIn {
  0%   { transform:scaleY(0); }
  100% { transform:scaleY(1); }
}
@keyframes ptSliceOut {
  0%   { transform:scaleY(1); }
  100% { transform:scaleY(0); }
}
.page-transition-overlay .pt-slice:nth-child(1) { animation-delay:0ms; }
.page-transition-overlay .pt-slice:nth-child(2) { animation-delay:40ms; }
.page-transition-overlay .pt-slice:nth-child(3) { animation-delay:80ms; }
.page-transition-overlay .pt-slice:nth-child(4) { animation-delay:120ms; }
.page-transition-overlay .pt-slice:nth-child(5) { animation-delay:160ms; }
.page-transition-overlay .pt-slice:nth-child(6) { animation-delay:200ms; }
.page-transition-overlay.animate-in .pt-slice:nth-child(1) { animation-delay:100ms; }
.page-transition-overlay.animate-in .pt-slice:nth-child(2) { animation-delay:140ms; }
.page-transition-overlay.animate-in .pt-slice:nth-child(3) { animation-delay:180ms; }
.page-transition-overlay.animate-in .pt-slice:nth-child(4) { animation-delay:220ms; }
.page-transition-overlay.animate-in .pt-slice:nth-child(5) { animation-delay:260ms; }
.page-transition-overlay.animate-in .pt-slice:nth-child(6) { animation-delay:300ms; }

/* loader dot centered on transition */
.page-transition-overlay .pt-loader {
  position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  z-index:2; display:flex; gap:6px;
  opacity:0; transition:opacity 0.3s;
}
.page-transition-overlay.animate-out .pt-loader { opacity:1; transition-delay:0.35s; }
.pt-loader-dot {
  width:8px; height:8px; border-radius:50%;
  background:var(--gold);
  animation:ptDotBounce 1.2s ease-in-out infinite;
}
.pt-loader-dot:nth-child(2) { animation-delay:0.15s; }
.pt-loader-dot:nth-child(3) { animation-delay:0.3s; }
@keyframes ptDotBounce {
  0%,80%,100% { transform:scale(0.6); opacity:0.4; }
  40%         { transform:scale(1); opacity:1; }
}

/* ══════════════════════════════
   FLOATING GEOMETRY
══════════════════════════════ */
.float-geo {
  position:absolute; pointer-events:none; z-index:0;
  opacity:0.035;
  animation:floatGeo var(--dur, 20s) ease-in-out infinite;
  transform-origin:center;
}
[data-theme="dark"] .float-geo { opacity:0.06; }
@keyframes floatGeo {
  0%,100%{ transform:translateY(0) rotate(var(--rot0,0deg)) scale(1); }
  33%    { transform:translateY(-18px) rotate(var(--rot1,15deg)) scale(1.04); }
  66%    { transform:translateY(10px) rotate(var(--rot2,-8deg)) scale(0.97); }
}

/* ══════════════════════════════
   QUOTE BAR
══════════════════════════════ */
.quote-bar {
  background:var(--emerald);
  padding:40px 5%; text-align:center;
  position:relative; overflow:hidden;
}
[data-theme="dark"] .quote-bar { background:#0a2318; border-top:1px solid rgba(201,168,76,0.1); border-bottom:1px solid rgba(201,168,76,0.1); }
.quote-bar::before {
  content:'';
  position:absolute; inset:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='none' stroke='rgba(255,255,255,0.04)' stroke-width='0.6'%3E%3Cpolygon points='40,4 64,20 64,60 40,76 16,60 16,20'/%3E%3Ccircle cx='40' cy='40' r='12'/%3E%3C/g%3E%3C/svg%3E");
  background-size:80px 80px;
}
.quote-arabic {
  font-family:'Noto Naskh Arabic',serif;
  font-size:clamp(1.3rem,3vw,2rem); color:rgba(255,255,255,0.85);
  margin-bottom:10px; position:relative; z-index:1;
  letter-spacing:0.04em;
}
.quote-translation {
  font-family:'Cormorant Garamond',serif;
  font-size:1.1rem; font-style:italic; color:rgba(255,255,255,0.45);
  position:relative; z-index:1;
}
.quote-source { font-size:0.72rem; letter-spacing:0.1em; text-transform:uppercase; color:var(--gold); margin-top:10px; position:relative; z-index:1; }

/* ══════════════════════════════
   SHARED SECTION STYLES
══════════════════════════════ */
section { padding:110px 5% 130px; }

.section-label {
  display:inline-flex; align-items:center; gap:10px;
  font-size:0.72rem; font-weight:600; letter-spacing:0.14em; text-transform:uppercase;
  color:var(--gold); margin-bottom:18px;
}
.section-label::before { content:''; width:28px; height:1.5px; background:var(--gold); }

h2.section-title {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.2rem,4.5vw,3.6rem); font-weight:500; line-height:1.12;
  color:var(--emerald); margin-bottom:18px;
}
[data-theme="dark"] h2.section-title { color:var(--gold-light); }
h2.section-title em { font-style:italic; color:var(--emerald-light); }
[data-theme="dark"] h2.section-title em { color:var(--emerald-glow); }

.section-desc { font-size:1.05rem; color:var(--text-muted); max-width:560px; font-weight:300; line-height:1.75; }

/* ── REVEAL ── */
.reveal       { opacity:0; transform:translateY(40px); transition:opacity 0.8s cubic-bezier(.2,.8,.3,1), transform 0.8s cubic-bezier(.2,.8,.3,1); }
.reveal-left  { opacity:0; transform:translateX(-50px); transition:opacity 0.9s cubic-bezier(.2,.8,.3,1), transform 0.9s cubic-bezier(.2,.8,.3,1); }
.reveal-right { opacity:0; transform:translateX(50px);  transition:opacity 0.9s cubic-bezier(.2,.8,.3,1), transform 0.9s cubic-bezier(.2,.8,.3,1); }
.reveal.visible, .reveal-left.visible, .reveal-right.visible { opacity:1; transform:none; }
.delay-1{transition-delay:0.1s!important} .delay-2{transition-delay:0.2s!important}
.delay-3{transition-delay:0.3s!important} .delay-4{transition-delay:0.4s!important}
.delay-5{transition-delay:0.5s!important}

/* ── BUTTONS ── */
.btn-primary {
  display:inline-flex; align-items:center; gap:8px;
  background:linear-gradient(135deg,var(--emerald),var(--emerald-mid));
  color:#fff; text-decoration:none;
  padding:15px 34px; border-radius:50px;
  font-weight:500; font-size:0.95rem;
  box-shadow:0 6px 28px rgba(13,74,58,0.3);
  transition:transform 0.25s, box-shadow 0.25s;
  position:relative; overflow:hidden; cursor:pointer; border:none;
}
.btn-primary::before { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(255,255,255,0.12),transparent); opacity:0; transition:opacity 0.3s; }
.btn-primary:hover { transform:translateY(-2px); box-shadow:0 10px 36px rgba(13,74,58,0.4), 0 0 0 6px rgba(34,201,138,0.1); }
.btn-primary:hover::before { opacity:1; }

.btn-secondary {
  display:inline-flex; align-items:center; gap:9px;
  background:transparent; color:var(--emerald); text-decoration:none;
  padding:15px 34px; border-radius:50px;
  font-weight:500; font-size:0.95rem;
  border:1.5px solid rgba(13,74,58,0.2);
  transition:all 0.25s; cursor:pointer;
}
.btn-secondary:hover { background:var(--emerald); color:#fff; border-color:var(--emerald); transform:translateY(-2px); box-shadow:0 6px 24px rgba(13,74,58,0.2); }
[data-theme="dark"] .btn-secondary { color:var(--gold-light); border-color:rgba(201,168,76,0.25); }
[data-theme="dark"] .btn-secondary:hover { background:rgba(201,168,76,0.15); color:var(--gold-light); border-color:var(--gold); }

.btn-gold {
  display:inline-flex; align-items:center; gap:12px;
  background:linear-gradient(135deg,var(--gold),var(--gold-light));
  color:var(--emerald); text-decoration:none;
  padding:16px 40px; border-radius:50px;
  font-weight:600; font-size:1rem;
  box-shadow:0 8px 32px rgba(201,168,76,0.4);
  animation:tgPulse 3s 2s infinite;
  transition:transform 0.25s, box-shadow 0.25s;
  position:relative; z-index:1; border:none; cursor:pointer;
}
.btn-gold:hover { transform:translateY(-3px) scale(1.03); box-shadow:0 14px 44px rgba(201,168,76,0.55); }
@keyframes tgPulse {
  0%,100%{ box-shadow:0 8px 32px rgba(201,168,76,0.4), 0 0 0 0 rgba(201,168,76,0.3); }
  50%    { box-shadow:0 8px 32px rgba(201,168,76,0.4), 0 0 0 14px rgba(201,168,76,0); }
}

/* ── ORNAMENT DIVIDER ── */
.ornament-divider { display:flex; align-items:center; gap:16px; margin:0 auto 64px; max-width:260px; }
.ornament-divider::before,.ornament-divider::after { content:''; flex:1; height:1px; background:linear-gradient(to right,transparent,rgba(201,168,76,0.35)); }
.ornament-divider::after { background:linear-gradient(to left,transparent,rgba(201,168,76,0.35)); }
.ornament-gem { width:10px; height:10px; background:var(--gold); border-radius:2px; transform:rotate(45deg); box-shadow:0 0 12px rgba(201,168,76,0.4); }

/* ══════════════════════════════
   FOOTER
══════════════════════════════ */
footer { background:var(--dark); padding:64px 5% 90px; color:rgba(255,255,255,0.5); }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:48px; max-width:1200px; margin:0 auto 56px; }
.footer-brand .nav-logo { color:rgba(255,255,255,0.9); margin-bottom:16px; display:flex; }
.footer-brand p { font-size:0.85rem; line-height:1.7; max-width:280px; }
.footer-col h4 { font-size:0.8rem; font-weight:600; letter-spacing:0.1em; text-transform:uppercase; color:rgba(255,255,255,0.7); margin-bottom:18px; }
.footer-col ul { list-style:none; display:flex; flex-direction:column; gap:10px; }
.footer-col ul li a { text-decoration:none; color:rgba(255,255,255,0.45); font-size:0.85rem; transition:color 0.2s; }
.footer-col ul li a:hover { color:rgba(255,255,255,0.9); }
.footer-bottom {
  border-top:1px solid rgba(255,255,255,0.07); padding-top:28px;
  max-width:1200px; margin:0 auto;
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px;
  font-size:0.78rem;
}
.footer-arabic { font-family:'Noto Naskh Arabic',serif; font-size:1.1rem; color:rgba(201,168,76,0.5); letter-spacing:0.05em; }

/* ══════════════════════════════
   RESPONSIVE
══════════════════════════════ */
@media(max-width:900px){
  .footer-grid{ grid-template-columns:1fr 1fr; }
}
@media(max-width:640px){
  .nav-links{ display:none; }
  .nav-hamburger{ display:flex; }
  section{ padding:80px 5% 110px; }
  .footer-grid{ grid-template-columns:1fr; }
}
