/* SiteDoctor accessibility and rendering refinements — 2026-09-09 */
.popup__consent {
    margin: 10px 0 0;
    color: #384152;
    font-size: 12px;
    line-height: 1.45;
    text-align: center;
}

.popup__consent a {
    color: #0b5cab;
    text-decoration: underline;
    text-underline-offset: 2px;
}

button.popup__close {
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    cursor: pointer;
}

img {
    max-width: 100%;
    height: auto;
}

:root {
    --color-accent: #a84400;
    --color-accent-hover: #843600;
    --color-gray-400: #52606d;
    --color-gray-500: #52606d;
    --color-gray-600: #52606d;
}

main > section:not(.hero),
main > .article-section {
    content-visibility: auto;
    contain-intrinsic-size: auto 800px;
}

/* WCAG AA contrast fixes that preserve the original orange/green/gray palette. */
.header__brand span,
.article__title span {
    color: #b45309;
}

.header__status {
    color: #08783e;
}

.hero__tag,
.article__badge {
    color: #98430a;
}

.article__body,
.article__body p,
.article__body strong {
    color: #52606d;
}

.health__card--amateur .health__card-title {
    color: #39495a;
}

.brands-payment__brand {
    color: #52606d;
}

.brands-payment__brands-list {
    opacity: 1;
}

.health__promo-title span,
.promo__card--dark .promo__card-discount,
.steps__sidebar-title span,
.footer__brand span {
    color: #ffb15c;
}

.footer__tagline,
.footer__requisites p,
.footer__nav a,
.footer__hotline-title,
.footer__copyright,
.footer__bottom-link {
    color: #aebbbc;
}

.footer__call-btn {
    background-color: #a84400;
}

/* Continuous decorative effects are disproportionately expensive on small screens. */
@media (max-width: 767px) {
    .animate-wobble,
    .animate-float,
    .animate-blink-text,
    .urgent-blink,
    .btn-call-pulse,
    .promo-border,
    .float-phone,
    .header__info--status,
    .hero__img,
    .health__promo-badge,
    .promo__badge-dot,
    .promo__card-wrap,
    .calculator__result-icon,
    .calculator__call-box,
    .services__banner-border,
    .equipment__arrow-decor {
        animation: none !important;
    }

    .hero__img,
    .hero__blob,
    .hero__visual-blob {
        filter: none !important;
    }

    .reveal,
    .reveal--active {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}
