/* Estilo automático para a página: projetos */
#proj{
    position: relative;
    padding: 120px 0;

    .proj-topo {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: center;
        gap: 32px;
        margin-bottom: 56px;
        position: relative;
        z-index: 3;
    }

    .proj-eyebrow {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        letter-spacing: 1px;
        color: var(--primitive-colors-neutral-900, #1E293B);
        font-size: 14px;
        font-weight: 500;
        text-transform: uppercase;

        i {
            display: inline-block;
            width: 10px;
            height: 10px;
            background: var(--primitive-colors-orange-500, #F26900);
        }
    }

    .proj-tabs {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 48px;
        margin-bottom: 40px;
        justify-content: center;
        border-bottom: solid 2px #f3f5f8;
    }

    .proj-tab {
        display: flex;
        align-items: center;
        gap: 16px;
        padding: 24px 50px;
        cursor: pointer;
        text-align: left;
        transition: 300ms all ease-in-out;
        justify-content: center;
        transition: 300ms all ease-in-out;

        .proj-tab-icon {
            width: 24px;
            height: 24px;
            flex-shrink: 0;
            display: inline-block;
            background-color: rgba(8, 27, 51, 0.4);
            -webkit-mask-size: contain;
            mask-size: contain;
            -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
            -webkit-mask-position: center;
            mask-position: center;
            transition: 300ms background-color ease-in-out;
        }

        .proj-tab-linha {
            width: 24px;
            height: 1px;
            background: rgba(8, 27, 51, 0.25);
            transition: 300ms all ease-in-out;
        }

        .proj-tab-label {
            transition: 300ms all ease-in-out;
            color: #454E58;
            font-size: 20px;
            font-weight: 500;
            line-height: 160%;
        }

        &:hover {
            .proj-tab-label {
                color: var(--primitive-colors-blue-900, #081B33);
            }
        }

        &.ativo {
            /* border: 1px solid #f3f5f8; */
            background: #F7F9FC;

            .proj-tab-icon {
                background-color: var(--primitive-colors-orange-500, #F26900);
            }

            .proj-tab-linha {
                width: 32px;
                background: var(--primitive-colors-orange-500, #F26900);
            }

            .proj-tab-label {
                color: var(--primitive-colors-blue-900, #081B33);
            }

        }
    }

    .proj-intro h2 {
        margin-top: 12px;
        font-size: 40px;
        font-weight: 700;
        color: var(--primitive-colors-blue-900, #081B33);
        font-size: 48px;
        line-height: 120%; /* 57.6px */
        letter-spacing: -0.96px;
    }

    .proj-descricao {
        max-width: 620px;
        font-size: 16px;
        color: var(--primitive-colors-neutral-700, #4B5563);
        font-size: 18px;
        font-weight: 500;
        line-height: 160%; /* 28.8px */
    }

    .projetos-paineis {
        position: relative;
        z-index: 1;
    }

    .projetos-lista {
        display: none;
        flex-direction: column;
        gap: 80px;

        &.ativo {
            display: flex;
        }
    }

    .projetos-vazio {
        padding: 64px 0;
        color: var(--primitive-colors-neutral-700, #4B5563);
        font-size: 18px;
        font-weight: 500;
        text-align: center;
    }

    .projeto-item {
        display: flex;
        align-items: center;
        gap: 64px;

        &.invertido {
            flex-direction: row-reverse;
        }
    }

    .projeto-foto {
        position: relative;
        width: 55%;
        flex-shrink: 0;

        img {
            display: block;
            width: 100%;
            min-height: 350px;
            object-fit: cover;
        }

        .projeto-cta {
            position: absolute;
            right: 16px;
            bottom: 16px;
        }
    }

    .projeto-texto {
        flex: 1;
    }

    .projeto-label {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 16px;
        letter-spacing: 1px;
        color: var(--primitive-colors-neutral-900, #1E293B);
        font-size: 14px;
        font-weight: 500;
        line-height: 160%;
        text-transform: uppercase;

        i {
            display: inline-block;
            width: 8px;
            height: 8px;
            background: var(--primitive-colors-orange-500, #F26900);
        }
    }

    .projeto-texto h3 {
        margin-bottom: 32px;
        color: var(--primitive-colors-neutral-900, #1E293B);
        font-size: 32px;
        font-weight: 700;
        line-height: 125%;
    }

    .projeto-specs {
        li {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
            padding: 16px 0;
            border-bottom: 1px solid #2C3540;;

            &:first-child {
                border-top: 1px solid #2C3540;;
            }

            span {
                color: #8C9298;
                font-size: 16px;
                font-weight: 500;
                line-height: 125%;
            }

            strong {
                color: var(--primitive-colors-neutral-900, #1E293B);
                text-align: right;
                font-size: 14px;
                font-weight: 500;
                line-height: 125%;
            }
        }
    }

    @media (max-width: 1024px) {
        padding: 80px 0;

        .proj-topo {
            flex-direction: column;
            align-items: flex-start;
        }

        .proj-tab {
            padding: 20px 16px;
        }

        .projeto-item {
            flex-direction: column;
            gap: 32px;

            &.invertido {
                flex-direction: column;
            }
        }

        .projeto-foto {
            width: 100%;
        }
    }

    @media (max-width: 767px) {
        padding: 56px 0;

        .proj-intro h2 {
            font-size: 30px;
        }

        .proj-tabs {
            flex-direction: column;
            align-items: stretch;
            gap: 12px;
            width: 100%;
        }

        .proj-tab {
            width: 100%;
            padding: 16px;
            gap: 10px;
            justify-content: flex-start;
        }

        .proj-tab-label {
            font-size: 16px;
        }

        .projeto-texto h3 {
            font-size: 22px;
        }

        .projeto-cta {
            right: 12px;
            bottom: 12px;
            padding: 6px 16px;
            font-size: 13px;
        }
    }

    @media (max-width: 480px) {
        .proj-tab-label {
            font-size: 14px;
        }

        .projeto-foto img {
            min-height: 240px;
        }
    }
}