/*
 * Fresa Digital - Red Color Override CSS
 * This file overrides all green color definitions with red (#dc3545)
 * Applied with !important to ensure precedence
 */

/* Primary Color Variables Override */
:root {
    --bs-success: #d32f2f !important;
    --bs-success-rgb: 211, 47, 47 !important;
    --primary: #d32f2f !important;
    --success: #d32f2f !important;
    --green: #d32f2f !important;
}

/* Button Overrides */
.btn-success,
.btn-primary {
    background-color: #d32f2f !important;
    border-color: #d32f2f !important;
    color: #ffffff !important;
}

.btn-success:hover,
.btn-primary:hover,
.btn-success:focus,
.btn-primary:focus,
.btn-success:active,
.btn-primary:active {
    background-color: #b71c1c !important;
    border-color: #a71a1a !important;
    color: #ffffff !important;
}

.btn-outline-success,
.btn-outline-primary {
    color: #d32f2f !important;
    border-color: #d32f2f !important;
}

.btn-outline-success:hover,
.btn-outline-primary:hover {
    background-color: #d32f2f !important;
    border-color: #d32f2f !important;
    color: #ffffff !important;
}

/* Navigation and Links */
.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus,
.navbar-nav .nav-link.active {
    color: #d32f2f !important;
    background-color: transparent !important;
    border-bottom: none !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

.navbar-nav .nav-link.active::before,
.navbar-nav .nav-link.active::after {
    display: none !important;
}

.nav-pills .nav-link.active {
    background-color: #d32f2f !important;
}

a:hover,
a:focus {
    color: #d32f2f !important;
}

/* Text Colors */
.text-success,
.text-primary {
    color: #d32f2f !important;
}

.text-success-emphasis {
    color: #d32f2f !important;
}

/* Background Colors */
.bg-success,
.bg-primary {
    background-color: #d32f2f !important;
}

.bg-success-subtle {
    background-color: rgba(211, 47, 47, 0.1) !important;
}

/* Border Colors */
.border-success,
.border-primary {
    border-color: #d32f2f !important;
}

/* Form Controls */
.form-control:focus {
    border-color: #d32f2f !important;
    box-shadow: 0 0 0 0.2rem rgba(211, 47, 47, 0.25) !important;
}

.form-check-input:checked {
    background-color: #d32f2f !important;
    border-color: #d32f2f !important;
}

/* Progress Bars */
.progress-bar,
.progress-bar-success {
    background-color: #d32f2f !important;
}

/* Alerts */
.alert-success {
    color: #5a1a1a !important;
    background-color: #f5c6cb !important;
    border-color: #f1b0b7 !important;
}

/* Badges */
.badge.bg-success,
.badge.bg-primary {
    background-color: #d32f2f !important;
}

/* Tables */
.table-success {
    --bs-table-color-state: #5a1a1a !important;
    --bs-table-bg-state: #f5c6cb !important;
    --bs-table-border-color-state: #f1b0b7 !important;
}

/* Carousel and Owl Carousel Overrides */
.owl-theme .owl-nav [class*='owl-']:hover {
    background: #d32f2f !important;
}

.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
    background: #d32f2f !important;
}

/* Icon and SVG Overrides */
.text-success svg,
.text-primary svg {
    fill: #d32f2f !important;
    color: #d32f2f !important;
}

/* Custom Component Overrides */
.service-item:hover,
.feature-item:hover {
    border-color: #d32f2f !important;
}

.service-item:hover .service-icon,
.feature-item:hover .feature-icon {
    color: #d32f2f !important;
    background-color: rgba(211, 47, 47, 0.1) !important;
}

/* Social Media Icons */
.social-icons a:hover {
    background-color: #d32f2f !important;
    border-color: #d32f2f !important;
}

/* Override any remaining green colors */
*[style*="#28a745"],
*[style*="#5cb85c"],
*[style*="#4CAF50"],
*[style*="#198754"],
*[style*="#20c997"] {
    color: #d32f2f !important;
    background-color: #d32f2f !important;
}

