/*
==========================================
UniAdvisor - Home V1
==========================================
*/

body{

    background:#f5f7fb;

}


/* Container */

.ua-container{

    width:100%;
    max-width:1200px;

    margin:auto;

    padding:0 20px;

}


/* HERO */
/* Gradiente da identidade visual UniAdvisor (roxo -> azul, ver logo). */

.ua-hero{

    padding:100px 0 80px;

    text-align:center;

    background:linear-gradient(135deg,#7c3aed,#2563eb);

    color:#fff;

}

.ua-hero h1{

    font-size:52px;

    margin-bottom:20px;

    font-weight:700;

    line-height:1.15;

}

.ua-hero-accent{

    display:block;

    background:linear-gradient(90deg,#f5d0fe,#bae6fd);

    -webkit-background-clip:text;

    background-clip:text;

    color:transparent;

}

.ua-hero p{

    max-width:700px;

    margin:0 auto 40px;

    font-size:20px;

    line-height:1.7;

    opacity:.9;

}


/* ============================
   Busca
   Uma única "pílula" (.ua-search-bar), não caixas soltas: campo de
   texto + divisor + select de estado + botão, tudo com o mesmo fundo
   branco e sombra, clipada pelo overflow:hidden do container.
============================ */

.ua-search-form{

    max-width:760px;

    margin:50px auto 0;

}

.ua-search-bar{

    display:flex;

    align-items:stretch;

    background:#fff;

    border-radius:18px;

    box-shadow:0 15px 40px rgba(0,0,0,.18);

    overflow:hidden;

    transition:box-shadow .2s;

}

.ua-search-bar:focus-within{

    box-shadow:0 15px 40px rgba(0,0,0,.18), 0 0 0 3px rgba(191,219,254,.8);

}

/*
 * O tema pai Kadence injeta automaticamente um ícone de lupa extra
 * (.kadence-search-icon-wrap) dentro de qualquer <form role="search">
 * via filtro em get_search_form() -- é o ícone "solto" que aparecia
 * abaixo da barra de busca. Nosso formulário já tem ícone e botão
 * próprios, então esse elemento do Kadence só sobra; escondido só
 * dentro do nosso form para não afetar buscas do Kadence em outro lugar.
 */
.ua-search-form .kadence-search-icon-wrap{

    display:none !important;

}

.ua-search-field{

    flex:1 1 auto;

    display:flex;

    align-items:center;

    gap:12px;

    min-width:0;

    padding:18px 20px;

}

.ua-search-field svg{

    color:#9ca3af;

    flex-shrink:0;

}

.ua-search-field input{

    flex:1;

    min-width:0;

    border:none;

    outline:none;

    font-size:17px;

    background:none;

}

.ua-search-field input::placeholder{

    color:#9ca3af;

}

.ua-search-divider{

    width:1px;

    margin:14px 0;

    background:#e5e7eb;

    flex-shrink:0;

}

.ua-search-bar select{

    flex:0 1 180px;

    min-width:130px;

    padding:0 16px;

    border:none;

    background:none;

    color:#111827;

    font-size:15px;

    cursor:pointer;

}

.ua-search-bar button{

    flex:0 0 auto;

    padding:0 34px;

    border:none;

    background:#2563eb;

    color:#fff;

    font-size:16px;

    font-weight:600;

    cursor:pointer;

    transition:.2s;

}

.ua-search-bar button:hover{

    background:#1d4ed8;

}


/* Populares */

.ua-populares{

    margin:28px auto 0;

    max-width:820px;

    display:flex;

    align-items:center;

    justify-content:center;

    flex-wrap:wrap;

    gap:10px;

    font-size:15px;

}

.ua-populares-label{

    opacity:.85;

    margin-right:4px;

}

.ua-populares-chip{

    background:rgba(255,255,255,.15);

    border:1px solid rgba(255,255,255,.4);

    color:#fff;

    border-radius:999px;

    padding:6px 16px;

    text-decoration:none;

    transition:.2s;

}

.ua-populares-chip:hover{

    background:rgba(255,255,255,.3);

}


/* Filtros do arquivo "Todas as Universidades" */

.ua-filtros-form{

    display:flex;

    flex-wrap:wrap;

    align-items:center;

    gap:12px;

    margin-bottom:40px;

    padding:20px;

    background:#fff;

    border-radius:16px;

    box-shadow:0 8px 25px rgba(0,0,0,.07);

}

.ua-filtros-form select{

    flex:1 1 180px;

    height:48px;

    padding:0 14px;

    border:1px solid #e5e7eb;

    border-radius:10px;

    font-size:15px;

    background:#fff;

    color:#111827;

}

.ua-filtros-form button{

    flex:0 0 auto;

    height:48px;

    padding:0 28px;

    border:none;

    border-radius:10px;

    background:#111827;

    color:#fff;

    font-size:15px;

    font-weight:600;

    cursor:pointer;

    transition:.25s;

}

.ua-filtros-form button:hover{

    background:#000;

}

.ua-filtros-limpar{

    flex:0 0 auto;

    color:#2563eb;

    font-size:14px;

    text-decoration:none;

}

.ua-filtros-limpar:hover{

    text-decoration:underline;

}


/* Paginação (saída padrão de the_posts_pagination(), ver archive-universidade.php) */

.navigation.pagination .nav-links{

    display:flex;

    flex-wrap:wrap;

    justify-content:center;

    gap:8px;

    margin-top:50px;

}

.navigation.pagination .page-numbers{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    min-width:44px;

    height:44px;

    padding:0 14px;

    border-radius:10px;

    background:#fff;

    color:#111827;

    text-decoration:none;

    font-weight:600;

    box-shadow:0 4px 12px rgba(0,0,0,.06);

}

.navigation.pagination .page-numbers.current{

    background:#2563eb;

    color:#fff;

}

.navigation.pagination .page-numbers.dots{

    box-shadow:none;

    background:none;

}

.navigation.pagination .screen-reader-text{

    position:absolute;

    clip:rect(1px,1px,1px,1px);

    overflow:hidden;

    height:1px;

    width:1px;

}


/* Destaques */

.ua-featured{

    padding:80px 0;

}

.ua-featured h2{

    text-align:center;

    font-size:36px;

    margin-bottom:50px;

}


/* Grid */

.ua-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));

    align-items:start;

    gap:30px;

}


