.swiper-scrollbar {
    background: #d6d6d6;
}

.swiper-container-horizontal>.swiper-scrollbar {
    border-radius: 2px;
    height: 5px;
    width: 200px;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.swiper-wrapper img {
    width: 100%;
}

.project-buttons__wrap {
    padding: 0 22px;
}

.project-button {
    height: 345px;
    display: block;
    position: relative;
    border-radius: 8px;
    margin-top: 12px;
    overflow: hidden;
    padding-bottom: 87px;
}

.project-button__details {
    position: absolute;
    bottom: 0;
    left: 0;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(10px);
    padding: 30px 13px;
    width: 100%;
}

h3.project-button__title {
    font-size: 14px;
    font-weight: 400;
    color: var(--color-black);
    letter-spacing: 0;
    margin: 0;
}

h3.project-button__title span {
    font-size: 20px;
    line-height: normal;
    font-weight: 700;
    letter-spacing: 0.1em;
    display: block;
    margin-bottom: 8px;
}

.project-button__details h4 {
    font-size: 12px;
    color: #fff;
    text-transform: uppercase;
    padding: 8px 16px;
    border-radius: 4px;
    margin: 12px 0 12px;
    background-color: #A35C52;
    font-weight: 400;
    width: max-content;
    display: none;
}

.project-buttons__bottom-content {
    padding: 0 122px 0 0px;
}

.project-button-slider {
    padding-bottom: 30px;
}

.project-buttons__wrap .swiper-scrollbar {
    display: none;
}

.project-buttons__bottom-content .btn {
    text-align: center;
}

.swiper-button-next,
.swiper-button-prev {
    background: none;
    width: auto;
    height: auto;
    right: 0;
    left: unset;
    top: unset;
    transform: unset;
    bottom: -20px;
}

.swiper-button-prev {
    margin-right: 48px;
}

.swiper-button-next:before {
    content: "\e912";
}

.swiper-button-prev:before {
    content: "\e908";
}


.swiper-button-prev:before,
.swiper-button-next:before {
    font-family: 'amiano-icon';
    color: var(--color-black);
    font-size: 35px;
    line-height: 1em;
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    opacity: 1;
}

.project-button__cta {
    letter-spacing: 0.25em;
}

.swiper-button-prev:hover:before,
.swiper-button-next:hover:before {
    color: #EF4024;
}

.project-buttons__wrap {
    .swiper-container {
        overflow: initial;
        min-height: 0;
    }
}


@media(min-width: 768px) {
    .project-button-slider .swiper-slide {
        width: 617px;
    }

    .project-buttons__wrap {
        padding: 0;
    }

    .project-button {
        height: 299px;
        margin-top: 0;
        padding-bottom: 0;
    }

    .project-button {
        height: 299px;
        margin-top: 0;
        padding-bottom: 0;
    }

    .project-button-slider .swiper-slide:hover .project-button {
        height: 371px;
        padding-bottom: 34px;
    }

    .project-button-slider .swiper-slide:hover .project-button__cta {
        margin-top: 32px;
    }

    .project-button-slider {
        /* margin-left: -580px;
        width: calc(100% + 580px); */
        padding: 70px 0 0 0;
    }

    .project-buttons__wrap--4-or-less .project-button-slider {
        margin-left: 0;
        padding: 70px 0 0 0;
        justify-content: center;
        width: 100%;
    }

    .project-button__details {
        bottom: 0;
        left: 0;
        border-radius: 8px;
        backdrop-filter: none;
        padding: 20px 17px;
        width: 100%;
        backdrop-filter: blur(0px);
        background: linear-gradient(360deg, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0) 100%);
        transition: background 0.3s ease-in-out, 
                    backdrop-filter 0.3s ease-in-out, 
                    padding 0.3s ease-in-out, 
                    width 0.3s ease-in-out, 
                    left 0.3s ease-in-out;
    }

    .project-button-slider .swiper-slide:hover .project-button__hover-text,
    .project-button-slider .swiper-slide:hover h3.project-button__title span {
        display: block;
        color: var(--color-black);
    }

    .project-button__hover-text {
        display: none;
    }

    h3.project-button__title span {
        display: none;
    }

    h3.project-button__title .project-button__location {
        display: block;
    }

    .project-button-slider .swiper-slide:hover .project-button__details {
        background: rgba(255, 255, 255, 0.75);
        backdrop-filter: blur(10px);
        padding: 30px 25px;
        left: 25px;
        width: 405px;
    }

    .project-button-slider .swiper-slide h3.project-button__title::after,
    .project-button-slider .swiper-slide h3.project-button__title::before {
        opacity: 1;
        transition: opacity 0.3s ease-in-out;
    }

    .project-button-slider .swiper-slide:hover h3.project-button__title::after,
    .project-button-slider .swiper-slide:hover h3.project-button__title::before {
        opacity: 0;
    }


    h3.project-button__title {
        font-size: 20px;
        letter-spacing: 0.25em;
        display: inline-block;
        width: auto;
        padding-right: 40px;
        font-weight: 600;
        color: #fff;
        position: relative;
        margin-bottom: 0;
    }

    h3.project-button__title::after {
        content: '';
        position: absolute;
        width: 25px;
        height: 25px;
        border-radius: 50%;
        bottom: 0;
        right: 0;
        background: #EF3D23;
        margin-top: -2px;
    }

    h3.project-button__title::before {
        content: '\e901';
        font-family: 'amiano-icon';
        position: absolute;
        bottom: 0;
        right: 8px;
        font-size: 20px;
        color: #FFFFFF;
        z-index: 1;
        font-weight: normal;
        padding-bottom: 2px;
    }

    .project-button-slider .swiper-slide .project-button img {
        transition: border-radius 0.3s ease-in-out;
    }

    .project-button-slider .swiper-slide:hover .project-button img {
        border-radius: 8px;
    }

    .project-button-slider .swiper-slide:hover h3.project-button__title {
        color: var(--color-black);
        font-size: 16px;
        font-weight: normal;
        letter-spacing: 0.1em;
    }

    .project-button-slider .swiper-slide:hover h3.project-button__title .project-button__title-text {
        font-weight: 300;
        font-size: 22px;
        display: none
    }

    .project-button-slider .swiper-slide:hover h3.project-button__title span {
        color: var(--color-black);
        font-size: 20px;
        letter-spacing: 0.1em;
        font-weight: 700;
    }

    .swiper-button-next,
    .swiper-button-prev {
        top: 17px;
        bottom: unset;
        right: 52px;
    }

    .swiper-container {
        margin-top: -32px;
    }

    .project-buttons__top-content h2 {
        margin: 0 0 30px;
    }

    .page-id-2180 .project-gallery:last-child .project-gallery__catch-slider__item:first-of-type.swiper-slide-active,
    .page-id-2180 .project-gallery:last-child .project-gallery__catch-slider__item.swiper-slide-prev {
        width: 550px !important;
    }

}



