/* AOS (alap – az AOS saját CSS-e is betölt) */
[data-aos] {}

/* Ha AOS tiltva (pl. mobilon), akkor ne rejtsen el semmit */
html.aos-disabled [data-aos]{
	opacity: 1 !important;
	transform: none !important;
}

/* Hero BG pszeudo + overlay */
.hero_img_banner{ position:relative; overflow:hidden; }
.hero_img_banner.bgfx-ready::before{
	content:"";
	position:absolute;
	inset:0;
	z-index:0;
	background-image:var(--aobg-url);
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	transform:translateY(var(--aobg-ty,0px)) scale(var(--aobg-scale,1));
	transform-origin:center center;
	filter:var(--aobg-filter, blur(var(--aobg-blur,0px)));
	will-change:transform,filter;
}
.hero_img_banner.bgfx-ready::after{
	content:"";
	position:absolute;
	inset:0;
	z-index:1;
	pointer-events:none;
	opacity:var(--aobg-ovl-alpha,0);
}
.hero_img_banner.ovl-light.bgfx-ready::after{ mix-blend-mode:screen; background:#fff; }
.hero_img_banner.ovl-dark.bgfx-ready::after{ mix-blend-mode:multiply; background:#000; }

.hero_img_banner > *{ position:relative; z-index:2; }

/* IMG/VIDEO target fallback */
.hero_img_banner .hero-fx-img,
.hero_img_banner .hero-fx-video{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	will-change:transform,filter;
	transform-origin:center center;
}

/* Sharpen SVG slot */
svg#hsf-filters{ position:absolute; width:0; height:0; overflow:hidden; }
