.circle-image {
    border-radius: 50%;
   #width: 200px;
   #height: 200px;
    object-fit: cover;
}

.bg-price-ask {
    --bs-bg-opacity: 1;
    background-color: #01a358 !important;
    color: white !important;
    font-weight: 500 !important;
    letter-spacing: 1px !important;
}

.bg-price-plus {
    --bs-bg-opacity: 1;
    background-color: #8c76de !important;
    color: white !important;
    font-weight: 500  !important;
    letter-spacing: 1px !important;
}

.bg-price-default {
    --bs-bg-opacity: 1;
    background-color: #519dd5 !important;
    color: white !important;
    font-weight: 500  !important;
    letter-spacing: 1px !important;
}
/* По умолчанию мобильный логотип скрыт */
#header .header-logo-mobile {
    display: none;
}

/* Только на очень маленьких экранах (< 420px) */
@media (max-width: 419.98px) {

    /* прячем обычный логотип */
    #header .header-logo-non-sticky {
        display: none !important;
    }

    /* прячем sticky-версию (чтобы не дергалась) */
    #header .header-logo-sticky {
        display: none !important;
    }

    /* показываем мобильный логотип СРАЗУ */
    #header .header-logo-mobile {
        display: inline-block !important;
        opacity: 1 !important;
        visibility: visible !important;
    }
}

/* Аккуратные цены в карточке товара */
.product-price {
    display: flex;
    align-items: baseline;      /* ровняем по линии текста */
    gap: .75rem;                /* расстояние между ценами */
    flex-wrap: nowrap;          /* не переносим на новую строку */
    line-height: 1;             /* чтобы не “разъезжалось” */
}

.product-price .price-current {
    font-weight: 700;
    font-size: 1.75rem;         /* подстрой: 1.5–1.9rem */
    letter-spacing: -0.02em;
    color: #111;                /* можно var(--dark), если есть */
    white-space: nowrap;
}

.product-price .price-old {
    font-weight: 500;
    font-size: 1.1rem;
    color: #888;
    text-decoration: line-through;
    text-decoration-thickness: 2px;
    opacity: .9;
    white-space: nowrap;
}

.product-price { flex-wrap: wrap; }
.product-price .price-current { white-space: nowrap; }
.product-price .price-old { white-space: normal; }

.product h3 {
    margin-bottom: .25rem !important;
}

.product .price {
    margin-top: .75rem !important;
}

.product h3 a {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Подзаголовок сценария */
.scenario-title {
    font-size: 1.1rem;
    font-weight: 500;
    color: #666;
    margin-bottom: 1rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

/* Контейнер before / after */
.before-after-wrapper {
    max-width: 900px;          /* нужная ширина */
    width: 100%;
    margin: 0 auto;            /* по центру */
}

/* Картинки внутри */
.before-after-wrapper img {
    width: 100%;
    height: auto;
    display: block;
}

.header-phone-link{
    text-decoration: none;
    color: inherit;
}

/* Чтобы декоративные SVG/фон не перекрывали кликабельные элементы */
#home .custom-section-svg > svg,
#home .shape-divider,
#home .custom-section-svg-background {
    pointer-events: none;
}

/* Цена на странице товара */
.entry-summary .price {
    display: flex !important;
    align-items: baseline !important;
    gap: .6rem !important;
    flex-wrap: nowrap !important;
    line-height: 1.1 !important;
    margin-top: .75rem !important;
    margin-bottom: 1rem !important;
}

/* Текущая цена (discount_price) */
.entry-summary .price .sale {
    font-weight: 700 !important;
    font-size: 2rem !important;   /* можно 1.75rem если крупновато */
    color: #111 !important;
    letter-spacing: -0.02em !important;
    white-space: nowrap !important;
}

/* Старая цена (price) */
.entry-summary .price .amount {
    font-weight: 500 !important;
    font-size: 1.15rem !important;
    color: #8b8b8b !important;
    text-decoration: line-through !important;
    text-decoration-thickness: 2px !important;
    white-space: nowrap !important;
}

/* Если скидки нет — amount выглядит как “sale” */
.entry-summary .price .amount:only-child {
    font-weight: 700 !important;
    font-size: 2rem !important;
    color: #111 !important;
    text-decoration: none !important;
}

.product-content {
    font-size: 1rem;
    line-height: 1.65;
    color: #444;
}

.product-content h2 {
    font-size: 1.4rem;
    font-weight: 600;
    margin: 2rem 0 1rem;
}

.product-content h3 {
    font-size: 1.2rem;
    font-weight: 600;
    margin: 1.5rem 0 .75rem;
}

.product-content ul {
    padding-left: 1.2rem;
    margin-bottom: 1rem;
}

.product-content li {
    margin-bottom: .4rem;
}

/* Таблицы в описании товара (характеристики) */
.product-content table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #e9ecef;
    border-radius: 10px;
    overflow: hidden;              /* чтобы скругления работали */
    margin: 1rem 0 1.5rem;
    background: #fff;
}

