/* ===========================================
   NAQSH — نَقْش
   Cinematic Dark Design
   Colors: Gold, Lapis, Iridescent Teal, Dark, Ivory
=========================================== */

:root {
    --gold: #C8A84E;
    --gold-light: #E2CC82;
    --gold-dark: #9A7B2F;
    --lapis: #1A3A5C;
    --lapis-light: #254D78;
    --lapis-dark: #0F2640;
    --teal: #2E8B8B;
    --teal-light: #3AADAD;
    --teal-glow: rgba(46,139,139,0.4);
    --dark: #0D1117;
    --dark-surface: #111820;
    --dark-card: #151D27;
    --ivory: #F5ECD7;
    --ivory-muted: rgba(245,236,215,0.7);
    --ivory-dim: rgba(245,236,215,0.4);
    --font-ar: 'Fustat', sans-serif;
    --font-en-display: 'Almarai', sans-serif;
    --font-en-body: 'Fustat', sans-serif;
    --ease: cubic-bezier(0.25, 0.46, 0.45, 0.94);
    --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
}

/* === RESET === */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior: smooth; overflow-x: hidden; }
body {
    font-family: var(--font-ar);
    background: var(--dark);
    color: var(--ivory);
    line-height: 1.8;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
}
[lang="en"] body, .en-text { font-family: var(--font-en-body); }
a { color: inherit; text-decoration: none; }
img { max-width:100%; display:block; }
::selection { background: var(--gold); color: var(--dark); }

/* === CUSTOM SCROLLBAR === */
::-webkit-scrollbar { width:6px; }
::-webkit-scrollbar-track { background:var(--dark); }
::-webkit-scrollbar-thumb { background:var(--gold-dark); border-radius:3px; }
::-webkit-scrollbar-thumb:hover { background:var(--gold); }

/* === PRELOADER === */
.preloader {
    position:fixed; inset:0; z-index:9999;
    background:var(--dark);
    display:flex; align-items:center; justify-content:center;
    transition: opacity 0.8s var(--ease), visibility 0.8s;
}
.preloader.hidden { opacity:0; visibility:hidden; pointer-events:none; }
.preloader-text { font-size:48px; color:var(--gold); font-weight:700; animation: pulse 1.5s ease-in-out infinite; }
@keyframes pulse { 0%,100%{opacity:0.4;transform:scale(0.98)} 50%{opacity:1;transform:scale(1)} }

/* === NAV LOGO IMAGE === */
.nav-logo { display:flex; align-items:center; gap:12px; }
.nav-logo-img {
    height: 48px; width: auto;
    border-radius: 4px;
    filter: drop-shadow(0 0 8px rgba(200,168,78,0.3));
    transition: all 0.4s var(--ease);
}
.nav.scrolled .nav-logo-img { height: 38px; }
.nav-logo-text {
    font-size: 28px; font-weight: 700; color: var(--gold); letter-spacing: 1px;
}
.nav-logo-text span { font-size: 12px; color: var(--ivory-dim); display: block; font-weight: 300; letter-spacing: 3px; }

/* === NAVIGATION === */
.nav {
    position: fixed; top: 0; left: 0; right: 0;
    z-index: 1000; padding: 0 48px;
    height: 80px; display: flex; align-items: center; justify-content: space-between;
    transition: all 0.4s var(--ease);
}
.nav.scrolled {
    background: rgba(13,17,23,0.92);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-bottom: 1px solid rgba(200,168,78,0.08);
    height: 64px;
}
.nav-links { display: flex; gap: 32px; align-items: center; }
.nav-links a {
    font-size: 13px; color: var(--ivory-muted); position: relative;
    transition: color 0.3s; letter-spacing: 0.5px;
}
.nav-links a::after {
    content:''; position:absolute; bottom:-4px; right:0; width:0;
    height:1px; background:var(--gold); transition:width .3s var(--ease);
}
.nav-links a:hover { color: var(--gold); }
.nav-links a:hover::after { width:100%; }

