
/*
Theme Name: NPDI
Theme URI: https://npdi.ir
Description: پوسته اختصاصی نواندیشان بهره‌ور | هویت لاکچری، ریسپانسیو موبایل اول
Author: نواندیشان بهره‌ور
Version: 1.0
Text Domain: npdi
*/

/* ========================= */
/* فونت‌های برند             */
/* ========================= */

@font-face {
    font-family: 'IRANNastaliq';
    src: url('fonts/IRANNastaliq.woff2') format('woff2');
    font-display: swap;
}

@font-face {
    font-family: 'BNazanin';
    src: url('fonts/BNazanin.woff2') format('woff2');
    font-display: swap;
}


/* ========================= */
/* پایه صفحه                 */
/* ========================= */

*,
*::before,
*::after {
    box-sizing: border-box;
}

body.npdi-body {
    margin: 0;
    background-color: #000; /* بک‌گراند مشکی برند */
    color: #fff;
    line-height: 1.6;
    direction: rtl;
    text-align: right;
    font-family: 'BNazanin', system-ui, sans-serif;
    -webkit-font-smoothing: antialiased;
    background-image: radial-gradient(
        circle at 50% 15%,
        rgba(212,175,55,0.07) 0%,
        rgba(0,0,0,0) 70%
    );
    background-repeat: no-repeat;
    background-size: cover;
}

a {
    color: #D4AF37;
    text-decoration: none;
}
a:hover {
    color: #fff;
    text-shadow: 0 0 8px rgba(212,175,55,0.8);
}

/* این باعث میشه متن‌های طولانی تو گوشی نشکنن زشت نشن */
img {
    max-width: 100%;
    height: auto;
}


/* ========================= */
/* HEADER                    */
/* ========================= */

.npdi-header {
    background-color: #0b0b0b;
    border-bottom: 1px solid rgba(212,175,55,0.4);
    box-shadow: 0 20px 40px rgba(0,0,0,0.9);
    color: #fff;
    position: relative;
    z-index: 1000;
}

/* ردیف بالای هدر */
.npdi-header-top {
    max-width: 1280px;
    margin: 0 auto;
    padding: 1rem 1rem;
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    justify-content: space-between;
    column-gap: 1rem;
}

/* === برند راست (لوگو + متن) === */
.npdi-brand-block {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 0.75rem;
    min-width: 0;
    flex: 1 1 auto;
    order: 1; /* سمت راست */
}

/* قاب لوگو */
.npdi-logo-wrapper {
    background-color: #014421;               /* سبز لاکچری */
    border: 2px solid #D4AF37;               /* طلایی برند */
    border-radius: 0.8rem;
    width: 88px;
    height: 88px;
    min-width: 88px;
    min-height: 88px;
    padding: 0.75rem;
    box-shadow:
        0 0 16px rgba(212,175,55,0.5),
        0 0 60px rgba(1,68,33,0.9) inset;
    background-image: radial-gradient(
        circle at 30% 30%,
        rgba(255,255,255,0.08) 0%,
        rgba(1,68,33,0) 70%
    );
    position: relative;
}

/* هاله طلایی اطراف قاب */
.npdi-logo-wrapper::after {
    content: "";
    position: absolute;
    left: -12px;
    right: -12px;
    top: -12px;
    bottom: -12px;
    border-radius: 1rem;
    background: radial-gradient(
        circle at 50% 30%,
        rgba(212,175,55,0.4) 0%,
        rgba(0,0,0,0) 70%
    );
    filter: blur(14px);
    pointer-events: none;
    z-index: -1;
}

/* خود تصویر لوگو */
.npdi-logo-img {
    width: 78px;
    max-width: 78px;
    max-height: 78px;
    display: block;
    margin: 0 auto;
    filter: drop-shadow(0 0 12px rgba(212,175,55,0.85));
}

/* متن کنار لوگو */
.npdi-brand-texts {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    min-width: 0;
    margin-top: 0.25rem;
    color: #fff;
}

/* یک خط: برند | شعار */
.npdi-brand-line {
    display: flex;
    flex-wrap: wrap; /* در موبایل اگر جا نشد می‌شکنه */
    align-items: baseline;
    row-gap: .4rem;
    column-gap: .5rem;
}

/* نام برند */
.npdi-brand-name {
    font-family: 'IRANNastaliq', serif;
    font-size: 1.6rem;           /* بزرگ، برای سالمند خواناست */
    line-height: 1.3;
    color: #D4AF37;              /* طلایی برند */
    text-shadow: 0 0 8px rgba(212,175,55,0.5);
    white-space: nowrap;
    font-weight: 400;
}

/* جداکننده عمودی ظریف بین اسم و شعار */
.npdi-brand-separator {
    color: #D4AF37;
    font-size: 1rem;
    line-height: 1;
    font-family: 'BNazanin', sans-serif;
    opacity: 0.8;
}

/* شعار */
.npdi-brand-slogan-mini {
    font-family:  "IranNastaliq", serif;
    font-size: 1rem;             /* نصف-ish نسبت به نام برند */
    line-height: 1.6;
    color: #D4AF37;
    text-shadow: 0 0 6px rgba(212,175,55,0.4);
    max-width: 32rem;
}

/* === اکشن‌های سمت چپ: زبان و منوی موبایل === */
.npdi-header-actions {
    order: 2; /* در راست‌به‌چپ این یعنی می‌ره سمت چپ */
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 0.5rem;
    margin-right: auto;
    margin-top: 0.4rem;
}

/* سوییچ زبان */
.npdi-lang-btn {
    background: rgba(0,0,0,0.4);
    border: 1px solid #D4AF37;
    border-radius: 0.5rem;
    color: #D4AF37;
    font-size: 0.9rem;
    line-height: 1.3;
    padding: 0.6rem 0.7rem;
    cursor: pointer;
    box-shadow: 0 0 10px rgba(212,175,55,0.4);
    text-shadow: 0 0 6px rgba(212,175,55,0.6);
    white-space: nowrap;
    font-family: 'BNazanin', sans-serif;
}