@media(min-width: 1200px) {
    .project-button__details {
        padding: 30px 16px 30px 24px;
        transition: width 0.3s ease-in-out, padding 0.3s ease-in-out, left 0.3s ease-in-out;
    }

    .project-button-slider .swiper-slide {
        width: 399px;
        transition: width 0.3s ease-in-out;
        margin-right: 32px;
    }

    .project-button {
        height: 502px;
        margin-top: 0;
        padding-bottom: 0;
        transition: height 0.3s ease-in-out, padding 0.3s ease-in-out;
    }

    .project-button-slider .swiper-slide:hover {
        width: 614px;
    }

    .project-button-slider .swiper-slide:hover .project-button {
        height: 579px;
        padding-bottom: 14px;
        overflow: visible;
    }

    .project-button-slider {
        /* margin-left: -105px;
        width: calc(100% + 105px); */
        padding: 55px 0 0 0;
    }

    .project-buttons__wrap--4-or-less .project-button-slider {
        margin-left: 0;
        padding: 55px 0 0 0;
        justify-content: center;
        width: 100%;
    }

    .project-button-slider .swiper-slide:hover .project-button__details {
        padding: 50px 36px 54px;
        left: -10px;
        width: calc(100% + 10px - 27px);
    }

    h3.project-button__title {
        font-size: 22px;
        padding-right: 60px;
        width: 100%;
    }

    h3.project-button__title::before {
        right: 11px;
        font-size: 38px;
        padding-bottom: 2px;
        bottom: -9px;
        line-height: 47px;
    }

    h3.project-button__title::after {
        width: 47px;
        height: 47px;
        bottom: -8px;
    }

    .project-button-slider .swiper-slide:hover h3.project-button__title {
        font-size: 16px;
        font-weight: normal !important;
    }

    .project-button-slider .swiper-slide:hover h3.project-button__title span {
        font-size: 28px;
    }

    .project-button-slider .swiper-slide:hover .project-button:hover {
        background: none;
    }

    .project-button__details h4 {
        font-size: 16px;
        margin: 20px 0 35px;
    }

    .swiper-container-horizontal>.swiper-scrollbar {
        height: 2px;
        display: block;
        width: 936px;
        bottom: 28px;
    }

    .swiper-scrollbar-drag {
        height: 8px;
        width: 100%;
        position: relative;
        background: #4B1007;
        border-radius: 16px;
        left: 0;
        top: -3px;
        cursor: pointer;
    }

    .swiper-container {
        margin-top: 0;
        padding-bottom: 107px;
        min-height: 756px;
    }

    .swiper-button-next,
    .swiper-button-prev {
        top: unset;
        bottom: 0;
        right: unset;
        left: 50%;
        transform: translate(-50%, 0);
    }

    .swiper-button-next {
        margin-left: 551px;
    }

    .swiper-button-prev {
        margin-left: -551px;
    }

    .swiper-button-prev:before,
    .swiper-button-next:before {
        font-size: 50px;
    }

    .project-buttons__top-content {
        position: relative;
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        align-items: flex-end;
    }

    .project-buttons__top-content__inner {
        flex: 1;
    }

    .project-buttons-info-text {
        color: #A35C52;
        margin: 0;
    }

    .project-buttons__top-content h2 {
        margin: 0 0 35px;
    }
}