/* Language Switch */
.lang-switch {
    background: rgba(200,168,78,0.1); border: 1px solid rgba(200,168,78,0.2);
    padding: 6px 16px; border-radius: 20px; font-size: 12px;
    color: var(--gold); cursor: pointer; transition: all 0.3s;
    font-family: inherit;
}
.lang-switch:hover { background: rgba(200,168,78,0.2); }

/* Hamburger */
.hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; z-index:1001; }
.hamburger span { width:24px; height:2px; background:var(--ivory); transition:all .3s; }
.hamburger.active span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.hamburger.active span:nth-child(2) { opacity:0; }
.hamburger.active span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

/* Mobile Menu */
.mobile-menu {
    position:fixed; inset:0; z-index:999;
    background:rgba(13,17,23,0.98);
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    gap:24px; opacity:0; visibility:hidden; transition:all .4s;
}
.mobile-menu.active { opacity:1; visibility:visible; }
.mobile-menu a { font-size:20px; color:var(--ivory); transition:color .3s; }
.mobile-menu a:hover { color:var(--gold); }

/* === HERO SECTION === */
.hero {
    min-height: 100vh; position: relative;
    display: flex; align-items: center; justify-content: center;
    overflow: hidden;
}
.hero-bg {
    position:absolute; inset:0; z-index:0;
    background: linear-gradient(180deg, var(--dark) 0%, var(--lapis-dark) 50%, var(--dark) 100%);
}
.hero-bg::before {
    content:''; position:absolute; inset:0;
    background: radial-gradient(ellipse at 30% 40%, rgba(46,139,139,0.08) 0%, transparent 60%),
                radial-gradient(ellipse at 70% 60%, rgba(200,168,78,0.06) 0%, transparent 50%);
}
.hero-particles { position:absolute; inset:0; z-index:1; }
.hero-content {
    position:relative; z-index:2; text-align:center;
    max-width:900px; padding:0 32px;
}
.hero-logo {
    margin-bottom: 32px;
    opacity: 0; transform: translateY(30px) scale(0.95);
    animation: fadeUp 1.2s 0.2s var(--ease-out) forwards;
}
.hero-logo-img {
    height: clamp(120px, 22vw, 220px);
    width: auto;
    margin: 0 auto;
    border-radius: 8px;
    filter: drop-shadow(0 8px 40px rgba(200,168,78,0.25)) drop-shadow(0 0 60px rgba(46,139,139,0.15));
    transition: transform 0.6s var(--ease);
}
.hero-logo-img:hover { transform: scale(1.03); }
.hero-content h1 {
    font-size: clamp(28px, 5vw, 52px);
    font-weight: 700;
    line-height: 1.4;
    color: var(--ivory);
    margin-bottom: 24px;
    opacity: 0; transform: translateY(40px);
    animation: fadeUp 1s 0.7s var(--ease-out) forwards;
}
.hero-content h1 .gold { color: var(--gold); }
.hero-subtitle {
    font-size: clamp(14px, 2vw, 18px);
    color: var(--ivory-muted);
    font-weight: 300;
    line-height: 2;
    margin-bottom: 40px;
    opacity: 0; transform: translateY(30px);
    animation: fadeUp 1s 1s var(--ease-out) forwards;
}
.hero-cta {
    display: inline-flex; align-items: center; gap: 12px;
    padding: 14px 40px;
    border: 1px solid var(--gold);
    color: var(--gold);
    font-size: 14px; font-weight: 500;
    border-radius: 2px;
    transition: all 0.4s var(--ease);
    opacity: 0; transform: translateY(20px);
    animation: fadeUp 1s 1.1s var(--ease-out) forwards;
}
.hero-cta:hover {
    background: var(--gold); color: var(--dark);
    box-shadow: 0 0 40px rgba(200,168,78,0.3);
}
.hero-scroll {
    position:absolute; bottom:40px; left:50%; transform:translateX(-50%);
    z-index:2; opacity:0; animation: fadeUp 1s 1.5s var(--ease-out) forwards;
}
.hero-scroll span {
    display:block; width:1px; height:50px; background:var(--gold);
    margin:0 auto 8px; animation: scrollLine 2s ease-in-out infinite;
}
.hero-scroll small { font-size:10px; color:var(--ivory-dim); letter-spacing:3px; text-transform:uppercase; }
@keyframes scrollLine { 0%{transform:scaleY(0);transform-origin:top} 50%{transform:scaleY(1);transform-origin:top} 51%{transform-origin:bottom} 100%{transform:scaleY(0);transform-origin:bottom} }

