@font-face {font-family: NSDhpFactory; src: url(fonts/arabic.ttf) format('truetype'); font-weight: 400; font-display: swap;}
@font-face {font-family: NSDhpFactory; src: url(fonts/arabic-bold.ttf) format('truetype'); font-weight: 700; font-display: swap;}
@font-face {font-family: NSDhpNastaliq; src: url(fonts/nastaliq.ttf) format('truetype'); font-weight: 400; font-display: swap;}

/*IRANSansX*/
@font-face {font-family: IRANSansX; font-style: normal; font-weight: 900; src: url('fonts/Woff/IRANSansXFaNum-Black.woff') format('woff'), url('fonts/Woff2/IRANSansXFaNum-Black.woff2') format('woff2'); }
@font-face {font-family: IRANSansX; font-style: normal; font-weight:bold; src: url('fonts/Woff/IRANSansXFaNum-Bold.woff') format('woff'), url('fonts/Woff2/IRANSansXFaNum-Bold.woff2') format('woff2'); }
@font-face {font-family: IRANSansX; font-style: normal; font-weight: 600; src: url('fonts/Woff/IRANSansXFaNum-DemiBold.woff') format('woff'), url('fonts/Woff2/IRANSansXFaNum-DemiBold.woff2') format('woff2'); }
@font-face {font-family: IRANSansX; font-style: normal; font-weight: 800; src: url('fonts/Woff/IRANSansXFaNum-ExtraBold.woff') format('woff'), url('fonts/Woff2/IRANSansXFaNum-ExtraBold.woff2') format('woff2'); }
@font-face {font-family: IRANSansX; font-style: normal; font-weight:300; src: url('fonts/Woff/IRANSansXFaNum-Light.woff') format('woff'), url('fonts/Woff2/IRANSansXFaNum-Light.woff2') format('woff2'); }
@font-face {font-family: IRANSansX; font-style: normal; font-weight: 500; src: url('fonts/Woff/IRANSansXFaNum-Medium.woff') format('woff'), url('fonts/Woff2/IRANSansXFaNum-Medium.woff2') format('woff2');}
@font-face {font-family: IRANSansX; font-style: normal; font-weight: 400; src: url('fonts/Woff/IRANSansXFaNum-Regular.woff') format('woff'), url('fonts/Woff2/IRANSansXFaNum-Regular.woff2') format('woff2');}
@font-face {font-family: IRANSansX; font-style: normal; font-weight: 100; src: url('fonts/Woff/IRANSansXFaNum-Thin.woff') format('woff'), url('fonts/Woff2/IRANSansXFaNum-Thin.woff2') format('woff2');}
@font-face {font-family: IRANSansX; font-style: normal; font-weight: 200; src: url('fonts/Woff/IRANSansXFaNum-UltraLight.woff') format('woff'), url('fonts/Woff2/IRANSansXFaNum-UltraLight.woff2') format('woff2');}
body.dezh-homepage {--yellow: #ffcb05; --black: #000; --white: #fff; font-family: NSDhpFactory,Tahoma,sans-serif; color: #fff; background: #000;}
body.dezh-homepage * {box-sizing: border-box;}
body.dezh-homepage {margin: 0;}
body.dezh-homepage button, body.dezh-homepage a {-webkit-tap-highlight-color: transparent;}
body.dezh-homepage button {font: inherit; color: inherit; cursor: pointer;}
body.dezh-homepage button:focus-visible, body.dezh-homepage a:focus-visible {outline: none; box-shadow: 0 0 0 2px var(--yellow);}
body.dezh-homepage button {border: 0;}
body.dezh-homepage a {color: inherit; text-decoration: none;}
body.dezh-homepage [hidden] {display: none !important;}
body.dezh-homepage .factory-home {height: 100svh; min-height: 700px; position: relative; isolation: isolate; overflow: hidden; background: #000;}
body.dezh-homepage .scene {position: absolute; inset: 0; z-index: -2; overflow: hidden;}
body.dezh-homepage .scene>img {position: absolute; width: 100%; height: 100%; object-fit: cover; max-width: none;}
body.dezh-homepage .scene-shade {position:absolute;pointer-events:none;}
body.dezh-homepage .ambient {display: none;}
body.dezh-homepage .site-header {height: 106px; margin: 0 4%; display: flex; align-items: center; justify-content: space-between; gap: 28px; border-bottom: 1px solid #ffffff26; position: relative; z-index: 20;}
body.dezh-homepage .brand {display: flex; align-items: center; gap: 15px; flex-shrink: 0;}
body.dezh-homepage .brand-eyebrow {display: block; color: var(--yellow); font-size: 11px;}
body.dezh-homepage .brand strong {font-size: 19px; display: block; font-weight: 700; letter-spacing: -.7px;}
body.dezh-homepage .brand-symbol {display: flex; align-items: center; gap: 4px; width: 41px; height: 43px; transform: skewY(-12deg);}
body.dezh-homepage .brand-symbol i {width: 10px; height: 35px; background: var(--yellow); display: block;}
body.dezh-homepage .brand-symbol i:nth-child(2) {height: 25px;}
body.dezh-homepage .brand-symbol i:nth-child(3) {height: 16px;}
body.dezh-homepage .site-header nav {display: flex; align-items: center; gap: 28px;}
body.dezh-homepage .site-header nav button {padding: 15px 0; background: transparent; color: #ffffffa8; font-size: 12px; white-space: nowrap; transition: color .2s;}
body.dezh-homepage .site-header nav button:hover, body.dezh-homepage .site-header nav .nav-current {color: var(--yellow);}
body.dezh-homepage .nav-current::after {content: ''; display: block; width: 4px; height: 4px; border-radius: 50%; background: var(--yellow); margin: 7px auto -11px;}
body.dezh-homepage .iran-lockup-child {/*width: 120px;*/ position: relative; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 9px; direction: ltr; /*padding-left: 5px;*/}
body.dezh-homepage .flag-cloth {position: relative; width: 73px; height: 42px; transform-origin: left center; animation: flag-wave 3.8s ease-in-out infinite; overflow: hidden; border-radius: 0 4px 5px 0; box-shadow: 0 5px 12px #0005;}
body.dezh-homepage .flag-cloth img {width: 100%; height: 100%; display: block; object-fit: cover;}
body.dezh-homepage .flag-cloth>span {position: absolute; inset: 0; background: linear-gradient(95deg,#0000 0%,#fff4 25%,#0004 50%,#fff3 76%,#0000); background-size: 200% 100%; animation: flag-shine 3.8s ease-in-out infinite; mix-blend-mode: soft-light;}
body.dezh-homepage .flag-pole {position: absolute; height: 52px; width: 2px; background: #ffffffb3; top: -3px; left: 26px;}
body.dezh-homepage .flag-caption {font-size: 8px; color: #ffffffb3; letter-spacing: .4px;}
body.dezh-homepage .poetry {position: absolute; z-index: 4; top: 120px; right: 8%; left: 8%; display: flex; align-items: center; justify-content: center; gap: 22px; color: #fff; font-family: IRANSansX,NSDhpNastaliq,serif; font-size: clamp(19px,2.05vw,32px); line-height: 2.6; white-space: nowrap; text-shadow: 0 2px 12px #000b; pointer-events: none;}
body.dezh-homepage .poetry b {font-family: IRANSansX,serif; font-size: 14px; letter-spacing: 3px; color: var(--yellow); font-weight: 400;}
body.dezh-homepage .bottom-bar {position: absolute; inset: auto 4% 35px; display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; pointer-events: none;}
body.dezh-homepage .hero-caption {pointer-events: auto;}
body.dezh-homepage .eyebrow {display: flex; align-items: center; gap: 10px; color: var(--yellow); font-size: 10px; letter-spacing: .5px;}
body.dezh-homepage .eyebrow i {width: 22px; height: 1px; background: var(--yellow);}
body.dezh-homepage .hero-caption h1 {font-size: clamp(26px,3.1vw,48px); font-weight: 700; line-height: 1.7; letter-spacing: -1.5px; margin: 12px 0 8px;}
body.dezh-homepage .hero-caption h1 em {font-style: normal; color: var(--yellow);}
body.dezh-homepage .hero-caption>p {font-size: 10px; color: #ffffffa6; margin: 0;}
body.dezh-homepage .explore-guide {display: flex; align-items: center; gap: 14px; pointer-events: auto; margin-bottom: 10px;}
body.dezh-homepage .guide-icon {padding-top:4px; border: 1px solid #ffffff45; width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; font-size: 24px; color: var(--yellow);}
body.dezh-homepage .explore-guide p {font-size: 12px; margin: 0; line-height: 2;}
body.dezh-homepage .explore-guide p span {display: block; color: #ffffff86; font-size: 10px;}
body.dezh-homepage .explore-guide>button {background: transparent; border-bottom: 1px solid var(--yellow); color: var(--yellow); font-size: 11px; margin-right: 20px; padding: 9px 0;}
body.dezh-homepage .explore-guide>button span {margin-right: 18px;}
body.dezh-homepage .index-mark {direction: ltr; text-align: left; font-size: 12px; font-weight: 700; letter-spacing: 3px; color: #ffffffb3; line-height: 2.2; margin-bottom: 5px;}
body.dezh-homepage .index-mark span {display: block; font-size: 8px; letter-spacing: 2.4px; color: #ffffff70;}
body.dezh-homepage .hotspot {position: absolute; background: transparent; border: 1px solid transparent; border-radius: 7px; outline: none !important; box-shadow: none !important; padding: 0; transition: border-color .25s,background .25s;}
body.dezh-homepage .hotspot:hover, body.dezh-homepage .hotspot.is-active, body.dezh-homepage .hotspot:focus-visible {border-color: #ffcb0590; background: #ffcb0508;}
body.dezh-homepage .hotspot-dot {position: absolute; inset: 50% auto auto 50%; width: 34px; height: 34px; display: grid; place-items: center; transform: translate(-50%,-50%); isolation: isolate; background: #000d; border: 1px solid var(--yellow); border-radius: 50%; font-size: 12px; color: var(--yellow); transition: background .2s,color .2s;}
body.dezh-homepage .hotspot-dot::before {content: ''; position: absolute; inset: -9px; background: #ffcb05; border-radius: 50%; z-index: -1; opacity: .18; animation: marker-pulse 2.8s ease-in-out infinite;}
body.dezh-homepage .hotspot:nth-child(2) .hotspot-dot::before {animation-delay: .3s;}
body.dezh-homepage .hotspot:nth-child(3) .hotspot-dot::before {animation-delay: .6s;}
body.dezh-homepage .hotspot:nth-child(4) .hotspot-dot::before {animation-delay: .9s;}
body.dezh-homepage .hotspot:is(:hover,.is-active,:focus-visible) .hotspot-dot {background: #ffcb05; color: #000;}
body.dezh-homepage .device-card {position: absolute; z-index: 12; width: 304px; background: #000e; backdrop-filter: blur(16px); border: 1px solid #ffcb0570; border-radius: 9px; padding: 22px; box-shadow: 0 18px 55px #0005; animation: card-in .2s ease-out;}
body.dezh-homepage .card-eyebrow {display: flex; justify-content: space-between; align-items: center; font-size: 9px; letter-spacing: .3px; color: #ffffff80;}
body.dezh-homepage .card-eyebrow span:last-child {color: var(--yellow); font-size: 13px; font-family: IRANSansX,Arial,sans-serif;}
body.dezh-homepage .device-card h2 {font-size: 20px; font-weight: 700; letter-spacing: -.6px; color: var(--yellow); margin: 14px 0 8px;}
body.dezh-homepage .device-card p {font-size: 11px; line-height: 2.1; color: #ffffffbf; margin: 0 0 18px;}
body.dezh-homepage .yellow-button {display: flex; align-items: center; justify-content: space-between; gap: 20px; background: var(--yellow); color: #000; padding: 12px 15px; border-radius: 4px; font-size: 11px; font-weight: 700; width: 100%; transition: filter .2s;}
body.dezh-homepage .yellow-button:hover {filter: brightness(1.1);}
body.dezh-homepage .yellow-button span:last-child {font-size: 18px; line-height: 1;}
body.dezh-homepage .mobile-devices {display: none;}
body.dezh-homepage dialog {position: fixed; width: min(560px,calc(100% - 32px)); max-height: 85svh; overflow: auto; background: #080808; color: #fff; border: 1px solid #ffcb0566; border-radius: 14px; padding: 28px; font-family: inherit; box-shadow: 0 30px 100px #0009;}
body.dezh-homepage dialog::backdrop {background: #000b; backdrop-filter: blur(7px);}
body.dezh-homepage .dialog-top {display: flex; align-items: center; justify-content: space-between; color: var(--yellow); font-size: 10px;}
body.dezh-homepage .dialog-close {width: 32px; height: 32px; background: #ffffff0d; color: #fff; border-radius: 50%; font-size: 22px; line-height: 1;}
body.dezh-homepage dialog h2 {font-size: 25px; line-height: 1.8; margin: 18px 0; color: var(--yellow);}
body.dezh-homepage dialog p {font-size: 13px; line-height: 2.3; color: #ffffffb3;}
body.dezh-homepage dialog ul {padding-right: 20px; font-size: 13px; line-height: 2.5; color: #ffffffb3;}
body.dezh-homepage dialog .yellow-button {margin-top: 24px;}
body.dezh-homepage .service-menu {display: grid; gap: 10px;}
body.dezh-homepage .service-menu button {display: flex; justify-content: space-between; text-align: right; padding: 15px; background: #ffffff07; border: 1px solid #ffffff20; border-radius: 6px; font-size: 13px;}
body.dezh-homepage .service-menu button:hover {border-color: var(--yellow); color: var(--yellow);}
body.dezh-homepage .copy-status {min-height: 20px; margin-bottom: 0 !important; font-size: 11px !important; color: var(--yellow) !important;}
@keyframes flag-wave { 
  0%,100% {transform: perspective(400px) rotateY(-10deg) skewY(1deg); clip-path: polygon(0 0,100% 5%,100% 95%,0 100%);} 
  50% {transform: perspective(400px) rotateY(12deg) skewY(-2deg); clip-path: polygon(0 0,100% 0,100% 100%,0 100%);} 
}
@keyframes flag-shine { 
  0%,100% {background-position: 0 50%;} 
  50% {background-position: 100% 50%;} 
}
@keyframes marker-pulse { 
  0%,100% {transform: scale(.8); opacity: .12;} 
  50% {transform: scale(1.22); opacity: .35;} 
}
@keyframes card-in { 
  from {opacity: 0; translate: 0 6px;} 
  to {opacity: 1; translate: 0 0;} 
}
@media (min-width:1700px){body.dezh-homepage .site-header {height: 120px;}
body.dezh-homepage .poetry {top: 135px;}
body.dezh-homepage .device-card {width: 340px;}
body.dezh-homepage .device-card p {font-size: 13px;}
body.dezh-homepage .hotspot-dot {width: 40px; height: 40px;}}
@media (max-width:1100px){body.dezh-homepage .site-header {gap: 15px;}
body.dezh-homepage .site-header nav {gap: 18px;}
body.dezh-homepage .brand strong {font-size: 16px;}
body.dezh-homepage .brand-symbol {width: 30px;}
body.dezh-homepage .brand-symbol i {width: 7px;}
body.dezh-homepage .poetry {gap: 12px; right: 4%; left: 4%; font-size: 23px;}
body.dezh-homepage .poetry b {font-size: 10px; letter-spacing: 0;}
body.dezh-homepage .index-mark {display: none;}
body.dezh-homepage .explore-guide>button {margin-right: 0;}
body.dezh-homepage .hero-caption h1 {font-size: 36px;}}
@media (max-width:700px){body.dezh-homepage .factory-home {min-height: 100svh; height: auto; overflow: hidden; padding-bottom: 24px;}
body.dezh-homepage .ambient {display: block; position: absolute; inset: 0; background: linear-gradient(#000d,#000d),url(factory.jpg) center/cover; filter: blur(4px); z-index: -3;}
body.dezh-homepage .site-header {height: 95px; margin: 0 20px; gap: 10px;}
body.dezh-homepage .brand {gap: 10px;}
body.dezh-homepage .brand strong {font-size: 13px; letter-spacing: -.4px;}
body.dezh-homepage .brand-eyebrow {font-size: 9px;}
body.dezh-homepage .brand-symbol {width: 26px; gap: 3px;}
body.dezh-homepage .brand-symbol i {width: 6px; height: 28px;}
body.dezh-homepage .brand-symbol i:nth-child(2) {height: 20px;}
body.dezh-homepage .brand-symbol i:nth-child(3) {height: 13px;}
body.dezh-homepage .site-header nav {display: none;}
body.dezh-homepage .iran-lockup-child {/*width: 65px;*/ gap: 7px;}
body.dezh-homepage .flag-cloth {width: 48px; height: 29px; /*position: relative;right: 11px;*/}
body.dezh-homepage .flag-pole {left: 8px; height: 36px; top: -3px;}
body.dezh-homepage .flag-caption {font-size: 6px; white-space: nowrap;}
body.dezh-homepage .poetry {position: relative; inset: auto; display: grid; grid-template-columns: 1fr 1fr; gap: 0 12px; font-size: 22px; line-height: 2.5; margin: 15px 20px 18px; text-align: center; white-space: normal;}
body.dezh-homepage .poetry b {display: none;}
body.dezh-homepage .poetry span:nth-of-type(2), body.dezh-homepage .poetry span:nth-of-type(4) {color: var(--yellow);}
body.dezh-homepage .scene {position: relative; inset: auto; width: 100%; height: calc(100vw * 736 / 1088); z-index: 0;}
body.dezh-homepage .scene-shade {position:absolute;pointer-events:none;}
body.dezh-homepage .bottom-bar {position: relative; inset: auto; margin: 22px 22px 0; display: block;}
body.dezh-homepage .hero-caption h1 {font-size: 28px; line-height: 1.55; margin: 10px 0;}
body.dezh-homepage .hero-caption h1 br {display: none;}
body.dezh-homepage .hero-caption h1 em {margin-right: 5px;}
body.dezh-homepage .hero-caption>p {font-size: 9px;}
body.dezh-homepage .eyebrow {font-size: 8px;}
body.dezh-homepage .explore-guide {margin-top: 24px; gap: 10px;}
body.dezh-homepage .guide-icon {width: 32px; height: 32px; font-size: 19px;}
body.dezh-homepage .explore-guide p {font-size: 10px;}
body.dezh-homepage .explore-guide p span {font-size: 8px;}
body.dezh-homepage .explore-guide>button {margin-right: auto; font-size: 10px;}
body.dezh-homepage .device-card {position: fixed !important; top: auto !important; bottom: 16px; left: 16px !important; right: 16px; width: auto !important; z-index: 30; padding: 22px; max-height: 50svh; overflow: auto;}
body.dezh-homepage .hotspot-dot {width: 26px; height: 26px; font-size: 10px;}
body.dezh-homepage .hotspot-dot::before {inset: -6px;}
body.dezh-homepage .mobile-devices {display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 22px 0;}
body.dezh-homepage .mobile-devices button {padding: 8px 11px; border: 1px solid #ffffff26; border-radius: 5px; background: #0007; font-size: 9px; color: #ffffffa8;}
body.dezh-homepage .mobile-devices button.is-active {color: var(--yellow); border-color: var(--yellow);}}
@media (prefers-reduced-motion:reduce){body.dezh-homepage *, body.dezh-homepage *::before, body.dezh-homepage *::after {animation: none !important; transition: none !important;}}
body.dezh-homepage .explore-guide p .mobile-tip {display: none;}
@media (max-width:700px){body.dezh-homepage .explore-guide p .desktop-tip {display: none;}
body.dezh-homepage .explore-guide p .mobile-tip {display: block;}}
body.dezh-homepage {margin: 0 !important; padding: 0 !important; background: #000; color: #fff; font-family: NSDhpFactory,Tahoma,sans-serif; line-height: normal; direction: rtl;}
body.dezh-homepage .factory-home {width: 100%; max-width: none; margin: 0; padding: 0; height: calc(100svh - var(--wp-admin--admin-bar--height,0px)); min-height: 700px;}
body.dezh-homepage .yellow-button {text-decoration: none; cursor: pointer;}
body.dezh-homepage h1, body.dezh-homepage h2, body.dezh-homepage button {font-family: NSDhpFactory,Tahoma,sans-serif;}
@media (max-width:700px){body.dezh-homepage .factory-home {height: auto; min-height: calc(100svh - var(--wp-admin--admin-bar--height,0px)); padding-bottom: 24px;}}
body.dezh-homepage .dhp-brand-logo {width: 54px; height: 54px; object-fit: contain; display: block;}
body.dezh-homepage .dhp-off-show_poem .poetry, body.dezh-homepage .dhp-off-show_caption .hero-caption, body.dezh-homepage .dhp-off-show_guide .explore-guide, body.dezh-homepage .dhp-off-show_flag .iran-lockup-child {display: none !important;}
body.dezh-homepage .dhp-off-animate_flag .flag-cloth, body.dezh-homepage .dhp-off-animate_flag .flag-cloth>span {animation: none !important;}
body.dezh-homepage .dhp-off-animate_dots .hotspot-dot::before {animation: none !important; opacity: .2;}
@media (max-width:700px){body.dezh-homepage .dhp-brand-logo {width: 38px; height: 38px;}}

/* Independent fades. Each can be switched off without affecting the other. */
body.dezh-homepage .scene-shade--top{inset:0 0 auto;height:var(--dhp-top-height,42%);background:linear-gradient(to bottom,rgba(0,0,0,var(--dhp-top-opacity,.65)),transparent)}
body.dezh-homepage .scene-shade--bottom{inset:auto 0 0;height:var(--dhp-bottom-height,44%);background:linear-gradient(to top,rgba(0,0,0,var(--dhp-bottom-opacity,.9)),transparent)}
body.dezh-homepage .dhp-off-show_top_shade .scene-shade--top,body.dezh-homepage .dhp-off-show_bottom_shade .scene-shade--bottom{display:none!important}
body.dezh-homepage .scene>img{object-fit:var(--dhp-image-fit,cover)}
body.dezh-homepage .iran-lockup-child{/*width:140px*/}
body.dezh-homepage .flag-pole{left:2px}
body.dezh-homepage .flag-caption{font-size:12px;white-space:nowrap;line-height:1.8}
@media(min-width:701px){
body.dezh-homepage{overflow:hidden!important}
body.dezh-homepage .factory-home{height:calc(var(--dhp-viewport-height,100dvh) - var(--dhp-admin-height,0px));min-height:0!important;max-height:none}
body.dezh-homepage .device-card{max-height:calc(var(--dhp-viewport-height,100dvh) - 150px);overflow:auto}
}
@media(min-width:701px) and (max-height:760px){
body.dezh-homepage .site-header{height:82px}
body.dezh-homepage .poetry{top:92px;line-height:2.4}
body.dezh-homepage .bottom-bar{bottom:20px}
body.dezh-homepage .hero-caption h1{font-size:clamp(24px,2.6vw,36px);line-height:1.4;margin:8px 0}
body.dezh-homepage .hero-caption>p{font-size:9px}
}
@media(min-width:701px) and (max-height:540px){
body.dezh-homepage .site-header{height:65px}
body.dezh-homepage .poetry{top:68px;line-height:2}
body.dezh-homepage .hero-caption h1{font-size:23px}
body.dezh-homepage .bottom-bar{bottom:12px}
body.dezh-homepage .guide-icon{width:30px;height:30px;display:flex;align-items:center;justify-content:center;position:relative;}
@media(max-width:700px){
body.dezh-homepage .iran-lockup-child{/*width:86px;*/flex-shrink:0}
body.dezh-homepage .flag-pole{left:18px}
body.dezh-homepage .flag-caption{font-size:10px}
}
button.dialog-close {padding-top: 4px!important;}