/* IraNOC 2.9.4 — balanced modern interactions loaded after the main stylesheet. */
.site-header,.site-header .nav-wrap,.site-header .brand,.site-header .brand img{transition:height .28s ease,background-color .28s ease,box-shadow .28s ease,border-color .28s ease,transform .28s ease}
.site-header.is-scrolled{background:rgba(255,255,255,.84);border-color:rgba(107,47,152,.10);box-shadow:0 14px 40px rgba(28,24,39,.09);backdrop-filter:blur(20px) saturate(1.28)}
.nav-services-panel{overflow:hidden;backdrop-filter:blur(20px) saturate(1.18)}
.nav-services-panel:before{content:"";position:absolute;top:0;right:18px;left:18px;height:2px;background:linear-gradient(90deg,transparent,var(--purple),var(--teal),transparent);opacity:.72}
.hero-modular:after{content:"";position:absolute;z-index:0;width:430px;height:430px;left:-180px;bottom:-250px;border-radius:50%;background:radial-gradient(circle,rgba(8,170,162,.12),rgba(107,47,152,.055) 42%,transparent 70%);filter:blur(7px);pointer-events:none;animation:iranoc-ambient-drift 12s ease-in-out infinite alternate}
.hero-modular>.container{position:relative;z-index:1}
@keyframes iranoc-ambient-drift{to{transform:translate3d(75px,-38px,0) scale(1.12)}}
.reveal{transition-delay:var(--reveal-delay,0ms)}
.service-card:after{background:radial-gradient(290px circle at var(--spot-x,50%) var(--spot-y,35%),rgba(116,231,221,.24),transparent 66%),linear-gradient(130deg,rgba(107,47,152,.25),transparent 52%,rgba(8,170,162,.17));transition:opacity .25s ease}
.service-card:hover:after{opacity:1}
.project-item,.step{--spot-x:50%;--spot-y:25%;position:relative;isolation:isolate;overflow:hidden}
.project-item:after,.step:after{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(260px circle at var(--spot-x) var(--spot-y),rgba(8,170,162,.12),transparent 68%);opacity:0;transition:opacity .25s;pointer-events:none}
.project-item>*,.step>*,.step:before{position:relative;z-index:1}
.project-item:hover:after,.step:hover:after{opacity:1}
.step{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.step:hover{transform:translateY(-6px);border-color:rgba(8,170,162,.38);box-shadow:0 22px 48px rgba(31,29,42,.12)}
.btn-primary,.nav-account-menu>summary{position:relative;overflow:hidden;isolation:isolate}
.btn-primary:before,.nav-account-menu>summary:before{content:"";position:absolute;top:-40%;bottom:-40%;left:-35%;width:22%;background:rgba(255,255,255,.24);transform:skewX(-22deg) translateX(-520%);transition:transform .62s ease;pointer-events:none}
.btn-primary:hover:before,.btn-primary:focus-visible:before,.nav-account-menu>summary:hover:before{transform:skewX(-22deg) translateX(760%)}
html.iranoc-dark .site-header.is-scrolled{background:rgba(13,16,22,.84);border-color:rgba(118,221,211,.10);box-shadow:0 14px 40px rgba(0,0,0,.34)}
html.iranoc-dark .project-item:after,html.iranoc-dark .step:after{background:radial-gradient(260px circle at var(--spot-x) var(--spot-y),rgba(8,170,162,.15),transparent 68%)}
@media(min-width:981px){.site-header.is-scrolled .nav-wrap{height:68px}.site-header.is-scrolled .brand,.site-header.is-scrolled .brand img{height:52px}.site-header.is-scrolled .brand img{transform:scale(.94)}}
@media(max-width:980px){.hero-modular:after{width:320px;height:320px;left:-170px;bottom:-170px}.project-item:after,.step:after{display:none}}
@media(prefers-reduced-motion:reduce){.hero-modular:after{animation:none}.site-header,.site-header *,.service-card,.project-item,.step,.btn-primary:before,.nav-account-menu>summary:before{transition:none!important}}