/* === SECTION COMMONS === */
.section {
    padding: 120px 48px;
    position: relative;
    overflow: hidden;
}
.section-dark { background: var(--dark); }
.section-lapis { background: var(--lapis-dark); }
.section-title {
    text-align: center; margin-bottom: 64px;
}
.section-title h2 {
    font-size: clamp(24px, 4vw, 42px);
    font-weight: 600;
    color: var(--ivory);
    margin-bottom: 16px;
}
.section-title .line {
    width: 60px; height: 2px;
    background: var(--gold);
    margin: 0 auto 20px;
}
.section-title p {
    font-size: 15px; color: var(--ivory-dim);
    max-width: 600px; margin: 0 auto;
    line-height: 2;
}

/* Reveal on scroll */
.reveal { opacity:0; transform:translateY(50px); transition:opacity .8s var(--ease), transform .8s var(--ease); }
.reveal.visible { opacity:1; transform:translateY(0); }

/* === ABOUT SECTION === */
.about-content {
    max-width: 900px; margin: 0 auto;
    text-align: center;
}
.about-text {
    font-size: clamp(15px, 2vw, 18px);
    color: var(--ivory-muted);
    line-height: 2.2;
    margin-bottom: 48px;
}

/* Mission & Vision Cards */
.mv-grid { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin-top:48px; }
.mv-card {
    background: var(--dark-card);
    border: 1px solid rgba(200,168,78,0.08);
    border-radius: 12px;
    padding: 40px 32px;
    transition: border-color 0.4s, transform 0.4s;
}
.mv-card:hover { border-color: rgba(200,168,78,0.2); transform: translateY(-4px); }
.mv-card h3 {
    color: var(--gold);
    font-size: 18px; font-weight: 600;
    margin-bottom: 16px;
    display: flex; align-items: center; gap: 10px;
}
.mv-card .en-label { font-family: var(--font-en-display); font-size:12px; color:var(--ivory-dim); letter-spacing:2px; text-transform:uppercase; display:block; margin-bottom:8px; }
.mv-card p { font-size:14px; line-height:2; color:var(--ivory-muted); }

/* === VALUES SECTION === */
.values-grid {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px; max-width: 1200px; margin: 0 auto;
}
.value-card {
    background: var(--dark-card);
    border: 1px solid rgba(200,168,78,0.06);
    border-radius: 12px;
    padding: 32px 28px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s;
}
.value-card::before {
    content:''; position:absolute; top:0; right:0;
    width:3px; height:0; background:var(--teal);
    transition: height 0.4s var(--ease);
}
.value-card:hover::before { height:100%; }
.value-card:hover { border-color:rgba(46,139,139,0.2); transform:translateY(-3px); }
.value-card h4 { color:var(--gold); font-size:16px; margin-bottom:6px; font-weight:600; }
.value-card .en-sub { font-family:var(--font-en-body); font-size:12px; color:var(--teal); margin-bottom:12px; letter-spacing:1px; }
.value-card p { font-size:13px; line-height:1.9; color:var(--ivory-dim); }

/* === PROJECTS SECTION === */
.projects-grid {
    display:grid; grid-template-columns:repeat(auto-fit,minmax(340px,1fr));
    gap:28px; max-width:1200px; margin:0 auto;
}
.project-card {
    background:var(--dark-card);
    border:1px solid rgba(200,168,78,0.06);
    border-radius:12px;
    overflow:hidden; transition:all .4s;
}
.project-card:hover { border-color:rgba(200,168,78,0.15); transform:translateY(-5px); }
.project-img {
    height:200px; background:var(--lapis-dark);
    position:relative; overflow:hidden;
}
.project-img img { width:100%; height:100%; object-fit:cover; transition:transform .6s; }
.project-card:hover .project-img img { transform:scale(1.05); }
.project-status {
    position:absolute; top:16px; left:16px;
    background:rgba(46,139,139,0.9); color:var(--ivory);
    padding:4px 14px; border-radius:20px; font-size:11px;
}
.project-body { padding:28px; }
.project-card { cursor: pointer; display:block; }
.project-body h3 { font-size:18px; color:var(--ivory); margin-bottom:10px; font-weight:600; }
.project-body p { font-size:13px; color:var(--ivory-dim); line-height:1.9; margin-bottom:16px; }
.project-meta { display:flex; gap:20px; font-size:11px; color:var(--teal); }
.project-meta span { display:flex; align-items:center; gap:4px; }

