@layer components {
    .section-hero {
        padding: var(--section-padding);
        background: var(--color-primary);
        color: var(--color-on-primary);
        border-bottom: 1px solid var(--color-border);
        overflow: hidden;
        position: relative;

        [data-theme="dark"] & {
            background: var(--color-surface-variant);
            color: var(--color-on-surface);
        }

        & .section-hero__bg-image {
            position: absolute;
            object-fit: cover;
            inset: 0;
            width: 100%;
            height: 100%;
            opacity: 0.15;
            filter: grayscale(100%) brightness(0.5);
            pointer-events: none;
            z-index: 0;

        }

        & .section-hero__inner {
            position: relative;
            z-index: 1;
            display: grid;
            grid-template-columns: 1fr 1fr;
            align-items: center;
            gap: 4rem;

            @media (max-width: 1024px) {
                gap: 2rem;
            }

            @media (max-width: 768px) {
                grid-template-columns: 1fr;
                text-align: center;
                gap: 3rem;
            }
        }

        & .section-hero__main {
            display: flex;
            flex-direction: column;
            gap: 1.5rem;
        }

        & .section-hero__title {
            font-size: 3rem;
            margin-bottom: 0;
            line-height: 1.1;
            color: currentColor;

            @media (max-width: 768px) {
                font-size: 2.2rem;
            }
        }

        & .section-hero__side {
            display: flex;
            flex-direction: column;
            gap: 2rem;
            align-items: center;
            justify-content: center;

            @media (max-width: 768px) {
                align-items: stretch;
            }
        }

        & .section-hero__image-container {
            position: relative;
            width: 100%;
            aspect-ratio: 16 / 9;
            border-radius: var(--radius-lg);
            overflow: hidden;
            box-shadow: var(--shadow-xl);
            transform: rotate(2deg);
            border: 8px solid var(--color-on-primary);

            [data-theme="dark"] & {
                border-color: var(--color-surface-variant);
            }

            &::after {
                content: "";
                position: absolute;
                inset: 0;
                box-shadow: inset 0 0 40px var(--color-surface);
                opacity: 0.1;
            }
        }

        & .section-hero__image {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        & .section-hero__short-description {
            font-size: 1.25rem;
            color: currentColor;
            margin-bottom: 1rem;
            line-height: 1.6;
            font-weight: 500;
        }

        & .section-hero__description {
            font-size: 1rem;
            line-height: 1.6;
            margin-top: 1rem;
            color: currentColor;
            opacity: 0.8;
        }


    }
}
