/* Header e navegação */
body.wl-active.wl-home,
body.wl-home {
    font-family: var(--wl-font-family) !important;
}

.wl-home .wl-top-nav {
    background-color: var(--wl-header-top-bg) !important;
}

.wl-home .nav__cart-btn,
.wl-home .nav__quick-actions .dropdown-toggle::after {
    color: var(--wl-primary) !important;
}

.wl-home .nav__quick-actions .dropdown-menu a,
.wl-home .dropdown-item,
.wl-home .nav__login-dropdown .dropdown-item,
.wl-home .nav__menu a {
    color: #111827 !important;
}

.wl-home .nav__cart-btn:hover,
.wl-home .nav__cart-btn:focus {
    background: var(--wl-primary-soft) !important;
    border-color: var(--wl-primary-border) !important;
}

@media screen and (min-width: 992px) {
    .wl-home .wl-top-nav > .container > ul > li:last-of-type {
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
    }

    .wl-home .wl-top-nav .nav__quick-actions {
        width: auto !important;
        justify-content: flex-end !important;
    }
}

/* CTA e botões */
.wl-home .btn-sanos,
.wl-home .btn-rosa,
.wl-home .btn-checkout-drawer,
.wl-home .cart-drawer__footer .btn-checkout-drawer,
.wl-home .btn-servico-add,
.wl-home .servico-load-more,
.wl-home .cart-item__action,
.wl-home .ml2025-btn-primary,
.wl-home #ml2025-btn-login,
.wl-home #ml2025-btn-enviar-link {
    background: var(--wl-primary) !important;
    border-color: var(--wl-primary) !important;
    color: var(--wl-primary-contrast) !important;
    border-radius: var(--wl-button-radius) !important;
}

.wl-home .btn-sanos:hover,
.wl-home .btn-rosa:hover,
.wl-home .btn-checkout-drawer:hover,
.wl-home .btn-servico-add:hover,
.wl-home .servico-load-more:hover,
.wl-home .cart-item__action:hover,
.wl-home #ml2025-btn-login:hover,
.wl-home #ml2025-btn-enviar-link:hover {
    background: var(--wl-primary-hover) !important;
    border-color: var(--wl-primary-hover) !important;
    color: var(--wl-primary-contrast) !important;
}

/* Campo de busca, foco e estados de controle */
.wl-home .location-modal__search:focus-within,
.wl-home .form-control:focus {
    border-color: var(--wl-primary-border) !important;
    box-shadow: 0 0 0 .2rem var(--wl-primary-ring) !important;
}

/* Modal de login */
.wl-home .wl-login-link,
.wl-home #ml2025-link-esqueci,
.wl-home #ml2025-link-voltar,
.wl-home p a.wl-login-link,
.wl-home .wl-home-link,
.wl-home .wl-login-link:visited,
.wl-home .wl-login-link:hover {
    color: var(--wl-primary) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

/* Lista de laboratórios e cards */
.wl-home .labs-loc-form button,
.wl-home .lab-card.active,
.wl-home .btn-servico-add:hover,
.wl-home .btn-revelar:hover,
.wl-home .btn-servico-add,
.wl-home .guia-cidade-link--sanos:hover {
    border-color: var(--wl-primary) !important;
    background: var(--wl-primary) !important;
    color: var(--wl-primary-contrast) !important;
}

.wl-home .lab-card:hover,
.wl-home .lab-card.active,
.wl-home .servico-card {
    border-left-color: var(--wl-primary) !important;
}

.wl-home .badge-sanos,
.wl-home .unit-tile__sanos,
.wl-home .cidade-card__sanos {
    background: var(--wl-badge-sanos-bg) !important;
    border-color: var(--wl-badge-sanos-border-color) !important;
    color: var(--wl-badge-sanos-text-color) !important;
}

.wl-home .lab-card__link,
.wl-home .unit-tile__link,
.wl-home .cidade-card__link,
.wl-home .estado-breadcrumb a,
.wl-home .rede-breadcrumb a:hover {
    color: var(--wl-primary) !important;
}

.wl-home .unit-tile:hover,
.wl-home .cidade-card:hover {
    border-color: var(--wl-primary) !important;
    border-left-color: var(--wl-primary) !important;
    box-shadow: 0 6px 20px var(--wl-primary-shadow) !important;
}

.wl-home .lab-card:hover {
    border-color: var(--wl-primary) !important;
    box-shadow: 0 6px 20px var(--wl-primary-shadow) !important;
}

.wl-home .servico-card:hover {
    box-shadow: 0 8px 24px var(--wl-primary-shadow) !important;
    transform: translateY(-2px) !important;
}

.wl-home .ck-header__back:hover,
.wl-home .ck-sum-item__tipo,
.wl-home .ck-summary__total-val,
.wl-home .checkout-esqueci-link,
.wl-home .checkout-recuperar-voltar,
.wl-home #cart-empty-msg a {
    color: var(--wl-primary) !important;
}

