/* Video Hero Component */
.cb-videohero {
    --videohero-bg: #161c57;
    --videohero-height: 813px;

    position: relative;
    width: 100%;
    height: var(--videohero-height);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: var(--videohero-bg);

    .cb-videohero__video {
        position: absolute;
        top: 50%;
        left: 50%;
        min-width: 100%;
        min-height: 100%;
        width: auto;
        height: auto;
        transform: translate(-50%, -50%);
        z-index: 1;
        object-fit: cover;
    }

    .cb-videohero__overlay {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        opacity: 0;
        background: linear-gradient(
            135deg,
            rgba(22, 28, 87, 0.7) 0%,
            rgba(5, 111, 173, 0.5) 50%,
            rgba(39, 153, 209, 0.3) 100%
        );
        z-index: 2;
    }

    .cb-videohero__content {
        position: relative;
        z-index: 3;
        text-align: center;
        color: #fff;
        padding: 0 20px;
    }

    .cb-videohero__title {
        font-size: 90px;
        font-weight: 700;
        letter-spacing: 0;
        margin: 0;
        line-height: 1.1;
    }

    .cb-videohero__subtitle {
        font-size: 72px;
        font-weight: 400;        
        opacity: 0.9;
        line-height: 1.2;
        margin: 0;
    }

    /* Responsive - Large screens */
    @media (max-width: 1400px) {
        .cb-videohero__title {
            font-size: 72px;
        }
        .cb-videohero__subtitle {
            font-size: 56px;
        }
    }

    /* Responsive - Tablets */
    @media (max-width: 1200px) {
        --videohero-height: 600px;

        .cb-videohero__title {
            font-size: 56px;
        }
        .cb-videohero__subtitle {
            font-size: 42px;
        }
    }

    /* Responsive - Mobile landscape */
    @media (max-width: 900px) {
        --videohero-height: 500px;

        .cb-videohero__title {
            font-size: 42px;
        }
        .cb-videohero__subtitle {
            font-size: 32px;
        }
    }

    /* Responsive - Mobile portrait */
    @media (max-width: 600px) {
        --videohero-height: 450px;

        .cb-videohero__title {
            font-size: 32px;
        }
        .cb-videohero__subtitle {
            font-size: 24px;
        }
    }
}
