/*
Theme Name: Volt 380
Theme URI: https://380volt.kz
Author: 380 Volt
Author URI: https://380volt.kz
Description: Тема магазина электроприборов "380 Volt" на базе Underscores (_s), портирована с дизайна Bitrix-шаблона ppb.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: volt-380
Domain Path: /languages
Tags: e-commerce, custom-colors, custom-menu, one-column, two-columns

This theme, like WordPress, is licensed under the GPL.
*/

/* =========================================================
   1. ЦВЕТОВЫЕ ПЕРЕМЕННЫЕ
   Раньше главным акцентным цветом был красный (#dc362a).
   Заменён на зелёный (фирменный) + добавлен синий акцент.
   Меняйте значения ниже — вся тема перекрасится сама.
   ========================================================= */
:root{
	--v380-primary:        #7cb10b; /* фирменный зелёный — было #dc362a */
	--v380-primary-dark:   #648e09; /* hover/active состояние */
	--v380-primary-light:  #eaf3d9; /* очень светлый зелёный, для плашек/фонов */

	--v380-dark:           #1b1b1b; /* "чёрный, но чуть светлее" — было #000000 */
	--v380-dark-soft:      #2a2a2a;

	--v380-blue:           #1f5c8b; /* синий акцент — новый цвет, второй блок/детали */
	--v380-blue-dark:      #163f5f;

	--v380-light:          #efefef; /* светлый текст на тёмном фоне, как в оригинале */
	--v380-text:           #000000;
	--v380-muted:          #6f6f6f;
}

body {
	font-family: 'Montserrat', sans-serif;
	color: var(--v380-text);
}

a,
a:hover,
a:focus,
a:active{
	/* Bootstrap по умолчанию подчёркивает ссылку при наведении —
	   в этой теме подчёркивание не используется нигде. */
	text-decoration:none;
}
a { color: var(--v380-text); }
a:hover{
	color: var(--v380-primary);
}

/* =========================================================
   2. КНОПКИ / АКЦЕНТНЫЕ ЭЛЕМЕНТЫ
   Класс .btn-danger сохранён 1-в-1 из Bitrix-вёрстки, чтобы
   не переписывать разметку — просто перекрашен.
   ========================================================= */
.btn-danger{
	background-color: var(--v380-primary) !important;
	border-color: var(--v380-primary) !important;
	color:#fff;
	border-radius:0;
	font-weight:500;
}
.btn-danger:hover,
.btn-danger:focus{
	background-color: var(--v380-primary-dark) !important;
	border-color: var(--v380-primary-dark) !important;
}

/* второстепенная кнопка на синем акценте — новый элемент,
   пригодится для кнопок вида "Подробнее" и т.п. */
.btn-blue{
	background-color: var(--v380-blue);
	border-color: var(--v380-blue);
	color:#fff;
	border-radius:0;
	font-weight:500;
}
.btn-blue:hover{
	background-color: var(--v380-blue-dark);
	color:#fff;
}

/* =========================================================
   3. ШАПКА / МЕНЮ (было header.php)
   ========================================================= */
