/* Nagy Design logo: outward bloom, irregular shimmer, synchronized geometry. */
.nd-brand__mark { overflow:visible; isolation:isolate; background:linear-gradient(145deg,rgba(245,245,242,.07),rgba(245,245,242,.025)); }
.nd-brand__energy { position:absolute; z-index:2; left:50%; top:50%; width:2.78rem; height:2.78rem; transform:translate(-50%,-50%); overflow:visible; pointer-events:none; }
.nd-brand__energy .nd-logo-flux { animation:nd-logo-flicker 4.7s linear var(--nd-flux-phase,0s) infinite; }
.nd-brand__energy .nd-logo-facet { opacity:.16; fill:currentColor; filter:url(#nd-logo-facet-glow); animation-duration:20s; animation-timing-function:ease-in-out; animation-iteration-count:infinite; }
.nd-brand__energy .nd-logo-facet--north { color:#ffe05b; animation-name:nd-logo-north; }
.nd-brand__energy .nd-logo-facet--east { color:#448cff; animation-name:nd-logo-east; }
.nd-brand__energy .nd-logo-facet--south { color:#ff405a; animation-name:nd-logo-south; }
.nd-brand__energy .nd-logo-facet--west { color:#38e48a; animation-name:nd-logo-west; }
@keyframes nd-logo-flicker { 0%,100%{opacity:.86} 6%{opacity:.98} 13%{opacity:.71} 18%{opacity:.96} 27%{opacity:.8} 42%{opacity:.91} 48%{opacity:.62} 55%{opacity:1} 63%{opacity:.79} 77%{opacity:.94} 85%{opacity:.73} 91%{opacity:.98} }
@keyframes nd-logo-north { 0%,10%,48%,58%,78%,90%,100%{opacity:.16} 4%{opacity:1} 52%{opacity:.95} 83%{opacity:.82} }
@keyframes nd-logo-east { 0%,10%,20%,58%,68%,78%,90%,100%{opacity:.16} 14%{opacity:1} 62%{opacity:.95} 83%{opacity:.82} }
@keyframes nd-logo-south { 0%,20%,30%,48%,58%,78%,90%,100%{opacity:.16} 24%{opacity:1} 52%{opacity:.95} 83%{opacity:.82} }
@keyframes nd-logo-west { 0%,30%,40%,58%,68%,78%,90%,100%{opacity:.16} 34%{opacity:1} 62%{opacity:.95} 83%{opacity:.82} }
/* All four points share one clock. Each discharge seeds the next polygon. */
.nd-brand__energy .nd-logo-bolt { opacity:0; filter:url(#nd-logo-violet-glow); animation:nd-logo-discharge 8s linear infinite; }
.nd-brand__energy .nd-logo-bolt__stroke { fill:none; stroke-linecap:round; stroke-linejoin:round; stroke-dasharray:100; stroke-dashoffset:100; animation:nd-logo-travel 8s ease-out infinite; }
.nd-brand__energy .nd-logo-bolt__halo { stroke:#9b4dff; stroke-width:11; }
.nd-brand__energy .nd-logo-bolt__core { stroke:#f1dfff; stroke-width:4.5; }
.nd-brand__energy .nd-logo-bolt__tip { fill:none; stroke:#d3adff; stroke-width:7; stroke-linecap:round; }
@keyframes nd-logo-discharge { 0%,18%,43%,100%{opacity:0} 24%{opacity:1} 31%{opacity:.72} 36%{opacity:.5} }
@keyframes nd-logo-travel { 0%,17%{stroke-dashoffset:100} 28%{stroke-dashoffset:0} 43%,100%{stroke-dashoffset:-100} }
.nd-brand__energy .nd-logo-geometry { opacity:0; filter:url(#nd-logo-violet-glow); animation:nd-logo-polygon-life 24s linear var(--nd-pattern-phase,0s) infinite; }
.nd-brand__energy .nd-logo-geometry__line { fill:none; stroke:#c59bff; stroke-width:7; stroke-linecap:round; stroke-linejoin:round; stroke-dasharray:100; stroke-dashoffset:100; animation:nd-logo-polygon-draw 24s ease-out var(--nd-pattern-phase,0s) infinite; }
@keyframes nd-logo-polygon-life { 0%,9.2%,24%,100%{opacity:0} 12.5%{opacity:.88} 17%{opacity:.7} 21%{opacity:.28} }
@keyframes nd-logo-polygon-draw { 0%,9.2%{stroke-dashoffset:100} 14%,24%{stroke-dashoffset:0} 24.1%,100%{stroke-dashoffset:-100} }
@media(max-width:620px){.nd-brand__energy{width:2.12rem;height:2.12rem}}
@media(prefers-reduced-motion:reduce){.nd-brand__energy{display:none}.nd-brand__energy *{animation:none!important}}
