/* =====================================================
   NOVAS UNIDADES
===================================================== */

.novas-unidades {

    padding: 130px 25px;

    background:

        linear-gradient(
            180deg,
            #f5f3f3 0%,
            #ffffff 50%,
            #fafafa 100%
        );

    border-top:
        1px solid
        rgba(212,175,55,.08);

    border-bottom:
        1px solid
        rgba(212,175,55,.08);

}

.nova-unidade h3{
    color: #f7f7f7;
}

.nova-unidade-status span{
    color: #f3d675;
}
.novas-unidades-header {

    max-width: 1250px;

    margin:
        0 auto 55px;

}


.novas-unidades-header p {

    max-width: 650px;

    color: #070707;

    font-size: 14px;

    line-height: 1.8;

    margin-top: 25px;

}


/* =====================================================
   GRID
===================================================== */

.novas-unidades-grid {

    max-width: 1250px;

    margin: auto;

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap: 18px;

}


/* =====================================================
   CARD
===================================================== */

.nova-unidade {

    position: relative;

    height: 500px;

    overflow: hidden;

    background: #151515;

    border:
        1px solid
        rgba(255,255,255,.08);

}


.nova-unidade img {

    position: absolute;

    inset: 0;

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition:
        transform 1s ease;

}


.nova-unidade:hover img {

    transform:
        scale(1.07);

}


/* =====================================================
   OVERLAY
===================================================== */

.nova-unidade-overlay {

    position: absolute;

    inset: 0;

    background:

        linear-gradient(
            180deg,
            rgba(0,0,0,.05) 20%,
            rgba(0,0,0,.25) 45%,
            rgba(0,0,0,.92) 100%
        );

}


/* =====================================================
   CONTEÚDO
===================================================== */

.nova-unidade-content {

    position: absolute;

    z-index: 2;

    left: 30px;

    right: 30px;

    bottom: 30px;

}


.nova-unidade-status {

    display: inline-block;

    padding:
        7px 12px;

    border:
        1px solid
        rgba(212,175,55,.65);

    color:
        #f3d675;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;

    text-transform: uppercase;

    margin-bottom: 15px;
    border-radius: 20px;

}

.section-title span{
    color: #D4AF37;
}
.section-kicker {
    color: #D4AF37;
}
.nova-unidade-modal-status span{
    color: #D4AF37;
}
.nova-unidade h3 {

    font-family:
        'Cormorant Garamond',
        serif;

    font-size: 48px;

    line-height: .9;

    font-weight: 500;

    margin: 0 0 10px;

}


.nova-unidade-estado {

    color: #bbb;

    font-size: 10px;

    letter-spacing: 2px;

    text-transform: uppercase;

}@media(max-width: 900px) {

    .novas-unidades-grid {

        grid-template-columns:
            repeat(2, 1fr);

    }

}


@media(max-width: 600px) {

    .novas-unidades {

        padding:
            90px 20px;

    }


    .novas-unidades-grid {

        grid-template-columns: 1fr;

        gap: 15px;

    }


    .nova-unidade {

        height: 420px;

    }


    .nova-unidade h3 {

        font-size: 42px;

    }

}
/* =====================================================
   NOVAS UNIDADES — INTERAÇÃO
===================================================== */

.nova-unidade {
    cursor: pointer;
}

.nova-unidade-vermais {

    margin-top: 22px;

    font-size: 10px;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    color: #ddd;

    display: flex;

    align-items: center;

    gap: 10px;

    opacity: 0;

    transform: translateY(10px);

    transition:
        opacity .35s ease,
        transform .35s ease;

}

.nova-unidade:hover .nova-unidade-vermais {

    opacity: 1;

    transform: translateY(0);

}

.nova-unidade-vermais i {

    color: var(--gold);

    transition: transform .3s ease;

}

.nova-unidade:hover
.nova-unidade-vermais i {

    transform: translateX(5px);

}


/* =====================================================
   MODAL
===================================================== */

.nova-unidade-modal {

    position: fixed;

    inset: 0;

    z-index: 99999;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 30px;

    visibility: hidden;

    opacity: 0;

    transition:
        opacity .35s ease,
        visibility .35s ease;

}

.nova-unidade-modal.ativo {

    visibility: visible;

    opacity: 1;

}


/* FUNDO */

.nova-unidade-modal-backdrop {

    position: absolute;

    inset: 0;

    background: rgba(184, 183, 183, 0.88);

    backdrop-filter: blur(8px);

}


/* CARD */

.nova-unidade-modal-card {

    position: relative;

    z-index: 2;

    width: min(1180px, 100%);

    max-height: 90vh;

    overflow: hidden;

    background: #111;

    border: 1px solid rgba(212,175,55,.22);

    box-shadow:
        0 30px 100px rgba(0,0,0,.7);

    transform: translateY(30px) scale(.98);

    transition:
        transform .4s ease;

}

.nova-unidade-modal.ativo
.nova-unidade-modal-card {

    transform:
        translateY(0)
        scale(1);

}


/* GRID */

.nova-unidade-modal-grid {

    display: grid;

    grid-template-columns:
        minmax(0, 1.15fr)
        minmax(380px, .85fr);

}


/* =====================================================
   GALERIA
===================================================== */

.nova-unidade-galeria {

    background: #080808;

    padding: 20px;

}

.nova-unidade-imagem-principal {

    position: relative;

    height: 560px;

    overflow: hidden;

    background: #151515;

}

.nova-unidade-imagem-principal img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    display: block;

    transition: opacity .2s ease;

}


/* NAVEGAÇÃO */