/* Project Detail meta */
.project-detail-status {
    font-size:12px; letter-spacing:1px; text-transform:uppercase;
    padding:5px 16px; border-radius:20px; font-weight:500;
}
.project-detail-status--active { background:rgba(46,139,139,0.15); color:var(--teal-light); }
.project-detail-status--completed { background:rgba(200,168,78,0.15); color:var(--gold); }
.project-detail-status--upcoming { background:rgba(245,236,215,0.08); color:var(--ivory-muted); }
.project-detail-meta {
    display:flex; flex-wrap:wrap; gap:24px;
    padding:0 36px; margin-top:16px;
}
.project-detail-meta-item {
    display:flex; align-items:center; gap:8px;
    font-size:14px; color:var(--teal);
}
.project-detail-meta-item .meta-icon { font-size:16px; }

/* === STATS SECTION === */
.stats-bar {
    display:grid; grid-template-columns:repeat(4,1fr);
    gap:0; background:var(--lapis-dark);
    border-top:1px solid rgba(200,168,78,0.1);
    border-bottom:1px solid rgba(200,168,78,0.1);
}
.stat-item {
    padding:48px 24px; text-align:center;
    border-left:1px solid rgba(200,168,78,0.06);
}
.stat-item:last-child { border-left:none; }
[dir="ltr"] .stat-item { border-left:none; border-right:1px solid rgba(200,168,78,0.06); }
[dir="ltr"] .stat-item:last-child { border-right:none; }
.stat-number {
    font-size:clamp(32px,4vw,52px); font-weight:700;
    color:var(--gold); font-family:var(--font-en-display);
}
.stat-label { font-size:13px; color:var(--ivory-dim); margin-top:8px; }

/* === NEWS SECTION === */
.news-grid {
    display:grid; grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:28px; max-width:1200px; margin:0 auto;
}
.news-card {
    background:var(--dark-card);
    border:1px solid rgba(200,168,78,0.06);
    border-radius:12px;
    overflow:hidden; transition:all .4s;
}
.news-card:hover { border-color:rgba(200,168,78,0.15); transform:translateY(-4px); }
.news-img { height:180px; background:var(--lapis-dark); overflow:hidden; }
.news-img img { width:100%; height:100%; object-fit:cover; transition:transform .5s; }
.news-card:hover .news-img img { transform:scale(1.05); }
.news-body { padding:24px; }
.news-cat { font-size:11px; color:var(--teal); letter-spacing:1px; margin-bottom:10px; text-transform:uppercase; }
.news-body h3 { font-size:16px; color:var(--ivory); margin-bottom:10px; line-height:1.6; font-weight:500; }
.news-body p { font-size:13px; color:var(--ivory-dim); line-height:1.8; }
.news-card { cursor: pointer; display:block; }
.news-date { font-size:11px; color:var(--ivory-dim); margin-top:12px; }