.product-content table td,
.product-content table th {
    padding: .85rem 1rem;
    border-bottom: 1px solid #eef0f2;
    vertical-align: top;
    font-size: 1rem;
    line-height: 1.5;
}

.product-content table tr:last-child td,
.product-content table tr:last-child th {
    border-bottom: 0;
}

/* “Левый столбец” как подписи */
.product-content table td:first-child,
.product-content table th:first-child {
    width: 38%;
    color: #666;
    font-weight: 500;
}

/* “Правый столбец” значения */
.product-content table td:last-child,
.product-content table th:last-child {
    color: #111;
    font-weight: 500;
}

/* Зебра-полосы (очень мягко) */
.product-content table tr:nth-child(even) td,
.product-content table tr:nth-child(even) th {
    background: #fafafa;
}

.product-content ul {
    padding-left: 1.25rem;
    margin: 0 0 1.25rem;
}

.product-content li {
    margin-bottom: .5rem;
    color: #444;
}

.product-content h2,
.product-content h3 {
    color: #111;
    letter-spacing: -0.02em;
}

/* Product tabs — mobile: 1 row scroll + stable active underline */
@media (max-width: 575.98px) {

    /* one row + scroll */
    #description .nav-tabs {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;

        gap: .25rem;
        padding-bottom: .75rem;      /* место под underline */
        border-bottom: 1px solid #eee;

        position: relative;
    }

    #description .nav-tabs::-webkit-scrollbar { display: none; }

    /* tab item */
    #description .nav-tabs .nav-item {
        flex: 0 0 auto;
        position: relative;          /* underline будем рисовать тут */
    }

    /* tab link */
    #description .nav-tabs .nav-link {
        border: 0 !important;
        background: transparent !important;
        white-space: nowrap;

        padding: .6rem .9rem;
        font-size: .85rem;
        letter-spacing: .02em;

        position: relative;
    }

    /* отключаем темы/портовские underline, которые могут мешать */
  //  #description .nav-tabs .nav-link::after,
    #description .nav-tabs .nav-link::before {
        content: none !important;
    }

    /* активный текст */
    #description .nav-tabs .nav-item.active > .nav-link {
        font-weight: 700;
        color: #111;
    }

    /* underline сразу при загрузке (active на <a>) */
    #description .nav-tabs .nav-link.active,
    #description .nav-tabs .nav-link[aria-selected="true"] {
        box-shadow: inset 0 -3px 0 #222;  /* линия внутри элемента */
        font-weight: 700;
        color: #111;
    }
}
/* ===== Footer contact icons (force recolor inline SVG from data-icon) ===== */
#footer .footer-contact svg,
#footer .footer-contact svg * {
    fill: #529BD6 !important;
    stroke: #529BD6 !important;
    transition: fill .2s ease, stroke .2s ease, opacity .2s ease;
}

/* hover on whole block */
#footer .footer-contact:hover svg,
#footer .footer-contact:hover svg * {
    fill: #6E55E0 !important;
    stroke: #6E55E0 !important;
}

/* links: more obvious hover */
#footer .footer-contact a {
    opacity: .75;                 /* вместо opacity-5 */
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: color .2s ease, opacity .2s ease, border-color .2s ease;
}

#footer .footer-contact:hover a,
#footer .footer-contact a:hover {
    opacity: 1;
    color: #6E55E0 !important;
    border-bottom-color: rgba(110, 85, 224, .65);
}

/* ===== Fix reCAPTCHA in animated footer (prevent transform context) ===== */
#footer #contactForm,
#footer #contactForm * {
    transform: none !important;
    filter: none !important;
}

/* Контакты футера */
.footer-contacts {
    margin-top: 2rem;
}

.footer-contact {
    transition: transform .25s ease;
}

.footer-contact:hover {
    transform: translateY(-4px);
}

/* Иконки */
.footer-icon {
    width: 52px;
    height: 52px;
    margin-bottom: .75rem;
    filter: brightness(0) saturate(100%) invert(63%) sepia(38%) saturate(746%)
    hue-rotate(187deg) brightness(92%) contrast(90%);
    transition: filter .25s ease, transform .25s ease;
}