.galeria-nav {

    position: absolute;

    top: 50%;

    transform: translateY(-50%);

    width: 44px;

    height: 44px;

    border: 1px solid
        rgba(255,255,255,.25);

    background: rgba(0,0,0,.55);

    color: #fff;

    cursor: pointer;

    display: flex;

    align-items: center;

    justify-content: center;

    transition:
        background .25s ease,
        border-color .25s ease;
        border-radius: 20px;

}

.galeria-nav:hover {

    background: var(--gold);

    border-color: var(--gold);

    color: #080808;

}

.galeria-prev {

    left: 18px;

}

.galeria-next {

    right: 18px;

}


/* MINIATURAS */

.nova-unidade-miniaturas {

    display: flex;

    gap: 8px;

    margin-top: 10px;

    overflow-x: auto;

    scrollbar-width: thin;

}

.nova-unidade-miniatura {

    flex: 0 0 82px;

    height: 62px;

    padding: 0;

    border: 1px solid
        rgba(255,255,255,.12);

    background: #111;

    cursor: pointer;

    opacity: .55;

    transition:
        opacity .25s ease,
        border-color .25s ease;

}

.nova-unidade-miniatura:hover,
.nova-unidade-miniatura.ativa {

    opacity: 1;

    border-color: var(--gold);

}

.nova-unidade-miniatura img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    display: block;

}


/* =====================================================
   INFORMAÇÕES
===================================================== */

.nova-unidade-modal-info {

    padding: 65px 55px;

    overflow-y: auto;

    max-height: 620px;

}

.nova-unidade-modal-status {

    display: inline-block;

    padding: 7px 12px;

    border: 1px solid
        rgba(212,175,55,.55);

    color: #f3d675;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;

    text-transform: uppercase;
    border-radius: 20px;

}

.nova-unidade-modal-info h2 {

    margin: 22px 0 10px;

    font-family:
        'Cormorant Garamond',
        serif;

    font-size: 64px;

    font-weight: 500;

    line-height: .9;

    color: #fff;

}

.nova-unidade-modal-local {

    display: flex;

    align-items: center;

    gap: 9px;

    color: #999;

    font-size: 11px;

    letter-spacing: 1.5px;

    text-transform: uppercase;

}

.nova-unidade-modal-local i {

    color: var(--gold);

}


/* LINHA */

.nova-unidade-modal-linha {

    width: 50px;

    height: 1px;

    background: var(--gold);

    margin: 30px 0;

}


/* DESCRIÇÃO */

.nova-unidade-modal-descricao {

    color: #999;

    font-size: 13px;

    line-height: 1.9;

}

.nova-unidade-modal-descricao p {

    margin:
        0 0 18px;

}


/* =====================================================
   DETALHES
===================================================== */

.nova-unidade-detalhes {

    margin-top: 35px;

    border-top: 1px solid
        rgba(255,255,255,.08);

}

.nova-unidade-detalhe {

    display: flex;

    align-items: center;

    gap: 15px;

    padding: 16px 0;

    border-bottom: 1px solid
        rgba(255,255,255,.08);

}

.nova-unidade-detalhe-icone {

    width: 38px;

    height: 38px;

    flex: 0 0 38px;

    border: 1px solid
        rgba(212,175,55,.3);

    display: flex;

    align-items: center;

    justify-content: center;

    color: #D4AF37;
    border-radius: 20px;

}

.nova-unidade-detalhe div:last-child {

    display: flex;

    flex-direction: column;

    gap: 3px;

}

.nova-unidade-detalhe strong {

    color: #ddd;

    font-size: 10px;

    letter-spacing: 1px;

    text-transform: uppercase;

}

.nova-unidade-detalhe span {

    color: #777;

    font-size: 12px;

}


/* =====================================================
   FECHAR
===================================================== */

.nova-unidade-modal-fechar {

    position: absolute;

    z-index: 10;

    top: 18px;

    right: 18px;

    width: 42px;

    height: 42px;

    border: 1px solid
        rgba(255,255,255,.2);

    background: rgba(0,0,0,.65);

    color: #fff;

    cursor: pointer;

    display: flex;

    align-items: center;

    justify-content: center;

    transition:
        background .25s ease,
        color .25s ease,
        border-color .25s ease;

}

.nova-unidade-modal-fechar:hover {

    background: var(--gold);

    color: #080808;

    border-color: var(--gold);

}


/* =====================================================
   BLOQUEIA SCROLL
===================================================== */

body.modal-aberto {

    overflow: hidden;

}


/* =====================================================
   RESPONSIVO
===================================================== */

@media (max-width: 900px) {

    .nova-unidade-modal {

        padding: 15px;

    }

    .nova-unidade-modal-card {

        max-height: 94vh;

        overflow-y: auto;

    }

    .nova-unidade-modal-grid {

        grid-template-columns: 1fr;

    }

    .nova-unidade-imagem-principal {

        height: 420px;

    }

    .nova-unidade-modal-info {

        padding: 40px 30px;

        max-height: none;

    }

    .nova-unidade-modal-info h2 {

        font-size: 52px;

    }

}


@media (max-width: 600px) {

    .nova-unidade-modal {

        padding: 0;

        align-items: flex-end;

    }

    .nova-unidade-modal-card {

        width: 100%;

        max-height: 94vh;

        border-left: 0;

        border-right: 0;

        border-bottom: 0;

    }

    .nova-unidade-galeria {

        padding: 10px;

    }

    .nova-unidade-imagem-principal {

        height: 300px;

    }

    .nova-unidade-modal-info {

        padding: 30px 22px 40px;

    }

    .nova-unidade-modal-info h2 {

        font-size: 46px;

    }

    .nova-unidade-miniatura {

        flex-basis: 70px;

        height: 55px;

    }

}