/* =========================================================
   Asa Rad Particle Hero for Elementor
   Scoped stylesheet
   ========================================================= */

.asarad-ph{
	--asarad-ph-bg:#050506;
	--asarad-ph-line:rgba(255,255,255,.08);
	--asarad-ph-line-soft:rgba(255,255,255,.045);
	--asarad-ph-text:#f3f5fb;
	--asarad-ph-muted:rgba(220,224,238,.60);
	--asarad-ph-muted-2:rgba(220,224,238,.38);
	--asarad-ph-cyan:#00e5ff;
	--asarad-ph-violet:#7b61ff;

	position:relative;
	isolation:isolate;
	width:100%;
	min-height:100svh;
	overflow:hidden;
	background:var(--asarad-ph-bg);
	color:var(--asarad-ph-text);
	font-family:inherit;
}

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

.asarad-ph ::selection{
	background:var(--asarad-ph-cyan);
	color:#050506;
}

.asarad-ph-grid-field,
.asarad-ph-vignette{
	position:absolute;
	inset:0;
	z-index:0;
	pointer-events:none;
}

.asarad-ph-grid-field{
	overflow:hidden;
	contain:strict;
}

.asarad-ph-grid-field canvas{
	display:block;
	width:100%;
	height:100%;
	-webkit-mask-image:radial-gradient(circle at 50% 40%,#000 0%,#000 35%,transparent 78%);
	mask-image:radial-gradient(circle at 50% 40%,#000 0%,#000 35%,transparent 78%);
}

.asarad-ph-vignette{
	background:
		linear-gradient(180deg,rgba(5,5,6,.20),rgba(5,5,6,.75) 78%,var(--asarad-ph-bg) 100%),
		radial-gradient(ellipse 60% 45% at 78% 45%,rgba(123,97,255,.10),transparent 60%),
		radial-gradient(ellipse 45% 40% at 12% 65%,rgba(0,229,255,.06),transparent 60%);
}

.asarad-ph-no-vignette .asarad-ph-vignette{
	display:none;
}

.asarad-ph-shell{
	position:relative;
	z-index:2;
	display:grid;
	grid-template-rows:auto minmax(0,1fr) auto;
	width:100%;
	min-height:100svh;
	padding:20px 16px 0;
}

.asarad-ph-topbar{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	flex-wrap:wrap;
	gap:16px;
	min-width:0;
	padding-bottom:20px;
	border-bottom:1px solid var(--asarad-ph-line-soft);
}

.asarad-ph-mark{
	display:flex;
	align-items:center;
	gap:10px;
	min-width:0;
	font-weight:700;
	font-size:15px;
	letter-spacing:.02em;
}

.asarad-ph-mark-dot{
	width:7px;
	height:7px;
	flex:0 0 7px;
	border-radius:50%;
	background:var(--asarad-ph-cyan);
	box-shadow:0 0 12px color-mix(in srgb,var(--asarad-ph-cyan) 70%,transparent);
}

.asarad-ph-mark-meta{
	min-width:0;
	overflow:hidden;
	color:var(--asarad-ph-muted-2);
	font-size:11px;
	font-weight:500;
	letter-spacing:.14em;
	text-overflow:ellipsis;
	white-space:nowrap;
}

.asarad-ph-badge{
	display:flex;
	align-items:center;
	flex:0 0 auto;
	gap:8px;
	max-width:100%;
	padding:7px 11px;
	border:1px solid var(--asarad-ph-line);
	border-radius:999px;
	background:rgba(255,255,255,.02);
	color:var(--asarad-ph-muted);
	font-size:9.5px;
	line-height:1.35;
	letter-spacing:.10em;
	text-transform:uppercase;
}

.asarad-ph-badge-dot{
	width:6px;
	height:6px;
	flex:0 0 6px;
	border-radius:50%;
	background:#3dff9a;
	box-shadow:0 0 8px rgba(61,255,154,.80);
	animation:asarad-ph-pulse 2.2s ease-in-out infinite;
}

@keyframes asarad-ph-pulse{
	0%,100%{opacity:1;transform:scale(1)}
	50%{opacity:.4;transform:scale(.7)}
}

.asarad-ph-content{
	display:grid;
	grid-template-columns:1fr;
	align-items:center;
	gap:18px;
	min-width:0;
	padding:20px 0 38px;
}

.asarad-ph-col-text{
	order:2;
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	gap:22px;
	min-width:0;
}

.asarad-ph-eyebrow-row{
	display:flex;
	align-items:center;
	gap:12px;
	min-width:0;
}

.asarad-ph-eyebrow-line{
	width:28px;
	height:1px;
	flex:0 0 28px;
	background:linear-gradient(90deg,var(--asarad-ph-cyan),transparent);
}

.asarad-ph-eyebrow{
	min-width:0;
	color:var(--asarad-ph-muted);
	font-size:9.5px;
	line-height:1.5;
	letter-spacing:.18em;
	text-transform:uppercase;
}

.asarad-ph-title{
	margin:0;
	max-width:100%;
	overflow:hidden;
	color:var(--asarad-ph-text);
	font-size:clamp(2.15rem,9.5vw,3rem);
	font-weight:700;
	line-height:.98;
	letter-spacing:-.03em;
}

.asarad-ph-title-line{
	display:block;
	overflow:hidden;
}

.asarad-ph-title-line > span{
	display:inline-block;
	transform:translateY(115%);
	will-change:transform;
}

.asarad-ph.is-ready .asarad-ph-title-line > span{
	transform:translateY(0%);
}

.asarad-ph-grad{
	background:linear-gradient(97deg,var(--asarad-ph-cyan) 0%,var(--asarad-ph-violet) 68%);
	-webkit-background-clip:text;
	background-clip:text;
	color:transparent;
}

.asarad-ph-lead{
	max-width:100%;
	color:var(--asarad-ph-muted);
	font-size:clamp(.98rem,1.2vw,1.08rem);
	line-height:1.75;
	opacity:0;
}

.asarad-ph-lead p{
	margin:0;
}

.asarad-ph-actions{
	display:flex;
	align-items:center;
	flex-direction:column;
	width:100%;
	gap:10px;
	opacity:0;
}

.asarad-ph-btn{
	position:relative;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:100%;
	min-height:50px;
	gap:10px;
	padding:15px 24px;
	border-radius:12px;
	font-size:14px;
	font-weight:600;
	text-decoration:none;
	white-space:nowrap;
	will-change:transform;
}

.asarad-ph-btn svg{
	width:1em;
	height:1em;
}

.asarad-ph-btn-primary{
	background:linear-gradient(120deg,var(--asarad-ph-cyan),var(--asarad-ph-violet));
	color:#04070d;
}

.asarad-ph-btn-arrow{
	transition:transform .3s ease;
}

.asarad-ph-btn-primary:hover .asarad-ph-btn-arrow{
	transform:translateX(4px);
}

.asarad-ph-btn-secondary{
	border:1px solid var(--asarad-ph-line);
	background:rgba(255,255,255,.02);
	color:var(--asarad-ph-text);
}

.asarad-ph-stats{
	display:flex;
	flex-wrap:wrap;
	width:100%;
	gap:20px 26px;
	margin-top:6px;
	padding-top:8px;
	border-top:1px solid var(--asarad-ph-line-soft);
	opacity:0;
}

.asarad-ph-stat{
	display:flex;
	flex:1 1 100%;
	flex-direction:column;
	gap:4px;
	min-width:0;
}

.asarad-ph-stat b{
	color:#fff;
	font-size:clamp(1.4rem,2vw,1.8rem);
	font-weight:700;
	letter-spacing:-.02em;
}

.asarad-ph-stat span{
	color:var(--asarad-ph-muted-2);
	font-size:10.5px;
	line-height:1.45;
	letter-spacing:.1em;
	text-transform:uppercase;
}

.asarad-ph-col-logo{
	order:1;
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	min-width:0;
	height:100%;
	padding:8px 0 28px;
}

.asarad-ph-logo-frame{
	position:relative;
	width:min(100%,280px);
	max-width:100%;
	aspect-ratio:1/1;
	contain:layout paint;
}

.asarad-ph-logo-frame::before{
	content:"";
	position:absolute;
	inset:-6%;
	z-index:0;
	border-radius:28px;
	background:
		radial-gradient(circle at 30% 25%,rgba(0,229,255,.14),transparent 55%),
		radial-gradient(circle at 75% 75%,rgba(123,97,255,.14),transparent 55%);
	filter:blur(30px);
	transform:translateZ(0);
	pointer-events:none;
}

.asarad-ph-no-logo-glow .asarad-ph-logo-frame::before{
	display:none;
}

.asarad-ph-corner{
	position:absolute;
	z-index:2;
	width:16px;
	height:16px;
	border-color:rgba(255,255,255,.28);
	border-style:solid;
	pointer-events:none;
}

.asarad-ph-corner-tl{top:-2px;left:-2px;border-width:1px 0 0 1px}
.asarad-ph-corner-tr{top:-2px;right:-2px;border-width:1px 1px 0 0}
.asarad-ph-corner-bl{bottom:-2px;left:-2px;border-width:0 0 1px 1px}
.asarad-ph-corner-br{right:-2px;bottom:-2px;border-width:0 1px 1px 0}

.asarad-ph-dot-logo{
	position:relative;
	z-index:1;
	display:block;
	width:100%;
	height:100%;
	touch-action:none;
}

.asarad-ph-logo-caption{
	position:absolute;
	bottom:-28px;
	left:50%;
	transform:translateX(-50%);
	color:var(--asarad-ph-muted-2);
	font-size:9px;
	letter-spacing:.12em;
	text-transform:uppercase;
	white-space:nowrap;
}

.asarad-ph-footstrip{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	flex-wrap:wrap;
	gap:10px 14px;
	min-width:0;
	padding:20px 0 26px;
	border-top:1px solid var(--asarad-ph-line-soft);
	color:var(--asarad-ph-muted-2);
	font-size:9.5px;
	line-height:1.6;
	letter-spacing:.08em;
}

.asarad-ph-scroll{
	display:flex;
	align-items:center;
	flex:0 0 auto;
	gap:10px;
}

.asarad-ph-scroll-bar{
	width:1px;
	height:22px;
	background:linear-gradient(180deg,var(--asarad-ph-cyan),transparent);
	animation:asarad-ph-scrollmove 1.8s ease-in-out infinite;
}

@keyframes asarad-ph-scrollmove{
	0%{transform:scaleY(.3);transform-origin:top;opacity:.4}
	50%{transform:scaleY(1);transform-origin:top;opacity:1}
	100%{transform:scaleY(.3);transform-origin:bottom;opacity:.4}
}

.asarad-ph-editor-placeholder{
	width:min(100%,480px);
	padding:32px;
	border:1px dashed var(--asarad-ph-line);
	border-radius:18px;
	color:var(--asarad-ph-muted);
	text-align:center;
}

.asarad-ph-cursor-dot,
.asarad-ph-cursor-ring{
	position:fixed;
	top:0;
	left:0;
	z-index:99999;
	pointer-events:none;
	opacity:0;
	border-radius:50%;
}

.asarad-ph-cursor-dot{
	width:6px;
	height:6px;
	background:var(--asarad-ph-cyan);
}

.asarad-ph-cursor-ring{
	width:30px;
	height:30px;
	border:1px solid color-mix(in srgb,var(--asarad-ph-cyan) 65%,transparent);
	transition:width .2s ease,height .2s ease,border-color .2s ease;
}

.asarad-ph-cursor-ring.is-active{
	width:44px;
	height:44px;
	border-color:var(--asarad-ph-violet);
}

@media (min-width:560px){
	.asarad-ph-actions{
		flex-direction:row;
		width:auto;
	}

	.asarad-ph-btn{
		width:auto;
	}

	.asarad-ph-stat{
		flex:1 1 calc(50% - 13px);
	}
}

@media (min-width:701px){
	.asarad-ph-shell{
		padding:20px 24px 0;
	}

	.asarad-ph-topbar{
		align-items:center;
		flex-wrap:nowrap;
	}

	.asarad-ph-badge{
		padding:8px 14px;
		font-size:11px;
		letter-spacing:.14em;
	}

	.asarad-ph-logo-frame{
		width:min(100%,340px);
	}

	.asarad-ph-logo-caption{
		bottom:-34px;
		font-size:10.5px;
		letter-spacing:.18em;
	}

	.asarad-ph-col-text{
		gap:26px;
	}

	.asarad-ph-eyebrow-line{
		width:34px;
		flex-basis:34px;
	}

	.asarad-ph-eyebrow{
		font-size:11px;
		letter-spacing:.24em;
	}

	.asarad-ph-title{
		font-size:clamp(2.6rem,5.6vw,4.6rem);
	}

	.asarad-ph-stats{
		gap:28px;
	}

	.asarad-ph-stat{
		flex:0 1 auto;
	}

	.asarad-ph-footstrip{
		align-items:center;
		font-size:11px;
	}
}

@media (min-width:981px){
	.asarad-ph-shell{
		padding:28px 64px 0;
	}

	.asarad-ph-content{
		grid-template-columns:minmax(0,.98fr) minmax(0,1.1fr);
		gap:40px;
		padding:clamp(28px,5vw,56px) 0;
	}

	.asarad-ph-col-text{
		order:1;
	}

	.asarad-ph-col-logo{
		order:2;
		padding:0;
	}

	.asarad-ph-logo-frame{
		width:min(100%,480px);
	}

	.asarad-ph-lead{
		max-width:480px;
	}

	.asarad-ph-stat{
		flex:none;
	}
}

@media (hover:none),(pointer:coarse){
	.asarad-ph-cursor-dot,
	.asarad-ph-cursor-ring{
		display:none!important;
	}
}

@media (prefers-reduced-motion:reduce){
	.asarad-ph *,
	.asarad-ph *::before,
	.asarad-ph *::after{
		animation:none!important;
		transition:none!important;
	}

	.asarad-ph-title-line > span{
		transform:none!important;
	}

	.asarad-ph-lead,
	.asarad-ph-actions,
	.asarad-ph-stats{
		opacity:1!important;
	}
}


.asarad-ph-logo-error{
	position:absolute;
	inset:50% auto auto 50%;
	z-index:4;
	width:min(88%,360px);
	padding:12px 14px;
	border:1px solid rgba(226,118,118,.42);
	border-radius:12px;
	background:rgba(13,15,14,.92);
	color:#f0c4c4;
	font-size:11px;
	line-height:1.55;
	text-align:center;
	transform:translate(-50%,-50%);
	pointer-events:none;
}
