.generative-dots-bg {
    position: absolute;
    inset: 0;
  }
  .generative-dots-bg__inner {
    position: absolute;
    width: 100vmax;
    height: 100vmax;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .bg__dot {
    position: absolute;
    width: 1%;
    aspect-ratio: 1;
    top: calc(100% * var(--y));
    left: calc(100% * var(--x));
    background: #18181b;
    border-radius: calc(75% - var(--n) * 50%);
    transform: scale(calc(var(--n) * var(--n) * var(--n) * 2));
  }


.wave-section-separator svg {
    /* height: auto; */
    position: absolute;
    background: #18181b;
    width: 100vmax;
    height: auto;
}

.section-references__separator-ind {
    padding-top: 5em;
    border-radius: 0 0 48px 48px;
    box-shadow: 0px 3px 0px #f37d03cf;
    position: relative;
    background-color: #f1f1f1;
}

.section-references__separator-ind.top {
    border-radius: 48px 48px 0 0;
    box-shadow: 0px -3px 0px #f37d03cf;
}

#section-references {
    background-color: #18181b;
    min-height: auto;
}

.section-references__wrapper {
    width: 80vw;
    height: 81vh;
    height: 752px;
    margin: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 20px 0 10px;
    margin-top: 15px;
}

.section-references__separator-bg {
    width: 100%;
    height: 100%;
    background: #f1f1f1;
}

.section-references__content-wrapper {
    width: 80vw;
    height: 100%;
    position: relative;
    background: #f1f1f1;
    overflow: hidden;
}


.section-references__wrapper > canvas {
    position: absolute;
    max-width: 80vw;
    margin: auto;
    padding: 0px 0 0px;
    height: calc(100% - 44px)!important;
    border-radius: 48px;
    overflow: hidden;
    opacity: 0.6;
}

#section-references__content-cards-wrapper {
    position: absolute;
    max-width: 100%;
    z-index: 1;
    margin-top: 150px;
}

.section-references__content-headline h2{
    font-size: 40px;
    font-family: "dl-prim-font";
    font-weight: bold;
    text-transform: uppercase;
    color: #18181b;
    text-align: center;
    margin-top: 0;
    text-align: center;
    margin: 0 20px auto 20px;
}

.section-references__content-headline h2 span{
    color: #f75b00;
}

#section-references__content-cards-wrapper .handle {
    width: 165%;
    width: 2540px;
    height: 100%;
    cursor: grab;
    background-color: #f1f1f1;
}


#section-references__content-cards-wrapper .handle .page {
    width: 470px;
    height: 320px;
    background: rgba(255, 255, 255, 0.815);
    border-radius: 22px;
    float: left;
    margin-right: 30px;
    background: #e5e5e5;
    --webkit-backdrop-filter: blur(7px);
            backdrop-filter: blur(7px);
    background: linear-gradient(-35deg, rgba(208, 208, 208, 0.555) 0%, rgba(230, 230, 230, 0.349) 100%);
    box-shadow: 0 0 10px #e7e7e7;
    padding: 10px 20px;
}

#section-references__content-cards-wrapper .handle .page:nth-child(1) {
    margin-left: 32px;
}


#section-references__content-cards-wrapper .handle .page .headline h3 {
    font-size: 23px;
    font-family: 'Source Sans';
    font-weight: bold;
    margin-top: 150px;
    margin-bottom: 0;
}

#section-references__content-cards-wrapper .handle .page .textbox p {
    font-size: 20px;
    font-family: 'Source Sans';
    margin-top: 10px;
}


#section-references__content-cards-wrapper .handle .page .image img {
    width: 290px;
    height: auto;
    position: absolute;
    z-index: -1;
    right: calc((100% - 290px) / 2);
    top: -80px;
    border-radius: 22px;
    --webkit-backgrop-filter: blur(7px);
             backdrop-filter: blur(7px); 

    box-shadow: 0 0 10px #e7e7e7, 0px 5px 9px -3px #a7a7a7;
    opacity: 0.9;
}

.section-references__cards-nav {
    position: absolute;
    bottom: 50px;
    width: 80vw;
    display: flex;
    justify-content: center;
    gap: 1rem;
    z-index: 1;
}

.section-references__cards-nav-arrow {
    --arrow-size: 1.8em;
    --arrow-hover-color: rgb(94, 94, 94);
    --arrow-color: rgb(150, 150, 150);
    position: relative;
    display: inline-flex;
    vertical-align: middle;
    width: var(--arrow-size);
    height: var(--arrow-size);
    padding: 25px;
    border: 2px solid rgb(204, 204, 204);
    background-color: rgb(223, 223, 223);
    border-radius: 50%;
}

.section-references__cards-nav-arrow::after {
    content: "";
    position: absolute;
    top: 50%;
    box-sizing: border-box;
    display: inline-block;
    width: calc( var(--arrow-size) * .7071);
    height: calc( var(--arrow-size) * .7071);
    border-top: calc( var(--arrow-size) / 5 ) solid var(--arrow-color);
    transition: all .3s ease-in-out;
}

.section-references__cards-nav-arrow.prev::after {
    left: calc( var(--arrow-size) / 2 );
    border-left: calc( var(--arrow-size) / 5 ) solid var(--arrow-color);
    transform-origin: top left;
    rotate: -45deg;
}

.section-references__cards-nav-arrow.next::after {
    right: calc( var(--arrow-size) / 2 );
    border-right: calc( var(--arrow-size) / 5 ) solid var(--arrow-color);
    transform-origin: top right;
    rotate: 45deg;
}

.section-references__cards-nav-arrow.next:hover::after,
.section-references__cards-nav-arrow.prev:hover::after {
    border-color: var(--arrow-hover-color);
    box-shadow: 0px 0px 3px rgb(223, 223, 223);
}



@media only screen and (max-width: 790px){
    .section-references__wrapper {
       height: 810px;
    }

}


@media only screen and (max-width: 670px){
    .section-references__wrapper {
        width: 92vw;
    }
    .section-references__content-wrapper, 
    .section-references__cards-nav {
        width: 92vw;
    }
    #section-references__content-cards-wrapper .handle .page {
        width: 80vw
    }
    #section-references__content-cards-wrapper .handle {
        width: calc(400vw + 190px);
    }
    #section-references__content-cards-wrapper .handle {
        display: flex;
        justify-content: space-evenly;
    }
}

@media only screen and (max-width: 600px){
    .section-references__content-headline h2 {
        font-size: 34px;
    }
}

@media only screen and (max-width: 540px){
    #section-references__content-cards-wrapper .handle .page {
        height: auto;
    }
    .section-references__wrapper {
        height: 850px;
    }
    #section-references__content-cards-wrapper .handle {
        width: calc(400vw + 160px);
    }
    #section-references__content-cards-wrapper .handle .page:nth-child(1) {
        margin-left: 0;
    }
    #section-references__content-cards-wrapper .handle .page {
        margin-right: 0;
    }
}