/* CSS para .btn-fale-conosco */
.btn-fale-conosco {
    --bg: #d4b265 ;
    --bg-hover: #7b6238;
    --color: #ffffff;
    --radius: 0.5rem;

    -webkit-tap-highlight-color: transparent;
    box-shadow: 0 6px 14px rgba(0, 123, 255, 0.16);
    transition: transform 120ms ease, box-shadow 120ms ease, background-color 120ms ease;
}

/* Hover / focus / active */
.btn-fale-conosco:hover {
    transform: translateY(-2px);
    background-color: var(--bg-hover) !important;
    /* box-shadow: 0 10px 22px rgba(0, 123, 255, 0.18); */
}

.btn-fale-conosco:active {
    transform: translateY(0);
    box-shadow: 0 6px 12px rgba(0, 123, 255, 0.12);
}

.btn-fale-conosco:focus-visible {
    outline: 3px solid rgba(0, 123, 255, 0.22);
    outline-offset: 3px;
    border-radius: calc(var(--radius) + 1px);
}

/* Disabled state */
.btn-fale-conosco[disabled],
.btn-fale-conosco.disabled {
    opacity: 0.6;
    cursor: not-allowed;
    pointer-events: none;
    transform: none;
    box-shadow: none;
}

/* Icon support (ex.: svg, font icon) */
.btn-fale-conosco .icon,
.btn-fale-conosco svg {
    width: 1.1em;
    height: 1.1em;
    display: inline-block;
    vertical-align: middle;
    flex-shrink: 0;
}

/* Variantes de tamanho */
.btn-fale-conosco--sm {
    padding: 0.35rem 0.6rem;
    font-size: 0.875rem;
    border-radius: 0.375rem;
}

.btn-fale-conosco--lg {
    padding: 0.8rem 1.1rem;
    font-size: 1.125rem;
    border-radius: 0.6rem;
}

/* Variante outline */
.btn-fale-conosco--outline {
    background: transparent;
    color: var(--bg);
    border: 1px solid var(--bg);
    box-shadow: none;
}

.btn-fale-conosco--outline:hover {
    background-color: rgba(0, 123, 255, 0.06);
    transform: translateY(-1px);
}

/* Acessibilidade: alto contraste */
@media (prefers-contrast: more) {
    .btn-fale-conosco {
        box-shadow: none;
        border: 2px solid #003f7f;
    }
}

/* Reduzir animações para usuários que preferem menos movimento */
@media (prefers-reduced-motion: reduce) {
    .btn-fale-conosco {
        transition: none;
        transform: none;
    }
}

.servicosSwiper {
    padding-bottom: 50px;
}

.card-servico {
    background: #ffffff;
    border-radius: 10px;
    box-shadow: rgba(0, 0, 0, 0.15) 0px 4px 20px;
    padding: 20px;
    text-align: center;
}

.card-servico img {
    width: 100%;
    max-height: 250px;
    object-fit: cover;
    border-radius: 8px;
}

.slide-content h3 {
    font-size: 20px;
    font-weight: bold;
    margin-top: 15px;
}

.slide-content ul {
    text-align: left;
    padding-left: 20px;
}
