/* CSS-переменные */
:root {
  --primary-color: #1c2d46;       /* Тёмно-серый/синеватый */
  --secondary-color: #374151;     /* Тёмно-серый */
  --accent-color: #e5e7eb;        /* Светло-серый */
  --background-color: #f3f4f6;    /* Светлый фон */
  --white: #ffffff;
  --transition-speed: 0.3s;
}

/* Сброс стилей */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Базовые стили */
html {
  font-size: 16px;
}
body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

body {
   background-color: var(--background-color);
  color: var(--secondary-color);
  line-height: 1.6;
}

/* Шапка */
header {
  background: linear-gradient(135deg, var(--primary-color), #0f172a);
  color: var(--white);
  padding: 20px 10px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);

  top: 0;
  z-index: 1000;
}
header a {
  color: #ffffff;
  
}
.header-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.branding h1 {
  font-size: 1.75rem; /* ~28px */
  letter-spacing: 1px;
}

.contact-info {
  font-size: 0.875rem; /* ~14px */
  text-align: right;
}

.contact-info p {
  margin: 2px 0;
}

/* Основной контейнер */
.container {
  max-width: 1232px;
  margin: 20px auto;
  display: flex;
  gap: 40px; /* Увеличенный промежуток между колонками */
  padding: 0 36px;
}

/* Левое меню (без рамок, фона и теней) */
aside {
  width: 250px;
  background-color: transparent;
  padding: 0;
  flex-shrink: 0;
}

.menu {
  list-style: none;
  margin-top: 10px;

}


.menu li {
  margin-bottom: 10px;
}

.menu li a {
  display: inline-block;
  color: var(--secondary-color);
  text-decoration: none;
}

.menu li a:hover {
  color: var(--primary-color);
  text-decoration: underline;
}


.language-switch .lang-btn.active {
  font-weight: bold;
  text-decoration: underline;
   color: #ffffff; /* Цвет для неактивных кнопок */
}

.lang-btn {
  cursor: pointer;
  padding: 0 10px;
}

/* Основной контент */
main {
  flex-grow: 1;
  background-color: transparent;
  padding: 0;
}



/* Флюидная типографика для заголовков */
main h2 {
  font-size: calc(1.3rem + 0.5vw);
  color: var(--primary-color);
  margin-bottom: 15px;
}

main p {
  margin-bottom: 15px;
  font-size: 1rem;
}

/* Статьи/новости */
article.news-item {
  margin-bottom: 20px;
  border-bottom: 1px solid #ddd;
  padding-bottom: 10px;
}

article.news-item h3 {
  font-size: calc(1.25rem + 0.3vw);
  margin-bottom: 8px;
  color: var(--primary-color);
}

article.news-item p {
  font-size: 1rem;
  line-height: 1.5;
}

article.news-item a {
  color: var(--primary-color);
  text-decoration: underline;
  transition: color var(--transition-speed);
}

article.news-item a:hover {
  color: #555;
}


/* Анимация появления контента */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Адаптивность */
@media (max-width: 1200) {
  .container {
    flex-direction: column;
  }
  aside, main {
    width: 100%;
    margin-bottom: 20px;
  }
}

@media (max-width: 768px) {
  html {
    font-size: 15px;
  }
}


/* Стили для активного пункта меню */
.menu li.active a {
  font-weight: bold;
  text-decoration: underline;
  color: var(--primary-color);
}
footer {
  background-color:  var(--primary-color); /* тёмно-серый фон */
  color: #fff;
  padding: 20px 0;
}

.footer-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
  padding: 0 10px;
}

.footer-column {
  flex: 1 1 200px;
  margin-bottom: 20px;
}

.footer-column h4 {
  font-size: 1.125rem;
  margin-bottom: 10px;
}

.company-logos a img {
  width: 80px;
  margin-right: 10px;
}

.footer-bottom {
  text-align: center;
  font-size: 0.875rem;
  border-top: 1px solid #2c2c2c;
  padding-top: 10px;
}

footer a {
  color: #ffffff;
  text-decoration: none;
}

footer a:hover {
  text-decoration: underline;
}
.product-item {
  display: flex;
  /* Меняем align-items, чтобы картинка была «по центру» относительно текста */
  align-items: center;
  /* Расстояние между картинкой и текстом */
  gap: 11px;
  /* Отступ снизу */
  margin-bottom: 12px;
  /* Отступ сверху, если нужен */
  margin-top: 15px;
  /* Чтобы можно было добавить псевдоэлемент */
  position: relative;
}

/* Картинка */
.product-item img {
  width: 80px; /* При необходимости фиксируем ширину */
  height: auto;
}

/* Оформление ссылок в правой колонке */
#right-ads .product-item p {
  font-weight: 500; /* Чуть жирнее обычного текста */
  font-size: 1rem; /* Размер, как в меню */
  color: var(--primary-color);
  transition: color var(--transition-speed), text-shadow var(--transition-speed);
  line-height: 1.3;
}

/* Делаем текст кликабельным, добавляем оформление */
#right-ads .product-item p a {
  color: var(--primary-color); /* Основной цвет ссылок */
  text-decoration: none; /* Убираем подчёркивание */
  font-weight: normal; /* Обычный текст */  
  line-height: 1.3;
}/* Эффект при наведении */
#right-ads .product-item p a:hover {
  color: var(--secondary-color); /* Чуть темнее */
  text-decoration: underline; /* Подчёркивание */
  text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.1); /* Лёгкая тень */
}

/* Выделение аббревиатур жирным */
#right-ads .product-item p strong,
#right-ads .product-item p b {
  font-weight: bold;
}


