/* Блок Категорий */
.categories {
    padding: 200px 20px 100px;

    display: flex;
    flex-direction: column;
    gap: 40px;
}

.categories-title-block {
    display: flex;
    justify-content: space-between;
    align-items: end;
}

.categories-title-t {
    font-size: 64px;
    line-height: 110%;
    color: var(--color-foreground-primary);
    font-weight: 500;

    text-transform: lowercase;
}

.categories-items {
    display: flex;
    gap: 20px;
    justify-content: space-between;
}

.categories-items-item {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.categories-items-item-img {
    width: 18.75vw;
    min-width: 264px;
    max-width: 413px;
    height: 25.625vw;
    min-height: 400px;
    max-height: 565px;

    position: relative;
}

.categories-items-item-img img {
    width: 100%;
    height: 100%;

    object-fit: cover;
}

.categories-items-item-img:hover  .categories-items-item-hover {
    opacity: 1;
}

/* Новый псевдоэлемент для оверлея */
.categories-items-item-img::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--color-background-opacity);
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

/* Показываем оверлей при hover */
.categories-items-item-img:hover::before {
    opacity: 1;
}


.categories-items-item-title {
    font-size: 24px;
    line-height: 110%;
    color: var(--color-foreground-primary);
    font-weight: 500;

    text-transform: lowercase;
    letter-spacing: -0.3px;
}

.categories-items-item-hover {
    display: flex;
    justify-content: center;
    align-items: center;

    width: 166px;
    height: 166px;
    border-radius: 50%;
    background-color: var(--color-foreground-primary);

    font-size: 24px;
    line-height: 110%;
    color: var(--color-white);
    font-weight: 500;
    letter-spacing: -0.3px;

    position: absolute;
    top: calc(50% - 166px / 2);
    left: calc(50% - 166px / 2);

    opacity: 0;

    transition: opacity 0.2s ease;
}

/* Блок Процесса заказа */
.process {
    padding: 100px 20px;

    display: flex;
    align-items: center;
    gap: 10.781vw;
}

.process-img {
    width: 38.177vw;
    max-width: 977px;
    height: 36.458vw;
    max-height: 933px;

    min-height: 507px;
    min-width: 614px;
}

.process-img img {
    width: 100%;
    height: 100%;

    object-fit: cover;
}

.process-info {
    display: flex;
    flex-direction: column;
    gap: 60px;

    width: 38.542vw;
    max-width: 986px;
}

.process-info-title {
    font-size: 64px;
    line-height: 110%;
    color: var(--color-foreground-primary);
    font-weight: 500;
    letter-spacing: -0.3px;

    text-transform: lowercase;    
}

.process-info-stages {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.process-info-stages-stage {
    display: flex;
    gap: 32px;
    align-items: center;
}

.process-info-stages-stage-num {
    font-size: 40px;
    line-height: 100%;
    color: var(--color-foreground-primary);
    font-weight: 500;
}

.process-info-stages-stage-t {
    font-size: 16px;
    line-height: 100%;
    color: var(--color-foreground-opacity);
}

/* Блок Преимуществ */
.advantages {
    padding: 100px 20px;

    display: flex;
    flex-direction: column;
    gap: 100px;
}

.advantages-title {
    font-size: 64px;
    line-height: 110%;
    color: var(--color-foreground-primary);
    font-weight: 500;
    letter-spacing: -0.3px;

    text-transform: lowercase;
    text-align: center;
}

.advantages-points {
    display: flex;
    height: 187px;
    gap: 100px;

    justify-content: center;
    align-items: center;
}

.advantages-points-point {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;

    width: 420px;
}

.advantages-points-point-icon {
    width: 52px;
    height: 52px;
}

.advantages-points-point-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.advantages-points-point-title {
    font-size: 24px;
    line-height: 100%;
    color: var(--color-foreground-primary);
    font-weight: 500;
}

.advantages-points-point-t {
    font-size: 18px;
    line-height: 100%;
    color: var(--color-foreground-primary);

    text-align: center;
}

.advantages-points-sep {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: center;
}

.advantages-points-sep-line {
    height: 151px;
    width: 1px;
    background-color: var(--color-foreground-primary);
}

.advantages-points-sep-circle {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: var(--color-foreground-primary);
}

/* Блок О производстве */
.about {
    padding: 100px 20px;

    display: flex;
    justify-content: end;
    align-items: center;
    gap: 9.375vw;
}

.about-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    width: 30.208vw;
    max-width: 733px;
    min-width: 580px;
}