/* Card */

.ua-card{

    display:block;

    background:#fff;

    border-radius:18px;

    padding:30px;

    text-align:center;

    text-decoration:none;

    color:#111827;

    transition:.25s;

    box-shadow:0 8px 25px rgba(0,0,0,.07);

}

.ua-card:hover{

    transform:translateY(-6px);

    box-shadow:0 15px 35px rgba(0,0,0,.10);

}


/* Logo */

.ua-card-logo{

    width:90px;

    height:90px;

    margin:0 auto 20px;

    display:flex;

    align-items:center;

    justify-content:center;

}

.ua-card-logo img{

    max-width:100%;

    max-height:100%;

    object-fit:contain;

}


/* Nome */

.ua-card h3{

    margin:0 0 10px;

    font-size:22px;

    line-height:1.3;

    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    line-clamp:2;

    overflow:hidden;

}


/* Placeholder da logo (sem imagem cadastrada) */

.ua-card-logo-placeholder{

    width:70px;

    height:70px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#eef1f8;

    border-radius:50%;

    font-size:32px;

}


/* Nota */

.ua-card-rating{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:6px;

    margin:0 0 10px;

    font-size:15px;

    font-weight:600;

}

.ua-card-rating-star{

    color:#111827;

}

.ua-card-rating-count{

    color:#6b7280;

    font-weight:400;

}


/* Cidade */

.ua-card-local{

    color:#6b7280;

}


/* Estatísticas */

.ua-stats{

    padding:40px 0;

    background:#fff;

    border-bottom:1px solid #eef0f4;

}

.ua-stats-grid{

    display:flex;

    flex-wrap:wrap;

    justify-content:space-around;

    gap:30px;

    text-align:center;

}

.ua-stat{

    display:flex;

    flex-direction:column;

    gap:6px;

}

.ua-stat-number{

    font-size:32px;

    font-weight:700;

    color:#2563eb;

}

.ua-stat-label{

    color:#6b7280;

    font-size:15px;

}


/* Cabeçalho da seção de destaques */

.ua-featured-header{

    display:flex;

    align-items:center;

    justify-content:space-between;

    margin-bottom:50px;

}

.ua-featured-header h2{

    margin:0;

}

.ua-featured-ver-todas{

    color:#2563eb;

    font-weight:600;

    text-decoration:none;

}

.ua-featured-ver-todas:hover{

    text-decoration:underline;

}


/* Explore por estado / cidade / curso */

.ua-explore{

    padding:80px 0;

}

.ua-explore h2{

    text-align:center;

    font-size:36px;

    margin-bottom:50px;

}

.ua-explore-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

    gap:30px;

}

.ua-explore-column{

    background:#fff;

    border-radius:18px;

    padding:30px;

    box-shadow:0 8px 25px rgba(0,0,0,.07);

}

.ua-explore-icon{

    font-size:32px;

}

.ua-explore-column h3{

    margin:15px 0 20px;

    font-size:20px;

}

.ua-explore-pills{

    display:flex;

    flex-wrap:wrap;

    gap:10px;

}

.ua-explore-pill{

    background:#f5f7fb;

    color:#111827;

    border-radius:999px;

    padding:8px 16px;

    font-size:14px;

    text-decoration:none;

    transition:.25s;

}

.ua-explore-pill:hover{

    background:#e5e9f2;

}

.ua-explore-count{

    display:inline-block;

    margin-top:15px;

    color:#6b7280;

    font-size:14px;

}


/* Responsivo */

@media(max-width:768px){

    .ua-hero{

        padding:70px 20px;

    }

    .ua-hero h1{

        font-size:36px;

    }

    .ua-hero p{

        font-size:17px;

    }

    .ua-search-bar{

        flex-direction:column;

    }

    .ua-search-field{

        padding:14px 16px;

    }

    .ua-search-field input{

        font-size:16px;

    }

    .ua-search-divider{

        width:auto;

        height:1px;

        margin:0;

    }

    .ua-search-bar select{

        flex:0 0 auto;

        width:100%;

        height:52px;

        padding:0 16px;

    }

    .ua-search-bar button{

        width:100%;

        height:56px;

    }

    .ua-stats-grid{

        gap:25px;

    }

    .ua-stat-number{

        font-size:26px;

    }

    .ua-featured-header{

        flex-direction:column;

        align-items:flex-start;

        gap:10px;

    }

    .ua-explore h2{

        font-size:28px;

    }

    .ua-filtros-form{

        flex-direction:column;

        align-items:stretch;

    }

    .ua-filtros-form select,
    .ua-filtros-form button{

        flex:1 1 auto;

        width:100%;

    }

}