body.homepage-ambient-theme.home-hero {
    position: relative;
    background:
        radial-gradient(circle at 16% 18%, rgba(24, 224, 208, 0.04), transparent 22%),
        radial-gradient(circle at 84% 12%, rgba(24, 224, 208, 0.028), transparent 20%),
        radial-gradient(circle at 52% 58%, rgba(24, 224, 208, 0.025), transparent 26%),
        linear-gradient(180deg, #0c1115 0%, #10161b 24%, #11191f 52%, #10161b 78%, #0d1216 100%);
}

body.homepage-ambient-theme.home-hero #main-content {
    position: relative;
}

body.homepage-ambient-theme.home-hero #main-content::after {
    content: "";
    position: absolute;
    width: 2px;
    height: calc(100% + 56rem);
    top: 3rem;
    right: 10%;
    background:
        linear-gradient(180deg, transparent 0%, rgba(24, 224, 208, 0.78) 18%, rgba(166, 246, 241, 0.18) 50%, rgba(24, 224, 208, 0.58) 82%, transparent 100%),
        linear-gradient(180deg, transparent 0%, transparent 42%, rgba(132, 236, 229, 0.72) 50%, transparent 58%, transparent 100%);
    background-repeat: no-repeat;
    background-size: 100% 100%, 100% 220%;
    background-position: 0 0, 0 140%;
    box-shadow: 0 0 18px rgba(24, 224, 208, 0.16);
    transform: rotate(22deg);
    transform-origin: top center;
    animation: homepage-ambient-laser 5.6s ease-in-out infinite, homepage-ambient-laser-pulse 10s ease-in-out infinite;
    opacity: 0.42;
    pointer-events: none;
    z-index: 0;
}

@keyframes homepage-ambient-laser {
    0%, 100% {
        transform: translateX(0) rotate(22deg);
        opacity: 0.24;
    }
    50% {
        transform: translateX(-44px) rotate(22deg);
        opacity: 0.54;
    }
}

@keyframes homepage-ambient-laser-pulse {
    0%,
    58%,
    100% {
        background-position: 0 0, 0 140%;
    }
    72% {
        background-position: 0 0, 0 20%;
    }
    86% {
        background-position: 0 0, 0 -120%;
    }
}

body.homepage-ambient-theme.home-hero :is(
    header,
    #main-content,
    footer,
    .cookie-banner
) {
    position: relative;
    z-index: 1;
}

body.homepage-ambient-theme.home-hero .scroll-top-button {
    z-index: 99990;
}

body.homepage-ambient-theme.home-hero :is(
    .directions-block,
    .service-strip-block,
    .target-audience-block,
    .why-choose-block,
    .workflow-block,
    .mission-block,
    .geography-block,
    .cta-block,
    .seo-text-block,
    .contact-form-block
) {
    background: transparent !important;
    background-color: transparent !important;
}

body.homepage-ambient-theme.home-hero :is(
    .directions-block,
    .service-strip-block,
    .target-audience-block,
    .why-choose-block,
    .workflow-block,
    .mission-block,
    .geography-block,
    .cta-block,
    .seo-text-block,
    .contact-form-block
)::before,
body.homepage-ambient-theme.home-hero :is(
    .directions-block,
    .service-strip-block,
    .target-audience-block,
    .why-choose-block,
    .workflow-block,
    .mission-block,
    .geography-block,
    .cta-block,
    .seo-text-block,
    .contact-form-block
)::after {
    background: none !important;
    box-shadow: none !important;
}

body.homepage-ambient-theme.home-hero :is(
    .directions-block,
    .service-strip-block,
    .target-audience-block,
    .why-choose-block,
    .workflow-block,
    .geography-block,
    .cta-block,
    .seo-text-block,
    .contact-form-block
) > .container,
body.homepage-ambient-theme.home-hero .contact-form-block > .container-fluid {
    position: relative;
}

body.homepage-ambient-theme.home-hero :is(
    .directions-block,
    .service-strip-block,
    .target-audience-block,
    .why-choose-block,
    .workflow-block,
    .geography-block,
    .cta-block,
    .seo-text-block,
    .contact-form-block
) > .container > *,
body.homepage-ambient-theme.home-hero .contact-form-block > .container-fluid > * {
    position: relative;
    z-index: 1;
}

body.homepage-ambient-theme.home-hero .service-strip-item,
body.homepage-ambient-theme.home-hero .feature-item,
body.homepage-ambient-theme.home-hero .process-step-card,
body.homepage-ambient-theme.home-hero .product-line-card,
body.homepage-ambient-theme.home-hero .glass-card {
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.18);
}

body.homepage-ambient-theme.home-hero :is(
    .gradient-separator,
    .mission-divider,
    .hero-slider__separator
) {
    display: none !important;
}

@media (prefers-reduced-motion: reduce) {
    body.homepage-ambient-theme.home-hero #main-content::after {
        animation: none;
        transform: rotate(22deg);
        opacity: 0.34;
        background-position: 0 0, 0 140%;
    }
}

@media (max-width: 768px) {
    body.homepage-ambient-theme.home-hero #main-content::after {
        height: calc(100% + 32rem);
        top: 2rem;
        right: 3%;
        opacity: 0.28;
    }
}
