/**
 * ANCHOR Customising
 *
 */
html {
    font-size: 100%;
    font-weight: 300;
}

h1,
.h1,
.clx-h1,
h2,
.h2,
.clx-h2,
h3,
.h3,
.clx-h3,
h4,
.h4,
.clx-h4,
h5,
.h5,
.clx-h5,
h6,
.h6,
.clx-h6 {
    margin: 33px 0 12px;
    font-family: var(--font-main);
    color: var(--color-black);
    font-weight: 400;
    line-height: 1.1;
}

h1,
.h1,
.clx-h1 {
    font-size: 50px;
    margin-top: 0;
    margin-bottom: 30px;
}

h2,
.h2,
.clx-h2 {
    font-size: 28px;
}

h3,
.h3,
.clx-h3 {
    font-size: 22px;
}

h4,
.h4,
.clx-h4 {
    font-size: 1.2rem;
}

h5,
.h5,
.clx-h5 {
    font-size: 1rem
}

h6,
.h6,
.clx-h6 {
    font-weight: 400;
    font-size: 1rem
}

ul li {
    margin: 0 0 8px 25px;
}

header {
    height: 120px;
    background-image: linear-gradient(0deg, var(--clx-color-primary) 0, var(--clx-color-primary) 40px, var(--clx-color-white) 40px);
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.3);

    & section:first-child {
        height: 80px;

        .clx-logo {
            position: absolute;
            margin-top: 26px;
            width: 240px;
            height: auto;
            overflow: hidden;
        }

        & .clx-navigation {

            ul {
                li {
                    a {
                        color: var(--clx-color-black);
                        align-items: 1;
                        font-weight: 300;

                        &:hover {
                            color: var(--clx-color-primary);
                        }

                        &.icon {
                            padding: 0;
                            margin: 0 0 0 10px;
                            width: 30px;
                            height: 30px;
                            cursor: pointer;
                            background-size: 20px auto;
                            background-position: right center;
                            background-repeat: no-repeat;

                            &.icon-search {
                                margin-right: 20px;
                                background-image: url(../images/icon_search_dark.svg);

                                &:hover {
                                    background-image: url(../images/icon_search_light.svg);
                                }
                            }

                        }
                    }
                }
            }
        }
    }

    & section:last-child {
        height: 40px;

        & .clx-navigation {
            ul {
                li {
                    a {
                        text-transform: uppercase;
                        font-weight: 400;

                        &.starter_active {
                            background-color: var(--clx-color-white);
                            color: var(--clx-color);
                        }
                    }

                    &:hover {
                        background-color: var(--clx-color-white);

                        a {
                            color: var(--clx-color);
                        }
                    }

                    ul {
                        transition: none;
                        margin-left: 0 !important;
                        box-shadow: rgba(0, 0, 0, 0.07) 0px 1px 1px, rgba(0, 0, 0, 0.07) 0px 2px 2px, rgba(0, 0, 0, 0.07) 0px 4px 4px;

                        li {
                            a {
                                padding-top: 6px;
                                padding-bottom: 6px;
                                text-transform: none;

                                &:hover {
                                    color: var(--clx-color-primary);
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

main {
    min-height: 70vh;

    .clx-hero {
        margin-top: 120px;
    }

    .clx-navigation-skyscraper {
        position: sticky;
        top: 200px;
        min-height: 50px;
        margin: 0;
        box-sizing: border-box;
        padding-right: 60px;
        width: 100%;

        ul {
            margin: 0;

            li {
                width: 100%;
                border-top: 1px solid var(--clx-color-darkwhite);

                &:last-of-type {
                    border-bottom: 1px solid var(--clx-color-darkwhite);
                }

                a {
                    color: var(--clx-nav-color-a-a);
                    padding: 10px 15px;

                    &:hover {
                        background-color: var(--clx-color-secondary);
                    }

                    &.active,
                    &.starter_active {
                        color: var(--clx-color-white);
                        background-color: var(--clx-color-primary);
                    }
                }

                ul {

                    li {
                        border: none;

                        &:last-of-type {
                            border: none;
                        }


                        a {
                            padding-left: 35px;
                            line-height: 1.3;


                            &:before {
                                content: "–";
                                margin-right: 5px;
                                margin-left: -15px;
                            }

                            &:hover,
                            &.active,
                            &.starter_active {
                                color: var(--clx-color);
                                background-color: var(--clx-color-secondary);
                            }

                        }

                        &:last-child {
                            padding-bottom: 0;
                        }
                    }

                }
            }
        }
    }

    .clx-image-right {
        float: right;
        width: 20%;
        min-width: 100px;
        margin-bottom: 22px;
        margin-left: 30px;
    }

    .content-column {

        ul li {
            margin-left: 20px;
            list-style: url("../images/icon_list-style.svg");
        }
    }

    .clx-calendar {

        & div:first-child {
            width: 70px;
            font-size: 28px;
            font-weight: 400;
        }

        & div:last-child {
            width: calc(100% - 70px);
        }
    }

    a.forward {
        font-weight: 400;
        padding-right: 20px;
        background: transparent url("../images/icon_nav_forward_light.svg") center right no-repeat;
        background-size: auto 16px;
    }

    a:hover.forward {
        background: transparent url("../images/icon_nav_forward_dark.svg") center right no-repeat;
        background-size: auto 16px;
    }

    a.back {
        font-weight: 400;
        padding-left: 20px;
        background: transparent url("../images/icon_nav_back_light.svg") center left no-repeat;
        background-size: auto 16px;
    }

    a:hover.back {
        background: transparent url("../images/icon_nav_back_dark.svg") center left no-repeat;
        background-size: auto 16px;
    }

    .clx-form {

        .clx-grid>* {
            padding-bottom: 5px;
        }

        .clx-width-1-1 {
            align-items: flex-start;
        }

        & label,
        & .clx-form-label {
            margin-top: 18px;
            width: 30%;
        }

        & input,
        & textarea,
        & select {
            width: 70%;
        }

        .clx-form-group,
        .form-label {
            width: 70%;
            display: inline-flex;

            label {
                width: auto;
                margin-right: var(--clx-grid-gap);
            }

        }

        & input[type=submit] {
            margin: 0;
            width: 39%;
        }

        & input[type="radio"]:checked::after {
            background: var(--clx-color-black);
        }

        & input[type="checkbox"]:checked::after {
            border-color: var(--clx-color-black);
        }


    }


    .staff {
        .canvas {
            aspect-ratio: 1;

            img {
                width: 100%;
                height: 100%;
                box-sizing: border-box;
                object-fit: cover;
                object-position: center;
            }
        }
    }
}

main.home {
    h2 {
        font-size: 38px;
        margin-bottom: 20px;
    }

    .clx-hero {
        height: 60vh;

        .clx-fullscreen-content {
            justify-content: flex-start;
            align-items: flex-end;
            min-width: 50vw;
            width: fit-content;

            div {
                box-sizing: border-box;
                padding: 25px 0 25px 80px;
                background: linear-gradient(90deg, rgba(255 255 255 / 1) 0%, rgba(255 255 255 / 0) 100%);
                width: 100%;

                h1 {
                    font-size: 40px;
                    font-weight: 300;
                    line-height: 1.1;
                    margin: 0;
                }
            }
        }
    }
}

main.content {

    .clx-hero {
        height: 42vh;
        min-height: 300px;
    }

    h2.month {
        position: relative;
        width: 100%;

        &::after {
            content: '';
            position: relative;
            display: block;
            box-sizing: border-box;
            margin-top: 6px;
            width: calc(100% - (var(--clx-grid-gap)/2));
            border-bottom: 1px dotted var(--clx-color-gray);
        }
    }

    a {
        font-weight: 400;
    }

    .card hr {
        border-top: 1px dotted var(--clx-border-color);
        background: transparent;
    }

    .commercial {
        ul.alphaindex {
            display: flex;
            justify-content: space-between;
            width: 100%;

            li {
                list-style: none;
                margin: 0;
            }
        }
    }

}

main.full {
    min-height: 70vh;

    section {
        padding-top: 220px;
    }
}

footer {

    & section:first-child {
        background-color: transparent;
        background-image: url(../images/stockhornkette.svg);
        background-position: center top;
        background-size: 100% auto;
        background-repeat: no-repeat;

        .clx-logo {
            img {
                margin-top: 36px;
                max-width: 200px;
            }
        }
    }

    & section:last-child {
        color: rgba(255, 255, 255, 0.6);
        background-color: var(--clx-color-tertiary);

        & nav {
            margin-right: -20px;

            ul {
                li {
                    display: inline;
                    list-style: none;

                    a {
                        padding-top: 0;
                        padding-bottom: 0;
                        color: rgba(255, 255, 255, 0.6);
                        font-weight: 300;

                        &:hover {
                            color: var(--clx-color-primary);
                        }
                    }
                }
            }
        }
    }
}

.clx-bubble {
    top: 220px;
    background-color: var(--clx-color-primary);
    transform: rotate(10deg);

    &.clx-bubble-position-right {
        right: 10vw;
    }
}

.clx-navigation-mobile {
    ul {
        li {
            ul {
                padding-left: 4px;

                li {
                    ul {
                        padding-left: 20px;
                    }

                    a {
                        &:before {
                            content: "-";
                            margin-right: 4px;
                        }
                    }
                }
            }
        }
    }
}

.clx-splide-canvas .splide__slide {
    width: 100%;
    aspect-ratio: var(--clx-card-aspect-ratio);
    overflow: hidden;
}

.splide__slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.splide__arrow {
    background: transparent;

    & svg {
        fill: var(--clx-color-white);
    }
}


/**
 * ANCHOR Media Queries
 *
 */
@media (max-width: 1360px) {

    main.home {
        .clx-hero {
            .clx-fullscreen-content {
                div {
                    padding-left: calc(100% - 600px);
                }
            }
        }
    }
}

@media (max-width: 1260px) {
    header {

        & section:first-child {

            .clx-logo {
                height: 50px;
            }
        }
    }

    main.home {
        .clx-hero {
            .clx-fullscreen-content {
                div {
                    padding-left: 40px;
                }
            }
        }
    }
}

@media (max-width: 960px) {

    header {
        height: 90px;
        background-image: linear-gradient(0deg, var(--clx-color-primary) 0, var(--clx-color-primary) 28px, var(--clx-color-white) 28px);

        .clx-navigation-burger {
            display: block;
        }

        & section:first-child {

            .clx-logo {
                margin-top: 15px;
                width: 200px;
                height: auto;
            }

            .clx-navigation {
                display: none;
            }

            .clx-navigation-burger {
                margin-top: 8px;
            }
        }

        & section:last-child {
            .clx-navigation {
                display: none;
            }
        }

    }

    main {

        .clx-hero {
            margin-top: 90px;
        }

        .subnav {
            display: none;
        }

        .clx-width-2-3 {
            width: 100%;
        }


    }

    main.home {
        .clx-hero {
            .clx-fullscreen-content {
                div {
                    padding-left: 25px;
                }
            }
        }
    }


    footer {
        & section:first-child {

            .clx-logo {
                display: none;
            }

            h4 {
                margin-top: 0;
            }
        }

        & section:last-child {
            .clx-content-right {
                padding-top: 15px;
                justify-content: flex-start;
            }
        }
    }

    .clx-container {
        padding-left: 25px;
        padding-right: 25px;
    }

    h1,
    .h1,
    h2,
    .h2,
    h3,
    .h3,
    h4,
    .h4 {
        hyphens: auto;
    }
}


@media (max-width: 640px) {

    header {
        & section:first-child {
            .nav2 {
                display: none;
            }
        }
    }

    main.home {

        .clx-hero {

            .clx-fullscreen-content {

                div {
                    padding: 20px 0 20px 20px;

                    h3 {
                        font-size: 28px;
                    }
                }
            }
        }
    }

    .clx-bubble {
        top: 80px;
        transform: rotate(10deg) scale(0.7);

        &.clx-bubble-position-right {
            right: -40px;
        }
    }

    h1,
    .h1 {
        font-size: 32px;
    }

    h2,
    .h2 {
        font-size: 24px;
    }

    h3,
    .h3 {
        font-size: 20px;
    }
}

@media only screen and (orientation: portrait) {}

@media print {

    html {
        font-size: 60%;
    }

    header,
    footer,
    nav,
    .clx-navigation-burger,
    .clx-totop,
    .clx-button,
    .clx-hero,
    .clx-parallax,
    .clx-video,
    .clx-bubble,
    .splide__arrow,
    .splide__pagination,
    #captcha {
        display: none !important;
    }

    /*
    footer {
        padding-top: 30px;
        background-color:transparent;        

        &>* {
            color: var(--clx-color);
        }
    }
    */
}