/* hover-цвет */
.footer-contact:hover .footer-icon {
    filter: brightness(0) saturate(100%) invert(39%) sepia(89%) saturate(1200%)
    hue-rotate(231deg) brightness(95%) contrast(95%);
    transform: scale(1.05);
}

.footer-title {
    color: #fff;
    font-weight: 600;
    margin-bottom: .25rem;
}

.footer-link {
    color: rgba(255,255,255,.55);
    text-decoration: none;
    transition: color .2s ease;
}

.footer-link:hover {
    color: #6E55E0;
    text-decoration: underline;
}
/* Карточка формы в футере */
.footer-form-card{
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 14px;
    padding: 24px;
    backdrop-filter: blur(6px);
}

/* Поля — не белый кирпич, а мягкие */
.footer-form-card .form-control{
    background: rgba(255,255,255,.10);
    border: 1px solid rgba(255,255,255,.14);
    color: #fff;
    border-radius: 10px;
    height: 46px;
}

.footer-form-card textarea.form-control{
    height: auto;
    min-height: 140px;
}

.footer-form-card .form-control::placeholder{
    color: rgba(255,255,255,.55);
}

.footer-form-card .form-control:focus{
    background: rgba(255,255,255,.12);
    border-color: rgba(110,85,224,.7);
    box-shadow: 0 0 0 .2rem rgba(110,85,224,.18);
    color: #fff;
}

/* Select стрелка/цвет */
.footer-form-card select.form-control{
    color: rgba(255,255,255,.9);
}

/* reCAPTCHA — центр и аккуратный отступ */
.footer-form-card .g-recaptcha{
    transform-origin: center;
}

/* Кнопка — чуть больше воздуха */
.footer-form-card #submitButton{
    margin-top: .25rem;
}
/* Футер: чинит “обрезанный” текст в select */
.footer-form-card select.form-control{
    height: 46px;
    line-height: 46px;      /* ключевой фикс */
    padding-top: 0;
    padding-bottom: 0;
}

/* если у темы стоит странный line-height на .form-control — фиксируем */
.footer-form-card .form-control{
    line-height: 1.2;
}

/* iOS/Safari иногда режет select — сбрасываем нативный стиль */
.footer-form-card select.form-control{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* ===== Footer Integrators ===== */
.footer-integrators {
    text-align: center;
}

.footer-integrators-title {
    font-size: 0.95rem;
    font-weight: 500;
    color: rgba(255,255,255,.85);
    margin-bottom: 1rem;
    letter-spacing: .02em;
}

.footer-integrators-logos {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 28px;
    flex-wrap: wrap;
}

.footer-integrators-logos img {
    height: 26px;
    opacity: .85;
    transition: opacity .2s ease, transform .2s ease;
}

/* лёгкий hover — аккуратно */
.footer-integrators-logos img:hover {
    opacity: 1;
    transform: translateY(-2px);
}
.footer-integrators-logos img {
    height: 22px;        /* было ~26 */
    opacity: .7;         /* было .85 */
}
.footer-integrators {
    margin-top: 4.5rem;
}
/* Название товара — максимум 2 строки */
.product h3 a {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Фиксируем высоту зоны с названием + категорией */
.product .product-title-wrap {
    min-height: 70px; /* под 2 строки + категорию */
}

/* ===== BLOG: контент статьи адаптивный на мобилке ===== */

/* главное правило: ничего в контенте не может быть шире контейнера */
.blog-posts .post-content,
.blog-posts .post-content * {
    max-width: 100%;
}

/* картинки всегда ужимаются под экран */
.blog-posts .post-content img {
    max-width: 100% !important;
    height: auto !important;
    display: block;
}

/* если редактор вставляет figure / picture */
.blog-posts .post-content figure,
.blog-posts .post-content picture {
    max-width: 100% !important;
}

/* часто ломают inline-стили ширины у figure */
.blog-posts .post-content figure[style] {
    width: auto !important;
}

/* чтобы большие блоки не создавали горизонтальный скролл */
.blog-posts .post-content {
    overflow-wrap: anywhere;
}

/* видео/iframe тоже делаем адаптивными */
.blog-posts .post-content iframe,
.blog-posts .post-content video {
    max-width: 100% !important;
}

/* если вдруг в контенте таблицы */
.blog-posts .post-content table {
    width: 100% !important;
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
