/*
Theme Name: Astra Child
Template: astra
Description: Child theme for Astra theme with custom animations and functionality
Version: 1.0.0
Author: Studio Mojo
*/

/* 
 * Child Theme Styles
 * Parent theme styles are loaded via functions.php
 */

/* Navigation and Post Elements */
.navigation.post-navigation {
	display: none;
}

.ast-page-builder-template .entry-header {
	display: none;
}

body > .hbspt-form {
	display: none;
}

/* Header and Footer Styles */
.site-above-footer-wrap[data-section="section-above-footer-builder"] {
	background-color: transparent;
}

.site-primary-footer-wrap[data-section="section-primary-footer-builder"] {
    padding-bottom: 0;
}

.koFooterLogos {
	margin-right: 2rem;
}

#masthead {
	position: sticky !important;
	top: 0;
	backdrop-filter: blur(100px);
}

.ast-below-header-wrap {
	background-color: #990000;
	color: #FFF;
}

.ast-below-header-wrap a {
	color: #FFF;
}

/* CUrrent Page */
.current_page_item a{
	font-weight: 700;
	
}

@media (max-width: 544px) {
	.current_page_item a{
		color: black !important;
	}
	.current_page_item a:hover{
		font-weight: 700;
		color: black !important;
	}
}

/* List Styles */
ol, ul {
    margin: 0 0 1.5em 1.25em;
}

/* Snail Cursor Animation */
.snail {
	width: 100px;
	height: 68px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	pointer-events: none;
	background-image: url("/wp-content/uploads/2025/03/snail.png");
	background-size: contain;
}

.snail .emitter {
	position: relative;
	top: 20%;
	left: 25%;
	width: 10px;
	height: 10px;
	transform: translate(-50%, -50%);
}

.smokeParticle {
	position: absolute;
	width: 10px;
	height: 10px;
	z-index: 9990;
	background: radial-gradient(circle, rgba(240,240,240,1) 0%, rgba(0,0,0,0) 80%);
	pointer-events: none;
}

@media (max-width: 767px) {
	.snail {
		display: none;
	}
}

/* Kontakt Formular */

/* Dark Background Section */
.sm_black_bg a {
    color: var(--e-global-color-primary) ;
}

.sm_black_bg a:hover {
    color: var(--e-global-color-7cd42bc);
}
/* light Background Section */
.sm_light_bg a {
    color: var(--e-global-color-secondary);
}

.sm_light_bg a:hover {
    color: var(--e-global-color-7cd42bc);
}

/* Custom Arrow Cursor for UAEL Post Body */
.custom-arrow-cursor {
    position: fixed;
    pointer-events: none;
    z-index: 9999;
    transform: translate(-50%, -50%);
    transition: all 0.1s ease-out;
}

.custom-arrow-cursor i {
    font-size: 24px;
    color: var(--e-global-color-secondary);
    transition: all 0.2s ease;
}

/* Optional: Add some animation to the arrow */
.custom-arrow-cursor i {
    animation: arrowPulse 1.5s ease-in-out infinite;	
	background-color: var(--e-global-color-7cd42bc);
	padding: 15px;
	border-radius: 50%;
}

@keyframes arrowPulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.01);
    }
}

/* Style for the container when cursor is active */
.uael-post__body.custom-cursor-active {
    cursor: none !important;
}

/* Force override cursor for all elements inside UAEL post body */
.uael-post__body.custom-cursor-active * {
    cursor: none !important;
}

/* Specifically target links, buttons, and interactive elements */
.uael-post__body.custom-cursor-active a,
.uael-post__body.custom-cursor-active button,
.uael-post__body.custom-cursor-active input[type="submit"],
.uael-post__body.custom-cursor-active input[type="button"],
.uael-post__body.custom-cursor-active .elementor-button,
.uael-post__body.custom-cursor-active .wp-block-button__link {
    cursor: none !important;
}

/* Also override when hovering specifically over links inside the post body */
.uael-post__body:hover a,
.uael-post__body:hover button,
.uael-post__body:hover input[type="submit"],
.uael-post__body:hover input[type="button"],
.uael-post__body:hover .elementor-button,
.uael-post__body:hover .wp-block-button__link {
    cursor: none !important;
}

/* Extra aggressive cursor override - highest specificity */
.uael-post__body.custom-cursor-active a:hover,
.uael-post__body.custom-cursor-active button:hover,
.uael-post__body.custom-cursor-active input:hover,
.uael-post__body.custom-cursor-active .elementor-button:hover,
.uael-post__body.custom-cursor-active .wp-block-button__link:hover,
.uael-post__body.custom-cursor-active *:hover,
.uael-post__body:hover * {
    cursor: none !important;
}

/* Global override when custom cursor is active */
.uael-post__body.custom-cursor-active {
    cursor: none !important;
}

.uael-post__body.custom-cursor-active *,
.uael-post__body.custom-cursor-active *:before,
.uael-post__body.custom-cursor-active *:after {
    cursor: none !important;
}

/* Optional: Add hover effect to the post body */
.uael-post__body:hover {
    transition: all 0.3s ease;
}

.moHighlight,
.moHighlightBlock {
    z-index: 9;
    position: relative;
    padding: 0 30px;
    color: #000;
}

.moHighlight::before,
.moHighlightBlock::before {
	content: "";
    background-color: #ffed00;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.moHighlight::before {
    transform: translateY(3%) scaleY(0.8);
}

/*.moHighlightBlock::before {
    transform: skewX(0deg);
}*/


/* SM Team Hover Effect */
.sm-team .sm-team-hover {
	opacity: 0;
	transition: all 0.3s ease;
}

.sm-team:hover .sm-team-hover {
	opacity: 1;
}

.sm-team .elementor-widget-blockquote::before {
	left: 25% !important;
}
.sm-team .elementor-widget-blockquote::after {
	right: 25% !important;
}


/* Remove Elementor's forced 100% height in loop items */
.e-loop-item .e-con {
    flex-grow: 0 !important;
    height: auto !important;
}


/* Referenzen Section */
.sm-referenzen .uael-post__thumbnail img {
	min-height: 450px;
}

.sm-referenz-ketegorien a {
color: var(--e-global-color-primary) !important;
}

.type-referenz a:hover {
color: var(--e-global-color-7cd42bc) !important;
}

.type-referenz:hover h2 {
color: var(--e-global-color-accent) !important;
}

.sm-referenzen-image {	
	position: relative;
	overflow: hidden;
}

.sm-referenzen-image::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	background-image: inherit;
	transition: transform 0.5s ease;
	z-index: 0;
}

.type-referenz:hover .sm-referenzen-image::before {
	transform: scale(1.1);
}



@media (max-width: 1024px) {
	.sm_modelviewer model-viewer {
		max-width: 600 !important;
		height: 400px !important;

}
}

@media (max-width: 767px) {
	.sm_modelviewer model-viewer {
		width: 80vw !important;
		height: 400px !important;

}
}