.big-title{ font-weight:900; color:#efefef; font-size:10vw; text-transform:uppercase; height:170px; }

.litle-title{
	color:#000; display:inline-block; margin-bottom:50px;
	font-size:36px; font-weight:900;
	border-bottom:solid 5px var(--v380-primary);
	text-transform:uppercase;
}

.litle-bottom-title{
	color:#efefef; display:inline-block; margin-bottom:50px;
	font-size:36px; font-weight:900;
	border-bottom:solid 5px var(--v380-primary);
	text-transform:uppercase;
}

.logo{ z-index:2; }
.menu{ padding-left:0; height:96px; z-index:2; }
.menu-hd{ height:96px; }

.menu-hd .navbar-light .navbar-nav .nav-link{
	color:#000; font-size:14px; font-weight:bold; text-transform:uppercase;
}
.menu-hd .navbar-light .navbar-nav .nav-link:hover,
.menu-hd .navbar-light .navbar-nav .active .nav-link{
	color: var(--v380-primary);
}
.navbar-dark .navbar-nav .nav-link:focus,
.navbar-dark .navbar-nav .nav-link:hover{ color:#000; }

.list{ font-size:14px; font-weight:700; color:#000; }
.info{ padding-right:0; }

.number{
	color: var(--v380-primary);
	font-weight:500; font-size:16px; float:right; width:135px; margin-top:25px;
}
.number a{ color: var(--v380-primary); }
.street{ color:#000; font-weight:300; font-size:14px; float:right; width:220px; }
.menu-hd .call{
	margin-top:25px; font-size:14px; float:right; line-height:28px; border:none; word-wrap:break-word;
}

/* =========================================================
   4. ГЛАВНЫЙ БАННЕР (2 больших блока category-cards)
   Раньше "гражданское/промышленное строительство",
   теперь — 2 витрины категорий магазина.
   Правый блок — теперь синий, а не красный: так задан
   визуальный контраст зелёный/синий/чёрный.
   ========================================================= */
.bg-general{ height:725px; display:flex; width:100%; margin:0; position:absolute; }
.left { background-image:url(../img/bg2.jpg); width:50%; }
.right{ background-image:url(../img/bg1.jpg); width:50%; }
.container-general{ position:relative; z-index:2; }

.block-l{
	height:173px; background: var(--v380-dark); color:aliceblue;
	font-family:'Montserrat', sans-serif; font-size:14px;
	margin-top:438px; margin-bottom:112px;
}
.block-l-b{ padding-right:0; }

.block-r{
	height:173px; background: var(--v380-blue); color:aliceblue; /* было var(--v380-primary)/красный */
	font-family:'Montserrat', sans-serif; font-size:14px;
	margin-top:438px; margin-bottom:112px;
}
.block-r-b{ padding-left:0; }

.block-l a,.block-r a{ color:#fff; }
.block-l a:hover,.block-r a:hover{ text-decoration:none; }
.block-r a:hover .text-s,.block-l a:hover .text-s{ text-decoration:none; }

.text-header{ font-size:24px; font-weight:900; }
.header-cl{ padding-left:50px; padding-top:40px; }
.arrow{ position:absolute; right:36px; bottom:133px; }

/* =========================================================
   5. О КОМПАНИИ / О МАГАЗИНЕ
   ========================================================= */
.about-company{ font-size:140px; }
.company-bg{ 
	background-image:url(../img/bg-main.jpg); 
	min-height: 550px;
	height: auto;
	padding: 50px 0;
	position: relative;}
.about-us{ margin-bottom:30px; font-weight:500; }
.about-us-list{ list-style-type:disc; }
.company-li{ color: var(--v380-primary); margin-bottom:40px; font-weight:500; }
li span{ color:#000; }

.man{
	z-index:1; position:absolute; top:-103px;
	background-image:url(../img/man.png); height:655px; width:400px;
}

/* =========================================================
   6. ТРИ ПРЕИМУЩЕСТВА (красный прямоугольник -> зелёный)
   ========================================================= */
.columns{
	background-repeat:no-repeat; background-position:center;
	background-image:url(../img/bg-advantages.png); /* переименуйте свою картинку-подложку */
	background-color: var(--v380-dark); /* подстраховка, если без картинки */
	height:333px;
}
.column-part{ text-align:center; padding-top:60px; }
.main-text{ font-weight:900; color:#efefef; font-size:18px; width:270px; margin:0 auto; text-transform:uppercase; }
.about-picture{ height:130px; width:115px; margin:0 auto 15px; background-repeat:no-repeat; }
.num-1{ background-image:url(../img/column1.png); }
.num-2{ background-image:url(../img/column2.png); }
.num-3{ background-image:url(../img/column3.png); margin-bottom:12px; }
.description{ font-size:14px; text-align:center; font-weight:300; color:#efefef; width:215px; margin:0 auto; }

/* =========================================================
   7. КАТАЛОГ ТОВАРОВ
   В оригинале блок продукции был закомментирован (строительная
   компания без каталога). Для магазина это ГЛАВНЫЙ блок,
   поэтому он включён и адаптирован под товарные карточки.
   ========================================================= */
.products-title{ font-size:155px; height:180px; }

.all-product{
	width:90%; margin:0 auto; display:grid;
	grid-template-columns: repeat(4, 1fr); grid-gap:2vw;
}
.product{
	height:400px;
	box-shadow:0px 0px 24px -15px rgba(0,0,0,0.36);
	margin-bottom:23px; padding:32px; width:270px;
	border-top:3px solid transparent;
	transition:border-color .2s ease;
}
.product:hover{ border-top-color: var(--v380-primary); }
.product-img{ margin-bottom:10px; max-width:180px; max-height:180px; }
.product-name{ text-align:left; font-weight:900; font-size:14px; color:#000; }
.product-name:hover{ color: var(--v380-primary); }
.product-about{ text-align:left; font-weight:500; font-size:14px; color:#000; }
.product-price{ font-weight:900; font-size:18px; color: var(--v380-blue); margin:10px 0; }
.product-button{
	width:130px; height:38px; border:none; font:inherit; color:whitesmoke;
	font-weight:500; float:left; background-color: var(--v380-primary);
}
.product-button:hover{ background-color: var(--v380-primary-dark); }

.arrow-too{ background-image:url(../img/arrow-green.png); height:50px; width:50px; background-repeat:no-repeat; }

.we-offer{ font-size:110px; }
.catalog{ padding-top:40px; display:flex; align-items:center; justify-content:flex-end; width:87%; margin:0 auto; }
.all-catalog{ text-transform:uppercase; color:#000; font-weight:500; margin-bottom:9px; }

/* =========================================================
   8. КАТЕГОРИИ ТОВАРОВ ("Мы предлагаем" -> "Категории")
   Чередование чёрный / синий вместо чёрный / красный.
   ========================================================= */
.sentens-heading{ font-size:131px; text-align:left; margin-left:150px; font-weight:700; color:#efefef; }
.sentens{
	display:inline-block; margin-bottom:20px; font-size:36px; font-weight:900;
	margin-left:86px; border-bottom:solid 4px var(--v380-primary);
}
.building-solution-img{
	width:200px;
	height:160px;        /* немного уменьшили, было 240x180 */
	object-fit:cover;    /* кадрируем вместо деформации */
	object-position:center;
	flex-shrink:0;
}
.building-solution-img--placeholder{
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:42px;
	color:#efefef;
	background-color:rgba(0,0,0,.15);
}
.building-solution-text{
	position:relative;
	padding:36px 38px;
	flex:1 1 auto;
	overflow:hidden;
}
/* тонкий блик сверху панели — имитирует край стекла */
.building-solution-text::before{
	content:'';
	position:absolute; top:0; left:0; right:0; height:1px;
	background:linear-gradient(90deg, rgba(255,255,255,.55), rgba(255,255,255,0) 70%);
}
.building-solution-heading{ font-weight:900; color:#efefef; font-size:24px; margin-bottom:15px; text-transform:uppercase; position:relative; z-index:1; }
.building-solution-about{ color:#efefef; font-size:14px; position:relative; z-index:1; }
.building-solution-block{
	display:flex;
	height:160px;
	margin-bottom:24px;
	border-radius:14px;
	overflow:hidden;
	box-shadow:0 14px 34px -16px rgba(0,0,0,.45);
	transition:transform .25s ease, box-shadow .25s ease;
}
.building-solution-block:hover{
	transform:translateY(-5px);
	box-shadow:0 20px 42px -14px rgba(0,0,0,.5);
}
.b{
	background-color:rgba(27,27,27,.62);   /* было var(--v380-dark) сплошным — теперь полупрозрачный + блюр = эффект стекла */
	backdrop-filter:blur(16px);
	-webkit-backdrop-filter:blur(16px);
}
.r{
	background:rgba(31,92,139,.58);        /* было var(--v380-blue) сплошным */
	backdrop-filter:blur(16px);
	-webkit-backdrop-filter:blur(16px);
}

/* =========================================================
   9. КАРУСЕЛЬ "ОТЗЫВЫ КЛИЕНТОВ"
   Раньше карусель показывала объекты стройки — на сайте
   магазина логичнее отзывы/кейсы покупателей.
   ========================================================= */
.objects{ background-image:url(../img/bg-object.jpg); height:730px; margin-top:125px; }
.objects .owl-carousel .owl-item img{ width:100%; }
.owl-style-in{ height:470px; margin-top:140px; }

.client{
	display:inline-block; margin-bottom:20px; font-size:36px; font-weight:900;
	color:#efefef; border-bottom:solid 4px var(--v380-primary);
}
.redtext{ font-size:18px; font-weight:900; color: var(--v380-primary); margin-bottom:20px; text-transform:uppercase; }
.whitetext{ color:#efefef; margin-bottom:57px; }
.project-work{ padding:0; }
ol{ list-style:none; }
ol > li{ padding-left:20px; position:relative; margin:10px; }
ol > li:before{ content:'✔'; position:absolute; top:0; left:0; color: var(--v380-primary); }
.white{ color:#efefef; }

.objects .owl-nav .owl-next{ width:10px; position:absolute; top:160px; right:15px; margin-top:140px; }
.objects .owl-nav .owl-prev{ width:10px; position:absolute; top:160px; left:15px; margin-top:140px; }
.objects .owl-nav .fas{ font-size:40px; color:gray; }
.objects .owl-nav .fas:hover{ color: var(--v380-primary); }

/* =========================================================
   10. КОНТАКТЫ / ФУТЕР
   ========================================================= */
.contacts{ font-size:118px; }
.how-to-find-us{ display:inline-block; margin-bottom:50px; font-size:36px; font-weight:900; border-bottom:solid 4px var(--v380-primary); }
.footer-contact{ display:flex; justify-content:space-between; align-items:center; width:90%; margin:0 auto 55px; }

.number-ft{ color: var(--v380-primary); font-weight:900; font-size:24px; float:right; margin-top:7px; }
.number-ft a{ color: var(--v380-primary); }
.ft{ text-align:left; margin-left:150px; }

.call-ft{
	font-weight:500; margin-left:20px; font-size:14px; text-transform:uppercase;
	padding:15px 30px; background-color: var(--v380-primary); float:right; margin-top:10px;
}
.call-ft:hover{ background-color: var(--v380-primary-dark); color:#fff; }

.street-ft{ color:#000; font-size:18px; }
.info-ft{ width:286px; text-align:right; }

#map{
	/* position:relative обязателен: в коде «Конструктора карт» Яндекса
	   две подписи-ссылки идут с position:absolute; без позиционированного
	   родителя они отсчитываются от окна и всплывают в левый верхний угол
	   страницы, поверх шапки. */
	position:relative;
	overflow:hidden;
	width:100%; height:470px; border:0;
}
/* Служебные подписи Яндекса над картой не показываем: адрес и так есть
   в блоке контактов, а ссылки перекрывают саму карту. */
#map > a{ display:none; }
#map iframe,
#map ymaps {
	width: 100% !important;
	height: 100% !important;
	display: block;
	border: 0;
}
.footer{ height:120px; padding-top:50px; }
.ftr-all{ display:flex; justify-content:space-between; align-items:center; height:150px; margin:0 auto; }
.ftr-cp{ display:flex; justify-content:space-around; list-style-type:none; }
.list-in{ color:#000; text-transform:uppercase; }
.list-ft{ font-size:14px; font-weight:500; }
.ppb{ text-transform:uppercase; color:#000; }

/* =========================================================
   11. ФОРМА ОБРАТНОЙ СВЯЗИ (тёмная плашка внизу страниц)
   ========================================================= */
.feedback{
	background: var(--v380-dark) url(../img/feedback_bg.jpg) no-repeat center top;
	background-blend-mode:multiply;
	width:100%; height:825px; padding:80px 0; color:#fff; margin:50px 0;
}
.feedback .title{
	font-family:'Montserrat', sans-serif; font-size:60px; line-height:110px;
	text-transform:uppercase; font-weight:900; display:inline-block;
	border-bottom:5px solid var(--v380-primary); margin-bottom:50px; color:#fff;
}
.feedback p{ font-size:18px; font-weight:300; margin-bottom:50px; }
.feedback form{ margin-top:50px; }
.feedback .form-control{
	border-color:#6F6F6F; background:transparent; font-size:18px; color:#fff;
	border-radius:0; height:calc(1.8em + .75rem + 2px);
}
.feedback .form-group{ margin-bottom:2rem; }
.feedback textarea.form-control{ height:204px; }
.feedback .btn-danger{
	text-transform:uppercase; font-size:18px; color:#fff; font-weight:bold;
	text-align:center; float:right; padding:1rem 4rem !important;
}

/* =========================================================
   12. ХЛЕБНЫЕ КРОШКИ / ВНУТРЕННИЕ СТРАНИЦЫ
   ========================================================= */
.page_bg{ background:url(../img/aboutbg.jpg) no-repeat center top; width:100%; height:263px; margin-bottom:50px; }

.bx-breadcrumb{ display:flex; justify-content:flex-start; flex-wrap:wrap; align-items:center; }
.bx-breadcrumb-item{ height:22px; white-space:nowrap; }
.bx-breadcrumb-item-angle{ margin:0 10px; color:#b5bdc2; vertical-align:top; font-size:14px; }
.bx-breadcrumb-item-link{ border-bottom:none; vertical-align:top; line-height:21px; font-size:14px; color:#000; }
.bx-breadcrumb-item-text{
	vertical-align:top; white-space:normal;
	font:300 14px/21px "Montserrat", Arial, "Helvetica Neue", Helvetica, sans-serif;
	transition:250ms linear all;
}

.title h1{
	font-family:'Montserrat', sans-serif; font-size:56px; line-height:normal;
	text-transform:uppercase; font-weight:900; display:inline-block;
	border-bottom:5px solid var(--v380-primary); margin-bottom:50px;
}
.content h3{ font-size:24px; font-weight:900; color:#000; margin:30px 0; text-transform:uppercase; }
.content ul{ list-style-image:url(../img/list-green.png); margin-bottom:15px; }
.content ul li{ margin-bottom:10px; }
.content .title h2{
	font-weight:900; color:#000; font-size:48px; border-bottom:5px solid var(--v380-primary);
	display:inline-block; margin-bottom:30px; padding-bottom:10px; text-transform:uppercase;
}
.content img{ margin:15px; }
.content h5.stage{ font-weight:900; font-size:24px; color:#000; }
.content .build-stages .desc{ margin-bottom:30px; }

/* Таймлайн — маркер перекрашен в зелёный */
.timeline__item:after{ border:4px solid var(--v380-primary) !important; }
.timeline__content{ color:#000 !important; font-size:14px !important; padding:1rem !important; }
.timeline__content .year{ font-weight:900; font-size:24px; color:#000; }

/* =========================================================
   13. ГАЛЕРЕЯ / LIGHTBOX
   ========================================================= */
.gallery .popup{ cursor:zoom-in; display:block; margin-bottom:30px; }
.gallery .popup img{ width:100%; margin:0; }
.gallery .popup.bordered{ padding:5px; border:3px solid lightgray; }
.gallery .popup.bordered:hover{ border:5px solid lightgray; }

.gallery-2{ width:100%; margin:auto; border-radius:3px; overflow:hidden; }
.gallery-2 .popup{
	margin-bottom:30px; display:block; height:200px; background-size:120%;
	background-position:center; transition:background-size .5s, background-color .6s;
}
.gallery-2 .popup:hover{ background-size:140%; background-blend-mode:overlay; background-color:rgba(0,0,0,.3); }
.gallery-2 .popup img{ width:100%; }

.mfp-fade.mfp-bg{ opacity:0; transition:all .15s ease-out; }
.mfp-fade.mfp-bg.mfp-ready{ opacity:.8; }
.mfp-fade.mfp-bg.mfp-removing{ opacity:0; }
.mfp-fade.mfp-wrap .mfp-content{ opacity:0; transition:all .15s ease-out; }
.mfp-fade.mfp-wrap.mfp-ready .mfp-content{ opacity:1; }
.mfp-fade.mfp-wrap.mfp-removing .mfp-content{ opacity:0; }

/* =========================================================
   14. НОВОЕ ДЛЯ ГЛАВНОЙ СТРАНИЦЫ МАГАЗИНА
   Полоса преимуществ: доставка / гарантия / оплата / оригинал
   ========================================================= */
.perks-bar{
	display:flex; flex-wrap:wrap; justify-content:space-between;
	background: var(--v380-dark-soft); padding:30px 5%; margin-top:0;
}
.perks-bar .perk{
	display:flex; align-items:center; gap:15px; color:#efefef; flex:1 1 220px; margin:10px;
}
.perks-bar .perk i{ font-size:32px; color: var(--v380-primary); }
.perks-bar .perk .perk-title{ font-weight:900; text-transform:uppercase; font-size:14px; }
.perks-bar .perk .perk-desc{ font-size:12px; color:#c2c2c2; font-weight:300; }

/* Полоса брендов на главной */
.brands-row{ display:flex; align-items:center; justify-content:space-around; flex-wrap:wrap; padding:40px 0; }
.brands-row img{ max-height:60px; filter:grayscale(100%); opacity:.7; transition:.2s; }
.brands-row img:hover{ filter:none; opacity:1; }

/* Бейдж "Хит продаж" / "Акция" на карточке товара */
.product{ position:relative; }
.product-badge{
	position:absolute; top:10px; left:10px; background: var(--v380-blue); color:#fff;
	font-size:11px; font-weight:900; text-transform:uppercase; padding:4px 10px;
}
.product-badge.sale{ background: var(--v380-primary); }

/* =========================================================================
   v2 ДОПОЛНЕНИЯ (правки после проверки сайта)
   ========================================================================= */

/* -------------------------------------------------------------------------
   15. ШАПКА: flex-раскладка вместо жёстких bootstrap-колонок.
   Логотип любого разрешения (широкий/квадратный/высокий) вписывается в
   фиксированную высоту шапки через max-height — не может "вылезти" или
   перекрыть меню. Меню и правый блок подстраиваются рядом за счёт flex.
   ------------------------------------------------------------------------- */
.site-header.menu-hd{
	height:auto;
	min-height:96px;
	padding:10px 0;
	background:#fff;
}
.site-header__inner{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	width:100%;
	max-width:1140px;
	margin:0 auto;
	padding:0 15px;
	gap:20px;
}

.site-header__logo{
	flex:0 0 auto;
	display:flex;
	align-items:center;
	max-width:220px;
}
.site-header__logo a{ display:block; }
.site-header__logo img,
.custom-logo-link img{
	max-width:100%;
	max-height:60px;   /* ключевая строка: любой логотип впишется по высоте */
	width:auto;
	height:auto;
	display:block;
}
.site-header__logo-text{
	font-weight:900;
	font-size:22px;
	text-transform:uppercase;
	color:#000;
	white-space:nowrap;
}

.site-header__nav{
	flex:1 1 auto;
	min-width:0; /* чтобы flex-элемент мог сжиматься и не выталкивал соседей */
}
.site-header__nav .navbar-nav{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
}
.site-header__nav .nav-item{
	margin:0 18px;      /* нормальные отступы между пунктами меню */
}
.site-header__nav .nav-item:first-child{ margin-left:0; }
.site-header__nav .nav-link{
	padding:8px 0 !important;
	position:relative;
}
.site-header__nav .nav-link:after{
	content:'';
	position:absolute;
	left:0; right:100%;
	bottom:0;
	height:2px;
	background: var(--v380-primary);
	transition:right .2s ease;
}
.site-header__nav .nav-link:hover:after,
.site-header__nav .active .nav-link:after{
	right:0;
}

.site-header__aside{
	flex:0 0 auto;
	display:flex;
	align-items:center;
	gap:20px;
	margin-left:auto;
}
.site-header__contacts .number{ float:none; width:auto; margin:0; text-align:right; }
.site-header__contacts .street{ float:none; width:auto; text-align:right; }
.site-header__cta .call{ margin:0; float:none; white-space:nowrap; }

@media screen and (max-width: 991px){
	.site-header__aside{ order:3; width:100%; justify-content:space-between; margin-left:0; margin-top:10px; }
	.site-header__nav{ order:2; width:100%; }
}

/* -------------------------------------------------------------------------
   16. ЗАГОЛОВКИ big-title: были #efefef (почти невидимы на белом фоне).
   Заменены на градиентную заливку текста фирменными цветами — эффект
   декоративного "фонового" слова остаётся, но он теперь виден на любом фоне.
   ------------------------------------------------------------------------- */
.big-title{
	color:#e3e3e3;                              /* fallback для браузеров без background-clip:text */
	background:linear-gradient(90deg, var(--v380-primary) 0%, var(--v380-blue) 100%);
	-webkit-background-clip:text;
	background-clip:text;
	-webkit-text-fill-color:transparent;
	opacity:0.9;
}
/* На тёмных/цветных секциях (карусель портфолио, полоса брендов) заголовки
   должны остаться светлыми и контрастными — не градиентом. */
.objects .client,
.brands-strip .litle-title--brands{
	color:#000000;
	-webkit-text-fill-color:#000000;
	background:none;
	opacity:1;
}

/* -------------------------------------------------------------------------
   17. ФОРМА "ОСТАВИТЬ ЗАЯВКУ" — на всю ширину страницы на всех страницах.
   ------------------------------------------------------------------------- */
.feedback{ width:100%; }
.feedback__container{
	width:100%;
	max-width:100%;
	padding-left:5%;
	padding-right:5%;
}

/* -------------------------------------------------------------------------
   18. ГРАДИЕНТЫ-ЗАГЛУШКИ (пока не загружены реальные фото).
   Используются как background для секций, которые в оригинале были
   background-image: url(...). Как только появится реальное фото — просто
   добавьть свой url() через customizer/ACF, эти классы можно оставить как
   декоративный оверлей (см. README).
   ------------------------------------------------------------------------- */
.v380-bg-gradient-1{
	background-image:
		radial-gradient(circle at 20% 20%, rgba(255,255,255,.08) 0, transparent 40%),
		linear-gradient(135deg, var(--v380-primary) 0%, var(--v380-blue) 100%);
	background-size:cover;
}
.v380-bg-gradient-2{
	background-image:
		radial-gradient(circle at 80% 30%, rgba(255,255,255,.06) 0, transparent 45%),
		linear-gradient(135deg, var(--v380-dark) 0%, var(--v380-blue-dark) 100%);
	background-size:cover;
}
.v380-bg-gradient-3{
	background-image:
		linear-gradient(120deg, var(--v380-dark-soft) 0%, var(--v380-blue-dark) 55%, var(--v380-primary-dark) 100%);
	background-size:cover;
}
.hero-bg-img{
	position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.35; mix-blend-mode:overlay;
}
.left,.right{ position:relative; overflow:hidden; }

/* Блок "о нас" / преимущества теперь используют градиент —
   уберём старые url()-фоны, чтобы не показывались битые картинки.
   .objects сюда больше не входит: у него теперь свой фон ниже —
   раньше эта строка гасила background-image от v380-bg-gradient-3/
   .objects-showcase, потому что шла в файле позже (тот же уровень
   специфичности — побеждает правило, объявленное ниже). */
.company-bg{ background-image:none; }
.columns{ background-image:none; }
.page_bg{ background-image:none; height:80px; margin-bottom:50px; }

/* -------------------------------------------------------------------------
   19. Иконки преимуществ (замена .about-picture .num-1/2/3 на fontawesome)
   ------------------------------------------------------------------------- */
.column-icon{
	display:block;
	font-size:48px;
	color:#efefef;
	margin-bottom:15px;
}

/* -------------------------------------------------------------------------
   20. КАТАЛОГ: заглушка для карточек без загруженной картинки
   ------------------------------------------------------------------------- */
.building-solution-img--placeholder{
	width:240px;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(255,255,255,.08);
}
.building-solution-img--placeholder i{
	font-size:56px;
	color:rgba(255,255,255,.6);
}

/* -------------------------------------------------------------------------
   21. ПОРТФОЛИО-СЛАЙДЕР (заменил карусель отзывов)
   ------------------------------------------------------------------------- */
#portfolio-carousel .portfolio-slide{ text-align:center; }
#portfolio-carousel .owl-img{
	max-height:420px;
	width:auto;
	margin:0 auto;
	display:block;
}
.portfolio-slide__placeholder{
	height:420px;
	width:100%;
	display:flex;
	align-items:center;
	justify-content:center;
}
.portfolio-slide__placeholder i{ font-size:64px; color:rgba(255,255,255,.6); }
.portfolio-slide__caption{
	color:#efefef;
	margin-top:20px;
	font-weight:500;
	font-size:16px;
}

/* -------------------------------------------------------------------------
   22. ПОЛОСА БРЕНДОВ (перенесена вниз перед футером, теперь слайдер)
   ------------------------------------------------------------------------- */
.brands-strip{
	background: var(--v380-dark-soft);
	padding:40px 0 50px;
}
.litle-title--brands{
	border-bottom-color: var(--v380-primary);
	margin-bottom:30px;
}
#brands-carousel .brand-slide{
	display:flex;
	align-items:center;
	justify-content:center;
	height:80px;
}
#brands-carousel .brand-slide img{
	max-height:60px;
	max-width:100%;
	filter:grayscale(100%) brightness(1.6);
	opacity:.75;
	transition:.2s;
}
#brands-carousel .brand-slide:hover img{ filter:none; opacity:1; }
.brand-slide__name{
	color:#efefef;
	font-weight:900;
	text-transform:uppercase;
	font-size:18px;
	letter-spacing:1px;
	opacity:.7;
}

/* -------------------------------------------------------------------------
   23. КАРТА — плейсхолдер, пока не вставлен код в настройках темы
   ------------------------------------------------------------------------- */
.map--placeholder{
	display:flex;
	align-items:center;
	justify-content:center;
	color:#efefef;
	text-align:center;
	padding:0 10%;
}

/* =========================================================================
   v3: КАРТОЧКА ТОВАРА (single-v380_product.php)
   ========================================================================= */
.product-breadcrumbs{ font-size:14px; color:var(--v380-muted); margin-bottom:20px; }
.product-breadcrumbs a{ color:var(--v380-text); }
.product-breadcrumbs .sep{ margin:0 6px; color:#ccc; }

.product-detail{ margin-bottom:40px; }
.product-detail__slide{ text-align:center; }
.product-detail__slide img{ max-width:100%; max-height:420px; margin:0 auto; }
.product-detail__slide--placeholder{
	height:420px; display:flex; align-items:center; justify-content:center;
}
.product-detail__slide--placeholder i{ font-size:64px; color:rgba(255,255,255,.6); }

.product-detail__brand{ text-transform:uppercase; font-weight:700; color:var(--v380-muted); margin-bottom:5px; }
.product-detail__price{ font-size:32px; font-weight:900; color:var(--v380-blue); margin-bottom:10px; }
.product-detail__availability{ color:var(--v380-primary); font-weight:500; margin-bottom:15px; }
.product-detail__meta{ list-style:none; padding:0; margin-bottom:20px; color:#444; }
.product-detail__meta li{ margin-bottom:6px; }

.product-detail__documents{ margin-top:30px; }
.product-detail__documents-title{ font-weight:900; text-transform:uppercase; font-size:14px; margin-bottom:10px; }
.product-detail__documents ul{ list-style:none; padding:0; }
.product-detail__documents a{ display:inline-flex; align-items:center; gap:8px; color:var(--v380-blue); font-weight:500; }
.product-detail__documents a:hover{ color:var(--v380-primary); }
.product-detail__doc-label{ color:var(--v380-muted); font-weight:300; }

.product-detail__characteristics{ margin-top:40px; }
.product-detail__char-table{ width:100%; border-collapse:collapse; }
.product-detail__char-table td{ padding:10px 15px; border-bottom:1px solid #eee; }
.product-detail__char-table td:first-child{ color:var(--v380-muted); width:40%; }
.product-detail__char-table tr:nth-child(odd){ background:#fafafa; }

/* =========================================================
   ИЗМЕНЕНИЕ ОБЩЕЙ ШИРИНЫ САЙТА (MAX-WIDTH)
   ========================================================= */

/* 1. Ширина основного контента (Bootstrap) */
@media (min-width: 1200px) {
    .container {
        max-width: 1400px !important;
    }
}

/* 2. Ширина шапки */
.site-header__inner {
    max-width: 1400px !important;
}

/* 3. Ширина каталога */
.all-product, 
.catalog {
    width: 100% !important;
    max-width: 1400px !important;
}

/* =========================================================================
   ДОБАВИТЬ В КОНЕЦ style.css ТЕМЫ (v5)
   Панель фильтров каталога, карточки товаров, галерея на карточке товара.
   ========================================================================= */

/* ---------- Галерея товара (без Owl Carousel) ---------- */
.product-gallery__main{
	border:1px solid #eee;
	padding:15px;
	text-align:center;
	background:#fff;
}
.product-gallery__main img{
	max-width:100%;
	max-height:420px;
	width:auto;
	height:auto;
	display:inline-block;
}
.product-gallery__main--placeholder{
	height:420px;
	display:flex;
	align-items:center;
	justify-content:center;
	border:none;
}
.product-gallery__main--placeholder i{ font-size:64px; color:rgba(255,255,255,.6); }

.product-gallery__thumbs{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin-top:12px;
}
.product-gallery__thumb{
	border:2px solid #eee;
	background:#fff;
	padding:4px;
	cursor:pointer;
	width:72px;
	height:72px;
	display:flex;
	align-items:center;
	justify-content:center;
	transition:border-color .15s;
}
.product-gallery__thumb img{ max-width:100%; max-height:100%; }
.product-gallery__thumb:hover{ border-color:var(--v380-blue); }
.product-gallery__thumb.is-active{ border-color:var(--v380-primary); }

.product-detail__price--request{
	font-size:22px;
	color:var(--v380-muted);
}

/* ---------- Панель управления каталогом ---------- */
.catalog-toolbar{
	background:#fafafa;
	border:1px solid #eee;
	padding:15px 20px;
	margin:30px 0 25px;
}
.catalog-toolbar__row{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
	gap:15px;
}
.catalog-toolbar__label{
	font-size:13px;
	color:var(--v380-muted);
	margin-right:8px;
}
.catalog-toolbar__controls{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:25px;
}

.catalog-found{ font-size:15px; }
.catalog-found strong{ color:var(--v380-primary); font-size:18px; }

.catalog-limit__link{
	display:inline-block;
	padding:4px 10px;
	font-size:14px;
	color:var(--v380-text);
	border:1px solid transparent;
}
.catalog-limit__link:hover{ color:var(--v380-primary); }
.catalog-limit__link.is-active{
	background:var(--v380-primary);
	color:#fff;
	border-color:var(--v380-primary);
}

.catalog-view__link{
	display:inline-block;
	padding:5px 10px;
	color:var(--v380-muted);
	border:1px solid #ddd;
	margin-left:-1px;
}
.catalog-view__link.is-active{
	background:var(--v380-dark);
	color:#fff;
	border-color:var(--v380-dark);
}

/* ---------- Карточки товаров: сетка ---------- */
.catalog-products--grid{
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:20px;
	margin-bottom:35px;
}
.catalog-products--grid .product-card{
	display:flex;
	flex-direction:column;
	border:1px solid #eee;
	padding:15px;
	background:#fff;
	transition:box-shadow .2s, border-color .2s;
}
.catalog-products--grid .product-card:hover{
	border-color:var(--v380-primary);
	box-shadow:0 4px 18px rgba(0,0,0,.07);
}
.catalog-products--grid .product-card__image{
	display:flex;
	align-items:center;
	justify-content:center;
	height:180px;
	margin-bottom:12px;
}
.catalog-products--grid .product-card__image img{
	max-width:100%;
	max-height:180px;
	width:auto;
	height:auto;
}
.catalog-products--grid .product-card__body{
	display:flex;
	flex-direction:column;
	flex:1;
}
.catalog-products--grid .product-card__footer{ margin-top:auto; padding-top:12px; }

/* ---------- Карточки товаров: список ---------- */
.catalog-products--list{
	display:flex;
	flex-direction:column;
	gap:15px;
	margin-bottom:35px;
}
.catalog-products--list .product-card{
	display:flex;
	gap:20px;
	border:1px solid #eee;
	padding:15px;
	background:#fff;
	align-items:flex-start;
}
.catalog-products--list .product-card:hover{ border-color:var(--v380-primary); }
.catalog-products--list .product-card__image{
	flex:0 0 140px;
	display:flex;
	align-items:center;
	justify-content:center;
	height:140px;
}
.catalog-products--list .product-card__image img{ max-width:100%; max-height:140px; width:auto; height:auto; }
.catalog-products--list .product-card__body{ flex:1; display:flex; flex-direction:column; }
.catalog-products--list .product-card__footer{
	margin-top:auto;
	display:flex;
	align-items:center;
	gap:20px;
	padding-top:12px;
}

/* ---------- Общие элементы карточки ---------- */
.product-card__image-placeholder{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	height:100%;
	background:#f4f4f4;
	color:#ccc;
	font-size:36px;
}
.product-card__availability{
	font-size:12px;
	color:var(--v380-primary);
	font-weight:500;
	margin-bottom:6px;
}
.product-card__title{
	font-weight:700;
	font-size:14px;
	color:var(--v380-text);
	line-height:1.35;
	margin-bottom:8px;
	display:block;
}
.product-card__title:hover{ color:var(--v380-primary); }
.product-card__article,
.product-card__brand{
	font-size:12px;
	color:var(--v380-muted);
	margin-bottom:4px;
}
.product-card__price{
	font-weight:900;
	font-size:18px;
	color:var(--v380-blue);
	display:block;
	margin-bottom:10px;
}
.product-card__price--request{
	font-size:14px;
	font-weight:500;
	color:var(--v380-muted);
}
.product-card__button{
	font-size:13px;
	padding:8px 18px;
	display:inline-block;
}
.catalog-products--list .product-card__price{ margin-bottom:0; }

/* ---------- Пагинация ---------- */
.catalog-pagination{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:6px;
	margin:30px 0 40px;
}
.catalog-pagination__item{
	display:inline-block;
	min-width:38px;
	text-align:center;
	padding:8px 10px;
	border:1px solid #ddd;
	color:var(--v380-text);
	font-size:14px;
}
.catalog-pagination__item:hover{ border-color:var(--v380-primary); color:var(--v380-primary); }
.catalog-pagination__item.is-active{
	background:var(--v380-primary);
	border-color:var(--v380-primary);
	color:#fff;
}
.catalog-pagination__dots{ color:var(--v380-muted); padding:0 4px; }

.catalog-empty{
	padding:30px;
	background:#fafafa;
	border:1px solid #eee;
	color:var(--v380-muted);
	text-align:center;
}

.catalog-children{ margin-bottom:20px; }

/* ---------- Адаптив ---------- */
@media screen and (max-width: 1200px){
	.catalog-products--grid{ grid-template-columns:repeat(3, 1fr); }
}
@media screen and (max-width: 992px){
	.catalog-products--grid{ grid-template-columns:repeat(2, 1fr); }
	.catalog-toolbar__controls{ gap:15px; }
}
@media screen and (max-width: 576px){
	.catalog-products--grid{ grid-template-columns:1fr; }
	.catalog-products--list .product-card{ flex-direction:column; }
	.catalog-products--list .product-card__image{ flex:none; width:100%; }
	.catalog-toolbar{ padding:12px; }
}

.info-ft--fixed{
	width:auto;
	max-width:320px;
	margin-left:auto;
	text-align:right;
}
.info-ft--fixed .number-ft{
	float:none;
	display:block;
	margin:0 0 6px;
	line-height:1.25;
}
.info-ft--fixed .street-ft{
	float:none;
	display:block;
	margin:0;
	line-height:1.4;
}
.contacts-row{ row-gap:20px; }

@media screen and (max-width: 768px){
	.info-ft--fixed{ margin-left:0; text-align:left; max-width:none; }
	.call-ft{ float:none; margin-left:0; display:inline-block; }
}

/* ---------- Панель магазина под шапкой ---------- */
.shop-bar{
	background: var(--v380-dark);
	position:relative;
	z-index:30;
}
.shop-bar__inner{
	max-width:1140px;
	margin:0 auto;
	padding:10px 15px;
	display:flex;
	align-items:center;
	gap:20px;
}

/* ---------- Кнопка и выпадающее меню каталога ---------- */
.catalog-menu{ position:relative; flex:0 0 auto; }
.catalog-menu__button{
	display:flex;
	align-items:center;
	gap:10px;
	padding:12px 22px;
	font-weight:700;
	text-transform:uppercase;
	font-size:14px;
	white-space:nowrap;
	border:none;
	cursor:pointer;
}
.catalog-menu__dropdown{
	display:none;
	position:absolute;
	top:100%;
	left:0;
	min-width:340px;
	background:#fff;
	border:1px solid #e5e5e5;
	box-shadow:0 10px 30px rgba(0,0,0,.15);
	z-index:40;
	padding:8px 0;
}
.catalog-menu.is-open .catalog-menu__dropdown{ display:block; }

.catalog-menu__list,
.catalog-menu__sublist{
	list-style:none;
	margin:0;
	padding:0;
}
.catalog-menu__item{ position:relative; }
.catalog-menu__link{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	padding:9px 18px;
	font-size:14px;
	color:var(--v380-text);
	line-height:1.3;
}
.catalog-menu__link:hover{
	background:var(--v380-primary-light);
	color:var(--v380-primary-dark);
}
.catalog-menu__arrow{ font-size:12px; color:#bbb; flex:0 0 auto; }
.catalog-menu__item:hover > .catalog-menu__link .catalog-menu__arrow{ color:var(--v380-primary); }

/* Вложенные уровни — раскрываются вбок при наведении */
.catalog-menu__sublist{
	display:none;
	position:absolute;
	top:0;
	left:100%;
	min-width:320px;
	max-height:70vh;
	overflow-y:auto;
	background:#fff;
	border:1px solid #e5e5e5;
	box-shadow:0 10px 30px rgba(0,0,0,.15);
	padding:8px 0;
}
.catalog-menu__item.has-children:hover > .catalog-menu__sublist{ display:block; }
.catalog-menu__empty{ padding:15px 18px; color:var(--v380-muted); font-size:14px; margin:0; }

/* Первый уровень: ограничиваем высоту, чтобы 9 разделов всегда помещались */
.catalog-menu__dropdown > .catalog-menu__list{
	max-height:70vh;
	overflow-y:auto;
}

/* ---------- Строка поиска ---------- */
.shop-search{
	flex:1 1 auto;
	display:flex;
	align-items:stretch;
	background:#fff;
	min-width:0;
}
.shop-search__input{
	flex:1 1 auto;
	border:none;
	padding:11px 16px;
	font-size:14px;
	min-width:0;
	outline:none;
}
.shop-search__button{
	flex:0 0 auto;
	border:none;
	background:var(--v380-primary);
	color:#fff;
	padding:0 20px;
	cursor:pointer;
	transition:background .15s;
}
.shop-search__button:hover{ background:var(--v380-primary-dark); }

.shop-search--inline{
	max-width:520px;
	margin:0 0 25px;
	border:1px solid #ddd;
}

/* ---------- Ссылка на магазин Kaspi.kz ---------- */
.shop-bar__kaspi{
	flex:0 0 auto;
	display:inline-flex;
	align-items:center;
	gap:10px;
	padding:11px 24px;
	background:linear-gradient(135deg, #ff3b30 0%, #e2231a 100%);
	color:#fff;
	font-weight:700;
	font-size:14px;
	text-transform:uppercase;
	white-space:nowrap;
	border-radius:999px;
	box-shadow:0 6px 18px rgba(226,35,26,.45);
	transition:transform .15s ease, box-shadow .15s ease;
}
.shop-bar__kaspi i{ font-size:16px; }
.shop-bar__kaspi:hover{
	color:#fff;
	transform:translateY(-2px);
	box-shadow:0 10px 26px rgba(226,35,26,.6);
}

@media screen and (max-width: 992px){
	.shop-bar__inner{ flex-wrap:wrap; }
	.catalog-menu{ order:1; }
	.shop-bar__kaspi{ order:2; margin-left:auto; }
	.shop-search{ order:3; width:100%; flex-basis:100%; }
	.catalog-menu__dropdown{ min-width:280px; }
	.catalog-menu__sublist{
		position:static;
		left:auto;
		box-shadow:none;
		border:none;
		border-left:2px solid var(--v380-primary-light);
		margin-left:18px;
		min-width:0;
	}
}

.product-card{ position:relative; }

/* Слайдер (портфолио, бренды) — общие стили см. ниже, в блоке
   "НОВЫЙ СЛАЙДЕР": здесь раньше дублировалось старое scroll-snap
   определение, которое конфликтовало с ним и сбивало прозрачность
   стрелок/точек. */

/* Портфолио: собственная секция и фон вместо старой заглушки-градиента.
   Раньше .objects оставался без явного фона (см. правку выше) —
   теперь у секции свой узнаваемый фон: диагональный градиент
   фирменных цветов + светящиеся акценты + лёгкая точечная текстура. */
.objects{
	padding:70px 0;
	height:auto;
	position:relative;
	overflow:hidden;
	background:
		radial-gradient(circle at 12% 15%, rgba(124,177,11,.35) 0%, transparent 40%),
		radial-gradient(circle at 90% 80%, rgba(31,92,139,.45) 0%, transparent 45%),
		linear-gradient(120deg, var(--v380-dark) 0%, var(--v380-dark-soft) 45%, var(--v380-blue-dark) 100%);
}
.objects::before{
	content:'';
	position:absolute; inset:0;
	background-image:radial-gradient(rgba(255,255,255,.08) 1px, transparent 1px);
	background-size:26px 26px;
	pointer-events:none;
}
.objects > *{ position:relative; z-index:1; }

.portfolio-slide__inner{
	display:flex;
	align-items:stretch;
	min-height:440px;
	border-radius:16px;
	overflow:hidden;
	box-shadow:0 20px 46px -18px rgba(0,0,0,.5);
}

.portfolio-slide__info{
	flex:0 0 40%;
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding:52px 46px;
	background:rgba(27,27,27,.68);   /* тёмное стекло поверх фото объекта */
	backdrop-filter:blur(18px);
	-webkit-backdrop-filter:blur(18px);
	position:relative;
}
.portfolio-slide__info::before{
	content:'';
	position:absolute; top:0; left:0; right:0; height:1px;
	background:linear-gradient(90deg, rgba(255,255,255,.5), rgba(255,255,255,0) 70%);
}

.portfolio-slide__eyebrow{
	color:var(--v380-primary);
	font-weight:900;
	font-size:13px;
	letter-spacing:.08em;
	text-transform:uppercase;
	margin-bottom:26px;
}
.portfolio-slide__label{
	color:var(--v380-primary);
	font-weight:700;
	font-size:12px;
	letter-spacing:.05em;
	text-transform:uppercase;
	margin:0 0 6px;
}
.portfolio-slide__client{
	color:#efefef;
	font-weight:900;
	font-size:26px;
	text-transform:uppercase;
	margin:0 0 28px;
	line-height:1.25;
}

.portfolio-slide__list{ list-style:none; margin:0; padding:0; }
.portfolio-slide__list li{
	position:relative;
	padding-left:22px;
	margin-bottom:10px;
	font-size:14px;
	line-height:1.4;
	color:#efefef;
	opacity:.92;
}
.portfolio-slide__list li::before{
	content:'✔';
	position:absolute; left:0; top:0;
	color:var(--v380-primary);
}

.portfolio-slide__media{
	flex:1 1 auto;
	position:relative;
	min-width:0;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:30px;
	background:linear-gradient(135deg, var(--v380-dark) 0%, var(--v380-blue-dark) 100%);
}
.portfolio-slide__img{
	position:static;
	width:auto;
	height:auto;
	max-width:620px;   /* было 100% ширины — фото растягивалось на всю колонку */
	max-height:100%;
	object-fit:contain;
	box-shadow:0 16px 40px rgba(0,0,0,.35);
}
.portfolio-slide__placeholder{
	position:static;
	width:100%;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:center;
}
.portfolio-slide__placeholder i{ font-size:64px; color:rgba(255,255,255,.6); }

/* Временный вариант "только фото" (ACF Gallery на главной, без панели
   клиент/работы) — .portfolio-slide__media остаётся единственным флекс-
   элементом .portfolio-slide__inner и растягивается на всю ширину
   full-width слайдера. Сужаем саму карточку, чтобы фото не выглядело
   растянутым во весь экран (само фото и так не обрезается — см.
   object-fit:contain в .portfolio-slide__img выше). */
.portfolio-slide--photo .portfolio-slide__inner{
	max-width:700px;
	margin:0 auto;
}
@media screen and (max-width: 768px){
	.portfolio-slide--photo .portfolio-slide__inner{ max-width:100%; }
}

@media screen and (max-width: 768px){
	.portfolio-slide__inner{ flex-direction:column; min-height:0; }
	.portfolio-slide__info{ flex:none; padding:36px 30px; }
	.portfolio-slide__media{ height:260px; padding:16px; }
	.portfolio-slide__img{ max-width:100%; }
}

/* Бренды — по несколько логотипов в ряд */
.v380-slider--brands .v380-slider__slide{ flex:0 0 calc((100% - 100px) / 6); }
.v380-slider--brands .v380-slider__arrow{
	background:rgba(255,255,255,.1);
}
.brand-slide{
	display:flex;
	align-items:center;
	justify-content:center;
	height:80px;
}
.brand-slide img{
	max-height:60px;
	max-width:100%;
	width:auto;
	filter:grayscale(100%) brightness(1.6);
	opacity:.75;
	transition:.2s;
}
.brand-slide:hover img{ filter:none; opacity:1; }
.brand-slide__name{
	color:#efefef;
	font-weight:900;
	text-transform:uppercase;
	font-size:16px;
	letter-spacing:1px;
	opacity:.7;
	text-align:center;
}
.litle-bottom-title--brands{
	color:#efefef;
	font-weight:900;
	text-transform:uppercase;
	font-size:20px;
	border-bottom:4px solid var(--v380-primary);
	display:inline-block;
	padding-bottom:8px;
	margin-bottom:30px;
}

@media screen and (max-width: 1200px){
	.v380-slider--brands .v380-slider__slide{ flex:0 0 calc((100% - 80px) / 5); }
}
@media screen and (max-width: 992px){
	.v380-slider--brands .v380-slider__slide{ flex:0 0 calc((100% - 60px) / 4); }
}
@media screen and (max-width: 576px){
	.v380-slider{ padding:0 40px; }
	.v380-slider--brands .v380-slider__slide{ flex:0 0 calc((100% - 20px) / 2); }
	.v380-slider__arrow{ width:36px; height:36px; font-size:18px; }
}

/* ---------- Поиск ---------- */
.search-summary{ font-size:16px; margin-bottom:15px; }

/* Убираем прежний внутренний скролл у выпадающего списка. */
.catalog-menu__dropdown{
	min-width:320px;
	max-width:340px;
	padding:8px 0;
}
.catalog-menu__dropdown > .catalog-menu__list{
	max-height:none;
	overflow:visible;
}

.catalog-menu__list{ list-style:none; margin:0; padding:0; }
.catalog-menu__item{ position:static; }
.catalog-menu__link{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	padding:10px 18px;
	font-size:14px;
	color:var(--v380-text);
	line-height:1.3;
}
.catalog-menu__item:hover > .catalog-menu__link{
	background:var(--v380-primary);
	color:#fff;
}
.catalog-menu__item:hover > .catalog-menu__link .catalog-menu__arrow{ color:#fff; }

/* Широкая панель подразделов: открывается вправо от списка, без скролла */
.catalog-mega{
	display:none;
	position:absolute;
	top:0;
	left:100%;
	min-width:720px;
	max-width:900px;
	min-height:100%;
	background:#fff;
	border:1px solid #e5e5e5;
	border-left:none;
	box-shadow:0 10px 30px rgba(0,0,0,.15);
	padding:22px 26px;
	z-index:45;
}
.catalog-menu__item:hover > .catalog-mega{ display:block; }

.catalog-mega__inner{
	column-count:3;
	column-gap:30px;
}
.catalog-mega__group{
	break-inside:avoid;
	page-break-inside:avoid;
	margin-bottom:18px;
	display:inline-block;
	width:100%;
}
.catalog-mega__group-title{
	display:block;
	font-weight:700;
	font-size:14px;
	color:var(--v380-text);
	margin-bottom:6px;
	line-height:1.3;
}
.catalog-mega__group-title:hover{ color:var(--v380-primary); }
.catalog-mega__group-list{
	list-style:none;
	margin:0;
	padding:0;
}
.catalog-mega__group-list a{
	display:block;
	font-size:13px;
	color:#666;
	padding:3px 0;
	line-height:1.35;
}
.catalog-mega__group-list a:hover{ color:var(--v380-primary); }

.catalog-mega__all{
	display:inline-block;
	margin-top:10px;
	font-size:13px;
	font-weight:700;
	text-transform:uppercase;
	color:var(--v380-primary);
}

@media screen and (max-width: 1400px){
	.catalog-mega{ min-width:560px; max-width:640px; }
	.catalog-mega__inner{ column-count:2; }
}
@media screen and (max-width: 992px){
	.catalog-menu__dropdown{ max-width:none; width:100%; }
	.catalog-mega{
		display:none;
		position:static;
		min-width:0;
		max-width:none;
		border:none;
		box-shadow:none;
		padding:0 0 10px 26px;
	}
	.catalog-menu__item:hover > .catalog-mega{ display:none; }
	.catalog-menu__item.is-open > .catalog-mega{ display:block; }
	.catalog-mega__inner{ column-count:1; }
}

/* ---------- НОВЫЙ СЛАЙДЕР (transform вместо прокрутки) ---------- */
.v380-slider{
	position:relative;
	display:block;          /* было flex */
	padding:0 60px;
	max-width:1140px;
	margin:0 auto;
}
.v380-slider__viewport{
	overflow:hidden;
	width:100%;
}
.v380-slider__track{
	display:flex;
	gap:20px;
	overflow:visible;       /* прокрутка больше не используется */
	transition:transform .5s ease;
	will-change:transform;
}
.v380-slider__slide{
	flex:0 0 100%;
	min-width:0;
}

.v380-slider__arrow{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	width:46px;
	height:46px;
	border:1px solid rgba(255,255,255,.35);
	border-radius:50%;
	background:rgba(0,0,0,.4);       /* было rgba(255,255,255,.15) — терялось на светлом/пустом фоне */
	backdrop-filter:blur(6px);
	-webkit-backdrop-filter:blur(6px);
	color:#fff;
	font-size:22px;
	cursor:pointer;
	z-index:3;
	box-shadow:0 4px 14px rgba(0,0,0,.25);
	transition:background .15s, border-color .15s;
}
.v380-slider__arrow--prev{ left:0; }
.v380-slider__arrow--next{ right:0; }
.v380-slider__arrow:hover{ background:var(--v380-primary); border-color:var(--v380-primary); }

/* Точки */
.v380-slider__dots{
	display:flex;
	justify-content:center;
	gap:8px;
	margin-top:22px;
}
.v380-slider__dot{
	width:10px;
	height:10px;
	padding:0;
	border:1px solid rgba(255,255,255,.5);
	border-radius:50%;
	background:rgba(255,255,255,.55);   /* было rgba(255,255,255,.35) — тоже мало заметно без наведения */
	cursor:pointer;
	transition:background .15s, transform .15s;
}
.v380-slider__dot:hover{ background:rgba(255,255,255,.8); }
.v380-slider__dot.is-active{
	background:var(--v380-primary);
	border-color:var(--v380-primary);
	transform:scale(1.25);
}

/* Полная ширина — используется для слайдера портфолио, чтобы карточка
   растягивалась от края до края секции, а не была зажата в 1140px. */
.v380-slider--full{
	max-width:none;
	padding:0 70px;
}
.v380-slider--full .v380-slider__arrow--prev{ left:20px; }
.v380-slider--full .v380-slider__arrow--next{ right:20px; }
@media screen and (max-width: 576px){
	.v380-slider--full{ padding:0 44px; }
}

/* Бренды — несколько логотипов в кадре */
.v380-slider--brands .v380-slider__slide{ flex:0 0 calc((100% - 100px) / 6); }
.v380-slider--brands .v380-slider__dots{ margin-top:16px; }
.v380-slider--brands .v380-slider__dot{ background:rgba(255,255,255,.25); }
.v380-slider--brands .v380-slider__dot.is-active{ background:var(--v380-primary); }

@media screen and (max-width: 1200px){
	.v380-slider--brands .v380-slider__slide{ flex:0 0 calc((100% - 80px) / 5); }
}
@media screen and (max-width: 992px){
	.v380-slider--brands .v380-slider__slide{ flex:0 0 calc((100% - 60px) / 4); }
}
@media screen and (max-width: 576px){
	.v380-slider{ padding:0 44px; }
	.v380-slider--brands .v380-slider__slide{ flex:0 0 calc((100% - 20px) / 2); }
	.v380-slider__arrow{ width:38px; height:38px; font-size:18px; }
}

/* ---------- РАЗДЕЛ КАТАЛОГА: сайдбар + товары ---------- */
.catalog-layout{
	display:flex;
	align-items:flex-start;
	gap:30px;
	margin-bottom:40px;
}
.catalog-main{
	flex:1 1 auto;
	min-width:0;
}

.catalog-sidebar{
	flex:0 0 260px;
	width:260px;
}
.catalog-sidebar__box{
	border:1px solid #eee;
	background:#fafafa;
	padding:18px;
	position:sticky;
	top:20px;
}
.catalog-sidebar__title{
	font-weight:900;
	text-transform:uppercase;
	font-size:13px;
	color:var(--v380-text);
	margin:0 0 12px;
	padding-bottom:10px;
	border-bottom:2px solid var(--v380-primary);
}
.catalog-sidebar__back{
	display:inline-flex;
	align-items:center;
	gap:8px;
	font-size:13px;
	color:var(--v380-muted);
	margin-bottom:12px;
}
.catalog-sidebar__back:hover{ color:var(--v380-primary); }

.catalog-sidebar__list{
	list-style:none;
	margin:0;
	padding:0;
}
.catalog-sidebar__list li{ margin:0; }
.catalog-sidebar__link{
	display:block;
	padding:8px 10px;
	font-size:14px;
	line-height:1.35;
	color:var(--v380-text);
	border-left:3px solid transparent;
	transition:.15s;
}
.catalog-sidebar__link:hover{
	background:#fff;
	border-left-color:var(--v380-primary);
	color:var(--v380-primary-dark);
}
.catalog-sidebar__link.is-active{
	background:#fff;
	border-left-color:var(--v380-primary);
	font-weight:700;
}

/* В раскладке с сайдбаром сетка товаров уже — уменьшаем число колонок */
.catalog-main .catalog-products--grid{ grid-template-columns:repeat(3, 1fr); }

@media screen and (max-width: 1200px){
	.catalog-main .catalog-products--grid{ grid-template-columns:repeat(2, 1fr); }
}
@media screen and (max-width: 992px){
	.catalog-layout{ flex-direction:column; }
	.catalog-sidebar{ flex:none; width:100%; }
	.catalog-sidebar__box{ position:static; }
	.catalog-sidebar__list{
		display:flex;
		flex-wrap:wrap;
		gap:8px;
	}
	.catalog-sidebar__link{
		border:1px solid #ddd;
		border-left-width:3px;
		background:#fff;
	}
	.catalog-main .catalog-products--grid{ grid-template-columns:repeat(2, 1fr); }
}
@media screen and (max-width: 576px){
	.catalog-main .catalog-products--grid{ grid-template-columns:1fr; }
}

/* =========================================================
   21. ГАЛЕРЕЯ ЗАПИСИ (стандартный шорткод WordPress [gallery])
   В теме не было стилей под родные классы .gallery/.gallery-item —
   поэтому вложения просто шли одной колонкой друг под другом.
   Ниже — сетка на CSS Grid без скруглений, с ровными карточками
   и лёгким зумом фото при наведении.
   ========================================================= */
.gallery{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:16px;
	margin:0 0 30px;
	padding:0;
	list-style:none;
}
.gallery-item{
	margin:0;
	list-style:none;
}
.gallery-icon{
	position:relative;
	overflow:hidden;
	aspect-ratio:4 / 3;         /* приводим карточки к одной пропорции */
	background:#f2f2f2;
	border:1px solid #e5e5e5;  /* без скруглений — просто тонкая рамка */
}
.gallery-icon a{
	display:block;
	width:100%;
	height:100%;
}
.gallery-icon img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center;
	transition:transform .3s ease;
}
.gallery-icon a:hover img{ transform:scale(1.06); }

.gallery-caption{
	margin-top:8px;
	font-size:13px;
	color:var(--v380-muted);
	text-align:center;
}

/* Число колонок задаётся классом gallery-columns-N, который WP
   добавляет автоматически исходя из настройки в шорткоде/блоке. */
.gallery-columns-1{ grid-template-columns:repeat(1, 1fr); }
.gallery-columns-2{ grid-template-columns:repeat(2, 1fr); }
.gallery-columns-3{ grid-template-columns:repeat(3, 1fr); }
.gallery-columns-4{ grid-template-columns:repeat(4, 1fr); }
.gallery-columns-5{ grid-template-columns:repeat(5, 1fr); }
.gallery-columns-6{ grid-template-columns:repeat(6, 1fr); }
.gallery-columns-7{ grid-template-columns:repeat(7, 1fr); }
.gallery-columns-8{ grid-template-columns:repeat(8, 1fr); }
.gallery-columns-9{ grid-template-columns:repeat(9, 1fr); }

@media screen and (max-width: 768px){
	.gallery-columns-4,
	.gallery-columns-5,
	.gallery-columns-6,
	.gallery-columns-7,
	.gallery-columns-8,
	.gallery-columns-9{ grid-template-columns:repeat(3, 1fr); }
}
@media screen and (max-width: 576px){
	.gallery-columns-3,
	.gallery-columns-4,
	.gallery-columns-5,
	.gallery-columns-6,
	.gallery-columns-7,
	.gallery-columns-8,
	.gallery-columns-9{ grid-template-columns:repeat(2, 1fr); }
	.gallery{ gap:10px; }
}

/* =========================================================
   22. CONTACT FORM 7 — сообщения об отправке
   Плагин выводит .wpcf7-response-output без собственных стилей,
   поэтому текст наследовал обычный тёмный/серый цвет и терялся
   на белом фоне формы. Добавляем видимое оформление под каждый
   статус (ошибка/успех/спам/невалидные поля).
   ========================================================= */
.wpcf7-response-output{
	margin:16px 0 0;
	padding:14px 18px;
	border-radius:4px;
	font-size:14px;
	line-height:1.5;
}

/* По умолчанию (и на случай, если плагин не проставит доп. класс) —
   трактуем как ошибку, это самый частый случай сообщения. */
.wpcf7-response-output{
	color:#c0392b;
	background:#fdecea;
	border:1px solid #f3b7b0;
}

/* Успешная отправка */
.wpcf7-mail-sent-ok{
	color:#1e7e34;
	background:#e8f7ee;
	border:1px solid #b7e3c6;
}

/* Ошибка отправки / невалидные поля / спам-фильтр — тот же красный вид */
.wpcf7-validation-errors,
.wpcf7-mail-sent-ng,
.wpcf7-spam-blocked,
.wpcf7-aborted{
	color:#c0392b;
	background:#fdecea;
	border:1px solid #f3b7b0;
}

/* Подсветка конкретных невалидных полей внутри формы */
.wpcf7-not-valid{
	border-color:#c0392b !important;
}
.wpcf7-not-valid-tip{
	display:block;
	margin-top:6px;
	color:#c0392b;
	font-size:13px;
}
