/* Should you need to overwrite any of our SCSS or LESS or SASS code need to add any custom code, We recommend that you add your code into this file, so whenever theme update is available and you update the theme, You will not lose your hard work :) */

/* ============================================
   FIX URGENTE - TEXTO BRANCO NO HOVER DA EQUIPE
   ============================================ */
.team-wrapper:hover .team-title,
.team-wrapper:hover .team-position {
    color: #ffffff !important;
}

/* ============================================
   PALETA DE CORES LIBÉLULA ARQUITETURA
   ============================================ */
:root {
    --cor-bege-claro: rgb(247, 241, 231);
    --cor-amarelo-verde: rgb(195, 195, 77);
    --cor-verde-escuro: rgb(38, 75, 44);
    --cor-laranja-dourado: rgb(214, 148, 0);
}

/* ===== BACKGROUNDS ===== */
/* Cor primária - Verde Escuro */
.bg-primary,
.top-search.bg-primary,
.navbar-default .top-search {
    background-color: rgb(38, 75, 44) !important;
}

/* Backgrounds - Fundo bege geral, exceto seções com imagens */
body,
html,
.bg-white,
header,
.navbar,
.navbar-default,
.menu_area,
.main-wrapper {
    background-color: rgb(247, 241, 231) !important;
}

/* Seções gerais com fundo bege */
section {
    background-color: rgb(247, 241, 231);
}

/* Exceção: Seções de título mantêm suas imagens de fundo */
.page-title-section {
    background-color: transparent !important;
}

/* Containers e divs DENTRO das seções de título devem ser transparentes */
.page-title-section .container,
.page-title-section .row,
.page-title-section .col-md-12,
.page-title-section > div {
    background-color: transparent !important;
    background: transparent !important;
}

/* ===== TEXTOS E ÍCONES ===== */
/* Cor laranja-dourado para elementos primários */
.text-primary,
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.display-14.text-primary,
.display-20,
.display-18,
.display-16,
.footer-title,
.service-wrapper h3,
.service-wrapper .h5,
.project-title,
.testimonial-wrapper h4,
.quote-text h4,
i.text-primary,
.fas.text-primary,
.ti-home,
.ti-ruler-pencil,
.ti-layout,
.service-wrapper .mb-1-6 i,
.icon-box i,
.fa-phone-alt,
.fa-map-marker-alt,
.fa-envelope,
.font-weight-600.text-primary {
    color: rgb(214, 148, 0) !important;
}

/* Cor amarelo-verde para números e detalhes */
.service-counter,
.number-ordered-item,
.process-wrapper .icon-box,
.counter-number {
    color: rgb(195, 195, 77) !important;
    border-color: rgb(195, 195, 77) !important;
}

/* ===== BOTÕES E LINKS ===== */
/* Botões sem fundo e sem borda, apenas texto laranja-dourado */
.butn,
.butn span,
.read-more,
.link-arrow,
a.butn,
button.butn,
.btn-primary {
    background-color: transparent !important;
    border: none !important;
    color: rgb(214, 148, 0) !important;
}

.butn:hover,
.butn:hover span,
.read-more:hover,
.link-arrow:hover {
    background-color: transparent !important;
    border: none !important;
    color: rgb(38, 75, 44) !important;
}

/* Botão do banner principal: laranja com letra branca */
.caption .butn,
.caption a.butn,
.caption .butn span {
    background-color: rgb(214, 148, 0) !important;
    color: #ffffff !important;
    border-radius: 4px !important;
    padding: 10px 28px !important;
}

.caption .butn:hover,
.caption a.butn:hover,
.caption .butn:hover span {
    background-color: rgb(180, 120, 0) !important;
    color: #ffffff !important;
}

/* Links */
a,
.navbar-nav a,
.menu a {
    color: rgb(38, 75, 44) !important;
}

a:hover,
.navbar-nav a:hover,
.primary-hover:hover {
    color: rgb(214, 148, 0) !important;
}

