:root{
  --nfpk-color-black:#000;
  --nfpk-color-red:#ED2025;
  --nfpk-color-gray:#8C8C8C;
  --nfpk-color-white:#fff;
  --nfpk-surface:var(--nfpk-theme-surface,rgba(0,0,0,.50));
  --nfpk-stroke-color:var(--nfpk-theme-stroke,#fff);
  --nfpk-stroke-width:2px;
  --nfpk-stroke-hover:#ED2025;
  --nfpk-radius-lg:25px;
  --nfpk-radius-md:15px;
  --nfpk-font-family:var(--e-global-typography-text-font-family,inherit);
  --nfpk-transition-fast:160ms ease;
}
.nfpk-component{box-sizing:border-box;font-family:var(--nfpk-font-family)}
.nfpk-component *,.nfpk-component *::before,.nfpk-component *::after{box-sizing:border-box}
.nfpk-surface{background:var(--nfpk-surface);border:2px solid var(--nfpk-stroke-color);border-radius:var(--nfpk-radius-lg);transition:border-color var(--nfpk-transition-fast)}
@media(hover:hover) and (pointer:fine){.nfpk-surface:hover{border-color:var(--nfpk-stroke-hover)}}
.nfpk-dir-rtl{direction:rtl;text-align:start}.nfpk-dir-ltr{direction:ltr;text-align:start}
.nfpk-icon{width:1.15em;height:1.15em;display:block;flex:0 0 auto;color:currentColor;overflow:visible}
.nfpk-icon path,.nfpk-icon circle,.nfpk-icon rect{vector-effect:non-scaling-stroke}
.nfpk-editor-notice{padding:12px 14px;background:#fff3cd;border:1px solid #ffe69c;border-radius:8px;color:#664d03;font-size:12px;line-height:1.7}
@media(prefers-reduced-motion:reduce){.nfpk-component,.nfpk-component *,.nfpk-component *::before,.nfpk-component *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* Structural mobile/tablet viewport guard — Core level, no 100vw hacks. */
@media(max-width:1180px){
  html,body{width:100%;max-width:100%;margin-left:0;margin-right:0;overflow-x:clip;overscroll-behavior-x:none}
  body{min-width:0;position:relative}
  #page,.site,.site-main,main,.elementor-location-header,.elementor-location-footer,.elementor-location-single,.elementor-location-archive{max-width:100%;min-width:0}
  .e-con,.e-con-inner,.elementor-container,.elementor-widget-wrap{min-width:0}
  img,video,canvas,svg{max-width:100%}
}
@supports not (overflow:clip){@media(max-width:1180px){html,body{overflow-x:hidden}}}


/* Core 6.0.5 — language typography policy */
html[lang^="en"]{
  --nfpk-font-family:"IRANSans",Arial,sans-serif;
  --e-global-typography-primary-font-family:"IRANSans";
  --e-global-typography-secondary-font-family:"IRANSans";
  --e-global-typography-text-font-family:"IRANSans";
  --e-global-typography-accent-font-family:"IRANSans";
}
html[lang^="fa"],
html[lang^="ar"]{
  --nfpk-font-family:"IRANSansFaNum","IRANSans",Tahoma,Arial,sans-serif;
  --e-global-typography-primary-font-family:"IRANSansFaNum";
  --e-global-typography-secondary-font-family:"IRANSansFaNum";
  --e-global-typography-text-font-family:"IRANSansFaNum";
  --e-global-typography-accent-font-family:"IRANSansFaNum";
}
html[lang^="en"] body,
html[lang^="en"] input,
html[lang^="en"] button,
html[lang^="en"] select,
html[lang^="en"] textarea,
html[lang^="en"] option,
html[lang^="en"] .elementor-heading-title,
html[lang^="en"] .elementor-widget-text-editor,
html[lang^="en"] .elementor-button-text,
html[lang^="en"] .elementor-icon-list-text,
html[lang^="en"] .nfpk-component,
html[lang^="en"] .nfpk-pl-v6{
  font-family:"IRANSans",Arial,sans-serif!important;
  font-variant-numeric:lining-nums!important;
  font-feature-settings:"lnum" 1!important;
}
/* English content must never inherit the FaNum family from Elementor, widgets, or translated templates.
   Text-bearing elements are forced to the non-FaNum IRANSans family while icon-font elements remain untouched. */
html[lang^="en"] :where(h1,h2,h3,h4,h5,h6,p,a,li,dt,dd,th,td,label,blockquote,figcaption,time,small,strong,b,em),
html[lang^="en"] .nfpk-component :where(h1,h2,h3,h4,h5,h6,p,a,li,dt,dd,th,td,label,button,input,textarea,select,time,small,strong,b,em){
  font-family:"IRANSans",Arial,sans-serif!important;
  font-variant-numeric:lining-nums!important;
  font-feature-settings:"lnum" 1!important;
}
html[lang^="fa"] .nfpk-component,
html[lang^="ar"] .nfpk-component,
html[lang^="fa"] .nfpk-pl-v6,
html[lang^="ar"] .nfpk-pl-v6{
  font-family:"IRANSansFaNum","IRANSans",Tahoma,Arial,sans-serif!important;
}