/* === NEWS DETAIL PAGE === */
.news-detail-wrapper {
    max-width:1200px; margin:0 auto;
    padding:120px 32px 60px;
    min-height:80vh;
}
.news-breadcrumb {
    display:flex; align-items:center; gap:8px;
    font-size:13px; color:var(--ivory-dim); margin-bottom:32px;
    flex-wrap:wrap;
}
.news-breadcrumb a { color:var(--teal); transition:color .3s; }
.news-breadcrumb a:hover { color:var(--gold); }
.news-breadcrumb .current { color:var(--ivory-muted); }
.news-detail-layout {
    display:grid; grid-template-columns:1fr 320px; gap:48px;
    align-items:start;
}
.news-detail-main {
    background:var(--dark-card);
    border:1px solid rgba(200,168,78,0.08);
    border-radius:16px; overflow:hidden;
}
.news-detail-hero { height:400px; overflow:hidden; }
.news-detail-hero img { width:100%; height:100%; object-fit:cover; }
.news-detail-header {
    display:flex; align-items:center; gap:16px;
    padding:28px 36px 0;
}
.news-detail-cat {
    font-size:11px; color:var(--teal); letter-spacing:1px;
    text-transform:uppercase; background:rgba(46,139,139,0.1);
    padding:4px 12px; border-radius:20px;
}
.news-detail-date { font-size:12px; color:var(--ivory-dim); }
.news-detail-title {
    font-size:clamp(22px,3vw,32px); color:var(--ivory);
    padding:16px 36px 0; line-height:1.6; font-weight:600;
}
.news-detail-excerpt {
    font-size:15px; color:var(--ivory-muted); line-height:1.9;
    padding:12px 36px 0; border-bottom:1px solid rgba(200,168,78,0.08);
    padding-bottom:20px;
}
.news-detail-content {
    padding:24px 36px 36px; font-size:15px;
    color:var(--ivory-muted); line-height:2;
}
.news-detail-content p { margin-bottom:16px; }
.news-detail-content img { border-radius:8px; margin:16px 0; }
.news-detail-loading {
    padding:80px 36px; text-align:center;
    font-size:16px; color:var(--ivory-dim);
}
.news-detail-error {
    padding:80px 36px; text-align:center;
}
.news-detail-error h2 { color:var(--gold); margin-bottom:12px; }
.news-detail-error p { color:var(--ivory-dim); margin-bottom:24px; }
.news-back-btn {
    display:inline-flex; align-items:center; gap:8px;
    color:var(--teal); font-size:14px; padding:12px 36px 28px;
    transition:color .3s;
}
.news-back-btn:hover { color:var(--gold); }

/* Sidebar */
.news-detail-sidebar { position:sticky; top:100px; }
.sidebar-section {
    background:var(--dark-card);
    border:1px solid rgba(200,168,78,0.08);
    border-radius:16px; padding:24px;
}
.sidebar-section h3 {
    font-size:16px; color:var(--gold); margin-bottom:20px;
    padding-bottom:12px; border-bottom:1px solid rgba(200,168,78,0.1);
}
.related-item {
    display:flex; gap:12px; padding:12px 0;
    border-bottom:1px solid rgba(200,168,78,0.05);
    transition:all .3s; text-decoration:none; color:inherit;
}
.related-item:last-child { border-bottom:none; }
.related-item:hover { padding-right:6px; }
[dir="ltr"] .related-item:hover { padding-right:0; padding-left:6px; }
.related-img {
    width:72px; height:54px; border-radius:8px;
    overflow:hidden; flex-shrink:0; background:var(--lapis-dark);
}
.related-img img { width:100%; height:100%; object-fit:cover; }
.related-placeholder {
    width:100%; height:100%; display:flex;
    align-items:center; justify-content:center;
    font-size:20px; opacity:0.4;
    background:linear-gradient(135deg,#1A3A5C,#0D1117);
}
.related-info { flex:1; min-width:0; }
.related-info h4 {
    font-size:13px; color:var(--ivory); line-height:1.5;
    font-weight:500; margin-bottom:4px;
    display:-webkit-box; -webkit-line-clamp:2;
    -webkit-box-orient:vertical; overflow:hidden;
}
.related-info span { font-size:11px; color:var(--ivory-dim); }

/* Responsive */
@media (max-width:900px) {
    .news-detail-layout { grid-template-columns:1fr; }
    .news-detail-sidebar { position:static; }
    .news-detail-wrapper { padding:100px 16px 40px; }
    .news-detail-hero { height:250px; }
    .news-detail-header { padding:20px 20px 0; }
    .news-detail-title { padding:12px 20px 0; }
    .news-detail-excerpt { padding:12px 20px 16px; }
    .news-detail-content { padding:20px; }
    .news-back-btn { padding:12px 20px 24px; }
}

/* === GALLERY SECTION === */
.gallery-grid {
    display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr));
    gap:12px; max-width:1200px; margin:0 auto;
}
.gallery-item {
    aspect-ratio:4/3; border-radius:8px; overflow:hidden;
    position:relative; cursor:pointer;
}
.gallery-item img { width:100%; height:100%; object-fit:cover; transition:transform .5s; }
.gallery-item:hover img { transform:scale(1.1); }
.gallery-item::after {
    content:''; position:absolute; inset:0;
    background:linear-gradient(transparent 60%, rgba(13,17,23,0.7));
    opacity:0; transition:opacity .3s;
}
.gallery-item:hover::after { opacity:1; }