/* ===== OVERLAYS E EFEITOS ===== */
.theme-overlay-dark::before,
[data-overlay-dark]::before {
    background-color: transparent !important;
    opacity: 0.3 !important;
}

/* ===== FOOTER ===== */
footer,
footer.pt-6,
footer.pt-md-8,
footer.pt-lg-9 {
    background-color: rgb(38, 75, 44) !important;
}

footer h3,
footer h6,
footer .footer-title,
footer p,
footer a,
footer .contact-list h6,
footer .footer-list a {
    color: rgb(247, 241, 231) !important;
}

footer a:hover {
    color: rgb(214, 148, 0) !important;
}

/* Footer-bar (barra inferior) */
.footer-bar,
.footer-bar.bg-primary,
footer .footer-bar,
div.footer-bar.bg-primary {
    background-color: rgb(214, 148, 0) !important;
}

.footer-bar .text-black,
.footer-bar p,
.footer-bar span,
.footer-bar p.text-black,
.footer-bar .display-31,
.footer-bar a {
    color: rgb(247, 241, 231) !important;
}

/* ===== CARDS E WRAPPERS ===== */
.service-wrapper,
.contact-info-card,
.testimonial-wrapper,
.team-wrapper {
    background-color: #ffffff !important;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.08) !important;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.service-wrapper:hover,
.contact-info-card:hover {
    box-shadow: 0 5px 25px rgba(0, 0, 0, 0.12) !important;
    transform: translateY(-5px);
}

/* Widget da sidebar - seção Nossos Serviços */
.sidebar .widget,
.widget {
    background-color: #ffffff !important;
    padding: 25px 20px;
    border-radius: 8px;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

/* project-item styling - removed to avoid carousel conflicts */

/* ===== ÍCONES ESPECÍFICOS ===== */
.ti-home,
.ti-ruler-pencil,
.ti-layout,
.ti-light-bulb,
.ti-money,
.ti-check-box,
.ti-user {
    color: rgb(214, 148, 0) !important;
}

/* ============================================
   FONTE BAUMANS - APLICADA EM TODO O SITE
   ============================================ */

/* Importar fonte Baumans do Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Baumans&display=swap');

/* Aplicar fonte Baumans em todo o site */
body,
html,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
span,
div,
button,
input,
textarea,
select,
.navbar,
.menu,
* {
    font-family: 'Baumans', cursive !important;
}

/* WhatsApp Floating Button - expande ao hover */
.whatsapp-float {
    position: fixed !important;
    bottom: 80px !important;
    right: 20px !important;
    height: 52px !important;
    width: 52px !important;
    background-color: #25D366 !important;
    color: #ffffff !important;
    border-radius: 50px !important;
    z-index: 9999 !important;
    text-decoration: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 0 14px !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;
    transition: width 0.35s ease, box-shadow 0.3s ease !important;
    outline: 0 !important;
}

.whatsapp-float:hover {
    width: 180px !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.3) !important;
    background-color: #1ebc5a !important;
}

.whatsapp-float i {
    color: #ffffff !important;
    font-size: 26px !important;
    flex-shrink: 0 !important;
    font-family: "Font Awesome 5 Brands" !important;
    font-weight: 400 !important;
    line-height: 1 !important;
}

.whatsapp-float:hover i {
    color: #ffffff !important;
}

.whatsapp-float .whatsapp-label {
    color: #ffffff !important;
    font-family: 'Baumans', sans-serif !important;
    font-size: 14px !important;
    font-weight: bold !important;
    margin-left: 10px !important;
    opacity: 0 !important;
    transition: opacity 0.2s ease 0.1s !important;
    display: inline !important;
    visibility: visible !important;
}

.whatsapp-float:hover .whatsapp-label {
    opacity: 1 !important;
}

.whatsapp-float:visited {
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Botão Scroll to Top - fundo transparente com borda laranja */
.scroll-to-top,
a.scroll-to-top {
    background: transparent !important;
    color: rgb(214, 148, 0) !important;
    width: 50px !important;
    height: 50px !important;
    line-height: 46px !important;
    font-size: 24px !important;
    border: 2px solid rgb(214, 148, 0) !important;
    text-align: center !important;
}

.scroll-to-top i,
.scroll-to-top .fas,
.scroll-to-top .fa-angle-up,
a.scroll-to-top i,
.scroll-to-top:before {
    color: rgb(214, 148, 0) !important;
    font-size: 26px !important;
    line-height: 46px !important;
    display: inline-block !important;
    opacity: 1 !important;
    visibility: visible !important;
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
}

.scroll-to-top:hover {
    background: rgb(214, 148, 0) !important;
    color: #ffffff !important;
    border-color: rgb(214, 148, 0) !important;
}

.scroll-to-top:hover i,
.scroll-to-top:hover .fas,
.scroll-to-top:hover:before {
    color: #ffffff !important;
}

/* Scroll-to-top - posição bottom controlada por JS (adjustScrollBtn) */
.scroll-to-top,
a.scroll-to-top {
    right: 20px !important;
}

@media screen and (max-width: 767px) {
    .scroll-to-top,
    a.scroll-to-top {
        right: 12px !important;
        width: 36px !important;
        height: 36px !important;
        line-height: 32px !important;
        font-size: 18px !important;
    }

    .scroll-to-top i,
    a.scroll-to-top i {
        font-size: 18px !important;
        line-height: 32px !important;
    }
}

/* Contact Page Custom Styles */
.contact-info-box {
    padding: 40px 20px;
    transition: all 0.3s ease;
}

.contact-info-box:hover {
    transform: translateY(-5px);
}

.contact-info-box i {
    font-size: 3rem;
    color: #b8d429;
    margin-bottom: 20px;
}

.contact-info-box h5 {
    color: #333;
    font-weight: 600;
    margin-bottom: 15px;
    font-size: 1.2rem;
}

.contact-info-box p {
    color: #666;
    margin-bottom: 5px;
    line-height: 1.6;
}

/* Form Styles */
.form-control {
    border: 2px solid #e8e8e8;
    border-radius: 5px;
    padding: 15px;
    font-size: 14px;
    color: #666;
    background: transparent;
    transition: all 0.3s ease;
}

.form-control:focus {
    border-color: #b8d429;
    box-shadow: none;
    outline: none;
}

.form-control::placeholder {
    color: #999;
}

/* Service Sidebar New Design - Our Services */
.service-sidebar-wrapper {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);
    padding: 0;
    overflow: hidden;
}

.service-sidebar-title {
    font-size: 18px;
    font-weight: 700;
    color: #333;
    margin: 0;
    padding: 25px 25px 15px 25px;
    position: relative;
}

.service-sidebar-title:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 25px;
    width: 50px;
    height: 3px;
    background: #b8d429;
    border-radius: 2px;
}

