/* ========================================
   ADC Santo da Serra - Custom Color Palette
   ========================================

   Primary Color: #308c2b (Green)
   All grays replaced with green tints/shades

   ======================================== */

/* Primary Brand Color - Green with tints and shades */
:root {
    --brand-green: #308c2b;
    --brand-green-dark: #266e22;      /* ~80% darkness */
    --brand-green-darker: #1a4a17;    /* ~60% darkness */
    --brand-green-darkest: #0d250c;   /* ~20% darkness (replaces #333) */
    --brand-green-light: #3aa534;     /* ~120% lightness */
    --brand-green-lighter: #5cb857;   /* ~150% lightness */
    --brand-green-lightest: #d4edd3;  /* ~90% lightness (replaces #e0e0e0) */
    --brand-green-ultra-light: #f0f8f0; /* ~97% lightness (replaces #fafafa) */
    --brand-black: #000;
}

/* Focus States */
a:focus.focus-visible,
button:focus.focus-visible,
div:focus.focus-visible {
    -moz-outline: 2px dotted var(--brand-green) !important;
    outline: 2px dotted var(--brand-green) !important;
}

/* Buttons - Primary Green */
.btn-mod:hover,
.btn-mod:focus {
    background: var(--brand-green);
    border-color: var(--brand-green);
    color: #fff;
}

.btn-mod.btn-border:hover,
.btn-mod.btn-border:focus {
    background: var(--brand-green);
    border-color: var(--brand-green);
}

.btn-mod.btn-color,
.btn-mod.btn-color:hover,
.btn-mod.btn-color:focus {
    background: var(--brand-green);
    border-color: var(--brand-green);
    color: #fff;
}

/* Background Colors */
.bg-color {
    background-color: var(--brand-green) !important;
}

.bg-color-alfa-90:before,
.bg-color-alfa-70:before,
.bg-color-alfa-50:before,
.bg-color-alfa-30:before {
    background: var(--brand-green);
}

/* Links and Hover States */
.section-more:after,
.text-link:after,
.works-filter a:after {
    background-color: var(--brand-black);
}

.light-content .section-more:after,
.light-content .text-link:after {
    background-color: #fff;
}

/* Navigation Active State */
.inner-nav ul li a.active {
    color: var(--brand-green);
}

/* Portfolio Filter */
.works-filter a.active,
.works-filter a:hover {
    color: var(--brand-green);
}

/* Labels and Badges */
.label-new {
    background: var(--brand-green);
    color: #fff;
}

/* Progress Bars */
.tpl-progress .progress-bar,
.tpl-progress-alt .progress-bar {
    background-color: var(--brand-green);
}

/* Owl Carousel Dots */
.owl-page.active span {
    background: var(--brand-green);
    border: 1px solid var(--brand-green);
}

.dark-content .owl-page.active span {
    background: var(--brand-green);
    border: 1px solid var(--brand-green);
}

/* Accordion and Toggle Borders */
.accordion,
.accordion dt a,
.toggle,
.toggle dt a {
    border-color: var(--brand-green-lightest);
}

.accordion dt a:hover,
.toggle dt a:hover {
    color: var(--brand-green);
}

/* Footer Social Links Hover */
.footer-social-links a:hover {
    color: var(--brand-green) !important;
}

.footer-social-links a:hover:before {
    background: var(--brand-green);
}

/* Blog and Post Elements */
.blog-item-more:hover,
.post-prev-title a:hover {
    color: var(--brand-green);
}

/* Contact Info Icons */
.ci-icon {
    color: var(--brand-green) !important;
}

.ci-icon:before {
    background: var(--brand-green);
}

/* Pricing Tables */
.pricing-item-inner:hover,
.main .pricing-item-inner {
    border-color: var(--brand-green);
}

/* Ensure white backgrounds */
body {
    background-color: #fff;
}

.page-section {
    background-color: #fff;
}

/* Override all gray backgrounds with green tints */
.bg-gray-lighter {
    background-color: var(--brand-green-ultra-light) !important;
}

.bg-gray {
    background-color: var(--brand-green-ultra-light) !important;
}

.bg-gray-light {
    background-color: var(--brand-green-ultra-light) !important;
}

/* Split background - replace gray with green tint */
.split-background {
    background: var(--brand-green-ultra-light) !important;
}

.light-content .split-background {
    background: var(--brand-green-darkest) !important;
}

/* Override common gray colors with green equivalents */
.text-gray,
.color-gray {
    color: var(--brand-green-darkest) !important;
}