/* Lightbox */
.lightbox {
    position:fixed; inset:0; z-index:9999;
    background:rgba(0,0,0,0.95);
    display:none; align-items:center; justify-content:center;
}
.lightbox.active { display:flex; }
.lightbox img { max-width:90%; max-height:85vh; border-radius:4px; }
.lightbox-close {
    position:absolute; top:24px; right:24px;
    color:var(--ivory); font-size:32px; cursor:pointer;
    background:none; border:none; transition:color .3s;
}
.lightbox-close:hover { color:var(--gold); }

/* === CONTACT SECTION === */
.contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; max-width:1000px; margin:0 auto; }
.contact-info h3 { color:var(--gold); font-size:20px; margin-bottom:24px; }
.contact-info p { color:var(--ivory-muted); font-size:14px; line-height:2; margin-bottom:16px; }
.contact-detail { display:flex; align-items:center; gap:12px; margin-bottom:16px; color:var(--ivory-dim); font-size:14px; }
.contact-detail .icon { color:var(--teal); font-size:18px; }
.social-links { display:flex; gap:16px; margin-top:24px; }
.social-links a {
    width:40px; height:40px; border-radius:50%;
    border:1px solid rgba(200,168,78,0.2);
    display:flex; align-items:center; justify-content:center;
    transition:all .3s; font-size:14px;
}
.social-links a:hover { background:var(--gold); color:var(--dark); border-color:var(--gold); }

/* Contact Form */
.contact-form .form-group { margin-bottom:20px; }
.contact-form label { display:block; font-size:12px; color:var(--ivory-dim); margin-bottom:6px; letter-spacing:0.5px; }
.contact-form input, .contact-form textarea {
    width:100%; padding:14px 18px;
    background:var(--dark-card);
    border:1px solid rgba(200,168,78,0.1);
    border-radius:8px;
    color:var(--ivory); font-size:14px;
    font-family:inherit;
    transition:border-color .3s;
}
.contact-form input:focus, .contact-form textarea:focus { outline:none; border-color:var(--gold); }
.contact-form textarea { resize:vertical; min-height:120px; }
.contact-form .submit-btn {
    width:100%; padding:16px;
    background:linear-gradient(135deg,var(--gold),var(--gold-dark));
    border:none; border-radius:8px;
    color:var(--dark); font-size:15px; font-weight:600;
    cursor:pointer; font-family:inherit;
    transition:all .3s;
}
.contact-form .submit-btn:hover { box-shadow:0 0 30px rgba(200,168,78,0.3); }
.form-success { display:none; text-align:center; padding:40px; color:var(--teal); }
.form-success.show { display:block; }

/* === FOOTER === */
.footer {
    background:var(--dark-surface);
    border-top:1px solid rgba(200,168,78,0.08);
    padding:64px 48px 32px;
}
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:40px; max-width:1200px; margin:0 auto 48px; }
.footer-brand h3 { color:var(--gold); font-size:28px; margin-bottom:12px; }
.footer-brand p { font-size:13px; color:var(--ivory-dim); line-height:1.9; max-width:300px; }
.footer-col h4 { color:var(--ivory); font-size:14px; margin-bottom:16px; font-weight:500; }
.footer-col a { display:block; font-size:13px; color:var(--ivory-dim); margin-bottom:10px; transition:color .3s; }
.footer-col a:hover { color:var(--gold); }