/* Hover effects for interactive elements */
.btn:hover,
.card:hover,
.service-item:hover,
.team-item:hover {
    border-color: #d32f2f !important;
}

/* Focus states */
.btn:focus,
input:focus,
textarea:focus,
select:focus {
    box-shadow: 0 0 0 0.2rem rgba(211, 47, 47, 0.25) !important;
    border-color: #d32f2f !important;
}

/* Active states */
.active,
.show > .btn-dropdown-toggle {
    background-color: #d32f2f !important;
    border-color: #d32f2f !important;
}

/* Utilities */
.text-decoration-none:hover {
    color: #d32f2f !important;
}

/* Testimonial Carousel Visibility Fixes */
.testimonial-carousel::before {
    display: none !important;
}

.testimonial-carousel::after {
    display: none !important;
}

.testimonial-carousel .owl-item .testimonial-text {
    opacity: 0.6 !important;
    transform: scale(0.9) !important;
    transition: all 0.3s ease !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
}

.testimonial-carousel .owl-item.center .testimonial-text {
    opacity: 1 !important;
    transform: scale(1) !important;
    background-color: #ffffff !important;
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
}

.testimonial-carousel .owl-item .testimonial-img {
    opacity: 0.85 !important;
    transition: all 0.3s ease !important;
}

.testimonial-carousel .owl-item.center .testimonial-img {
    opacity: 1 !important;
}

.testimonial-carousel .owl-item .testimonial-img .btn-square {
    opacity: 0.8 !important;
}

.testimonial-carousel .owl-item.center .testimonial-img .btn-square {
    opacity: 1 !important;
    background-color: #d32f2f !important;
}

/* Improve text readability in side testimonials */
.testimonial-carousel .owl-item:not(.center) .testimonial-text p {
    color: #333 !important;
    font-weight: 500 !important;
}

.testimonial-carousel .owl-item:not(.center) .testimonial-text h5 {
    color: #d32f2f !important;
    font-weight: 600 !important;
}

.testimonial-carousel .owl-item:not(.center) .testimonial-text span {
    color: #666 !important;
}

/* Active testimonial text colors for white background */
.testimonial-carousel .owl-item.center .testimonial-text p {
    color: #333 !important;
    font-weight: 500 !important;
}

.testimonial-carousel .owl-item.center .testimonial-text h5 {
    color: #222 !important;
    font-weight: 600 !important;
}

.testimonial-carousel .owl-item.center .testimonial-text span {
    color: #666 !important;
}

/* Remove any red background from testimonials section */
.testimonial-carousel,
.testimonial-carousel .owl-stage-outer,
.testimonial-carousel .owl-stage,
.testimonial-carousel .owl-item {
    background-color: transparent !important;
    background: none !important;
}

/* Trustpilot widget styling for dark footer */
.trustpilot-widget {
    background-color: #ffffff !important;
    border-radius: 6px;
    padding: 8px;
    margin: 10px 0;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.trustpilot-widget iframe {
    border-radius: 4px;
    background-color: #ffffff !important;
    width: 100% !important;
    height: 24px !important;
    border: none !important;
}

/* Responsive Trustpilot widget */
@media (max-width: 768px) {
    .trustpilot-widget {
        padding: 6px;
        margin: 8px 0;
    }
    
    .trustpilot-widget iframe {
        height: 20px !important;
    }
}

/* Trustpilot fallback link styling */
.trustpilot-widget a {
    color: #00b67a !important;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.3s ease;
    display: inline-block;
    font-size: 14px;
    text-align: center;
    width: 100%;
    padding: 4px 0;
}

.trustpilot-widget a:hover {
    color: #008a5a !important;
    text-decoration: underline;
}

/* Remove red borders from footer links on hover */
.footer a:hover,
.footer a:focus {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Portfolio filter styling - remove arrows and decorations */
#portfolio-flters li {
    position: relative;
    padding: 10px 20px;
    margin: 0 5px;
    background-color: transparent;
    border: 2px solid transparent;
    border-radius: 25px;
    transition: all 0.3s ease;
}

#portfolio-flters li:hover,
#portfolio-flters li.active {
    background-color: #d32f2f !important;
    color: #ffffff !important;
    border-color: #d32f2f !important;
    border-bottom: 2px solid #d32f2f !important;
}

