diff --git a/src/app/layout/Footer.tsx b/src/app/layout/Footer.tsx
index e6e4102..5dca349 100644
--- a/src/app/layout/Footer.tsx
+++ b/src/app/layout/Footer.tsx
@@ -13,7 +13,7 @@ function FooterCurve() {
{/* white (page) above, navy below, with a smooth dip on the LEFT side */}
{/* scroll-to-top button sitting in the dip (left side) */}
@@ -23,12 +23,12 @@ function FooterCurve() {
style={{
position: 'absolute', top: 8, left: '16.7%', transform: 'translateX(-50%)',
width: 40, height: 40, borderRadius: '50%', cursor: 'pointer',
- background: '#071d49', border: '2px solid rgba(255,255,255,0.25)',
+ background: '#032340', border: '2px solid rgba(255,255,255,0.25)',
display: 'flex', alignItems: 'center', justifyContent: 'center',
transition: 'transform 180ms, background 180ms',
}}
- onMouseEnter={(e) => { (e.currentTarget as HTMLElement).style.transform = 'translateX(-50%) translateY(-3px)'; (e.currentTarget as HTMLElement).style.background = '#c9a227' }}
- onMouseLeave={(e) => { (e.currentTarget as HTMLElement).style.transform = 'translateX(-50%)'; (e.currentTarget as HTMLElement).style.background = '#071d49' }}
+ onMouseEnter={(e) => { (e.currentTarget as HTMLElement).style.transform = 'translateX(-50%) translateY(-3px)'; (e.currentTarget as HTMLElement).style.background = '#CD9E53' }}
+ onMouseLeave={(e) => { (e.currentTarget as HTMLElement).style.transform = 'translateX(-50%)'; (e.currentTarget as HTMLElement).style.background = '#032340' }}
>
@@ -36,8 +36,8 @@ function FooterCurve() {
)
}
-const NAVY = '#071d49'
-const GOLD = '#c9a227'
+const NAVY = '#032340'
+const GOLD = '#CD9E53'
/* round social buttons (gold filled, like the screenshot) */
const SOCIALS = [
diff --git a/src/components/ui/globe.tsx b/src/components/ui/globe.tsx
index 4e97244..4870d4e 100644
--- a/src/components/ui/globe.tsx
+++ b/src/components/ui/globe.tsx
@@ -11,8 +11,8 @@ type Arc = {
arcAlt: number; color: string
}
-const NAVY = '#071d49'
-const COLORS = ['#22ade0', '#3b82f6', '#c9a227']
+const NAVY = '#032340'
+const COLORS = ['#22ade0', '#3b82f6', '#CD9E53']
/* steel-trade arcs centred on Tehran/Shanghai */
const ARCS: Arc[] = [
diff --git a/src/content/integrations.ts b/src/content/integrations.ts
index c3acffa..6fb527a 100644
--- a/src/content/integrations.ts
+++ b/src/content/integrations.ts
@@ -24,7 +24,7 @@ export type Integration = {
/* Global steel data sources & exchanges, scattered across a 6×5 grid.
Empty cells stay as faint placeholders for the "constellation" look. */
export const INTEGRATIONS: Integration[] = [
- { id: 'lme', name: 'London Metal Exchange', icon: 'exchange', accent: '#c9a227', col: 6, row: 1 },
+ { id: 'lme', name: 'London Metal Exchange', icon: 'exchange', accent: '#CD9E53', col: 6, row: 1 },
{ id: 'shfe', name: 'Shanghai Futures Exchange', icon: 'trending', accent: '#c0392b', col: 4, row: 2 },
{ id: 'platts', name: 'S&P Global Platts', icon: 'chart', accent: '#2471a3', col: 6, row: 2 },
{ id: 'reuters', name: 'Reuters', icon: 'newspaper', accent: '#e67e22', col: 3, row: 3 },
diff --git a/src/index.css b/src/index.css
index e7df8db..28f1288 100644
--- a/src/index.css
+++ b/src/index.css
@@ -46,7 +46,7 @@
═══════════════════════════════════════════════ */
:root {
/* Raw brand colors */
- --color-navy: #071D49;
+ --color-navy: #032340;
--color-blue: #00AEEF;
--color-white: #FFFFFF;
--color-gray-light: #E9EEF5;
@@ -59,7 +59,7 @@
--paper-3: #d5dce8; /* tertiary surface */
/* Semantic text tokens — all navy scale */
- --ink: #071D49; /* primary text / headings */
+ --ink: #032340; /* primary text / headings */
--ink-2: #0d2d6b; /* strong secondary */
--ink-3: #1a3f7a; /* medium emphasis */
--ink-4: #7C8798; /* muted / secondary text */
diff --git a/src/pages/AtAGlance/AtAGlance.tsx b/src/pages/AtAGlance/AtAGlance.tsx
index 02cc695..0c74b75 100644
--- a/src/pages/AtAGlance/AtAGlance.tsx
+++ b/src/pages/AtAGlance/AtAGlance.tsx
@@ -8,14 +8,14 @@ export default function AtAGlance() {
return (
{/* page header */}
-
+
-
+
AT A GLANCE
diff --git a/src/pages/Home/sections/AtAGlanceSection.tsx b/src/pages/Home/sections/AtAGlanceSection.tsx
index 4e8c4f7..926438a 100644
--- a/src/pages/Home/sections/AtAGlanceSection.tsx
+++ b/src/pages/Home/sections/AtAGlanceSection.tsx
@@ -2,8 +2,8 @@ import { useState } from 'react'
import { AnimatePresence, motion } from 'framer-motion'
import { useLang } from '@/context/LangContext'
-const NAVY = '#071d49'
-const GOLD = '#c9a227'
+const NAVY = '#032340'
+const GOLD = '#CD9E53'
type Glance = {
source: string
diff --git a/src/pages/Home/sections/FactoryReportsScroll.tsx b/src/pages/Home/sections/FactoryReportsScroll.tsx
index 6329848..31e8a6e 100644
--- a/src/pages/Home/sections/FactoryReportsScroll.tsx
+++ b/src/pages/Home/sections/FactoryReportsScroll.tsx
@@ -3,8 +3,8 @@ import { ArrowLeft } from 'lucide-react'
import { useLang } from '@/context/LangContext'
import { FACTORY_REPORTS, FACTORY_REPORTS_META, type FactoryReport, type ScrollDir } from '@/content/factoryReports'
-const NAVY = '#071d49'
-const GOLD = '#c9a227'
+const NAVY = '#032340'
+const GOLD = '#CD9E53'
const EASE = [0.22, 1, 0.36, 1] as const
/* native ScrollAnimation — slides child in from a direction when it enters view */
diff --git a/src/pages/Home/sections/HeroSection.tsx b/src/pages/Home/sections/HeroSection.tsx
index ae922ca..f3e1b24 100644
--- a/src/pages/Home/sections/HeroSection.tsx
+++ b/src/pages/Home/sections/HeroSection.tsx
@@ -5,7 +5,7 @@ import { useLang } from '@/context/LangContext'
gsap.registerPlugin(ScrollTrigger)
-const NAVY = '#071d49'
+const NAVY = '#032340'
const PAPER = '#faf7f4' // cream background revealed under the de-zoom
const HERO = {
diff --git a/src/pages/Home/sections/IntegrationsSection.tsx b/src/pages/Home/sections/IntegrationsSection.tsx
index 8b0ec31..6c8a105 100644
--- a/src/pages/Home/sections/IntegrationsSection.tsx
+++ b/src/pages/Home/sections/IntegrationsSection.tsx
@@ -7,8 +7,8 @@ import { Link } from 'react-router-dom'
import { useLang } from '@/context/LangContext'
import { INTEGRATIONS, INTEGRATIONS_META, type IntegrationIcon } from '@/content/integrations'
-const NAVY = '#071d49'
-const GOLD = '#c9a227'
+const NAVY = '#032340'
+const GOLD = '#CD9E53'
const COLS = 6
const ROWS = 5
const EASE = [0.22, 1, 0.36, 1] as const
diff --git a/src/pages/Home/sections/NewsletterMarquee.tsx b/src/pages/Home/sections/NewsletterMarquee.tsx
index 271cc8f..7174f44 100644
--- a/src/pages/Home/sections/NewsletterMarquee.tsx
+++ b/src/pages/Home/sections/NewsletterMarquee.tsx
@@ -1,7 +1,7 @@
import { useLang } from '@/context/LangContext'
-const NAVY = '#071d49'
-const GOLD = '#c9a227'
+const NAVY = '#032340'
+const GOLD = '#CD9E53'
/* خبرنامه فولاد — recent issue titles, scrolled as a continuous marquee. */
const ISSUES = {
diff --git a/src/pages/Home/sections/RadarTechSection.tsx b/src/pages/Home/sections/RadarTechSection.tsx
index 52d3199..8aa6558 100644
--- a/src/pages/Home/sections/RadarTechSection.tsx
+++ b/src/pages/Home/sections/RadarTechSection.tsx
@@ -8,14 +8,14 @@ import { RADAR_ITEMS } from '@/content/radar'
type Area = { Icon: LucideIcon; color: string; title: string; desc: string }
const RESEARCH_AREAS: Record<'fa' | 'en', Area[]> = {
fa: [
- { Icon: Telescope, color: '#c9a227', title: 'آیندهنگاری علمی', desc: 'بهجای پیشبینی تکنقطهای، با سناریوپردازی و تحلیل روند، چند آیندهٔ محتمل صنعت فولاد را ترسیم میکنیم.' },
+ { Icon: Telescope, color: '#CD9E53', title: 'آیندهنگاری علمی', desc: 'بهجای پیشبینی تکنقطهای، با سناریوپردازی و تحلیل روند، چند آیندهٔ محتمل صنعت فولاد را ترسیم میکنیم.' },
{ Icon: Database, color: '#2471a3', title: 'تحلیل دادهمحور', desc: 'هر بینش بر پایهٔ دادههای معتبر جهانی و داخلی است، نه گمانهزنی؛ تصمیمسازی با شواهد قابلاتکا.' },
{ Icon: Scale, color: '#1e8449', title: 'بیطرفی و استقلال', desc: 'تحلیلهای ما مستقل از منافع کوتاهمدت است؛ شفاف و بدون جانبداری از یک بازیگر خاص.' },
{ Icon: Users, color: '#7d3c98', title: 'هماندیشی خبرگان', desc: 'شبکهای از مدیران، پژوهشگران و فعالان صنعت که دانش پراکنده را به بینش جمعی تبدیل میکند.' },
{ Icon: Lightbulb, color: '#c0392b', title: 'از تحلیل تا اقدام', desc: 'یافتهها را به راهبردهای عملی و قابلاجرا برای رهبران صنعت ترجمه میکنیم، نه گزارشهای روی طاقچه.' },
],
en: [
- { Icon: Telescope, color: '#c9a227', title: 'Scientific Foresight', desc: 'Instead of single-point prediction, we map several plausible futures of the steel industry through scenario planning.' },
+ { Icon: Telescope, color: '#CD9E53', title: 'Scientific Foresight', desc: 'Instead of single-point prediction, we map several plausible futures of the steel industry through scenario planning.' },
{ Icon: Database, color: '#2471a3', title: 'Data-Driven Analysis', desc: 'Every insight rests on credible global and domestic data — evidence, not guesswork.' },
{ Icon: Scale, color: '#1e8449', title: 'Independence & Neutrality', desc: 'Our analysis is independent of short-term interests — transparent and unbiased toward any single actor.' },
{ Icon: Users, color: '#7d3c98', title: 'Expert Collaboration', desc: 'A network of executives, researchers and practitioners turning scattered knowledge into collective insight.' },
diff --git a/src/pages/Home/sections/SpreadFeatures.tsx b/src/pages/Home/sections/SpreadFeatures.tsx
index e5a51b7..ade4807 100644
--- a/src/pages/Home/sections/SpreadFeatures.tsx
+++ b/src/pages/Home/sections/SpreadFeatures.tsx
@@ -2,8 +2,8 @@ import { useRef, useState } from 'react'
import { motion, AnimatePresence, useScroll, useMotionValueEvent } from 'framer-motion'
import { useLang } from '@/context/LangContext'
-const NAVY = '#071d49'
-const GOLD = '#c9a227'
+const NAVY = '#032340'
+const GOLD = '#CD9E53'
const EASE = [0.22, 1, 0.36, 1] as const
type Feat = {
diff --git a/src/pages/Radar/Radar.tsx b/src/pages/Radar/Radar.tsx
index 236b8d9..dbd52d8 100644
--- a/src/pages/Radar/Radar.tsx
+++ b/src/pages/Radar/Radar.tsx
@@ -4,8 +4,8 @@ import { BarChart3, Cpu, Mountain, Globe, Zap, ChevronLeft, ChevronRight } from
import { useLang } from '@/context/LangContext'
import { RADAR_ITEMS, type RadarItem, type RadarCategory } from '@/content/radar'
-const NAVY = '#071d49'
-const GOLD = '#c9a227'
+const NAVY = '#032340'
+const GOLD = '#CD9E53'
const PER_PAGE = 8
const CATEGORY_ICON: Record = {