/* Newsletter */
.newsletter-form { display:flex; gap:8px; margin-top:16px; }
.newsletter-form input {
    flex:1; padding:10px 14px;
    background:var(--dark-card);
    border:1px solid rgba(200,168,78,0.1);
    border-radius:6px;
    color:var(--ivory); font-size:13px; font-family:inherit;
}
.newsletter-form input:focus { outline:none; border-color:var(--gold); }
.newsletter-form button {
    padding:10px 20px;
    background:var(--gold); color:var(--dark);
    border:none; border-radius:6px;
    font-size:13px; font-weight:600; cursor:pointer;
    font-family:inherit;
}
.footer-bottom {
    text-align:center; padding-top:32px;
    border-top:1px solid rgba(200,168,78,0.06);
    font-size:12px; color:var(--ivory-dim);
}

/* === IRIDESCENT EFFECTS === */
.iridescent-line {
    height:2px; background:linear-gradient(90deg,transparent,var(--teal),var(--gold),var(--teal),transparent);
    background-size:200% 100%; animation:shimmer 3s linear infinite;
}
@keyframes shimmer { to { background-position:-200% 0; } }

/* === ANIMATIONS === */
@keyframes fadeUp { to { opacity:1; transform:translateY(0); } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }

/* Float particles (for hero) */
.particle {
    position:absolute; border-radius:50%;
    background:var(--gold); opacity:0.15;
    animation: float linear infinite;
}
@keyframes float {
    0% { transform:translateY(100vh) scale(0); opacity:0; }
    10% { opacity:0.15; }
    90% { opacity:0.15; }
    100% { transform:translateY(-100vh) scale(1); opacity:0; }
}

/* === RESPONSIVE === */

/* Large screens — bigger text */
@media (min-width:1200px) {
    .nav-links a { font-size:16px; }
    .lang-switch { font-size:14px; padding:7px 20px; }
    .nav-logo-text { font-size:32px; }
    .nav-logo-text span { font-size:13px; }
    .section-title h2 { font-size:clamp(28px,3.5vw,42px); }
    .section-title p { font-size:16px; }
    .about-text { font-size:17px; }
    .mv-card p { font-size:15px; }
    .mv-card h3 { font-size:20px; }
    .value-card h4 { font-size:17px; }
    .value-card p { font-size:15px; }
    .project-body h3 { font-size:20px; }
    .project-body p { font-size:15px; }
    .project-meta { font-size:13px; }
    .project-status { font-size:13px; }
    .news-body h3 { font-size:18px; }
    .news-body p { font-size:15px; }
    .news-cat { font-size:13px; }
    .news-date { font-size:13px; }
    .stat-label { font-size:15px; }
    .contact-form label { font-size:14px; }
    .contact-form input, .contact-form textarea { font-size:15px; }
    .contact-info p { font-size:15px; }
    .contact-detail { font-size:15px; }
    .footer-col a { font-size:15px; }
    .footer-brand p { font-size:15px; }
    .footer-bottom p { font-size:14px; }
    .hero-subtitle { font-size:17px; }
}

@media (max-width:1024px) {
    .section { padding:80px 32px; }
    .nav { padding:0 24px; }
    .footer-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width:768px) {
    .nav-links { display:none; }
    .hamburger { display:flex; }
    .section { padding:64px 20px; }
    .mv-grid { grid-template-columns:1fr; }
    .contact-grid { grid-template-columns:1fr; }
    .stats-bar { grid-template-columns:1fr 1fr; }
    .hero-content h1 { font-size:28px; }
    .footer-grid { grid-template-columns:1fr; }
    .projects-grid, .news-grid { grid-template-columns:1fr; }
    .gallery-grid { grid-template-columns:repeat(2,1fr); }
    .values-grid { grid-template-columns:1fr; }
}

@media (max-width:480px) {
    .stats-bar { grid-template-columns:1fr; }
    .gallery-grid { grid-template-columns:1fr; }
    .hero-content { padding:0 16px; }
}

/* === RTL/LTR ADJUSTMENTS === */
[dir="ltr"] .nav-links a::after { right:auto; left:0; }
[dir="ltr"] .value-card::before { right:auto; left:0; }