.about-info-icon {
    width: 41px;
    height: 41px;
}

.about-info-icon img {
    width: 100%;
    height: 100%;

    object-fit: contain;
}

.about-info-text {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.about-info-text-title {
    font-size: 64px;
    line-height: 110%;
    color: var(--color-foreground-primary);
    font-weight: 500;
    letter-spacing: -0.3px;

    text-transform: lowercase;
    text-align: center;
}

.about-info-text-t {
    font-size: 20px;
    line-height: 130%;
    color: var(--color-foreground-primary);

    text-align: center;

    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 312px;
}

.about-img {
    width: 48.958vw;
    max-width: 1253px;
    height: 36.458vw;
    max-height: 933px;

    min-width: 666px;
    min-height: 614px;
}

.about-img img {
    width: 100%;
    height: 100%;

    object-fit: cover;
}

/* Блок Материалов */
.gallery-material {
    padding: 100px 120px;

    display: flex;
    flex-direction: column;
    gap: 100px;
}

.gallery-material-title-block {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.gallery-material-title-main {
    font-size: 64px;
    line-height: 110%;
    color: var(--color-foreground-primary);
    font-weight: 500;
    letter-spacing: -0.3px;

    text-transform: lowercase;  
}

.gallery-material-title-t {
    display: flex;
    gap: 30px;

    font-size: 24px;
    line-height: 130%;
    color: var(--color-foreground-primary);
    letter-spacing: -0.3px;
}

.gallery-material-title-t-1 {
    width: 695px;
}

.gallery-material-title-t-2 {
    width: 645px;
}

.material-items {
    display: flex;
    gap: 2.604vw;
    justify-content: space-between;
}

.material-items-item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;

    width: 296px;
    max-width: 296px;
    height: 433px;
    flex-shrink: 0;
}

.material-items-item-img {
    width: 150px;
    height: 150px;

    border-radius: 50%;
}

.material-items-item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;

    border-radius: 50%;
}