.wl-home .ck-section__step,
.wl-home .btn-finalizar:not(:disabled),
.wl-home .btn-auth-login:not(:disabled),
.wl-home .btn-salvar-pacientes:not(:disabled) {
    background: var(--wl-primary) !important;
    color: var(--wl-primary-contrast) !important;
}

.wl-home .btn-finalizar:not(:disabled):hover,
.wl-home .btn-auth-login:not(:disabled):hover,
.wl-home .btn-salvar-pacientes:not(:disabled):hover {
    background: var(--wl-primary-hover) !important;
    color: var(--wl-primary-contrast) !important;
}

.wl-home .para-quem-opt__dot::after,
.wl-home .pag-opt__dot::after {
    background: var(--wl-primary) !important;
}

.wl-home .para-quem-opt.selected,
.wl-home .pag-opt.selected {
    border-color: var(--wl-primary) !important;
    background: var(--wl-primary-soft) !important;
}

.wl-home .para-quem-opt.selected .para-quem-opt__dot,
.wl-home .pag-opt.selected .pag-opt__dot {
    border-color: var(--wl-primary) !important;
}

.wl-home .btn-add-pac:hover {
    border-color: var(--wl-primary) !important;
    color: var(--wl-primary) !important;
}

.wl-home .form-input:focus,
.wl-home .ck-sum-item__pac-select:focus {
    border-color: var(--wl-primary-border) !important;
    box-shadow: 0 0 0 .2rem var(--wl-primary-ring) !important;
}

.wl-home .paciente-existente-card::before,
.wl-home .checkout-recuperar-box {
    background: var(--wl-primary-soft) !important;
    border-color: var(--wl-primary-border) !important;
}

.wl-home .paciente-existente-card::before {
    color: var(--wl-primary-hover) !important;
}

/* Seção home / chamada final */
.wl-home .section--chamada {
    background: var(--wl-primary) !important;
}

.wl-home .section--chamada .container h2,
.wl-home .section--chamada .container p {
    color: var(--wl-primary-contrast) !important;
}

/* Detalhe do laboratório (home inicial abre por localidade) */
.wl-home .det-page {
    padding-top: 24px !important;
}

.wl-home .det-breadcrumb a,
.wl-home .det-breadcrumb a:visited,
.wl-home .det-back-link {
    color: var(--wl-primary) !important;
}

.wl-home .det-servicos,
.wl-home .det-card,
.wl-home .servico-card {
    border-color: var(--wl-primary-subtle) !important;
}

.wl-home .det-servicos {
    background: var(--wl-detail-services-bg) !important;
    border-radius: var(--wl-card-radius) !important;
}

.wl-home .det-servicos__search-wrap {
    border-color: var(--wl-detail-services-search-border-color) !important;
    color: var(--wl-detail-services-search-text-color) !important;
    box-shadow: 0 10px 28px var(--wl-detail-services-search-shadow-color) !important;
}

.wl-home .det-servicos__search-wrap:focus-within {
    border-color: var(--wl-detail-services-search-text-color) !important;
    box-shadow:
        0 0 0 4px var(--wl-detail-services-search-focus-shadow-color),
        0 12px 30px var(--wl-detail-services-search-focus-shadow-color) !important;
}

