@use '../../../styles/tools/functions';
@use '../../../styles/settings/colours';

.ColumnContainer {
    @media all and (min-width: functions.em(768)) {
        display: grid;
    }
}

.Content {
    @media all and (min-width: functions.em(768)) {
        width: 50%;
        grid-row: 1;
        grid-column: 1;
        margin-top: auto;
        margin-bottom: auto;
        z-index: 2;
    }
}

.BackLink {
    margin-bottom: functions.pxRem(20);
    display: inline-flex;
    gap: functions.pxRem(12);
    align-items: center;
    text-decoration: none;

    @media all and (min-width: functions.em(768)) {
        margin-bottom: functions.pxRem(40);
        gap: functions.pxRem(18);
    }

    &:hover {
        .BackLinkText:after {
            width: calc(100% - 0em);
            opacity: 1;
            transition: width 0.3s, opacity 0.3s, background-color 0.3s;
        }
    }

    svg {
        height: functions.pxRem(20);
        fill: inherit;
        margin-top: -0.25em;

        @media all and (min-width: functions.em(768)) {
            height: functions.pxRem(24);
        }
    }
}

.BackLinkText {
    padding-top: functions.pxRem(2);

    &:after {
        content: '';
        width: calc(100% - 1em);
        display: block;
        opacity: 0;
        border-bottom: functions.pxRem(2) solid;
        transition: width 0s 0.3s, opacity 0.3s;

        @media (prefers-reduced-motion) {
            width: calc(100% - 0em);
        }
    }
}

.Media {
    @media all and (min-width: functions.em(768)) {
        width: 66.6666%;
        margin-top: auto;
        margin-bottom: auto;
        margin-left: auto;
        grid-row: 1;
        grid-column: 1;
    }
}

.MediaInner {
    overflow: hidden;
    display: grid;
    position: relative;
    margin-left: functions.pxRem(-24);
    margin-right: functions.pxRem(-24);

    @media all and (min-width: functions.em(768)) {
        border-radius: functions.pxRem(20);
        margin-left: 0;
        margin-right: 0;
    }

    @media all and (min-width: functions.em(1024)) {
        border-radius: functions.pxRem(30);
    }
}

.Image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    grid-row: 1;
    grid-column: 1;
}

.Carousel {
    width: 100%;
    height: 100%;
    object-fit: cover;
    grid-row: 1;
    grid-column: 1;
}

.CarouselSlide {
    height: 100%;

    img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

.Video {
    width: 100%;
    height: 100%;
    grid-row: 1;
    grid-column: 1;
    border: none;
    background-color: transparent;
    overflow: hidden;
    z-index: 1;

    + .Image {
        width: 100%;
        height: 100%;
        object-fit: cover;
        position: absolute;
        top: 0;
        left: 0;
    }
}
