/*
Theme Name: CMNA Advogados Boutique
Theme URI: https://cmna.adv.br
Author: CMNA Dev
Description: Tema premium com correção definitiva de backgrounds e menu.
Version: 2.6
*/

/* --- CORES NATIVAS (CSS PURO) --- */
.bg-cmna-navy { background-color: #1B4F72 !important; }
.bg-cmna-brown { background-color: #4B3621 !important; }
.bg-cmna-offwhite { background-color: #FAF9F6 !important; }
.bg-cmna-ivory { background-color: #FDFCF0 !important; }
.bg-cmna-terracotta { background-color: #E2725B !important; }
.bg-cmna-beige { background-color: #D7CCC8 !important; }

/* Tipografia e Cores de Texto */
.text-cmna-ivory { color: #FDFCF0 !important; }
.text-cmna-brown { color: #4B3621 !important; }
.text-cmna-terracotta { color: #E2725B !important; }
.text-cmna-taupe { color: #8B8589 !important; }
.text-white { color: #FFFFFF !important; }

/* --- UTILIDADES --- */
.no-scrollbar::-webkit-scrollbar { display: none !important; width: 0 !important; height: 0 !important; }
.no-scrollbar { -ms-overflow-style: none !important; scrollbar-width: none !important; }

/* --- MENU DESKTOP REFINADO --- */
@media (min-width: 1024px) {
    #menu-menu-principal {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 3rem !important;
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #menu-menu-principal > .menu-item { 
        position: relative !important; 
        padding: 10px 0 !important;
    }

    #menu-menu-principal > .menu-item > a {
        transition: color 0.3s ease !important;
    }

    #menu-menu-principal > .menu-item > a:hover {
        color: #E2725B !important;
    }

    /* Active Menu Item Highlight */
    #menu-menu-principal > .current-menu-item > a,
    #menu-menu-principal > .current_page_item > a,
    #menu-menu-principal > .current_page_parent > a,
    #menu-menu-principal > .current-menu-ancestor > a {
        color: #E2725B !important;
        font-weight: 700 !important;
    }

    #menu-menu-principal > .current-menu-item > a::after,
    #menu-menu-principal > .current_page_item > a::after,
    #menu-menu-principal > .current_page_parent > a::after {
        content: "" !important;
        position: absolute !important;
        bottom: -5px !important;
        left: 0 !important;
        width: 100% !important;
        height: 2px !important;
        background-color: #E2725B !important;
        transform: scaleX(1) !important;
        transition: transform 0.3s ease !important;
    }

    /* Sub-menu (Dropdown) */
    #menu-menu-principal .sub-menu {
        display: block !important;
        visibility: hidden !important;
        opacity: 0 !important;
        transform: translateY(15px) scale(0.98) !important;
        position: absolute !important;
        top: 100% !important;
        left: -20px !important;
        min-width: 320px !important;
        background: #FFFFFF !important;
        box-shadow: 0 30px 60px -12px rgba(75, 54, 33, 0.15) !important;
        z-index: 9999 !important;
        padding: 20px 0 !important;
        border-radius: 2px !important;
        transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
        border: 1px solid rgba(215, 204, 200, 0.1) !important;
    }

    #menu-menu-principal .menu-item-has-children:hover > .sub-menu { 
        visibility: visible !important;
        opacity: 1 !important;
        transform: translateY(0) scale(1) !important;
    }

    /* Estilo dos itens dentro do sub-menu */
    #menu-menu-principal .sub-menu .menu-item a {
        display: block !important;
        padding: 15px 30px !important;
        font-size: 9px !important;
        font-weight: 700 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.18em !important;
        color: #8B8589 !important;
        line-height: 1.6 !important;
        transition: all 0.3s ease !important;
        border-left: 3px solid transparent !important;
    }

    /* HOVER LARANJA NO DROPDOWN */
    #menu-menu-principal .sub-menu .menu-item a:hover {
        color: #E2725B !important;
        background-color: #FAF9F6 !important;
        border-left: 3px solid #E2725B !important;
        padding-left: 35px !important;
    }
    #mobile-menu-toggle {
        transition: transform 0.3s ease;
    }

    /* Mobile Menu Active State */
    #mobile-menu .current-menu-item > a,
    #mobile-menu .current_page_item > a,
    #mobile-menu .current_page_parent > a {
        color: #E2725B !important;
        font-weight: 700 !important;
        border-left: 3px solid #E2725B !important;
        padding-left: 15px !important;
    }

    #mobile-menu .menu-item a {
        transition: all 0.3s ease !important;
        display: block !important;
    }
}

/* --- EFEITOS GERAIS --- */
.titulo-parceiro, .titulo-blog, .titulo-biblioteca {
    color: #4B3621;
    transition: color 0.5s ease;
}

.card-biblioteca:hover .titulo-biblioteca,
.card-parceria:hover .titulo-parceiro,
.group:hover .titulo-biblioteca {
    color: #E2725B !important;
}

/* Reset e Layout */
body { margin: 0; padding: 0; min-height: 100vh; scroll-behavior: smooth; }


/* --- EFEITO HOVER PARCERIAS, BLOG & BIBLIOTECA (CORREÇÃO) --- */
.titulo-parceiro, .titulo-blog, .titulo-biblioteca {
    color: #4B3621; /* Brown padrão */
    transition: color 0.5s ease;
}

/* Garante que o título mude quando o pai (card) recebe o hover */
.card-biblioteca:hover .titulo-biblioteca,
.group:hover .titulo-biblioteca {
    color: #E2725B !important;
}

.site-logo-container { flex-shrink: 0; min-width: 160px; }



/* --- CARROSSEL --- */
.carousel-container {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    gap: 2rem;
}

.carousel-item {
    flex-shrink: 0;
    scroll-snap-align: center;
}

/* Mobile: 1 item */
@media (max-width: 639px) {
    .carousel-item { width: 100%; }
}
/* Tablet: 2 items */
@media (min-width: 640px) and (max-width: 1023px) {
    .carousel-item { width: calc(50% - 1rem); }
}
/* Desktop: 3 items (Padrão para Equipe/Blog) */
@media (min-width: 1024px) {
    .carousel-item { width: calc(33.333% - 1.35rem); }
}
/* Desktop Especial: 4 items (Padrão para Especialidades se desejado) */
.carousel-item.lg-col-4 {
    @media (min-width: 1024px) {
        width: calc(25% - 1.5rem);
    }
}


/* Títulos que devem ficar laranja no hover do card */
.group:hover .titulo-hover-orange,
.card-biblioteca:hover .titulo-biblioteca,
.card-parceria:hover .titulo-parceiro {
    color: #E2725B !important;
}

/* Linha decorativa da Biblioteca */
/* .group:hover .border-cmna-terracotta {
    border-color: #E2725B !important;
} */

/* Cards (Serviços, Equipe, Biblioteca) */
.group:hover .text-cmna-brown {
    transition: color 0.3s ease;
}

.hover\:bg-cmna-brown:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(226 114 91 / var(--tw-bg-opacity, 1))!important;
    color: #ffffff !important;
    border-color: rgb(226 114 91 / var(--tw-bg-opacity, 1)) !important;
}