/* Remove any pseudo-elements that might create arrows */
#portfolio-flters li::before,
#portfolio-flters li::after {
    display: none !important;
    content: none !important;
}

/* Ensure clean rectangle styling */
#portfolio-flters li.active {
    box-shadow: none !important;
    text-decoration: none !important;
}

/* Ensure testimonials container has no red background */
.container-xxl:has(.testimonial-carousel) {
    background-color: #ffffff !important;
    background: #ffffff !important;
}

/* Override any potential red backgrounds in testimonial section */
div:has(.testimonial-carousel) {
    background-color: #ffffff !important;
}

/* Remove red from testimonial quote icons */
.testimonial-carousel .btn-square.bg-primary {
    background-color: #6c757d !important;
    border-color: #6c757d !important;
}

.testimonial-carousel .owl-item.center .btn-square.bg-primary {
    background-color: #495057 !important;
    border-color: #495057 !important;
}

/* Flat button styling for header 'Quero Me Promover' button */
.navbar .btn.btn-primary {
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Dropdown Menu Overrides - Remove Green/Red Background */
.dropdown-item:hover,
.dropdown-item:focus {
    background-color: #f8f9fa !important;
    color: #212529 !important;
    text-decoration: none !important;
}

.dropdown-item.active,
.dropdown-item:active {
    background-color: #e9ecef !important;
    color: #212529 !important;
    text-decoration: none !important;
}

/* Language Selector Styling */
.language-selector .btn {
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: white;
    background: transparent;
    padding: 8px 10px;
    font-size: 14px;
    border-radius: 4px;
    transition: all 0.3s ease;
    min-width: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.language-selector .btn:hover {
    background-color: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.5);
}

.language-selector .btn img {
    width: 20px;
    height: 15px;
    object-fit: cover;
}

.language-selector .dropdown-menu {
    min-width: 150px;
    border: none;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.language-selector .dropdown-item {
    padding: 8px 16px;
    font-size: 14px;
    display: flex;
    align-items: center;
}

.language-selector .dropdown-item img {
    margin-right: 8px;
    flex-shrink: 0;
}

/* Mobile language selector */
@media (max-width: 991.98px) {
    .language-selector .dropdown-item {
        color: #212529;
    }
    
    .language-selector .dropdown-item:hover {
        background-color: #f8f9fa;
    }
}

.dropdown-item {
    color: #212529 !important;
    transition: background-color 0.15s ease-in-out !important;
}

/* Ensure dropdown items don't inherit red/green colors */
.dropdown-menu .dropdown-item:hover,
.dropdown-menu .dropdown-item:focus,
.dropdown-menu .dropdown-item.active,
.dropdown-menu .dropdown-item:active {
    background-color: #f8f9fa !important;
    color: #212529 !important;
    border: none !important;
    box-shadow: none !important;
}

/* Override any Bootstrap component active backgrounds for dropdowns */
.navbar .dropdown-menu .dropdown-item:hover,
.navbar .dropdown-menu .dropdown-item:focus {
    background-color: #f8f9fa !important;
    color: #212529 !important;
}

.navbar .dropdown-menu .dropdown-item.active,
.navbar .dropdown-menu .dropdown-item:active {
    background-color: #e9ecef !important;
    color: #212529 !important;
}

/* WhatsApp Floating Button */
.whatsapp-float {
    position: fixed;
    width: 60px;
    height: 60px;
    bottom: 40px;
    right: 40px;
    background-color: #25D366;
    color: #FFFFFF;
    border-radius: 50px;
    text-align: center;
    font-size: 30px;
    box-shadow: 2px 2px 3px #999;
    z-index: 100;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    border: 2px solid #25D366;
}

.whatsapp-float:hover {
    background-color: #1ebe5a;
    color: #FFFFFF;
    text-decoration: none;
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(0,0,0,0.2);
}

.whatsapp-float:hover i {
    color: #FFFFFF;
}

.whatsapp-float i {
    margin: 0;
    line-height: 1;
}

/* Responsive adjustments */
@media screen and (max-width: 767px) {
    .whatsapp-float {
        width: 50px;
        height: 50px;
        bottom: 20px;
        right: 20px;
        font-size: 24px;
    }
}

/* Custom animations and transitions */
@keyframes pulse-red {
    0% { box-shadow: 0 0 0 0 rgba(220, 53, 69, 0.7); }
    70% { box-shadow: 0 0 0 10px rgba(220, 53, 69, 0); }
    100% { box-shadow: 0 0 0 0 rgba(220, 53, 69, 0); }
}

.pulse-red {
    animation: pulse-red 2s infinite !important;
}

/* Mobile Stats Layout - Two Columns */
@media (max-width: 767.98px) {
    .stats-section .row {
        display: flex;
        flex-wrap: wrap;
    }
    
    .stats-section .col-md-6.col-lg-3 {
        flex: 0 0 50% !important;
        max-width: 50% !important;
        padding: 0 10px !important;
        margin-bottom: 30px !important;
    }
    
    .stats-section .d-flex.align-items-center {
        flex-direction: column !important;
        text-align: center !important;
    }
    
    .stats-section .btn-lg-square {
        margin-bottom: 15px !important;
        margin-right: 0 !important;
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        min-height: 40px !important;
        flex-shrink: 0 !important;
    }
    
    .stats-section .btn-lg-square i {
        font-size: 16px !important;
    }
    
    .stats-section h1 {
        font-size: 2rem !important;
        margin-bottom: 5px !important;
    }
    
    .stats-section h5 {
        font-size: 0.9rem !important;
        line-height: 1.3 !important;
        text-align: center !important;
        margin-bottom: 0 !important;
    }
    
    /* Center align description text */
    .stats-section .text-center {
        text-align: center !important;
    }
    
    .stats-section p {
        text-align: center !important;
        margin-bottom: 0 !important;
    }
}

/* Mobile Icon Fixes for Feature Section */
@media (max-width: 767.98px) {
    .feature .btn-lg-square {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        min-height: 40px !important;
        flex-shrink: 0 !important;
    }
    
    .feature .btn-lg-square i {
        font-size: 16px !important;
    }
    
    .feature .d-flex.align-items-center {
        align-items: flex-start !important;
    }
    
    .feature .ms-4 {
        margin-left: 1rem !important;
    }
    
    /* Mobile responsive for consultoria gratis posts - two columns */
     .portfolio-container .portfolio-item {
         flex: 0 0 50% !important;
         max-width: 50% !important;
         padding: 0 10px;
     }
     
     .portfolio-container .portfolio-item .portfolio-img {
         margin-bottom: 15px;
     }
     
     .portfolio-container .portfolio-item h5 {
         font-size: 14px;
         line-height: 1.3;
     }
     
     .portfolio-container .portfolio-item .pt-3 {
         padding-top: 15px !important;
     }
 }

/* Consistent image sizing for portfolio items */
.portfolio-container .portfolio-item .portfolio-img {
    height: 250px;
    overflow: hidden;
}

.portfolio-container .portfolio-item .portfolio-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* Mobile adjustments for image sizing */
@media (max-width: 767.98px) {
    .portfolio-container .portfolio-item .portfolio-img {
        height: 180px;
    }
}