.material-items-item-info {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.material-items-item-info-title {
    font-size: 32px;
    line-height: 110%;
    color: var(--color-foreground-primary);
    font-weight: 500;

    text-transform: lowercase;  
}

.material-items-item-info-t {
    font-size: 20px;
    line-height: 120%;
    color: var(--color-foreground-primary);
    width: 95%;
}

.material-link {
    font-size: 20px;
}


@media screen and (min-width: 2560px) {
    .process {
        gap: 276px;
    }

    .about {
        gap: 240px;
    }
}


@media screen and (max-width: 1800px) {
    .material-items {
        gap: 2.639vw;
    }

    .material-items-item {
        width: 230px;
        height: 341px;
    }

    .material-items-item-img {
        width: 100px;
        height: 100px;
    }

    .material-items-item-info {
        gap: 7px;
    }

    .material-items-item-info-title {
        font-size: 24px;
    }

    .material-items-item-info-t {
        font-size: 16px;
        line-height: 100%;
        width: 100%;
    }
}


/* Адаптация на маленькие экраны (< 1920)*/
/* 1440 */
@media screen and (max-width: 1575px) {
    /* Блок Категорий */
    .categories-title-t {
        font-size: 48px;
    }

    .categories-items-item-img {
        width: 18.333vw;
        min-width: 232px;
        height: 25.417vw;
        min-height: 322px;
    }

    .categories-items-item-title {
        font-size: 18px;
    }

    .categories-items-item-hover {
        width: 100px;
        height: 100px;

        font-size: 16px;

        top: calc(50% - 100px / 2);
        left: calc(50% - 100px / 2);

        opacity: 0;
    }

    /* Блок Процесса заказа */
    .process {
        gap: 6.667vw;
    }

    .process-img {
        width: 42.639vw;
        height: 35.208vw;

        min-width: 493.3px;
        min-height: 506px;
    }

    .process-info {
        gap: 48px;

        width: 47.917vw;
    }

    .process-info-title {
        font-size: 48px;
    }

    .process-info-stages-stage {
        gap: 31px;
    }

    .process-info-stages-stage-num {
        font-size: 32px;
    }

    .process-info-stages-stage-t {
        width: 38.194vw;
        min-width: 515px;
    }

    /* Блок Преимуществ */
    .advantages-title {
        font-size: 48px;
    }

    .advantages-points {
        gap: 37.5px;
    }

    .advantages-points-point {
        width: 410px;
        padding: 0 15px;
    }

    .advantages-points-point:first-of-type .advantages-points-point-t {
        width: calc(410px - 40px * 2);
    }

    .advantages-points-point-t {
        font-size: 16px;
    }

    /* Блок О производстве */
    .about {
        gap: 5.347vw;
    }

    .about-info {
        width: 40.278vw;
        min-width: 515px;
    }

    .about-info-text-title {
        font-size: 48px;
    }

    .about-info-text-t {
        font-size: 20px;
        line-height: 100%;

        height: 240px;
    }

    .about-img {
        width: 46.25vw;
        height: 42.639vw;

        min-width: 666px;
        min-height: 614px;
    }

    /* Блок Материалов */
    .gallery-material {
        padding: 100px 70px;
        gap: 139px;
    }

    .gallery-material-title-main {
        font-size: 48px;
    }

    .gallery-material-title-t {
        font-size: 20px;
        line-height: 110%;
    }

    .gallery-material-title-t-1 {
        width: 571.63px;
    }

    .gallery-material-title-t-2 {
        width: 597.75px;
    }
}


@media screen and (max-width: 1350px) {
    .material-items {
        gap: 4.063vw;
    }

    .material-items-item {
        width: 15.469vw;
        height: 303px;
    }

    .material-items-item-img {
        width: 90px;
        height: 90px;
    }

    .material-items-item-info-title {
        font-size: 20px;
    }

    .material-items-item-info-t {
        font-size: 14px;
    }

    .material-link {
        width: 157px;

        font-size: 16px;
    }


    .gallery-material-title-t {
        gap: 32px;

        font-size: 17.78px;
    }

    .gallery-material-title-t-1,
    .gallery-material-title-t-2 {
        width: 532px;
    }
}


/* 1280 */
@media screen and (max-width: 1280px) {
    /* Блок Категорий */
    .categories-items-item-img {
        width: 18.047vw;
        min-width: 200px;
        height: 322px;
    }

    .categories-items-item-title {
        font-size: 18px;
    }

    /* Блок Процесса заказа */
    .process {
        gap: 7.5vw;
    }

    .process-img {
        width: 493.3px;
        height: 560px;
    }

    .process-info {
        flex: 1;
    }

    .process-info-stages-stage-t {
        width: 515px;
        min-width: 515px;
    }

    /* Блок Преимуществ */
    .advantages-title {
        width: 95%;
    }

    .advantages-points {
        gap: 45.87px;
    }

    .advantages-points-point {
        gap: 16.85px;

        width: 345.51px;
    }

    .advantages-points-point-icon {
        width: 45px;
        height: 45px;
    }

    .advantages-points-point-title {
        font-size: 20px;
    }

    .advantages-points-point-t {
        font-size: 14px;
    }

    .point-t-1 {
        width: 94%;
    }

    /* Блок О производстве */
    .about {
        padding: 0 20px;

        gap: 66.22px;
    }

    .about-info {
        width: 40.234vw;
        min-width: 40.234vw;
    }

    .about-info-icon {
        width: 40px;
        height: 40px;
    }

    .about-info-text {
        gap: 30px;
    }

    .about-info-text-t {
        font-size: 18px;
        width: 510px;

        height: 216px;
    }

    .about-img {
        width: 46.25vw;
        height: 42.656vw;

        min-width: 46.25vw;
        min-height: 42.656vw;
    }

    /* Блок Материалов */
    .gallery-material {
        gap: 130px;
        padding: 100px 32px;
    }


}

.material-items-cont-btns {
    display: none;
}


/* 768 */
@media screen and (max-width: 1200px) {
    /* Блок Категорий */
    .categories {
        padding: 150px 20px 48px;
        gap: 32px;
    }

    .categories-title-t {
        width: 55%;
    }

    .categories-items {
        gap: 32px 20px;
        flex-wrap: wrap;
    }

    .categories-items-item {
        flex: 1;
    }

    .categories-items-item-img {
        height: 322px;
        min-height: 322px;
        width: 100%;
        min-width: 23.891vw;
        max-width: 100%;
    }

    .categories-items-item-hover {
        display: none;
    }

    .categories-items-item-img::before {
        display: none;
    }

    /* Блок Процесса заказа */
    .process {
        padding: 80px 20px;
        flex-direction: column;

        gap: 32px;
    }

    .process-img {
        width: 100%;
        max-width: 100%;
        height: 420px;
        min-width: 100%;
        min-height: 420px;
    }

    .process-info {
        width: 100%;
        max-width: 100%;
    }
    
    .process-info-stages-stage-num {
        width: 44px;
        display: flex;
        justify-content: center;
    }

    .process-info-stages-stage-t {
        line-height: 130%;
        width: 67.057vw;
        min-width: 515px;
    }

    .stage-t-2 {
        width: 59vw;
        min-width: 453px;
    }

    /* Блок Преимуществ */
    .advantages {
        padding: 80px 20px;

        gap: 48px;
    }

    .advantages-title {
        width: 95%;
    }

    .advantages-points {
        flex-direction: column;
        height: fit-content;
        gap: 48px;
    }

    .advantages-points-point:first-of-type .advantages-points-point-t {
        width: 90%;
    }

    .advantages-points-point {
        gap: 16px;
        padding: 0 12.64px;
    }

    .advantages-points-point-t {
        line-height: 130%;
    }

    .advantages-points-sep {
        display: none;
    }

    /* Блок О производстве */
    .about {
        padding: 0 20px;
        flex-direction: column-reverse;

        gap: 0;
    }

    .about-info {
        width: 64.063vw;
        max-width: 64.063vw;
        min-width: 491.76px;
        padding: 48px 0;
        gap: 24px;
    }

    .about-info-text-t {
        line-height: 130%;

        height: 276px;
        width: 66.406vw;
        min-width: 510px;
        padding-bottom: 0;
    }

    .about-img {
        width: 100%;
        height: 420px;
    }

    /* Блок Материалов */
    .gallery-material {
        padding: 80px 20px;

        gap: 48px;
    }

    .gallery-material-title-t {
        gap: 32px;
        flex-direction: column;
        height: 185.33px;
    }

    .gallery-material-title-t-1,
    .gallery-material-title-t-2 {
        width: 67vw;
    }

    .material-items-cont-w-btns {
        display: flex;
        flex-direction: column;
        gap: 32px;
        align-items: end;
        padding-left: 29.78px;
    }

    .material-items-cont-btns {
        display: flex;
        gap: 12px;
    }

    .material-items-cont-btns-btn {
        width: 56px;
        height: 48px;

        border: .8px solid var(--color-foreground-primary);
        border-radius: 24px;

        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;

        transition: all 0.3s ease;
    }

    .material-items-cont-btns-btn div {
        background-image: url('../../img/main/index/gallery-material-cont/right-icon.svg');
        background-position: center;
        background-repeat: no-repeat;
        width: 24px;
        height: 24px;

        object-fit: contain;

        transition: all 0.3s ease;
    }

    .material-items-cont-btns-btn:hover {
        background-color: var(--color-foreground-primary);
    }

    .material-items-cont-btns-btn.dis:hover {
        background-color: transparent;
    }

    .material-items-cont-btns-btn:hover div {
        background-image: url('../../img/main/index/gallery-material-cont/right-light-icon.svg');
    }

    .material-items-cont-btns-btn.dis:hover div {
        background-image: url('../../img/main/index/gallery-material-cont/right-icon.svg');
    }

    .material-items-cont-btns-btn.dis {
        opacity: .5;
    }

    .material-items-cont-btns-btn#prev {
        transform: rotate(180deg);
    }

    .material-items {
        transition: transform 0.3s ease;

        gap: 6.901vw;
    }

    .material-items-item {
        width: 25.651vw;
        height: 303px;
    }

    .material-items-item-img {
        width: 85px;
        height: 85px;
    }

    .material-items-item-info {
        gap: 6.22px;
    }

    .material-items-cont {
        width: 100%;
        overflow: hidden;
        position: relative;
        display: block;
    }
}