.service-sidebar-menu {
    padding: 15px;
}

.service-nav-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.service-nav-list li {
    margin-bottom: 12px;
    position: relative;
}

.service-nav-list li:last-child {
    margin-bottom: 0;
}

.service-nav-list li a {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 20px 15px;
    color: #666;
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.3s ease;
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 6px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    min-height: 60px;
}

.service-nav-list li a:hover {
    color: #333;
    background: #f1f3f4;
    text-decoration: none;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    border-color: #d6d8db;
}

.service-nav-list li.active a {
    color: #fff;
    background: linear-gradient(135deg, #b8d429 0%, #a8c421 100%);
    border-color: #b8d429;
    font-weight: 600;
    box-shadow: 0 4px 15px rgba(184, 212, 41, 0.3);
}

.service-nav-list li.active a:hover {
    background: linear-gradient(135deg, #a8c421 0%, #98b419 100%);
    transform: translateY(-2px);
    color: #fff;
    box-shadow: 0 6px 18px rgba(184, 212, 41, 0.4);
}

.form-group label {
    font-weight: 500;
    color: #666;
    margin-bottom: 8px;
    font-size: 12px;
    text-transform: uppercase;
}

/* Button Styles */
.butn.theme-color {
    background: transparent;
    color: rgb(214, 148, 0);
    border: none;
    padding: 15px 40px;
    border-radius: 50px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.butn.theme-color:hover {
    background: transparent;
    color: rgb(38, 75, 44);
    transform: translateY(-2px);
    box-shadow: none;
}

/* Page Title Customization */
.page-title-section h2 {
    font-size: 3.5rem;
    font-weight: 700;
    margin-bottom: 20px;
    color: #fff !important;
}

.breadcrumb {
    background: transparent;
    font-size: 1rem;
    margin: 0;
}

.breadcrumb li a {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
}

.breadcrumb li.active {
    color: rgb(214, 148, 0) !important;
}

/* Cor laranja para o breadcrumb (Início -> Página) */
.page-title-section ul li a,
.page-title-section .active a,
.page-title-section li.active:last-child a {
    color: rgb(214, 148, 0) !important;
    font-weight: 700 !important;
}

/* Section spacing */
.padding-100px-tb {
    padding: 100px 0;
}

.margin-80px-bottom {
    margin-bottom: 80px;
}

/* Map section */
.map-section iframe {
    filter: grayscale(20%);
    transition: all 0.3s ease;
}

.map-section iframe:hover {
    filter: grayscale(0%);
}

/* Home page contact cards styles */
.contact-info-card {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    padding: 30px;
    transition: all 0.3s ease;
    position: relative;
    border: 1px solid rgba(184, 212, 41, 0.1);
    height: 100%;
    text-align: left;
}

.contact-info-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
    border-color: rgba(184, 212, 41, 0.3);
}

.contact-info-card i {
    color: #b8d429;
}

.contact-info-card h3 a {
    color: #333;
    text-decoration: none;
    transition: color 0.3s ease;
}

.contact-info-card h3 a:hover {
    color: rgb(214, 148, 0);
}

.contact-info-card .read-more {
    color: rgb(214, 148, 0);
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    background: transparent;
    border: none;
}

.contact-info-card .read-more:hover {
    color: rgb(38, 75, 44);
    text-decoration: none;
}

.contact-info-card .text-primary {
    color: rgb(214, 148, 0) !important;
}

/* Ensure contact cards have same styling as service cards */
.service-wrapper.contact-info-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 350px;
}

.service-wrapper.contact-info-card .service-counter.number-ordered-item {
    position: absolute;
    top: -15px;
    right: -15px;
    width: 40px;
    height: 40px;
    background: #b8d429;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 600;
    font-size: 18px;
}

/* Override any conflicting contact box styles */
.contact-info-box {
    padding: 40px 20px;
    transition: all 0.3s ease;
    background: transparent;
    border: none;
    box-shadow: none;
}

/* About Page Tabs Styling */
.about-tabs-nav .nav-tabs {
    border-bottom: none;
    margin-bottom: 30px;
}

.about-tabs-nav .nav-tabs .nav-link {
    background: transparent;
    border: none;
    color: #666;
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 15px 0;
    margin-right: 40px;
    position: relative;
    border-radius: 0;
}

.about-tabs-nav .nav-tabs .nav-link.active {
    color: #333;
    background: transparent;
    border: none;
}

.about-tabs-nav .nav-tabs .nav-link.active:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: #b8d429;
}