.wl-home .servico-card__preco {
    color: var(--wl-service-price-text-color) !important;
}

.wl-home .btn-saiba-mais {
    color: var(--wl-btn-saiba-mais-text-color) !important;
    font-family: var(--wl-font-family) !important;
}

.wl-home .btn-saiba-mais:hover,
.wl-home .btn-saiba-mais:focus {
    background: var(--wl-btn-saiba-mais-hover-bg) !important;
    color: var(--wl-btn-saiba-mais-hover-text-color) !important;
}

.wl-home .cart-item__rm:hover {
    color: var(--wl-cart-remove-hover-text-color) !important;
}

.wl-home .paciente-card__rm:hover {
    color: var(--wl-cart-remove-hover-text-color) !important;
}

.wl-home .item-drawer__eyebrow {
    color: var(--wl-primary) !important;
}

.wl-home .det-tab[aria-pressed="true"],
.wl-home .det-tab:hover:not([aria-pressed="true"]) {
    border-color: var(--wl-primary) !important;
    background: var(--wl-primary) !important;
    color: var(--wl-primary-contrast) !important;
}

.wl-home .det-servicos__header,
.wl-home .det-servicos__subtitle,
.wl-home .servico-card__nome,
.wl-home .det-card h2,
.wl-home .unit-card__name,
.wl-home .unit-card__arrow {
    color: #111827 !important;
}

.wl-home .unit-card {
    border-bottom-color: var(--wl-primary-subtle) !important;
}

.wl-home .btn-revelar {
    border-color: var(--wl-primary) !important;
    color: var(--wl-primary) !important;
}

.wl-home .btn-revelar:hover {
    background: var(--wl-primary) !important;
    color: var(--wl-primary-contrast) !important;
}

.wl-home .wl-footer {
    background: var(--wl-footer-secondary-bg) !important;
    padding-top: 0 !important;
}

.wl-home .wl-footer__primary {
    background: var(--wl-footer-primary-bg) !important;
    color: var(--wl-footer-primary-text-color) !important;
}

.wl-home .wl-footer__primary-inner,
.wl-home .wl-footer__secondary-inner {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 24px !important;
}

.wl-home .wl-footer__primary-inner {
    min-height: 112px !important;
    padding-top: 24px !important;
    padding-bottom: 24px !important;
}

.wl-home .wl-footer__secondary {
    background: var(--wl-footer-secondary-bg) !important;
    border-top: 1px solid var(--wl-footer-divider-color) !important;
    color: var(--wl-footer-secondary-text-color) !important;
}

.wl-home .wl-footer__secondary-inner {
    min-height: 58px !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
}

.wl-home .wl-footer__brand,
.wl-home .wl-footer__sanos-link {
    display: inline-flex !important;
    align-items: center !important;
}

.wl-home .wl-footer__brand img {
    max-height: 52px !important;
    max-width: 220px !important;
    object-fit: contain !important;
}

.wl-home .wl-footer__sanos-link img {
    max-height: 30px !important;
    max-width: 118px !important;
    object-fit: contain !important;
    filter: none !important;
}

.wl-home .wl-footer__links {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 16px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

.wl-home .wl-footer__links a,
.wl-home .wl-footer__links a:visited {
    color: var(--wl-footer-primary-link-color) !important;
    text-decoration: none !important;
}

.wl-home .wl-footer__links a:hover,
.wl-home .wl-footer__links a:focus {
    color: var(--wl-footer-primary-link-hover-color) !important;
}

.wl-home .wl-footer__powered-text {
    color: var(--wl-footer-secondary-text-color) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
}

@media (max-width: 767.98px) {
    .wl-home .wl-footer__primary-inner,
    .wl-home .wl-footer__secondary-inner {
        flex-direction: column !important;
        justify-content: center !important;
        text-align: center !important;
    }

    .wl-home .wl-footer__primary-inner {
        min-height: 138px !important;
    }

    .wl-home .wl-footer__links {
        gap: 12px !important;
    }
}