@media(min-width: 1400px) {
    .swiper-container-horizontal>.swiper-scrollbar {
        width: 1046px;
    }

    .swiper-button-next {
        margin-left: 605px;
    }

    .swiper-button-prev {
        margin-left: -605px;
    }
}

.project-gallery {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    overflow: hidden;

    &:before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.9);
        filter: blur(10px);
        transform: scale(1.25);
    }

    > .container {
        position: relative;
        z-index: 10;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding-block: 80px;
        max-width: 900px;
    }

    .swiper-slide {
        height: auto;
    }

    .swiper-wrapper img {
        max-height: 600px; 
        /* max-height: 715px; */
    }
    
}

.project-gallery__wrapper {
    max-width: 100%;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
    position: relative;
}

.project-gallery__catch-thumbnail {
    margin-top: 30px;

    .swiper-slide img {
        max-height: 80px;
    }
}

.project-gallery__catch-slider {
    position: relative;

    .swiper-button-prev,
    .swiper-button-next {
        position: absolute;
        top: auto;
        bottom: 15px;
        background-color: var(--color-primary);
        border: 2px solid var(--color-primary);
        color: var(--color-white);
        border-radius: 8px;
        width: 40px;
        height: 40px;
        padding: 10px;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 0;
        left: auto;
        transition: background-color 0.3s ease-in-out;
    }

    .swiper-button-prev {
        right: 65px;
    }

    .swiper-button-next {
        right: 15px;
        left: auto;
    }

    .swiper-button-prev:before,
    .swiper-button-next:before {
        font-size: 20px;
        color: var(--color-white);
        -webkit-text-stroke: 1px;
        transition: color 0.3s ease-in-out;
    }
    
}

@media (min-width: 1200px) {
    .project-gallery__catch-slider {
        .swiper-button-prev,
        .swiper-button-next {
            width: 40px;
            height: 40px;

            &:hover {
                background-color: var(--color-white);
            }

            &.swiper-button-disabled {
                opacity: 0.5;
            }
        }

        .swiper-button-next {
            right: 15px;
            left: auto;
        }

        .swiper-button-prev:before,
        .swiper-button-next:before {
            font-size: 20px;
        }

        .swiper-button-prev:hover:before,
        .swiper-button-next:hover:before {
            color: var(--color-primary);
        }
    }
}

.project-gallery__catch-thumbnail__item {
    cursor: pointer;
    position: relative;

    &:before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: var(--color-primary);
        opacity: 0;
        transform: scale(0);
        border-radius: 50%;
        transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out, border-radius 0.3s ease-in-out;
    }

    &:hover:before {
        opacity: 0.5;
        border-radius: 0;
        transform: scale(1);
    }

    &.swiper-slide-thumb-active {
        &:before {
            opacity: 0.5;
            border-radius: 0;
            transform: scale(1);
        }
    }
}

.project-gallery__close {
    position: absolute;
    top: -60px;
    right: -15px;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;

    span {
        display: block;
        width: 40px;
        height: 40px;
        background-color: var(--color-pink);
        border-radius: 50%;
        position: relative;
        border: 2px solid var(--color-pink);
        transition: background-color 0.3s ease-in-out, border-color 0.3s ease-in-out;

        &:before,
        &:after {
            content: "";
            display: block;
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            left: 0;
            right: 0;
            margin: 0 auto;
            width: calc(100% - 20px);
            height: 2px;
            background-color: var(--color-primary);
            transition: background-color 0.3s ease-in-out;
        }

        &:before {
            transform: translateY(-50%) rotate(45deg);
        }

        &:after {
            transform: translateY(-50%) rotate(-45deg);
        }
    }
}


@media (min-width: 1200px) {
    .project-gallery__close:hover {
        
        span {
            background-color: var(--color-white);
            border-color: var(--color-primary);
        }

        span:before,
        span:after {
            background-color: var(--color-primary);
        }
    }
}

.project-buttons__wrap--4-or-less .swiper-container {
    padding-bottom: 0;
    min-height: 0;
}

.fancybox-container {
    .fancybox-stage {
        max-width: 1000px;
        display: flex;
        height: auto;
        align-items: center;
        justify-content: center;
        margin: 0 auto;
    }
}