/* Правки поверх темы оригинала (theme.css генерируется build_css.py — его не правим). */

[hidden] { display: none !important; }

/* width/height у <img> нужны только для пропорций до загрузки; размеры задаёт CSS темы */
:where(img[width][height]) { width: auto; height: auto; }

/* Логотип архитектурного раздела — PNG вместо SVG (как на поддомене оригинала) */
.site-architectural header .logo { height: 30px; width: auto; min-width: 0; max-width: none; object-fit: contain; filter: invert(1); }

/* Блок цены в карточке товара (на оригинале его нет) — в стиле заголовков .downloads */
.imageInfo .basic .price { margin: -1.5rem 0 2.5rem; opacity: 0; }
.imageInfo .basic .price .priceLabel { font-size: 12px; text-transform: uppercase; letter-spacing: .5px; color: var(--gray); margin-bottom: .25rem; }
.imageInfo .basic .price .priceValue { font-size: 24px; font-weight: 500; line-height: 120%; }
.imageInfo .basic .price .priceOnRequest { font-size: 16px; font-weight: 300; text-transform: uppercase; }
@media (max-width: 800px) { .imageInfo .basic .price { margin: .5rem 0 1rem; } }

/* Пусто в каталоге/поиске, заглушки и 404 */
.emptyResults { padding: 2rem 1rem 8rem; font-size: 16px; max-width: none; }
.tpl-legal main .notFound { max-width: 50rem; margin: auto; display: flex; flex-direction: column; align-items: flex-start; gap: 1.5rem; }
.tpl-legal main .notFound h1 { font-size: clamp(28px, 5vw, 50px); }

/* Базовые стили плагина Search & Filter (на оригинале шли отдельным файлом): списки без маркеров */
.searchandfilter p { margin-top: 1em; display: block; }
.searchandfilter ul { display: block; margin-top: 0; margin-bottom: 0; }
.searchandfilter ul li { list-style: none; display: block; padding: 10px 0; margin: 0; }
.searchandfilter ul li li { padding: 5px 0; }
.searchandfilter ul > li > ul:not(.children) { margin-left: 0; }
.searchandfilter label { display: inline-block; margin: 0; padding: 0; }

/* Главный слайд на телефонах: своя картинка (picture, ≤700px). Её текст занимает ~51% ширины,
   поэтому не даём cover обрезать его по краям экрана — высота не больше 203vw (поля ~30px),
   картинка остаётся по центру слайда, полосы сверху/снизу — цветом её фона. */
.homeSlider .slide-portada picture { display: contents; } /* img остаётся прямым участником раскладки слайда */
@media (max-width: 700px) {
    .tpl-home .homeSlider .splide__track .splide__list .slide-portada { background-color: #f1f0ec; }
    .tpl-home .homeSlider .splide__track .splide__list .slide-portada picture img { height: min(100%, 203vw); }
}

/* Форма обратной связи: ошибки полей и ответ после отправки (стили плагина CF7 на оригинале шли отдельным файлом) */
.contact .wpcf7 form .wpcf7-not-valid { border-color: #dc3232; }
.contact .wpcf7 form .wpcf7-not-valid-tip { display: block; margin-top: .35rem; font-size: 12px; color: #dc3232; }
.contact .wpcf7 form .wpcf7-response-output { margin-top: 1rem; font-size: 14px; }
.contact .wpcf7 form .wpcf7-response-output:empty { display: none; }
.contact .wpcf7 form .wpcf7-response-output.is-ok,
.contact .wpcf7 form .wpcf7-response-output.is-error { padding: .75rem 1rem; border: 1px solid var(--black); }
.contact .wpcf7 form .wpcf7-response-output.is-error { border-color: #dc3232; }
.contact .wpcf7 form .wpcf7-submit:disabled { opacity: .5; cursor: progress; }
/* поле-ловушка для ботов: людям не видно */
.contact .wpcf7 form .contact-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* Подвал: юридическая пометка на всю ширину под колонками (на оригинале её нет) */
footer { flex-wrap: wrap; }
footer .footerNote { flex: 0 1 100%; max-width: 60rem; margin: 2rem auto 0; display: flex; flex-direction: column; gap: .5rem; text-align: center; font-size: 12px; line-height: 150%; opacity: .75; }
footer .footerNote p { max-width: none; }
footer .footerNote a { color: var(--cream); text-decoration: underline; }
@media (max-width: 950px) { footer .footerNote { grid-column: 1 / -1; margin-top: 1rem; text-align: left; } }

/* Юридические страницы: реквизит ещё не заполнен в админке */
.legal mark.legalMissing { background: #fff3c4; color: inherit; padding: 0 .2em; }
/* Форма: ссылки в подписях галочек */
.contact .wpcf7 .wpcf7-list-item-label a { color: inherit; text-decoration: underline; }