.border-gray {
    border-color: var(--brand-green-lightest) !important;
}

/* Text colors - replace grays with green shades */
.text-muted,
.muted {
    color: var(--brand-green-darker) !important;
}

/* Borders - replace gray borders with green tints */
.border,
hr,
.divider {
    border-color: var(--brand-green-lightest) !important;
}

/* Form elements - replace gray with green tints */
input:not([type="submit"]):not([type="button"]),
textarea,
select {
    border-color: var(--brand-green-lightest);
}

input:focus:not([type="submit"]):not([type="button"]),
textarea:focus,
select:focus {
    border-color: var(--brand-green);
}

/* Placeholder text */
::placeholder {
    color: var(--brand-green-lighter);
}

/* Disabled states */
.disabled,
[disabled] {
    color: var(--brand-green-lighter) !important;
    background-color: var(--brand-green-ultra-light) !important;
}

/* Typewriter text color */
.typewrite,
.typewrite .wrap {
    color: var(--brand-green) !important;
}

/* Adjust lead-alt text size for better vertical alignment */
.lead-alt {
    font-size: 2.5rem !important;
    line-height: 1.3 !important;
}

/* Navbar logo adjustments */
.nav-logo-wrap .logo {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
}

.nav-logo-wrap .logo img {
    max-height: 45px !important;
    width: auto !important;
}

.nav-logo-wrap .logo .logo-text {
    font-size: 1.1rem !important;
    font-weight: 600 !important;
    color: #000 !important;
    white-space: nowrap !important;
}

.main-nav {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.main-nav.small-height {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

/* Navbar scroll state - green background with black bottom border */
.main-nav.small-height {
    background-color: var(--brand-green) !important;
    border-bottom: 2px solid #000 !important;
}

/* Make logo smaller when scrolled */
.main-nav.small-height .logo img {
    max-height: 35px !important;
}

/* Make logo text white when navbar is scrolled */
.main-nav.small-height .logo-text {
    color: #fff !important;
}

/* Make menu items white when navbar is scrolled */
.main-nav.small-height .inner-nav > ul > li > a {
    color: #fff !important;
}

/* Make dropdown icons white when navbar is scrolled */
.main-nav.small-height .mn-has-sub-icon,
.main-nav.small-height .desktop-nav > li > a > i.mn-has-sub-icon,
.main-nav.small-height .inner-nav ul li a:hover .mn-has-sub-icon,
.main-nav.small-height .inner-nav ul li a.active .mn-has-sub-icon {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="9px" height="5px"><path fill-rule="evenodd" fill="rgb(255, 255, 255)" d="M8.886,0.631 L8.336,0.117 C8.263,0.049 8.178,0.015 8.083,0.015 C7.988,0.015 7.903,0.049 7.830,0.117 L4.506,3.155 L1.183,0.117 C1.109,0.049 1.025,0.015 0.930,0.015 C0.834,0.015 0.750,0.049 0.677,0.117 L0.127,0.631 C0.053,0.699 0.017,0.778 0.017,0.867 C0.017,0.956 0.053,1.035 0.127,1.103 L4.253,4.892 C4.327,4.960 4.411,4.994 4.506,4.994 C4.602,4.994 4.686,4.960 4.759,4.892 L8.886,1.103 C8.959,1.035 8.996,0.956 8.996,0.867 C8.996,0.778 8.959,0.699 8.886,0.631 L8.886,0.631 Z"/></svg>') !important;
}

/* Contact icons - white color */
.ci-icon i {
    color: #fff !important;
}

/* Counter background - light green */
.count-bg {
    background-color: var(--brand-green-ultra-light) !important;
}

/* Mobile burger menu - white color */
.mobile-nav i {
    color: #fff !important;
}

/* ========================================
   Testimonial Section - Increased Spacing
   ======================================== */

/* Increase space between title and quote */
.text-slider .section-title {
    margin-bottom: 3em !important;
}

/* Increase space between quote and author name */
.text-slider blockquote {
    margin-bottom: 4em !important;
}

.text-slider blockquote p {
    margin-bottom: 2em !important;
}

/* Increase overall text-slider padding */
.text-slider {
    padding-bottom: 100px !important;
}

/* Responsive adjustments for mobile */
@media only screen and (max-width: 768px) {
    .text-slider .section-title {
        margin-bottom: 2em !important;
    }

    .text-slider blockquote {
        margin-bottom: 3em !important;
    }

    .text-slider blockquote p {
        margin-bottom: 1.5em !important;
    }

    .text-slider {
        padding-bottom: 80px !important;
    }
}

