/**
 * lista_profissionais.css — NegóciosRio
 * Estilos específicos: Lista de Profissionais/Empresas
 */

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--primary-font);color:var(--text-color);background-color:var(--background-color);line-height:1.6;overflow-x:hidden}
.container{max-width:1140px;margin:0 auto;padding:0 15px}
section{padding:80px 0}
h1,h2,h3,h4{font-family:var(--secondary-font);font-weight:700;color:var(--dark-color)}
h1{font-size:3rem}
h2{font-size:2.5rem;text-align:center;margin-bottom:10px}
h3, h3.section-subtitle{font-size:1.2rem;font-weight:400;color:var(--secondary-color);text-align:center;max-width:800px;margin:0 auto 40px auto}
p{margin-bottom:1rem}
.btn{display:inline-block;padding:12px 28px;border-radius:50px;text-decoration:none;font-weight:600;transition:all .3s ease;cursor:pointer;border:none}
.btn-primary{background-color:var(--primary-color);color:var(--dark-color);box-shadow:0 4px 15px rgba(255,204,0,.3); font-weight: 700;}
.btn-primary:hover{background-color:var(--dark-color);color:var(--primary-color);transform:translateY(-2px)} /* Hover Corrigido */
.btn-success { background-color: #25d366; color: #fff; border: none;} /* (NOVO) Botão WhatsApp */
.btn-success:hover { background-color: #20b054; }
.highlight-primary {color: var(--primary-color); font-weight: 700;}
.section-title{margin-bottom:40px}
.section-title h2{position:relative;display:inline-block;padding-bottom:15px}
.section-title h2::after{content:'';position:absolute;display:block;width:60px;height:3px;background:var(--primary-color);bottom:0;left:50%;transform:translateX(-50%)}
#header{position:fixed;top:0;left:0;width:100%;z-index:1000;padding:20px 0;transition:all .3s ease}
#header.scrolled{background-color:rgba(33,37,41,.95);padding:15px 0;box-shadow:0 2px 15px rgba(0,0,0,.1)}
#header .container{display:flex;justify-content:space-between;align-items:center}
#header .logo{display:flex;align-items:center;text-decoration:none}
#header .logo img{height:40px;margin-right:10px;border-radius:40%}
#header .logo h3{color:#fff;font-size:1.5rem;margin:0}
#header .navmenu ul{list-style:none;display:flex;gap:25px;margin:0}
#header .navmenu a{color:#fff;text-decoration:none;font-weight:500;transition:color .3s}
#header .navmenu a:hover,#header .navmenu a.active{color:var(--primary-color)}
.mobile-nav-toggle{display:none;color:#fff;font-size:28px;cursor:pointer;z-index:1001}
#hero{position:relative;padding-top:140px;padding-bottom:80px;color:#fff;text-align:center;background-image:url('https://www.negociosrio.com.br/regional/negociosrio-bg.webp');background-size:cover;background-position:center}
#hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.6)}
#hero .container{position:relative}
#hero .search-form{background:rgba(255,255,255,.1);padding:15px;border-radius:10px;backdrop-filter:blur(5px);max-width:800px;margin:30px auto 0 auto}
.search-form .form-control{height:50px;font-size:1rem}
.search-form .btn{height:50px}
.portfolio-card{position:relative;overflow:hidden;border-radius:8px;box-shadow:0 5px 20px rgba(0,0,0,.05)}
.portfolio-card img{width:100%;height:250px;object-fit:cover;display:block;transition:transform .3s ease}
.portfolio-card:hover img{transform:scale(1.1)}
.portfolio-card-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);color:#fff;padding:20px;text-align:left;opacity:0;transition:opacity .3s ease;display:flex;flex-direction:column;justify-content:flex-end;height:100%;text-decoration:none}
.portfolio-card:hover .portfolio-card-overlay{opacity:1}
.portfolio-card-overlay h4{color:#fff;margin:0 0 5px 0;font-size:1.2rem}
.portfolio-card-overlay p{margin:0;font-size:0.9rem;opacity:.8;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;}
.portfolio-card-actions{position:absolute;top:15px;right:15px;display:flex;gap:10px;z-index:3}
.portfolio-card-actions a{color:#fff;background:rgba(0,0,0,.5);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:background .3s, transform .3s, opacity .3s;transform:scale(0);opacity:0}
.portfolio-card:hover .portfolio-card-actions a{transform:scale(1);opacity:1}
.portfolio-card-actions a:nth-child(1){transition-delay:0.1s}
.portfolio-card-actions a:nth-child(2){transition-delay:0.2s}
.portfolio-card-actions a:hover{background:var(--primary-color)}









.portfolio-filters{list-style:none;padding:0;margin-bottom:30px;display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.portfolio-filters li{cursor:pointer;padding:8px 20px;border-radius:50px;background-color:#f2f2f2;font-weight:500;transition:all .3s ease}
.portfolio-filters li:hover,.portfolio-filters li.filter-active{background-color:var(--primary-color);color:var(--dark-color); font-weight: 600;} 
.glightbox-container .popup-content{padding:2rem;text-align:center;max-width:600px;margin:auto}
.glightbox-container .popup-content img{max-width:120px;height:120px;object-fit:cover;border-radius:50%;margin-bottom:1rem;border:4px solid #fff;box-shadow:0 4px 15px rgba(0,0,0,.1)}
.glightbox-container .popup-content p{margin-bottom:2rem;text-align:left;font-size:1rem;color:#555}
.popup-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}
.popup-actions .btn { font-weight: 600; }
.popup-actions .btn-primary { color: var(--dark-color); }
.popup-actions .btn-secondary { background-color: var(--secondary-color); color: #fff; } /* Estilo do botão whatsapp do popup */
.popup-actions .btn-secondary:hover { background-color: var(--dark-color); }
#footer { background-color: var(--dark-color); color: #adb5bd; padding: 50px 0 20px 0; }
.footer-grid { display: grid; gap: 30px; grid-template-columns: 1fr; text-align: center; margin-bottom: 40px; }
@media (min-width: 768px) { .footer-grid { grid-template-columns: 2fr 1fr 1fr; text-align: left; } }
#footer h4 { color: #fff; margin-bottom: 15px; font-size: 1.2rem; }
#footer a { color: #adb5bd; text-decoration: none; }
#footer ul { list-style: none; padding: 0; }
#footer ul li { margin-bottom: 10px; }
#footer a:hover { color: #fff; padding-left: 5px; transition: 0.2s; }
.footer-copyright { text-align: center; padding-top: 20px; border-top: 1px solid #495057; font-size: 0.9rem; }
.footer-seo-terms, .footer-seo-segmentos { margin-top: 40px; padding-top: 30px; border-top: 1px solid #495057; }
.footer-seo-terms__title, .footer-seo-segmentos__title { font-family: var(--secondary-font); font-weight: 700; font-size: 1.2rem; color: #fff; margin-bottom: 15px; text-align: center; }
.footer-seo-terms__menu, .footer-seo-segmentos__menu { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px 14px; justify-content: center; }
.footer-seo-terms__link, .footer-seo-segmentos__link { display: inline-block; font-size: 0.9rem; color: #adb5bd; text-decoration: none; padding: 4px 10px; border-radius: 999px; border: 1px solid rgba(173, 181, 189, 0.35); background-color: rgba(0, 0, 0, 0.15); transition: all 0.2s ease; }
.footer-seo-terms__link--capitalized, .footer-seo-segmentos__link--capitalized { text-transform: capitalize; }
.footer-seo-terms__link:hover, .footer-seo-segmentos__link:hover { color: #fff !important; border-color: var(--primary-color) !important; background-color: rgba(204, 153, 0, 0.2) !important; opacity: 1 !important; }
#nova-busca .footer-seo-terms, #nova-busca .footer-seo-segmentos { border-top: 1px solid #dee2e6; }
#nova-busca .footer-seo-terms__title, #nova-busca .footer-seo-segmentos__title { color: var(--dark-color); }
#nova-busca .footer-seo-terms__link, #nova-busca .footer-seo-segmentos__link { color: var(--secondary-color); background-color: #fff; border-color: #dee2e6; }
#nova-busca .footer-seo-terms__link:hover, #nova-busca .footer-seo-segmentos__link:hover { color: #fff !important; background-color: var(--primary-color) !important; border-color: var(--primary-color) !important; }
.badge-count { font-weight: 700; font-size: 0.7rem; margin-left: 4px; padding: 1px 4px; border-radius: 3px; background: rgba(0,0,0,0.3); }
.footer-seo-segmentos__link--alta { border-color: #28a745; background-color: rgba(40, 167, 69, 0.1); }
.footer-seo-segmentos__link--media { border-color: #ffc107; background-color: rgba(255, 193, 7, 0.1); }
.footer-seo-segmentos__link--baixa { border-color: #fd7e14; background-color: rgba(253, 126, 20, 0.1); }
.footer-seo-segmentos__link--zero { border-color: #6c757d; background-color: rgba(108, 117, 127, 0.1); opacity: 0.7; }
#nova-busca .footer-seo-segmentos__link--alta { background-color: #e8f5e9; border-color: #28a745; color: #1e7e34; }
#nova-busca .footer-seo-segmentos__link--media { background-color: #fff3cd; border-color: #ffc107; color: #856404; }
#nova-busca .footer-seo-segmentos__link--baixa { background-color: #ffe8cc; border-color: #fd7e14; color: #d65b05; }
#nova-busca .footer-seo-segmentos__link--zero { background-color: #f8f9fa; border-color: #adb5bd; color: #6c757d; }
#preloader { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 9999; background-color: #fff; display: flex; justify-content: center; align-items: center; transition: opacity .75s ease; }
#preloader.hidden { opacity: 0; pointer-events: none; }
.preloader-logo { width: 150px; animation: pulse 1.5s infinite ease-in-out; }
@keyframes pulse { 0% { transform: scale(1); } 50% { transform: scale(1.1); } 100% { transform: scale(1); } }
@media (max-width: 992px) { h1 { font-size: 2.5rem; } .footer-grid { grid-template-columns: 1fr; text-align: center; } }
@media (max-width: 768px) { #header .navmenu { display: none; } .mobile-nav-toggle { display: block; } #hero h1 { font-size: 2rem; } }
@media (max-width: 767.98px) { 
h1, #hero h1 { font-size: 2.5rem; }
h2 { font-size: 2rem; }
h3 { font-size: 1.1rem; }
#hero { padding-top: 120px; padding-bottom: 60px; }
#header .logo h3 { font-size: 1.2rem; }
.footer-grid {
grid-template-columns: 1fr;
gap: 20px;
text-align: center;
}
.search-form .form-control {
border-radius: 5px !important;
margin-bottom: 10px;
}
.search-form .btn {
width: 100%;
border-radius: 5px !important;
}
}
@media (max-width: 575.98px) {
h1, #hero h1 { font-size: 2rem; }
h2 { font-size: 1.8rem; }
}
.mobile-nav-active{overflow:hidden}
.mobile-nav-active #header .navmenu{
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
position:fixed;
top:0;
left:0;
width:100%;
height:100vh;
background:rgba(33,37,41,.95);
z-index:1000
}
.mobile-nav-active #header .navmenu ul{
flex-direction:column;
text-align:center;
gap:30px
}
.mobile-nav-active #header .navmenu a{font-size:1.5rem}
.mobile-nav-active .mobile-nav-toggle {
position: fixed;
right: 20px;
top: 20px;
}

/* ── Segmento Cards — contraste garantido ──────────────────── */
.segmento-card {
    background-color: var(--white-color, #fff);
    border-radius: 10px;
    border-top: 4px solid var(--primary-color);
    box-shadow: 0 4px 16px rgba(0,0,0,.08);
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    height: 100%;
}
.segmento-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0,0,0,.12);
    background-color: var(--primary-color);
}
.segmento-card-link {
    text-decoration: none;
    color: var(--dark-text, #1a2332);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    padding: 28px 20px;
    text-align: center;
    position: relative;
}
.segmento-card-link h4 {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--dark-text, #1a2332);
    margin-bottom: 8px;
}
.segmento-card:hover .segmento-card-link,
.segmento-card:hover .segmento-card-link h4 {
    color: var(--text-on-primary, #fff);
}
.segmento-card-link p {
    font-size: 0.85rem;
    color: var(--muted-color, #64748b);
    margin-bottom: 0;
    transition: all 0.3s ease;
    transform: translateY(6px);
    opacity: 0;
}
.segmento-card:hover .segmento-card-link p {
    transform: translateY(0);
    opacity: 0.85;
    color: var(--text-on-primary, #fff);
}
.segmento-card-icon {
    position: absolute;
    bottom: 12px;
    right: 16px;
    font-size: 1rem;
    opacity: 0;
    transition: all 0.3s ease;
    color: var(--primary-color);
}
.segmento-card:hover .segmento-card-icon { opacity: 0.8; color: var(--text-on-primary, #fff); }