/* دکمه همبرگری */
.npdi-burger-btn {
    background: rgba(0,0,0,0.4);
    border: 1px solid #D4AF37;
    border-radius: 0.5rem;
    padding: 0.6rem;
    cursor: pointer;
    box-shadow:
        0 0 10px rgba(212,175,55,0.4),
        0 0 30px rgba(212,175,55,0.2);
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.npdi-burger-line {
    width: 22px;
    height: 2px;
    background-color: #D4AF37;
    box-shadow: 0 0 6px rgba(212,175,55,0.8);
    border-radius: 1px;
    display: block;
}

/* ========================= */
/* MOBILE MENU (همبرگری)     */
/* ========================= */

.npdi-mobile-menu {
    position: fixed;
    top: 0;
    right: 0;
    width: 78%;
    max-width: 300px;
    height: 100vh;
    background-color: #0b0b0b;
    border-left: 1px solid rgba(212,175,55,0.4);
    box-shadow: -4px 0 24px rgba(0,0,0,0.9);
    padding: 2rem 1rem;
    transform: translateX(100%);
    transition: transform 0.3s ease;
    z-index: 9999;
}
.npdi-mobile-menu-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.npdi-mobile-menu-list li {
    margin-bottom: 1rem;
}
.npdi-mobile-menu-list a {
    color: #ffffff;
    font-size: 1.1rem;
    line-height: 1.5;
    text-decoration: none;
    text-shadow: 0 0 6px rgba(212,175,55,0.6);
    font-family: 'BNazanin', sans-serif;
}
.npdi-mobile-menu-list a:hover {
    color: #D4AF37;
}

/* وقتی کلاس npdi-menu-open روی body بیاد منوی موبایل باز می‌شه */
body.npdi-menu-open .npdi-mobile-menu {
    transform: translateX(0%);
}

/* ========================= */
/* ریسپانسیو                 */
/* ========================= */

/* موبایل اول هستیم.
   الان برای صفحه‌های بزرگ‌تر، تایپوگرافی و فاصله‌ها رو قوی‌تر می‌کنیم */
@media (min-width: 768px) {

    .npdi-header-top {
        padding: 1rem 2rem;
        align-items: flex-start;
    }

    .npdi-logo-wrapper {
        width: 96px;
        height: 96px;
        min-width: 96px;
        min-height: 96px;
        border-radius: 1rem;
        padding: 1rem;
    }
    .npdi-logo-img {
        width: 80px;
        max-width: 80px;
        max-height: 80px;
    }

    .npdi-brand-name {
        font-size: 1.8rem;
        line-height: 1.3;
    }

    .npdi-brand-slogan-mini {
        font-size: 1rem;
        line-height: 1.8;
        max-width: 40rem;
    }

    .npdi-header-actions {
        gap: 0.75rem;
    }

    .npdi-lang-btn {
        font-size: 1rem;
        padding: 0.6rem 0.8rem;
    }

    .npdi-burger-btn {
        padding: 0.6rem 0.7rem;
    }

    .npdi-burger-line {
        width: 24px;
        height: 2px;
    }

    .npdi-main-nav-list {
        justify-content: center;
        column-gap: 2rem;
    }

    .npdi-main-nav-list a {
        font-size: 1rem;
    }

    /* منوی موبایل روی دسکتاپ هم هست ولی فقط وقتی همبرگر زده بشه باز می‌شه */
}

/* نمایش خیلی بزرگ (دسکتاپ لوکس) */
@media (min-width: 1024px) {

    .npdi-header-top {
        max-width: 1280px;
        padding-top: 1.25rem;
        padding-bottom: 1.25rem;
    }

    .npdi-brand-block {
        gap: 1rem;
    }

    .npdi-logo-wrapper {
        box-shadow:
            0 0 20px rgba(212,175,55,0.5),
            0 0 80px rgba(1,68,33,0.9) inset;
    }

    .npdi-brand-name {
        font-size: 2rem;
        text-shadow: 0 0 10px rgba(212,175,55,0.6);
    }

    .npdi-brand-slogan-mini {
        font-size: 1.1rem;
    }

    .npdi-lang-btn {
        box-shadow:
            0 0 12px rgba(212,175,55,0.6),
            0 0 40px rgba(212,175,55,0.4);
    }

    .npdi-burger-btn {
        box-shadow:
            0 0 12px rgba(212,175,55,0.6),
            0 0 40px rgba(212,175,55,0.4);
    }
}


/* ========================= */
/* محتوای صفحه بعد از هدر   */
/* ========================= */

.site-main {
    max-width: 1280px;
    margin: 2rem auto;
    padding: 0 1rem 4rem;
    color: #fff;
    font-family: 'BNazanin', sans-serif;
    line-height: 1.9;
    text-align: justify;
    text-justify: inter-word;
    font-size: 1rem;
}
.site-main h1,
.site-main h2,
.site-main h3 {
    font-family: 'IRANNastaliq', serif;
    color: #D4AF37;
    line-height: 1.4;
    text-shadow: 0 0 8px rgba(212,175,55,0.5);
    margin-top: 2rem;
    margin-bottom: 1rem;
    font-weight: 400;
}
.site-main p {
    margin-top: 0;
    margin-bottom: 1rem;
    color: #fff;
    font-family: 'BNazanin', sans-serif;
    font-size: 1rem;
    line-height: 1.9;
    text-align: justify;
    text-justify: inter-word;
}

/* جدول‌ها (قاب طلایی لاکچری) */
table {
    width: 100%;
    border-collapse: collapse;
    margin: 2rem 0;
    font-family: 'BNazanin', sans-serif;
    color: #fff;
    text-align: justify;
    text-justify: inter-word;
}
table th {
    border: 1px solid #D4AF37;
    color: #D4AF37;
    font-family: 'IRANNastaliq', serif;
    padding: 0.75rem;
    font-size: 1.1rem;
    font-weight: 400;
    line-height: 1.6;
    background-color: #000;
}
table td {
    border: 1px solid #D4AF37;
    padding: 0.75rem;
    font-size: 1rem;
    line-height: 1.8;
    background-color: #0b0b0b;
    color: #fff;
}

/* دکمه‌های طلایی لاکچری (برای فرم و CTA) */
.npdi-btn-gold {
    display: inline-block;
    background: radial-gradient(circle at 50% 40%, #000 0%, #000 60%);
    border: 1px solid #D4AF37;
    border-radius: .6rem;
    color: #D4AF37;
    font-size: 1rem;
    font-weight: 600;
    padding: .7rem 1rem;
    line-height: 1.3;
    text-align: center;
    box-shadow:
        0 0 12px rgba(212,175,55,0.6),
        0 0 40px rgba(212,175,55,0.4);
    text-shadow: 0 0 6px rgba(212,175,55,0.8);
    cursor: pointer;
    font-family: 'BNazanin', sans-serif;
}
.npdi-btn-gold:hover {
    background: radial-gradient(circle at 50% 40%, #1a1a1a 0%, #000 60%);
    color: #fff;
}
/* === بزرگ کردن لوگو NPDI === */
.npdi-logo-wrapper {
    width: 120px !important;     /* افزایش عرض قاب لوگو */
    height: 120px !important;    /* افزایش ارتفاع قاب لوگو */
    min-width: 120px !important;
    min-height: 120px !important;
    padding: 1rem !important;    /* کمی فضای داخل قاب */
}

.npdi-logo-img {
    width: 105px !important;     /* اندازه خود لوگو */
    max-width: 105px !important;
    max-height: 105px !important;
    filter: drop-shadow(0 0 15px rgba(212,175,55,0.9)) !important;
}

@media (max-width: 768px) {
    /* در موبایل لوگو کمی کوچک‌تر ولی باز هم خوانا */
    .npdi-logo-wrapper {
        width: 90px !important;
        height: 90px !important;
        min-width: 90px !important;
        min-height: 90px !important;
    }
    .npdi-logo-img {
        width: 80px !important;
        max-width: 80px !important;
        max-height: 80px !important;
    }
}
/* === مرکز کردن لوگو در قاب سبز NPDI === */
.npdi-logo-wrapper {
  display: flex !important;
  align-items: center !important;  /* مرکز عمودی */
  justify-content: center !important; /* مرکز افقی */
  background-color: #014421; /* سبز لاکچری */
  border: 2px solid #d4af37; /* قاب طلایی */
  border-radius: 1rem;
  width: 120px;   /* اندازه مربع */
  height: 120px;
  box-shadow: 0 0 18px rgba(212,175,55,0.7),
              inset 0 0 60px rgba(1,68,33,0.8);
  position: relative;
}

/* تصویر لوگو داخل قاب سبز */
.npdi-logo-img {
  width: 90px !important;   /* بزرگ‌تر از قبل */
  height: auto !important;
  display: block;
  object-fit: contain;
  filter: drop-shadow(0 0 10px rgba(212,175,55,0.8));
  transition: transform 0.3s ease, filter 0.3s ease;
}

.npdi-logo-img:hover {
  transform: scale(1.08);
  filter: drop-shadow(0 0 18px rgba(255,215,0,1));
}

@media (max-width: 768px) {
  .npdi-logo-wrapper {
    width: 90px;
    height: 90px;
  }

  .npdi-logo-img {
    width: 75px !important;
  }
}
/* === ساختار و چینش برند و شعار === */
.npdi-brand-texts {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important; /* راست‌چین طبیعی */
  justify-content: center !important;
  line-height: 1.6 !important;
  margin-top: 0.2rem !important;
}

/* نام برند */
.npdi-brand-name {
  font-family: 'BNazanin', sans-serif !important;
  font-size: 1.4rem !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  text-shadow: 0 0 8px rgba(212,175,55,0.5) !important;
  margin-bottom: 0.4rem !important;
  white-space: nowrap !important; /* برند همیشه در یک خط */
}

/* شعار نستعلیق طلایی زیر برند */
.npdi-brand-slogan {
  font-family: "IranNastaliq", "IRNazanin", serif !important;
  font-size: 1rem !important;
  color: #d4af37 !important;
  text-shadow: 0 0 8px rgba(212,175,55,0.4) !important;
  line-height: 1.8 !important;
  display: block !important;
  margin-top: 0 !important;
  white-space: nowrap !important; /* جلوگیری از شکستن در موبایل */
  overflow: hidden !important;
  text-overflow: ellipsis;
}

/* نسخه ریسپانسیو (موبایل و تبلت) */
@media (max-width: 768px) {
  .npdi-brand-name {
    font-size: 1.2rem !important;
  }

  .npdi-brand-slogan {
    font-size: 0.85rem !important;
    white-space: nowrap !important; /* در موبایل هم یک خط */
    line-height: 1.6 !important;
  }
}

/* نسخه دسکتاپ بزرگ‌تر و لوکس‌تر */
@media (min-width: 1024px) {
  .npdi-brand-name {
    font-size: 1.5rem !important;
  }

  .npdi-brand-slogan {
    font-size: 1.05rem !important;
    line-height: 2.1 !important;
    max-width: 40rem !important;
  }
}
/* === تنظیم دقیق برند و شعار در هدر NPDI === */
.npdi-brand-texts {
  display: flex !important;
  flex-direction: column !important;   /* شعار زیر نام برند قرار می‌گیرد */
  align-items: flex-start !important;
  justify-content: center !important;
  line-height: 1.6 !important;
}

/* نام برند */
.npdi-brand-name {
  font-family: 'BNazanin', sans-serif !important;
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  text-shadow: 0 0 8px rgba(212,175,55,0.5) !important;
  margin-bottom: 0.4rem !important; /* فاصله مناسب بین برند و شعار */
  white-space: nowrap !important;
}

/* شعار زیر برند با فونت نستعلیق */
.npdi-brand-slogan {
  font-family: "IranNastaliq", "IRNazanin", serif !important;
  font-size: 1rem !important;
  color: #d4af37 !important;
  text-shadow: 0 0 8px rgba(212,175,55,0.4) !important;
  line-height: 1.8 !important;
  display: block !important;
  margin-top: 0 !important;
  white-space: nowrap !important; /* در موبایل در یک خط بماند */
}

/* برای موبایل و تبلت */
@media (max-width: 768px) {
  .npdi-brand-name {
    font-size: 1.2rem !important;
  }
  .npdi-brand-slogan {
    font-size: 0.85rem !important;
    line-height: 1.6 !important;
    white-space: nowrap !important; /* در یک خط */
  }
}

/* برای دسکتاپ‌های بزرگ */
@media (min-width: 1024px) {
  .npdi-brand-name {
    font-size: 1.6rem !important;
  }
  .npdi-brand-slogan {
    font-size: 1.05rem !important;
    line-height: 2 !important;
  }
}
/* ========================= */
/* NPDI FOOTER               */
/* ========================= */

.npdi-footer {
    background-color: #000;
    border-top: 1px solid rgba(212,175,55,0.4);
    box-shadow: 0 -20px 60px rgba(0,0,0,0.9),
                0 0 40px rgba(212,175,55,0.15) inset;
    color: #fff;
    padding-top: 2rem;
    padding-bottom: 2rem;
    font-family: 'BNazanin', sans-serif;
    direction: rtl;
    text-align: right;
}

.npdi-footer-inner {
    max-width: 1280px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 2rem;
    column-gap: 2rem;
    padding: 0 1rem;
}

/* سه ستون در دسکتاپ */
@media (min-width: 992px) {
    .npdi-footer-inner {
        grid-template-columns: 1fr 1fr 1fr;
        align-items: flex-start;
    }
}

/* ستون‌ها */
.npdi-footer-col {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* ستون چپ (لوگو + نقشه سایت + شبکه اجتماعی) */
.npdi-footer-left {
    order: 1;
}
.npdi-footer-logo-wrapper {
    background-color: #014421;
    border: 2px solid #d4af37;
    border-radius: 0.8rem;
    width: 110px;
    height: 110px;
    min-width: 110px;
    min-height: 110px;
    padding: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        0 0 16px rgba(212,175,55,0.5),
        0 0 60px rgba(1,68,33,0.9) inset;
    background-image: radial-gradient(
        circle at 30% 30%,
        rgba(255,255,255,0.08) 0%,
        rgba(1,68,33,0) 70%
    );
}
.npdi-footer-logo-img {
    width: 90px;
    height: auto;
    max-width: 90px;
    max-height: 90px;
    object-fit: contain;
    filter: drop-shadow(0 0 12px rgba(212,175,55,0.85));
}

/* نقشه سایت */
.npdi-footer-heading {
    color: #d4af37;
    font-size: 1rem;
    font-weight: 600;
    margin: 0 0 .5rem 0;
    text-shadow: 0 0 8px rgba(212,175,55,0.6);
    line-height: 1.6;
}
.npdi-footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
}
.npdi-footer-links li {
    margin-bottom: .4rem;
}
.npdi-footer-links a {
    color: #fff;
    font-size: .9rem;
    line-height: 1.7;
    text-decoration: none;
    text-shadow: 0 0 4px rgba(212,175,55,0.4);
}
.npdi-footer-links a:hover {
    color: #d4af37;
    text-shadow: 0 0 8px rgba(212,175,55,0.8);
}

/* شبکه‌های اجتماعی */
.npdi-social-list {
    list-style: none;
    margin: .5rem 0 0 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: .5rem 1rem;
}
.npdi-social-link {
    font-size: .8rem;
    text-decoration: none;
    color: #ffffff;
    text-shadow: 0 0 4px rgba(212,175,55,0.4);
}
.npdi-social-link:hover {
    color: #d4af37;
    text-shadow: 0 0 8px rgba(212,175,55,0.8);
}

/* ستون وسط (اطلاعات تماس) */
.npdi-footer-center {
    order: 2;
}
.npdi-contact-list {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: .9rem;
    line-height: 1.8;
    color: #fff;
}
.npdi-contact-list li {
    margin-bottom: .6rem;
    color: #fff;
}
.npdi-contact-label {
    color: #d4af37;
    font-weight: 600;
    display: inline-block;
    min-width: 4rem;
    text-shadow: 0 0 8px rgba(212,175,55,0.5);
}
.npdi-contact-value {
    color: #fff;
    text-decoration: none;
}
.npdi-contact-value:hover {
    color: #d4af37;
}

/* ستون راست (نمادها و مجوزها) */
.npdi-footer-right {
    order: 3;
}
.npdi-seals {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1rem;
    align-items: flex-start;
}
.npdi-seal-box {
    background-color: #0b0b0b;
    border: 1px solid rgba(212,175,55,0.4);
    border-radius: 0.5rem;
    padding: .5rem;
    box-shadow:
        0 0 12px rgba(212,175,55,0.3),
        0 0 40px rgba(212,175,55,0.15);
}
.npdi-seal-img {
    max-height: 60px;
    width: auto;
    display: block;
    background-color: #fff;
    border-radius: .25rem;
}

/* کپیرایت */
.npdi-footer-copy {
    font-size: .8rem;
    color: #bbbbbb;
    line-height: 1.8;
    margin-top: 1rem;
    text-align: justify;
    text-justify: inter-word;
}

/* خط انتهایی پایین فوتر */
.npdi-footer-bottom {
    border-top: 1px solid rgba(212,175,55,0.25);
    margin-top: 2rem;
    padding-top: 1rem;
    background: radial-gradient(circle at 50% 0%, rgba(212,175,55,0.08) 0%, rgba(0,0,0,0) 70%);
}
.npdi-footer-bottom-inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 1rem;
    text-align: center;
}
.npdi-footer-bottom-text {
    color: #d4af37;
    font-size: .8rem;
    line-height: 1.6;
    text-shadow: 0 0 8px rgba(212,175,55,0.6);
}

/* در نمایش بزرگ‌تر، ردیف‌ها چپ/وسط/راست دقیق می‌شوند و تراز بصری می‌گیرد */
@media (min-width: 992px) {
    .npdi-footer-left   { order: 1; text-align: right; }
    .npdi-footer-center { order: 2; text-align: center; }
    .npdi-footer-right  { order: 3; text-align: left;  }

    .npdi-footer-center .npdi-contact-list {
        display: inline-block;
        text-align: right;
        max-width: 20rem;
    }

    .npdi-footer-right .npdi-seals {
        justify-content: flex-end;
    }
    .npdi-footer-right .npdi-footer-copy {
        text-align: left;
    }
}
/* ========================= */
/* NPDI FOOTER (COMPACT)     */
/* ========================= */

.npdi-footer {
    background-color: #000;
    border-top: 1px solid rgba(212,175,55,0.4);
    box-shadow: 0 -20px 60px rgba(0,0,0,0.9),
                0 0 40px rgba(212,175,55,0.15) inset;
    color: #fff;
    padding-top: 1.5rem;   /* کمترش کردیم */
    padding-bottom: 1rem;  /* کمترش کردیم */
    font-family: 'BNazanin', sans-serif;
    direction: rtl;
    text-align: right;
}

.npdi-footer-inner {
    max-width: 1280px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 1.5rem;  /* قبلاً 2rem بود */
    column-gap: 2rem;
    padding: 0 1rem;
}

/* در دسکتاپ سه ستون */
@media (min-width: 992px) {
    .npdi-footer-inner {
        grid-template-columns: 1fr 1fr 1fr;
        align-items: flex-start;
    }

    /* ترتیب دسکتاپ:
       راست = نمادها
       وسط = تماس
       چپ = لوگو + شبکه اجتماعی
    */
    .npdi-footer-right  { order: 1; text-align: right; }
    .npdi-footer-center { order: 2; text-align: center; }
    .npdi-footer-left   { order: 3; text-align: left; }
}

/* ترتیب موبایل:
   1 لوگو و شبکه اجتماعی
   2 اطلاعات تماس
   3 نمادها
*/
.npdi-footer-left   { order: 1; }
.npdi-footer-center { order: 2; }
.npdi-footer-right  { order: 3; }

/* ستون‌ها عمومی */
.npdi-footer-col {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* ستون چپ: لوگو کوچک و آیکن شبکه اجتماعی */

.npdi-footer-logo-wrapper {
    background-color: #014421;
    border: 2px solid #d4af37;
    border-radius: 0.8rem;
    width: 70px;       /* کوچکتر از هدر برای کم کردن ارتفاع */
    height: 70px;
    min-width: 70px;
    min-height: 70px;
    padding: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        0 0 12px rgba(212,175,55,0.5),
        0 0 40px rgba(1,68,33,0.8) inset;
    background-image: radial-gradient(
        circle at 30% 30%,
        rgba(255,255,255,0.08) 0%,
        rgba(1,68,33,0) 70%
    );
}

.npdi-footer-logo-img {
    width: 52px;
    height: auto;
    max-width: 52px;
    max-height: 52px;
    object-fit: contain;
    filter: drop-shadow(0 0 8px rgba(212,175,55,0.85));
}

/* ردیف شبکه اجتماعی زیر لوگو */
.npdi-footer-social {
    display: flex;
    flex-direction: column;
}

.npdi-social-icon-row {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: nowrap;
    gap: .5rem;
}

.npdi-social-icon {
    text-decoration: none;
    display: inline-block;
}

.npdi-social-icon-shape {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    min-height: 32px;
    border-radius: .5rem;
    background: radial-gradient(circle at 50% 40%, #000 0%, #000 60%);
    border: 1px solid #d4af37;
    color: #d4af37;
    font-size: .7rem;
    font-weight: 600;
    line-height: 1;
    box-shadow:
        0 0 10px rgba(212,175,55,0.6),
        0 0 30px rgba(212,175,55,0.3);
    text-shadow: 0 0 6px rgba(212,175,55,0.8);
}

/* ستون وسط: اطلاعات تماس */

.npdi-footer-heading {
    color: #d4af37;
    font-size: .95rem;
    font-weight: 600;
    margin: 0;
    text-shadow: 0 0 8px rgba(212,175,55,0.6);
    line-height: 1.6;
    text-align: center;
}

@media (min-width: 992px) {
    .npdi-footer-center .npdi-footer-heading {
        text-align: center;
    }
    .npdi-footer-right .npdi-footer-heading {
        text-align: right;
    }
}

.npdi-contact-list {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: .9rem;
    line-height: 1.8;
    color: #fff;
}
.npdi-contact-list li {
    margin-bottom: .4rem;
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    column-gap: .5rem;
}
.npdi-contact-label {
    color: #d4af37;
    font-weight: 600;
    min-width: auto;
    text-shadow: 0 0 8px rgba(212,175,55,0.5);
}
.npdi-contact-value {
    color: #fff;
    text-decoration: none;
}
.npdi-contact-value:hover {
    color: #d4af37;
}

/* ستون راست: نمادها و حقوق */

.npdi-seals {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1rem;
    align-items: flex-start;
}

.npdi-seal-box {
    background-color: #0b0b0b;
    border: 1px solid rgba(212,175,55,0.4);
    border-radius: 0.5rem;
    padding: .5rem .75rem;
    min-width: 80px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        0 0 12px rgba(212,175,55,0.3),
        0 0 40px rgba(212,175,55,0.15);
}

.npdi-seal-placeholder {
    font-size: .7rem;
    font-weight: 600;
    color: #000;
    background-color: #d4af37;
    border-radius: .3rem;
    padding: .4rem .5rem;
    line-height: 1.2;
    box-shadow:
        0 0 10px rgba(212,175,55,0.8),
        0 0 30px rgba(212,175,55,0.4);
}

.npdi-footer-copy {
    font-size: .8rem;
    color: #bbbbbb;
    line-height: 1.6;
    margin-top: .5rem;
    text-align: right;
    text-justify: inter-word;
}

@media (min-width: 992px) {
    .npdi-footer-copy {
        text-align: right;
    }
    .npdi-footer-right {
        text-align: right;
    }
}

/* خط انتهایی پایین فوتر */
.npdi-footer-bottom {
    border-top: 1px solid rgba(212,175,55,0.25);
    margin-top: 1.5rem;
    padding-top: .75rem;
    background: radial-gradient(circle at 50% 0%, rgba(212,175,55,0.08) 0%, rgba(0,0,0,0) 70%);
}

.npdi-footer-bottom-inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 1rem;
    text-align: center;
}

.npdi-footer-bottom-text {
    color: #d4af37;
    font-size: .75rem;
    line-height: 1.5;
    text-shadow: 0 0 8px rgba(212,175,55,0.6);
}
/* ========================= */
/* NPDI FOOTER FINAL         */
/* ========================= */

.npdi-footer {
    background-color: #000;
    border-top: 1px solid rgba(212,175,55,0.4);
    box-shadow:
        0 -20px 60px rgba(0,0,0,0.9),
        0 0 40px rgba(212,175,55,0.15) inset;
    color: #fff;
    padding-top: 1rem;   /* کمتر شد */
    padding-bottom: 0.5rem;  /* کمتر شد */
    font-family: 'BNazanin', sans-serif;
    direction: rtl;
    text-align: right;
}

.npdi-footer-inner {
    max-width: 1280px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 1rem;
    column-gap: 2rem;
    padding: 0 1rem;
}

/* ترتیب موبایل (زیر هم):
   1 = ستون راست (مجوزها)
   2 = ستون وسط (تماس)
   3 = ستون چپ (لوگو+سوشال)
   چون در موبایل عملاً راست/چپ فیزیکی معنی نداره، ولی ما می‌تونیم ترتیب منطقی رو بچینیم.
   تو می‌خوای ستون وسط وسط بمونه، ولی توی موبایل زیر هم می‌آد، این مشکلی نداره.
*/
.npdi-footer-right  { order: 1; text-align: right; }
.npdi-footer-center { order: 2; text-align: right; }
.npdi-footer-left   { order: 3; text-align: right; }

/* دسکتاپ: سه‌ستونه */
@media (min-width: 992px) {
    .npdi-footer-inner {
        grid-template-columns: 1fr 1fr 1fr;
        align-items: flex-start;
    }

    /* الان طبق خواسته جدید:
       ستون راست بصری = مجوزها و نمادها
       ستون وسط = اطلاعات تماس
       ستون چپ بصری = لوگو و شبکه اجتماعی
    */
    .npdi-footer-right  { order: 1; text-align: right; }
    .npdi-footer-center { order: 2; text-align: center; }
    .npdi-footer-left   { order: 3; text-align: left; }
}

/* ستون‌ها */
.npdi-footer-col {
    display: flex;
    flex-direction: column;
    gap: .75rem; /* کمترش کردیم چون می‌خوای ارتفاع کلی کم بشه */
}

/* ========== ستون لوگو + سوشال (الان ستون چپ دسکتاپ) ========== */

.npdi-footer-logo-wrapper {
    background-color: #014421;
    border: 2px solid #d4af37;
    border-radius: 0.8rem;
    width: 70px;
    height: 70px;
    min-width: 70px;
    min-height: 70px;
    padding: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        0 0 12px rgba(212,175,55,0.5),
        0 0 40px rgba(1,68,33,0.8) inset;
    background-image: radial-gradient(
        circle at 30% 30%,
        rgba(255,255,255,0.08) 0%,
        rgba(1,68,33,0) 70%
    );
}
.npdi-footer-logo-img {
    width: 52px;
    height: auto;
    max-width: 52px;
    max-height: 52px;
    object-fit: contain;
    filter: drop-shadow(0 0 8px rgba(212,175,55,0.85));
}

/* ردیف آیکن‌های شبکه اجتماعی */
.npdi-footer-social {
    display: flex;
    flex-direction: column;
}
.npdi-social-icon-row {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row-reverse; /* چون تو اسکرین گفتی IG آخر باشه سمت راست، به همون حس نزدیک می‌شه */
    gap: .5rem;
}
.npdi-social-icon {
    text-decoration: none;
    display: inline-block;
}
.npdi-social-icon-shape {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    min-height: 32px;
    border-radius: .5rem;
    background: radial-gradient(circle at 50% 40%, #000 0%, #000 60%);
    border: 1px solid #d4af37;
    color: #d4af37;
    font-size: .7rem;
    font-weight: 600;
    line-height: 1;
    box-shadow:
        0 0 10px rgba(212,175,55,0.6),
        0 0 30px rgba(212,175,55,0.3);
    text-shadow: 0 0 6px rgba(212,175,55,0.8);
}

/* ========== ستون وسط (اطلاعات تماس) ========== */

.npdi-footer-heading {
    color: #d4af37;
    font-size: .9rem;
    font-weight: 600;
    margin: 0;
    line-height: 1.4;
    text-shadow: 0 0 8px rgba(212,175,55,0.6);
}
@media (min-width: 992px) {
    .npdi-footer-center .npdi-footer-heading {
        text-align: center;
    }
    .npdi-footer-right .npdi-footer-heading {
        text-align: right;
    }
}

.npdi-contact-list {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: .9rem;
    line-height: 1.7;
    color: #fff;
}
.npdi-contact-list li {
    margin-bottom: .4rem;
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    column-gap: .5rem;
}
.npdi-contact-label {
    color: #d4af37;
    font-weight: 600;
    min-width: auto;
    text-shadow: 0 0 8px rgba(212,175,55,0.5);
}
.npdi-contact-value {
    color: #fff;
    text-decoration: none;
}
.npdi-contact-value:hover {
    color: #d4af37;
}

/* ========== ستون راست (مجوزها و نمادها) ========== */

.npdi-seals {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem .75rem;
    align-items: flex-start;
}
.npdi-seal-box {
    background-color: rgba(0,0,0,0.6);
    border: 1px solid rgba(212,175,55,0.6);
    border-radius: 0.5rem;
    padding: .5rem .75rem;
    min-width: 80px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        0 0 12px rgba(212,175,55,0.6),
        0 0 40px rgba(212,175,55,0.25);
}
.npdi-seal-placeholder {
    font-size: .7rem;
    font-weight: 600;
    color: #000;
    background-color: #d4af37;
    border-radius: .3rem;
    padding: .4rem .5rem;
    line-height: 1.2;
    box-shadow:
        0 0 10px rgba(212,175,55,0.8),
        0 0 30px rgba(212,175,55,0.4);
}

.npdi-footer-copy {
    font-size: .8rem;
    color: #bbbbbb;
    line-height: 1.5;
    margin-top: .5rem;
    text-align: right;
}

/* ========== نوار انتهایی پایین فوتر ========== */

.npdi-footer-bottom {
    border-top: 1px solid rgba(212,175,55,0.25);
    margin-top: 1rem;
    padding-top: .5rem;
    background: radial-gradient(
        circle at 50% 0%,
        rgba(212,175,55,0.08) 0%,
        rgba(0,0,0,0) 70%
    );
}

.npdi-footer-bottom-inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 1rem;
    text-align: center;
}

.npdi-footer-bottom-text {
    color: #d4af37;
    font-size: .75rem;
    line-height: 1.4;
    text-shadow: 0 0 8px rgba(212,175,55,0.6);
    font-weight: 500;
}
/****************************************/
/* NPDI FOOTER FINAL TUNING OVERRIDES  */
/****************************************/

/* 1) کاهش بیشتر ارتفاع کلی فوتر */
.npdi-footer {
    padding-top: 0.5rem !important;      /* از 1rem شد نیم‌رم */
    padding-bottom: 0.25rem !important;  /* از 0.5rem شد ربع رم */
}
.npdi-footer-inner {
    row-gap: 0.5rem !important;          /* بین ستون‌ها هم کمتر */
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.npdi-footer-col {
    gap: 0.5rem !important;              /* ارتفاع داخلی ستون هم کمتر */
}

/* نوار پایینی هم فشرده‌تر */
.npdi-footer-bottom {
    margin-top: 0.5rem !important;       /* کمتر از قبل */
    padding-top: 0.4rem !important;
}
.npdi-footer-bottom-text {
    font-size: .7rem !important;
    line-height: 1.4 !important;
}

/* 2) لوگو باید کاملاً بره سمت چپ ستون خودش و بالا بچسبه */

.npdi-footer-left {
    align-items: flex-start !important;  /* ستون رو از سمت خودش شروع کن */
    text-align: left !important;
}

@media (min-width: 992px) {
    .npdi-footer-left {
        align-items: flex-start !important;
        text-align: left !important;
    }
}

/* خود باکس لوگو بدون مارجین اضافی */
.npdi-footer-logo-wrapper {
    margin: 0 !important;
}

/* ردیف آیکن‌های سوشال بیاد زیر لوگو، از همون چپ ستون شروع بشه */
.npdi-footer-social {
    align-items: flex-start !important;
}
.npdi-social-icon-row {
    justify-content: flex-start !important;
    flex-direction: row !important;   /* همون ترتیبی که حالا تو اسکرین می‌خوای */
}

/* آیکن‌ها رو کمی کوچیک‌تر کن تا فوتر جمع بشه */
.npdi-social-icon-shape {
    min-width: 28px !important;
    min-height: 28px !important;
    font-size: .6rem !important;
    border-radius: .4rem !important;
    box-shadow:
        0 0 8px rgba(212,175,55,0.6),
        0 0 20px rgba(212,175,55,0.25) !important;
}

/* 3) عنوان ستون وسط باید دقیقاً وسط ستون وسط باشد */
.npdi-footer-center {
    text-align: center !important;
    align-items: center !important;
}

.npdi-footer-center .npdi-footer-heading {
    width: 100%;
    text-align: center !important;
    justify-content: center !important;
    font-size: .9rem !important;
    line-height: 1.4 !important;
    margin-bottom: .25rem !important;
}

/* لیست تماس وسط ستون می‌نشیند ولی متن داخل هر خط RTL و مرتب بمونه */
.npdi-footer-center .npdi-contact-list {
    text-align: right !important;        /* متن خود اطلاعات هنوز راست‌چین بمونه */
    max-width: 22rem !important;
    margin: 0 auto !important;
}

/* 4) برچسب "آدرس:" کنار آدرس باشد (نه بالا) و همه خطوط با هم تراز طلایی / سفید */
.npdi-contact-list li {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    column-gap: .5rem !important;
    row-gap: 0 !important;
    line-height: 1.6 !important;
    margin-bottom: .3rem !important;
}

/* برچسب ها (آدرس:, کدپستی:, تلفن:, ایمیل:) */
.npdi-contact-label {
    flex-shrink: 0 !important;
    min-width: 4.2rem !important; /* برچسب‌ها در یک ستون ثابت، تمیز */
    font-size: .9rem !important;
    line-height: 1.6 !important;
    color: #d4af37 !important;
    font-weight: 600 !important;
    text-shadow: 0 0 8px rgba(212,175,55,0.5) !important;
}

/* مقدار متن کنار برچسب */
.npdi-contact-value {
    font-size: .9rem !important;
    line-height: 1.6 !important;
    color: #fff !important;
    text-decoration: none !important;
}
.npdi-contact-value:hover {
    color: #d4af37 !important;
}

/* 5) ستون راست: تیتر "مجوزها و اعتبارها" و متن حقوقی */
.npdi-footer-right {
    text-align: right !important;
    align-items: flex-end !important;
}

@media (min-width: 992px) {
    .npdi-footer-right {
        text-align: right !important;
        align-items: flex-end !important;
    }
}

.npdi-footer-right .npdi-footer-heading {
    text-align: right !important;
    margin-bottom: .5rem !important;
    font-size: .9rem !important;
    line-height: 1.4 !important;
}

/* باکس نمادها فشرده‌تر بشه تا ارتفاع کم شه */
.npdi-seals {
    gap: .5rem !important;
}
.npdi-seal-box {
    padding: .4rem .6rem !important;
    min-height: 36px !important;
    min-width: 72px !important;
    box-shadow:
        0 0 10px rgba(212,175,55,0.6),
        0 0 24px rgba(212,175,55,0.25) !important;
}
.npdi-seal-placeholder {
    font-size: .65rem !important;
    padding: .35rem .5rem !important;
    line-height: 1.2 !important;
}

/* متن حقوقی ستون راست (کنار نمادها) در یک بلوک جمع و یک‌خطی تا جایی که جا می‌شود */
.npdi-footer-copy {
    font-size: .75rem !important;
    line-height: 1.4 !important;
    margin-top: .5rem !important;
    max-width: 18rem !important;
    white-space: normal !important;
    text-align: right !important;
    color: #fff !important;
}

/* 6) خط پایین (کپی‌رایت نهایی) فشرده‌تر و کاملاً وسط */
.npdi-footer-bottom-inner {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.npdi-footer-bottom-text {
    display: inline-block !important;
    max-width: 100% !important;
    white-space: normal !important;
    font-size: .7rem !important;
    line-height: 1.4 !important;
}
/****************************************/
/* NPDI FOOTER - FINAL LAYOUT ADJUST   */
/****************************************/

/* ستون چپ (لوگو + شبکه‌ها) باید کامل بره به گوشه چپ فوتر */
.npdi-footer-left {
    order: 3 !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;   /* چسبیده به چپ در دسکتاپ هم */
    text-align: left !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
}

/* باکس لوگو بالاتر و بدون مارجین اضافی */
.npdi-footer-logo-wrapper {
    margin: 0 0 .5rem 0 !important;
    align-self: flex-start !important;
}

/* شبکه‌های اجتماعی زیر لوگو و از گوشه چپ شروع شود */
.npdi-footer-social {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    margin: 0 !important;
    padding: 0 !important;
}

.npdi-social-icon-row {
    display: flex !important;
    flex-wrap: nowrap !important;
    flex-direction: row !important;      /* ترتیب IG, TG, IN, YT همونکه نشون دادی */
    justify-content: flex-start !important;
    align-items: center !important;
    gap: .5rem !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* ستون وسط (ارتباط با نواندیشان بهره‌ور) وسط بماند */
.npdi-footer-center {
    order: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;      /* سنتر تیتر */
    text-align: center !important;
    margin: 0 auto !important;
}

/* تیتر وسط دقیقاً در مرکز */
.npdi-footer-center .npdi-footer-heading {
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
    font-size: .9rem !important;
    line-height: 1.4 !important;
    margin-bottom: .4rem !important;
    color: #d4af37 !important;
}

/* اطلاعات تماس زیر تیتر، منظم دو ستونه: label طلایی / متن سفید */
.npdi-footer-center .npdi-contact-list {
    max-width: 24rem !important;
    width: 100% !important;
    margin: 0 auto !important;
    text-align: right !important;      /* متن تماس هنوز راست‌چین برای خوانایی */
}

/* هر خط تماس = یک ردیف افقی label + value */
.npdi-footer-center .npdi-contact-list li {
    width: 100% !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    column-gap: .5rem !important;
    row-gap: 0 !important;
    line-height: 1.6 !important;
    margin-bottom: .35rem !important;
}

/* ستون راست (مجوزها و اعتبارها) باید بره گوشه راست */
.npdi-footer-right {
    order: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;     /* بچسبه به راست */
    text-align: right !important;
    padding-right: 0 !important;
    margin-right: 0 !important;
}

/* تیتر "مجوزها و اعتبارها" در ستون راست نزدیک گوشه راست */
.npdi-footer-right .npdi-footer-heading {
    width: 100% !important;
    text-align: right !important;
    margin: 0 0 .5rem 0 !important;
    font-size: .9rem !important;
    line-height: 1.4 !important;
    color: #d4af37 !important;
}

/* باکس نمادها (ENAMAD / MEDIA) کنار هم، به راست بچسبند */
.npdi-seals {
    width: 100% !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;   /* به راست بچسبه */
    align-items: flex-start !important;
    gap: .5rem !important;
    margin: 0 0 .5rem 0 !important;
    padding: 0 !important;
}

/* هر باکس نماد جمع و سایزش ثابت */
.npdi-seal-box {
    min-width: 72px !important;
    min-height: 36px !important;
    padding: .4rem .6rem !important;
    background-color: rgba(0,0,0,0.6) !important;
    border: 1px solid rgba(212,175,55,0.6) !important;
    border-radius: .5rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow:
        0 0 10px rgba(212,175,55,0.6),
        0 0 24px rgba(212,175,55,0.25) !important;
}
.npdi-seal-placeholder {
    font-size: .65rem !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    color: #000 !important;
    background-color: #d4af37 !important;
    border-radius: .3rem !important;
    padding: .35rem .5rem !important;
    box-shadow:
        0 0 10px rgba(212,175,55,0.8),
        0 0 30px rgba(212,175,55,0.4) !important;
}

/* متن حقوقی ستون راست: زیر نمادها بیا و در همان راستا قرار بگیره */
.npdi-footer-copy {
    width: 100% !important;
    max-width: 20rem !important;
    text-align: right !important;
    color: #fff !important;
    font-size: .75rem !important;
    line-height: 1.4 !important;
    margin: .5rem 0 0 0 !important;
}

/* ریسپانسیو دسکتاپ: سه‌ستونه کنار هم */
@media (min-width: 992px) {

    .npdi-footer-inner {
        grid-template-columns: 1fr 1fr 1fr !important;
    }

    .npdi-footer-right {
        order: 1 !important;          /* راست */
        align-items: flex-end !important;
        text-align: right !important;
    }

    .npdi-footer-center {
        order: 2 !important;          /* وسط */
        align-items: center !important;
        text-align: center !important;
    }

    .npdi-footer-left {
        order: 3 !important;          /* چپ */
        align-items: flex-start !important;
        text-align: left !important;
    }

    /* تیتر وسط در دسکتاپ هم وسط بمونه */
    .npdi-footer-center .npdi-footer-heading {
        text-align: center !important;
        justify-content: center !important;
    }
}

/* در موبایل: هنوز زیر هم دیده می‌شن.
   ترتیب موبایل (زیر هم از بالا به پایین) هنوز
   1 = مجوزها (راست)
   2 = ارتباط
   3 = لوگو/شبکه
   است، که الان با orderی که گذاشتیم همین رفتار رو خواهد داشت.
*/
/* =============== */
/* FOOTER FINAL    */
/* =============== */

.npdi-footer {
    background-color: #000;
    border-top: 1px solid rgba(212,175,55,0.4);
    box-shadow:
        0 -20px 60px rgba(0,0,0,0.9),
        0 0 40px rgba(212,175,55,0.15) inset;
    color: #fff;
    font-family: 'BNazanin', sans-serif;
    direction: rtl;
    text-align: right;
    padding-top: 0.5rem;       /* خیلی کم برای ارتفاع */
    padding-bottom: 0.25rem;   /* خیلی کم برای ارتفاع */
}

/* ردیف سه ستونه */
.npdi-footer-row {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 1rem;
    display: flex;
    flex-wrap: wrap;
    row-gap: 1rem;
    column-gap: 1rem;
    align-items: flex-start;
    justify-content: space-between;
}

/* ستون‌ها در دسکتاپ سه‌تایی کنار هم،
   در موبایل زیر هم */
.npdi-footer-left,
.npdi-footer-center,
.npdi-footer-right {
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

/* ستون چپ: لوگو و شبکه اجتماعی */
.npdi-footer-left {
    flex: 1 1 220px;
    order: 1;
    align-items: flex-start;
    text-align: left;
}

/* باکس لوگو */
.npdi-footer-logo-wrapper {
    background-color: #014421;
    border: 2px solid #d4af37;
    border-radius: 0.8rem;
    width: 70px;
    height: 70px;
    min-width: 70px;
    min-height: 70px;
    padding: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        0 0 12px rgba(212,175,55,0.5),
        0 0 40px rgba(1,68,33,0.8) inset;
    background-image: radial-gradient(
        circle at 30% 30%,
        rgba(255,255,255,0.08) 0%,
        rgba(1,68,33,0) 70%
    );
    margin: 0;
}
.npdi-footer-logo-img {
    width: 52px;
    height: auto;
    max-width: 52px;
    max-height: 52px;
    object-fit: contain;
    filter: drop-shadow(0 0 8px rgba(212,175,55,0.85));
}

/* آیکن‌های شبکه اجتماعی زیر لوگو */
.npdi-social-icon-row {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: nowrap;
    gap: .5rem;
}
.npdi-social-icon {
    text-decoration: none;
    display: inline-block;
}
.npdi-social-icon-shape {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    min-height: 28px;
    border-radius: .4rem;
    background: radial-gradient(circle at 50% 40%, #000 0%, #000 60%);
    border: 1px solid #d4af37;
    color: #d4af37;
    font-size: .6rem;
    font-weight: 600;
    line-height: 1;
    box-shadow:
        0 0 8px rgba(212,175,55,0.6),
        0 0 20px rgba(212,175,55,0.25);
    text-shadow: 0 0 6px rgba(212,175,55,0.8);
}

/* ستون وسط: عنوان وسط، اطلاعات تماس زیرش */
.npdi-footer-center {
    flex: 1 1 320px;
    order: 2;
    align-items: center;
    text-align: center;
}
.npdi-footer-heading {
    color: #d4af37;
    font-size: .9rem;
    font-weight: 600;
    margin: 0;
    line-height: 1.4;
    text-shadow: 0 0 8px rgba(212,175,55,0.6);
    text-align: center;
}
.npdi-contact-list {
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 26rem;
    text-align: right; /* متن اطلاعات سازمان راست‌چین بمونه */
}
.npdi-contact-line {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    column-gap: .5rem;
    margin-bottom: .35rem;
    line-height: 1.6;
}
.npdi-contact-label {
    flex-shrink: 0;
    min-width: 4.2rem;
    font-size: .9rem;
    line-height: 1.6;
    color: #d4af37;
    font-weight: 600;
    text-shadow: 0 0 8px rgba(212,175,55,0.5);
}
.npdi-contact-value {
    font-size: .9rem;
    line-height: 1.6;
    color: #fff;
    text-decoration: none;
}
.npdi-contact-value:hover {
    color: #d4af37;
}

/* ستون راست: نمادها */
.npdi-footer-right {
    flex: 1 1 220px;
    order: 3;
    align-items: flex-end;
    text-align: right;
}
.npdi-seals {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .5rem;
}
.npdi-seal-box {
    background-color: rgba(0,0,0,0.6);
    border: 1px solid rgba(212,175,55,0.6);
    border-radius: .5rem;
    padding: .4rem .6rem;
    min-width: 72px;
    min-height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        0 0 10px rgba(212,175,55,0.6),
        0 0 24px rgba(212,175,55,0.25);
}
.npdi-seal-placeholder {
    font-size: .65rem;
    line-height: 1.2;
    font-weight: 600;
    color: #000;
    background-color: #d4af37;
    border-radius: .3rem;
    padding: .35rem .5rem;
    box-shadow:
        0 0 10px rgba(212,175,55,0.8),
        0 0 30px rgba(212,175,55,0.4);
}

/* متن حقوقی زیر نمادها، یک بلوک جمع‌وجور */
.npdi-footer-copy {
    font-size: .75rem;
    line-height: 1.4;
    color: #fff;
    margin-top: .5rem;
    max-width: 18rem;
    text-align: right;
}

/* نوار پایین فوتر */
.npdi-footer-bottom {
    border-top: 1px solid rgba(212,175,55,0.25);
    background: radial-gradient(
        circle at 50% 0%,
        rgba(212,175,55,0.08) 0%,
        rgba(0,0,0,0) 70%
    );
    margin-top: .5rem;
    padding-top: .4rem;
}
.npdi-footer-bottom-inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 1rem;
    text-align: center;
}
.npdi-footer-bottom-text {
    color: #d4af37;
    font-size: .7rem;
    line-height: 1.4;
    font-weight: 500;
    text-shadow: 0 0 8px rgba(212,175,55,0.6);
}

/* موبایل: ستون‌ها زیر هم می‌افتند */
@media (max-width: 991px) {
    .npdi-footer-left,
    .npdi-footer-center,
    .npdi-footer-right {
        flex: 1 1 100%;
        align-items: flex-start;
        text-align: right;
    }

    .npdi-footer-center {
        align-items: flex-start;
        text-align: right;
    }

    .npdi-footer-heading {
        text-align: right;
    }

    .npdi-seals {
        justify-content: flex-start;
    }
}
/* ========================= */
/* NPDI FOOTER PINNED EDGES  */
/* ========================= */

/* ردیف اصلی فوتر: سه ستون در یک خط، فاصله میان‌شون مساوی */
.npdi-footer-row {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 1rem;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    column-gap: 1rem !important;
    row-gap: 1rem !important;
}

/* ستون چپ = لوگو سازمان + شبکه اجتماعی */
.npdi-footer-left {
    order: 1 !important;
    flex: 1 1 220px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;   /* یعنی به لبه چپ ستون بچسب */
    text-align: left !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* لوگو سازمان */
.npdi-footer-logo-wrapper {
    margin: 0 0 .5rem 0 !important;       /* لوگو و بعد شبکه‌ها */
    align-self: flex-start !important;    /* خود لوگو هم بره به لبه چپ */
    width: 70px !important;
    height: 70px !important;
    min-width: 70px !important;
    min-height: 70px !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* شبکه‌های اجتماعی زیر لوگو، نه کنار لوگو */
.npdi-social-icon-row {
    list-style: none;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    flex-direction: row !important;       /* IG, TG, IN, YT در یک ردیف */
    justify-content: flex-start !important;
    align-items: center !important;
    gap: .5rem !important;
}

/* آیکون هر شبکه */
.npdi-social-icon-shape {
    min-width: 28px !important;
    min-height: 28px !important;
    border-radius: .4rem !important;
    font-size: .6rem !important;
    line-height: 1 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    background: radial-gradient(circle at 50% 40%, #000 0%, #000 60%);
    border: 1px solid #d4af37;
    color: #d4af37;
    box-shadow:
        0 0 8px rgba(212,175,55,0.6),
        0 0 20px rgba(212,175,55,0.25);
    text-shadow: 0 0 6px rgba(212,175,55,0.8);
    font-weight: 600;
}

/* ستون وسط = اطلاعات تماس */
.npdi-footer-center {
    order: 2 !important;
    flex: 1 1 320px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;       /* تیتر وسط */
    text-align: center !important;
    margin: 0 auto !important;
    padding: 0 !important;
}
.npdi-footer-center .npdi-footer-heading {
    text-align: center !important;
    margin: 0 0 .4rem 0 !important;
    line-height: 1.4 !important;
    font-size: .9rem !important;
    color: #d4af37 !important;
    text-shadow: 0 0 8px rgba(212,175,55,0.6);
}
.npdi-contact-list {
    list-style: none;
    margin: 0 !important;
    padding: 0 !important;
    max-width: 26rem !important;
    width: 100% !important;
    text-align: right !important;         /* جزئیات تماس راست‌چین بماند */
}
.npdi-contact-line {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    column-gap: .5rem !important;
    margin-bottom: .35rem !important;
    line-height: 1.6 !important;
}
.npdi-contact-label {
    flex-shrink: 0 !important;
    min-width: 4.2rem !important;
    color: #d4af37 !important;
    font-weight: 600 !important;
    font-size: .9rem !important;
    line-height: 1.6 !important;
    text-shadow: 0 0 8px rgba(212,175,55,0.5) !important;
}
.npdi-contact-value {
    font-size: .9rem !important;
    line-height: 1.6 !important;
    color: #fff !important;
    text-decoration: none !important;
}
.npdi-contact-value:hover {
    color: #d4af37 !important;
}

/* ستون راست = مجوزها و اعتبارها باید تا لبه راست فوتر بچسبد */
.npdi-footer-right {
    order: 3 !important;
    flex: 1 1 220px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;     /* یعنی کلاً همه چیز بره راست */
    text-align: right !important;
    margin-right: 0 !important;
    padding-right: 0 !important;
}

/* تیتر «مجوزها و اعتبارها» بالا گوشه راست */
.npdi-footer-right .npdi-footer-heading {
    width: 100% !important;
    text-align: right !important;
    margin: 0 0 .5rem 0 !important;
    font-size: .9rem !important;
    line-height: 1.4 !important;
    color: #d4af37 !important;
    text-shadow: 0 0 8px rgba(212,175,55,0.6);
}

/* باکس نمادها (ENAMAD / MEDIA) در راست‌ترین حالت */
.npdi-seals {
    width: 100% !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    align-items: flex-start !important;
    gap: .5rem !important;
    padding: 0 !important;
    margin: 0 0 .5rem 0 !important;
}
.npdi-seal-box {
    background-color: rgba(0,0,0,0.6) !important;
    border: 1px solid rgba(212,175,55,0.6) !important;
    border-radius: .5rem !important;
    padding: .4rem .6rem !important;
    min-width: 72px !important;
    min-height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow:
        0 0 10px rgba(212,175,55,0.6),
        0 0 24px rgba(212,175,55,0.25) !important;
}
.npdi-seal-placeholder {
    font-size: .65rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    padding: .35rem .5rem !important;
    background-color: #d4af37 !important;
    color: #000 !important;
    border-radius: .3rem !important;
    box-shadow:
        0 0 10px rgba(212,175,55,0.8),
        0 0 30px rgba(212,175,55,0.4) !important;
}

/* متن حقوقی درست زیر نمادها، در همان راستا */
.npdi-footer-copy {
    max-width: 18rem !important;
    font-size: .75rem !important;
    line-height: 1.4 !important;
    color: #fff !important;
    text-align: right !important;
    margin: .5rem 0 0 0 !important;
}

/* ارتفاع فوتر کم بمونه */
.npdi-footer {
    padding-top: .3rem !important;
    padding-bottom: .2rem !important;
}
.npdi-footer-bottom {
    margin-top: .5rem !important;
    padding-top: .4rem !important;
}
.npdi-footer-bottom-text {
    font-size: .7rem !important;
    line-height: 1.4 !important;
    color: #d4af37 !important;
    text-align: center !important;
    text-shadow: 0 0 8px rgba(212,175,55,0.5) !important;
}

/* موبایل: ستون‌ها زیر هم، وسط‌چین برای تمیزی */
@media (max-width: 768px) {
    .npdi-footer-row {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
    }

    .npdi-footer-left,
    .npdi-footer-center,
    .npdi-footer-right {
        flex: 1 1 100% !important;
        align-items: center !important;
        text-align: center !important;
    }

    /* در موبایل: لوگو وسط، بعد شبکه‌ها زیرش */
    .npdi-footer-logo-wrapper {
        margin: 0 0 .5rem 0 !important;
    }

    .npdi-social-icon-row {
        justify-content: center !important;
    }

    /* در موبایل نمادها هم وسط */
    .npdi-footer-right {
        align-items: center !important;
        text-align: center !important;
    }
    .npdi-seals {
        justify-content: center !important;
    }
    .npdi-footer-copy {
        text-align: center !important;
    }
}
/* ========================= */
/* NPDI FOOTER SWAP COLUMNS  */
/* ========================= */

/* در دسکتاپ ستون‌ها را جابه‌جا می‌کنیم */
@media (min-width: 769px) {
  .npdi-footer-row {
    flex-direction: row-reverse !important; /* ستون‌ها را برعکس کن */
  }

  /* چون ستون‌ها جابه‌جا شدن، تنظیم ترازبندی‌ها را نیز معکوس می‌کنیم */
  .npdi-footer-left {
    align-items: flex-end !important;
    text-align: right !important;
  }

  .npdi-footer-right {
    align-items: flex-start !important;
    text-align: left !important;
  }

  /* آیکون شبکه‌های اجتماعی در راست */
  .npdi-social-icon-row {
    justify-content: flex-end !important;
  }

  /* نمادها در چپ */
  .npdi-seals {
    justify-content: flex-start !important;
  }
}

/* در موبایل ترتیب اصلی حفظ شود (زیر هم وسط‌چین) */
@media (max-width: 768px) {
  .npdi-footer-row {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
  }
/* هدر ثابت بالای صفحه */
.npdi-header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 9999;
  background: #000; /* همون رنگ هدر خودت */
  /* ✅ این دو خط رو اضافه کن تا قد هدر بیشتر بشه */
  padding: 22px 16px;   /* بالا/پایین 22px ، راست/چپ 16px */
  min-height: 110px;    /* مطمئن می‌شیم لوگو کامل جا می‌شه */
}

/* چون هدر الان بلندتره، محتوا باید پایین‌تر شروع بشه */
body {
  padding-top: 130px;  /* اگر هنوز کمی میره زیر هدر، بکنش 140px */
}
/* ====== هدر ثابت و بلندتر ====== */
.npdi-header {
  position: fixed !important;   /* ثابت بالای صفحه */
  top: 0;
  right: 0;
  left: 0;
  z-index: 9999;
  background: #000;             /* رنگ هدر */
  padding: 22px 16px;           /* افزایش ارتفاع از بالا و پایین */
  min-height: 110px;            /* قد کافی برای نمایش کامل لوگو */
  display: flex;
  align-items: center;
  justify-content: space-between;
  transition: all 0.3s ease;
}

/* چون هدر ثابت است، محتوا باید پایین‌تر شروع شود */
body {
  padding-top: 130px;  /* عدد را متناسب با قد واقعی هدر تنظیم کن */
}