.about-tabs-nav .nav-tabs .nav-link:hover {
    color: #b8d429;
    border: none;
    background: transparent;
}

/* Tab Content Styling */
.tab-content .tab-pane {
    padding: 20px 0;
}

.tab-content h2 {
    font-size: 2.2rem;
    line-height: 1.3;
    color: #333;
    font-weight: 600;
}

.tab-content p {
    font-size: 1rem;
    line-height: 1.7;
    color: #666;
}

/* List styling for goals */
.list-style-1 {
    list-style: none;
    padding: 0;
    margin: 0;
}

.list-style-1 li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 10px;
    color: #666;
}

.list-style-1 li:before {
    content: '✓';
    position: absolute;
    left: 0;
    top: 0;
    color: #b8d429;
    font-weight: bold;
}

/* About image wrapper */
.about-image-wrapper {
    position: relative;
    overflow: hidden;
    border-radius: 5px;
}

.play-button-wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.video_btn {
    width: 70px;
    height: 70px;
    background: rgba(184, 212, 41, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 24px;
    transition: all 0.3s ease;
    text-decoration: none;
}

.video_btn:hover {
    background: #b8d429;
    transform: scale(1.1);
    color: white;
    text-decoration: none;
}

/* Service Detail Page Styles */
.service-sidebar-wrapper {
    background: #fff;
    border: 1px solid #f0f0f0;
    border-radius: 8px;
    padding: 30px;
    margin-bottom: 30px;
}

.service-sidebar-title {
    color: #333;
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 3px solid #b8d429;
    display: inline-block;
}

.service-nav-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.service-nav-list li {
    margin-bottom: 8px;
}

.service-nav-list li a {
    display: block;
    padding: 12px 15px;
    color: #666;
    text-decoration: none;
    border-radius: 5px;
    transition: all 0.3s ease;
    font-weight: 500;
}

.service-nav-list li.active a,
.service-nav-list li a:hover {
    background: #b8d429;
    color: white;
    text-decoration: none;
}

/* Service Review Styles */
.service-review-wrapper,
.service-contact-wrapper {
    background: #fff;
    border: 1px solid #f0f0f0;
    border-radius: 8px;
    padding: 30px;
}

.review-content p {
    font-style: italic;
    color: #666;
    line-height: 1.6;
    margin-bottom: 20px;
}

.review-author {
    display: flex;
    align-items: center;
    gap: 15px;
}

.author-avatar img {
    width: 50px;
    height: 50px;
    object-fit: cover;
}

.author-info h6 {
    margin: 0;
    color: #333;
    font-weight: 600;
}

.author-info span {
    color: #666;
    font-size: 0.9rem;
}

/* Contact Info Styles */
.contact-info-list {
    margin-bottom: 25px;
}

.contact-item {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    margin-bottom: 15px;
}

.contact-item i {
    font-size: 1.2rem;
    margin-top: 2px;
}

.contact-item p {
    margin: 0;
    color: #666;
    line-height: 1.5;
}

/* Contact Form Sidebar */
.contact-form-sidebar h5 {
    color: #333;
    font-weight: 600;
    margin-bottom: 15px;
}

.contact-form-sidebar .form-control {
    border: 1px solid #e0e0e0;
    border-radius: 5px;
    padding: 12px 15px;
    font-size: 14px;
    transition: all 0.3s ease;
}

.contact-form-sidebar .form-control:focus {
    border-color: #b8d429;
    box-shadow: 0 0 0 0.2rem rgba(184, 212, 41, 0.25);
}

/* Service Content */
.service-main-image img {
    width: 100%;
    height: 400px;
    object-fit: cover;
}

.service-content h2 {
    color: #333;
    font-weight: 600;
}

.service-content p {
    color: #666;
    line-height: 1.7;
}

/* Services Grid */
.services-grid {
    margin-top: 40px;
}

.service-grid-item {
    background: #fff;
    border: 1px solid #f0f0f0;
    border-radius: 8px;
    padding: 25px;
    transition: all 0.3s ease;
    position: relative;
    height: 100%;
}

.service-grid-item:hover {
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    transform: translateY(-5px);
}

.service-number {
    position: absolute;
    top: -15px;
    right: -15px;
    width: 40px;
    height: 40px;
    background: #b8d429;
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 18px;
}

.service-grid-content h5 {
    color: #333;
    font-weight: 600;
    margin-bottom: 10px;
}

.service-grid-content p {
    color: #666;
    margin-bottom: 15px;
    font-size: 0.95rem;
}

.read-more-link {
    color: #b8d429;
    text-decoration: none;
    font-weight: 600;
    font-size: 0.9rem;
    transition: color 0.3s ease;
}

.read-more-link:hover {
    color: #a6c024;
    text-decoration: none;
}

/* Responsive adjustments */
@media (max-width: 768px) {

    .service-sidebar-wrapper,
    .service-review-wrapper,
    .service-contact-wrapper {
        padding: 20px;
    }

    .service-grid-item {
        padding: 20px;
        margin-bottom: 20px;
    }

    .service-main-image img {
        height: 250px;
    }
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .page-title-section h2 {
        font-size: 2.5rem;
    }

    .contact-info-box {
        padding: 30px 15px;
        margin-bottom: 30px;
    }

    .contact-info-card {
        padding: 20px;
        margin-bottom: 20px;
    }

    .padding-40px-left {
        padding-left: 0 !important;
    }
}

/* Background Image Styles - Fix for data-background support */
.bg-img {
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center center !important;
    background-attachment: scroll !important;
}

.parallax {
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center center !important;
    background-attachment: fixed !important;
}

.cover-background {
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center center !important;
}

/* Specific fix for page title section */
.page-title-section {
    min-height: 400px !important;
    position: relative !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center center !important;
}

/* Force background image on about page */
.page-title-section[data-background*="libelula"] {
    background-image: url('../img/banner/libelula (39) (1).jpg') !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

/* Ensure overlay works correctly with background images */
.theme-overlay-dark::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.theme-overlay-dark[data-overlay-dark="6"]::before {
    background-color: transparent;
}

/* Make sure content appears above overlay */
.page-title-section .container {
    position: relative;
    z-index: 2;
}

/* Tornar o conteúdo da seção de título transparente */
.page-title-section .row,
.page-title-section .col-md-12 {
    background-color: transparent !important;
    background: transparent !important;
}

/* ===== CONTACT PAGE SPACING ===== */
/* Reduzir espaçamento da seção de contato */
.padding-100px-tb {
    padding-top: 30px !important;
    padding-bottom: 10px !important;
}

/* Reduzir margem do título "Vamos Conversar" */
.margin-80px-bottom {
    margin-bottom: 20px !important;
}

/* Aumentar distanciamento entre seção Fale Conosco e footer no index */
section.pb-0:has(.section-heading h2:contains("Fale Conosco")),
section.pb-0 + section + footer,
.contact-info-card {
    margin-bottom: 60px !important;
}

/* Seção Fale Conosco no index precisa de espaço extra antes do footer */
body section.pb-0:last-of-type {
    padding-bottom: 80px !important;
}

/* Ajustar espaçamento do mapa */
.map-section {
    margin-top: 50px !important;
    padding-top: 0 !important;
}

/* ===== FORCE FOOTER-BAR ORANGE ===== */
/* Regra com máxima especificidade para garantir cor laranja na footer-bar */
footer div.footer-bar.bg-primary,
div.footer-bar.bg-primary.mt-6,
.footer-bar.bg-primary {
    background-color: rgb(214, 148, 0) !important;
}

/* ============================================
   HOVER FIXES - MANTER TEXTO BRANCO
   ============================================ */

/* Seção Nossa Equipe - manter textos brancos no hover */
.team-wrapper .team-info.team-overlay .team-title,
.team-wrapper:hover .team-info.team-overlay .team-title,
.team-wrapper:hover .team-overlay .team-title,
.team-info.team-overlay .team-title,
section .team-wrapper:hover .team-overlay .team-title,
.team-wrapper:hover .team-overlay h3 {
    color: #ffffff !important;
}

.team-wrapper .team-info.team-overlay .team-position,
.team-wrapper:hover .team-info.team-overlay .team-position,
.team-wrapper:hover .team-overlay .team-position,
.team-info.team-overlay .team-position,
section .team-wrapper:hover .team-overlay .team-position,
.team-wrapper:hover .team-overlay h6 {
    color: #ffffff !important;
}

.team-wrapper .social-icon li a,
.team-wrapper:hover .social-icon li a {
    color: #ffffff !important;
}

.team-wrapper .social-icon li a:hover {
    color: rgb(214, 148, 0) !important;
}

/* Seção Projetos Libélula - manter textos brancos no hover */
.project-item .project-title,
.project-item .project-hover .project-title,
.project-item:hover .project-title,
.project-item:hover .project-hover .project-title,
section .project-item:hover .project-hover .project-title,
.project-carousel .project-item:hover .project-hover .project-title,
.project-item:hover h3,
.project-item:hover .project-hover h3 {
    color: #ffffff !important;
}

.project-item .link-arrow,
.project-item:hover .link-arrow,
section .project-item:hover .link-arrow,
.project-carousel .project-item:hover .link-arrow,
.project-item:hover a.link-arrow {
    color: #ffffff !important;
}

.project-item .project-hover .project-description,
.project-item:hover .project-hover .project-description,
section .project-item:hover .project-hover .project-description {
    color: #ffffff !important;
}

/* Grid Portfolio - manter textos brancos no hover */
.portfolio-wrapper .portfolio-content h4,
.portfolio-wrapper:hover .portfolio-content h4,
.portfolio-wrapper .portfolio-overlay .portfolio-content h4,
.portfolio-wrapper:hover .portfolio-overlay .portfolio-content h4,
section .portfolio-wrapper:hover .portfolio-content h4,
.portfolio-content h4,
.portfolio-wrapper:hover h4,
.portfolio-overlay h4,
.portfolio-wrapper:hover .portfolio-overlay h4 {
    color: #ffffff !important;
}

.portfolio-wrapper .portfolio-content p,
.portfolio-wrapper:hover .portfolio-content p,
.portfolio-wrapper .portfolio-overlay .portfolio-content p,
.portfolio-wrapper:hover .portfolio-overlay .portfolio-content p,
section .portfolio-wrapper:hover .portfolio-content p,
.portfolio-content p,
.portfolio-wrapper:hover p,
.portfolio-overlay p {
    color: #ffffff !important;
}

.portfolio-wrapper .portfolio-content>a,
.portfolio-wrapper:hover .portfolio-content>a,
.portfolio-wrapper .portfolio-overlay .portfolio-content>a,
.portfolio-wrapper:hover .portfolio-overlay .portfolio-content>a,
section .portfolio-wrapper:hover .portfolio-content>a,
.portfolio-content>a,
.portfolio-wrapper:hover .portfolio-content a,
.portfolio-overlay a,
.portfolio-wrapper:hover a {
    color: #ffffff !important;
}

/* Força global para todos os overlays */
.portfolio-overlay *,
.portfolio-wrapper:hover * {
    color: #ffffff !important;
}

.project-hover *,
.project-item:hover * {
    color: #ffffff !important;
}

.team-overlay *,
.team-wrapper:hover .team-overlay * {
    color: #ffffff !important;
}
/* ===== BARRA FIXA INFERIOR ===== */
.sticky-cta-bar {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 9998 !important;
    background: #ffffff !important;
    box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.12) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 12px 40px !important;
    box-sizing: border-box !important;
    transform: none !important;
}

.sticky-cta-bar .sticky-cta-text {
    font-family: 'Baumans', sans-serif;
    color: #333333;
    font-size: 15px;
    margin: 0;
}

.sticky-cta-bar .sticky-cta-text span {
    color: rgb(214, 148, 0);
    font-weight: bold;
}

.sticky-cta-bar .sticky-cta-btn {
    display: inline-block;
    background-color: rgb(214, 148, 0);
    color: #ffffff !important;
    font-family: 'Baumans', sans-serif;
    font-size: 15px;
    font-weight: bold;
    padding: 10px 28px;
    border-radius: 4px;
    text-decoration: none !important;
    transition: background-color 0.2s ease;
    white-space: nowrap;
}

.sticky-cta-bar .sticky-cta-btn:hover {
    background-color: rgb(180, 120, 0) !important;
    color: #ffffff !important;
}

/* Espaço para não cobrir o footer real */
body {
    padding-bottom: 60px;
}

@media (max-width: 768px) {
    .sticky-cta-bar {
        flex-direction: column;
        gap: 8px;
        padding: 10px 20px;
        text-align: center;
    }

    .sticky-cta-bar .sticky-cta-text {
        font-size: 13px;
    }
}