/* Полоса между элементами, кроме последнего */
.product-item:not(:last-of-type)::after {
  content: "";
  display: block;
  height: 5px;
  margin: 10px 0; /* Отступ сверху и снизу у полосы */
  background: linear-gradient(
    to right,
    transparent 0%,
    #ccc 10%,
    #000 50%,
    #ccc 90%,
    transparent 100%
  );
}

/* Добавляем стили для .branding */
.branding {
  display: flex;
  align-items: center;
  gap: 10px;
}

/* Если логотип имеет класс .logo */
.branding .logo {
  width: 80px;
  height: auto;
}
.branding img.logo {
  width: 84px;            /* При необходимости можно менять размеры */
  height: auto;
}
/* Если логотип имеет класс .logo */
.branding .logo2 {
  width: 460px;
   height: auto;

}
.branding a {
  cursor: pointer;
}

.branding a:hover img {
  opacity: 0.85;
}
/* Если логотип имеет класс .logo */
.branding img.logo2 {
  width: 460px;
   height: auto;

}

/* Заголовок (русский/английский) */
.branding h1 {
  margin: 0;
  font-size: 1.75rem;
  letter-spacing: 1px;
}
.branding {
  display: flex;          /* Логотип и заголовок в одну строку */
  align-items: center;    /* Вертикальное выравнивание по центру */
  gap: 26px;              /* Расстояние между логотипом и текстом */
}



.branding h1 {
  margin: 0;              /* Убираем отступы, чтобы текст не смещался */
  font-size: 2rem;     /* Примерный размер заголовка */
  letter-spacing: 1px;    /* Как было у вас в коде */
}/* Делаем текст ссылок таким же, как в меню, и подчёркнутым */
/* Общий стиль для ссылок на продукцию */
#product-menu li a {
  color: var(--primary-color); /* Основной цвет ссылок */
  font-weight: 500; /* Чуть толще стандартного */
  text-decoration: none; /* Убираем стандартное подчёркивание */
  transition: color var(--transition-speed), text-shadow var(--transition-speed);
  display: inline-block; /* Делаем ссылки блочными */
  padding: 5px 0; /* Небольшие отступы для удобства клика */
}

/* Эффект при наведении */
#product-menu li a:hover {
  color: var(--secondary-color); /* Темнее при наведении */
  text-decoration: underline; /* Добавляем подчёркивание */
  text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.1); /* Лёгкая тень */
}


/* Если аббревиатуры обёрнуты в <strong> или <b>, делаем их жирными */
#product-menu li a strong,
#product-menu li a b {
  font-weight: bold;
}
/* Адаптивность */
@media (max-width: 992px) {
  .container {
    flex-direction: column;
  }
  aside, main {
    width: 100%;
    margin-bottom: 20px;
  }
}

@media (max-width: 768px) {
  html {
    font-size: 15px;
  }
}
/* Анимация появления контента */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Стили для центрального окна с контентом */
.content-wrapper {
  max-width: 800px;           /* Ограничиваем ширину для удобства чтения */
  margin: 20px auto;          /* Центрируем блок, добавляем отступ сверху и снизу */
  padding: 20px;              /* Внутренние отступы для "дыхания" контента */
  background-color: var(--white);
  border: 1px solid #ddd;     /* Лёгкая рамка для выделения блока */
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

/* Заголовки */
.content-wrapper h2 {
  font-size: 2rem;                        /* Размер заголовка */
  margin: 0 0 15px 0;                     /* Отступ снизу для разделения от текста */
  color: var(--primary-color);
  border-bottom: 2px solid var(--primary-color); /* Нижняя линия для визуального выделения */
  padding-bottom: 10px;
}

.content-wrapper h3 {
  font-size: 1.75rem;
  margin: 20px 0 15px 0;
  color: var(--primary-color);
  border-bottom: 1px solid var(--primary-color);
  padding-bottom: 8px;
}

/* Абзацы */
.content-wrapper p {
  font-size: 1rem;
  line-height: 1.6;
  margin: 15px 0;       /* Вертикальные отступы между абзацами */
  text-align: justify;  /* Выравнивание по ширине */
  text-indent: 1.5em;   /* Отступ первой строки для удобства чтения */
}

/* Списки */
.content-wrapper ol,
.content-wrapper ul {
  margin: 15px 0 15px 30px;  /* Отступ слева для вложенных списков */
  line-height: 1.6;
}

.content-wrapper li {
  margin-bottom: 5px;
}

.content-wrapper img {
  display: block;           /* Делает изображение блочным элементом */
  margin: 20px auto;        /* Центрирует изображение по горизонтали с отступами сверху и снизу */
  max-width: 100%;          /* Адаптивность – изображение не выходит за пределы контейнера */
  height: auto;             /* Сохраняется пропорция изображения */
}


/* Если требуется добавить подписи к изображениям, используйте семантическую обёртку <figure> */
figure {
  margin: 20px auto;        /* Центрирование и отступы */
  text-align: center;       /* Центровка подписи внутри figure */
}

figure img {
  max-width: 100%;
  height: auto;
}

figcaption {
  font-size: 0.9rem;        /* Размер шрифта для подписи */
  color: var(--secondary-color);
  margin-top: 8px;          /* Отступ между изображением и подписью */
  text-align: center;       /* Центровка подписи */
}

img {
  display: block;           /* Изображение ведет себя как блочный элемент */
  max-width: 100%;         /* Не выходит за границы родительского контейнера */
  height: auto;            /* Сохраняет пропорции */
      /* Горизонтальное центрирование + отступ сверху/снизу */
}

/* Пример оформления таблиц (если понадобятся) */
.content-wrapper table {
  width: 100%;
  border-collapse: collapse;
  margin: 20px 0;
}
.content-wrapper th,
.content-wrapper td {
  border: 1px solid #ccc;
  padding: 8px;
  text-align: center;
}