/* 375 */
@media screen and (max-width: 725px) {
    /* Блок Категорий */
    .categories {
        padding: 150px 12px 24px;
        gap: 32px;
    }

    .categories-title-block {
        flex-direction: column;
        align-items: start;
        gap: 32px;
    }

    .categories-title-t {
        font-size: 32px;

        width: 80%;
    }

    .categories-title-link {
        width: 100%;
    }

    .categories-items {
        gap: 12px;
    }

    .categories-items-item {
        min-width: 169px;
    }

    .categories-items-item-img {
        width: 100%;
        min-width: 169px;
        min-height: 192px;
        height: 51.2vw;
    }

    .categories-items-item-title {
        max-width: 169px;
    }

    /* Блок Процесса заказа */
    .process {
        padding: 80px 12px;

        gap: 32px;
    }

    .process-img {
        height: 420px;
    }

    .process-info {
        width: 100%;
        min-width: 100%;
    }

    .process-info-stages-stage {
        gap: 16px;
    }

    .process-info-title {
        font-size: 32px;
    }

    .process-info-stages-stage-t {
        font-size: 14px;
        width: 80.5%;
        letter-spacing: -0.2px;
        min-width: auto;
    }

    /* Блок Преимуществ */
    .advantages {
        padding: 80px 12px;
    }

    .advantages-title {
        font-size: 32px;
    }

    .advantages-points-point {
        gap: 14px;
        width: 92vw;
        max-width: 345.51px;
    }

    .advantages-points-point-icon {
        width: 32px;
        height: 32px;
    }

    /* Блок О производстве */
    .about {
        padding: 0 12px;
    }

    .about-info {
        width: 100%;
        min-width: 100%;
        max-width: 100%;
        gap: 16px;
    }

    .about-info-text {
        gap: 16px;
    }

    .about-info-icon {
        width: 32px;
        height: 32px;
    }

    .about-info-text-title {
        font-size: 32px;
    }

    .about-info-text-t {
        font-size: 14px;
        line-height: 130%;

        height: 252px;
        width: 100%;
        min-width: 100%;
        max-width: 100%;
    }

    .about-img {
        height: 420px;
    }

    /* Блок Материалов */
    .gallery-material {
        padding: 80px 12px;

        gap: 48px;
    }

    .gallery-material-title-block {
        gap: 24px;
    }

    .gallery-material-title-main {
        font-size: 32px;
    }

    .gallery-material-title-t {
        gap: 24px;
        height: fit-content;
    }

    .gallery-material-title-t-2,
    .gallery-material-title-t-1 {
        font-size: 14px;
        width: 100%;
    }

    .material-items-cont-btns {
        gap: 6px;
    }

    .material-items-cont-w-btns {
        padding-left: 0;
    }

    .material-items-cont-btns-btn {
        width: 45px;
        height: 40px;
        border-radius: 20px;
    }

    .material-items {
        gap: 8vw;
    }

    .material-items-item-info {
        gap: 7px;
    }

    .material-items-item {
        width: 156px;
        height: 237px;
    }

    .material-items-item-img {
        width: 60px;
        height: 60px;
    }

    .material-items-item-info-title {
        font-size: 18px;
    }

    .material-items-item-info-t {
        font-size: 13px;
    }

    .material-link {
        width: 117px;
        height: 35px;

        font-size: 14px;
        line-height: 110%;
    }
}