*, *:after, *:before {
   box-sizing: border-box;
   padding: 0;
   margin: 0;
   /* добавим плавность переходов для всех элементов страницы*/
}
ul {
   list-style: none;
}
a {
   text-decoration: none;
   outline: none;
}
img {
   display: block;
   width: 100%;
}
h1, h2, h3, h4, h5, h6 {
   font-weight: normal;
   font-size: 14px;
	font-weight: 600;

}
h1{
    font-size: 16px;
}
h2{
    font-size: 16px;
}

.error  {
	margin: 0 auto;
	padding: 10px 20px 0;
    color: red;
	font-size: 14px;
    letter-spacing: 1px;
    font-weight: 600;
}
body {
   font-family: 'Open Sans', arial, sans-serif;
   font-size: 14px;
   line-height: 1;
   color: #373737;
   background: #e9e9e9;
   
}
/* добавим очистку потока для всех контейнеров, внутри которых задано обтекание дочерних элементов */
header:after, .container:after, footer:after, .widget-posts-list li:after, #subscribe:after {
   content: "";
   display: table;
   clear: both;
}
/* стилевой класс, который управляет шириной контейнера сетки*/


.tox-statusbar__branding {
	 display: none;
}

.container {
	display: flex;
	margin: 0 auto;
	width: 100%;
	max-width: 1240px;
	padding: 20px;
}

.left-column {
    max-width: 250px;
	width: 250px;
	margin-right: 20px;
    border-radius: 10px;
}

.right-column { 
    flex-grow: 1;
	border: 0px solid #EBEBE3;
}

.fixed-bottom { /* Нижний блок при малых екранах */
	 display: none;
	 }

.content {
	width: 100%;
    background-color: #fff;
	margin: 0 auto 10px;
	padding: 20px;
    border-radius: 10px;
}
/* меню */

#menu {
	width: 100%;
    max-width: 250px;
	min-width: 250px;
	margin-right: 20px;
	padding: 20px;
    border-radius: 10px;
	background: #FFF; 
}


#menu li {
	width: 100%;
    display: block; /* Меняем значение на block, чтобы строки были вертикальными */
	border-bottom: 1px solid #EBEBE3;
}

#menu a {
    color: #111;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 600;
    display: block;
    line-height: 40px;
    text-decoration: none; /* Убираем подчеркивание ссылок */
	align-items: center; 
    justify-content: space-between;
}

#menu a:hover {
    color: #1874cd;
}
#menu a:before {
  content: "\27A4";
  margin-right: 16px;
}

/* кнопка переключения меню, появляющаяся при ширине 768px */
.nav-toggle {
   display: none;
   position: relative;
   float: right;
   width: 40px;
   height: 40px;
   margin-left: 20px;
   background: #1874cd;
   cursor: pointer;
}
.nav-toggle span {
   display: block;
   position: absolute;
   top: 19px;
   left: 8px;
   right: 8px;
   height: 2px;
   background: white;
}
.nav-toggle span:before, .nav-toggle span:after {
   content: "";
   position: absolute;
   display: block;
   left: 0;
   width: 100%;
   height: 2px;
   background: white;
}
.nav-toggle span:before {
   top: -10px;
}
.nav-toggle span:after {
   bottom: -10px;
}
/* класс, который будет добавлен в верхнему меню при нажатии на кнопку и покажет скрытое меню*/
#menu.active {
   max-height: 100%; 
}



.horizontal-menu ul {
    list-style-type: none;
    margin: 0px auto 10px ;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}

.horizontal-menu li {
	margin: 10px 20px 10px 0px; 
    display: block; /* Гарантирует, что каждый пункт меню начнет с новой строки */
	}

.horizontal-menu a {
    text-decoration: none;
	font-size: 16px; 
	font-weight: 600;
    color: #424954;
}

.horizontal-menu a:hover {
    color: #3F8EFA;
}

.horizontal-menu li.active a {
    color: #3F8EFA;
}





.log_form { 
	max-width: 500px; 
	width: 100%;  
	border: 0px solid #000;
	margin: 50px auto;
}

.postcard {
   
   margin: 10px auto 0;
   padding: 20px;
   font-family: 'Roboto', sans-serif;
   color: #373737;
}
.form-row {
   margin-bottom: 10px;
    font-size: 16px;
}
.form-row input, .form-row textarea {
   width: 100%;
   margin: 10px auto 0;
   padding: 0 10px;
   line-height: 35px;
   border-width: 0;
   outline: none;
   border: 1px solid #DDDDDD;
   border-top: 1px solid #DDDDDD;
   border-bottom: 2px solid #DDDDDD;

}

.form-row input:focus , .form-row textarea:focus  {
   border-bottom: 2px solid green;

}

.form-row input[type="submit"] {
	width: 100%;
   padding: 10px 20px;
   margin-top: 10px;
   background: #1874CD;
   cursor: pointer;
   font-size: 16px;
   letter-spacing: 2px;
   font-weight: 600;
   color: #fffdee;
   text-transform: uppercase; 
   border-radius: 5px;
   white-space: normal;
}
.form-row input[type=submit]:hover {
   background: #009ACD;
}






.product {
	width: 100%;
    background-color: #fff;
	margin: 0 auto 20px;
	padding: 20px;
    border-radius: 10px;
}

.product h2 {
	line-height: 1.5;
}
.product a {
	font-weight: 600;
	color: #3F8EFA;
}
.product p {
	margin-top: 10px;
}
.product span {
	font-weight: 600;
}

.product-top-block {
  display: flex;
  border-bottom: 1px solid #DDDDDD;
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.product-image img {
  width: 150px;
  height: 150px;
  object-fit: cover;
  border-radius: 5px;
}
.product-left-column {
	width: 100%;
	max-width: 160px;
	margin-right: 10px;
	
}

.product-right-column {
  flex-grow: 1;
}


.product-bottom-block select,
.product-bottom-block button {
	display: inline-block;
	margin: 0 10px;
	padding: 10px 20px;
	
}
.product-bottom-block {
  display: flex;
  flex-wrap: wrap;
  align-items: center; 
}

.product-price {
	
	display: inline-block;
	margin-right: 10px;
	padding: 12px 15px;
	font-weight: 600;
	border-radius: 5px;
	background: #e9e9e9;
}

.product_block {
  display: flex;
  flex-wrap: wrap;
}

.left_block {
  flex: 1;
  padding-right: 10px;
}

.right_block {
  flex: 1;
  padding-left: 10px; /* Меняем padding-right на padding-left */
}


.forma {
   max-width: 100%;
   margin: 10px 10px;
   padding: 0px;
   background: #fff;
   border: 0px solid #C42061;
   color: #605756;
}



.forma-row {
   margin-bottom: 10px;
   font-weight: 600;
   font-size: 14px;
}
.forma-row input, .forma-row textarea {
   width: 100%;
   margin: 10px auto 0;
   padding: 10px;
   padding-right: 100px;
   line-height: 20px;
   border-width: 0;
   outline: none;
   border: 1px solid #DDDDDD;
   border-top: 1px solid #DDDDDD;
   border-bottom: 2px solid #DDDDDD;

   border-radius: 5px;
}

.forma-row input:focus , .forma-row textarea:focus  {
   border-bottom: 2px solid green;

}

.forma input[type="submit"] {
	width: auto; /* Добавьте это свойство */
    padding: 10px 20px;
    margin-top: 10px;
    background: #1874CD;
    border-width: 0;
    cursor: pointer;
    outline: none;
    font-size: 14px;
	font-weight: 600;
    letter-spacing: 1px;
    color: #fffdee;
    text-transform: uppercase;
    transition: 1s cubic-bezier(.165, .84, .44, 1);
    display: inline-block; /* Добавлено свойство */
}

.forma-row input[type=submit]:hover {
    background: #009ACD;
}

.file-upload input[type="file"] {
    display: none;
}

.file-upload label {
    background-color: #f9f9f9;
    border: 1px solid #ccc;
    padding: 8px 15px;
    cursor: pointer;
    font-size: 16px;
    display: inline-block;
    margin: 10px 0;
    border-radius: 5px;
}

.file-upload label:hover {
    background-color: #e9e9e9;
}

.file-upload input[type="file"]:focus + label {
    outline: 1px dotted #000;
    outline: -webkit-focus-ring-color auto 5px;
}

/* Если нужно стилизовать кнопку "Выбрать файл" */
.file-upload input[type="file"]::-webkit-file-upload-button {
    background-color: #1874CD;
    border: 1px solid #1874CD;
    padding: 8px 15px;
    cursor: pointer;
    font-size: 16px;
    border-radius: 5px;
}

.file-upload input[type="file"]::-webkit-file-upload-button:hover {
    background-color: #e9e9e9;
}
.file	{
	width: auto; /* Добавьте это свойство */
    margin: 10px 0;
    color: #1874CD;
}

.image-preview {
    position: relative;
    max-width: 200px;
    margin-bottom: 10px;
    display: none;
}

.delete-icon {
    position: absolute;
    top: 0px;
    right: 0px;
    width: auto;
    height: auto;
    background-color: #FF0000;
    font-size: 25px;
    color: #FFFF00;
    font-weight: bold;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0px 5px;
	border: 1px solid #FFFF00;
}

.delete-icon::after {
    content: '×';
}

.custom-form * {
    box-sizing: initial;
    padding: initial;
    margin: initial;
    border: initial;
    outline: initial;
}

.forma-row select {
	margin: 10px 0;
   width: 100%;
   padding: 10px;
   font-size: 16px;
   line-height: 1.5;
   border: 1px solid #DDDDDD;
   border-top: 1px solid #DDDDDD;
   border-bottom: 2px solid #DDDDDD;
   outline: none;
   border-radius: 5px;
   background-color: #ffffff;
}

.forma-row select:focus {
   border-bottom: 2px solid green;
}


#char-count {
    font-size: 12px;
    color: #999;
}
.textarea-wrapper {
    position: relative;
}
.input-wrapper {
    position: relative;
}
.char-count {
    position: absolute;
    bottom: 8px;
    right: 10px;
    font-size: 12px;
    color: #999;
}
.char-counts {
    position: absolute;
    bottom: 15px;
    right: 10px;
    font-size: 12px;
    color: #999;
	justify-content: center;
}


.table {
    margin: 10px auto;
    width: 100%;
    display: table;
    border-collapse: collapse;
    border-radius: 5px;
    overflow: hidden;
    line-height: 1.5;
	max-height: 400px; /* Замените на желаемую максимальную высоту */
    overflow-y: auto;
}

.row {
    display: table-row;
}

.cell {
    display: table-cell;
    border: 1px solid #DDDDDD;
    padding: 10px;
    overflow: hidden;
    box-sizing: border-box;
}

.cell.name {
    min-width: 150px;
	width: 200px;
	max-width: 250px;
    font-weight: bold;
}

.cell.description {
    max-height: 200px;
    overflow-y: auto;
}

.row:nth-child(odd) {
    background-color: #fff;
}

.row:nth-child(even) {
    background-color: #f2f2f2;
}
.scrollable-list {
    max-height: 200px;
    overflow-y: auto;
    margin: 0;
    padding: 0;
}










/* Медиа-запрос для адаптивности */
@media (max-width: 768px) {
	
	.container {
	display: flex;
	margin: 0 auto 100px;
	width: 100%;
	max-width: 1240px;
	padding: 20px;
}
  .product-top-block {
    flex-direction: column;
  }

  .product-right-column {
    order: 0; /* Возвращаем правую колонку обратно на место */
    padding-left: 0; /* Убираем padding-left */
    padding-top: 10px; /* Добавляем padding-top */
  }
  
  .product-bottom-block label,
  .product-bottom-block select,
  .product-bottom-block button {
    width: 100%;
    margin-bottom: 10px; /* Добавляем отступ между элементами */
  }
}




@media (max-width: 768px) {
	
	
   /* показываем кнопку для переключения верхней навигации */
   .nav-toggle {
      display: block; 
   }
   .left-column {
	width: 0 ;
	margin: 0;
}
   /* скрываем верхнее меню, отменяем обтекание, позиционируем его, сместив на высоту шапки сайта */
   #menu { 
    max-height: 0;
    background: white;
    float: none;
    position: fixed; /* Используем fixed для прижимания к низу */
    overflow: hidden;
    bottom: 60px;
    right: 0;
    left: 0;
    margin: 0;
    padding: 0;
    z-index: 3;
    width: 100%; /* Растягиваем блок на всю ширину экрана */
	max-width: 100%;
   }
   

   /* делаем элементы списка блочными, чтобы они располагались друг под другом */
   #menu li {
      display: block;
      text-align: center;
      border-bottom: 1px solid #EBEBE3;
      margin-right: 0;
   }
   
   #menu a {
    color: #111;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 600;
    display: block;
    line-height: 50px;
    text-decoration: none; /* Убираем подчеркивание ссылок */
	align-items: center; 
    justify-content: space-between;
}

#menu a:hover {
    color: #EF5A42;
}

#menu a:before {
  display: none;
}

   .fixed-bottom { /* Нижний блок при малых екранах */
    background-color: #fff;
    width: 100%;
    position: fixed;
    bottom: 0;
    padding: 10px;
	display: flex;
    align-items: center; 
    justify-content: space-between;
}

	.fixed-content { /* Нижний блок при малых екранах - основной текст*/
    flex-grow: 1; 
    text-align: center; 
}

.main-tabs_list li {
	display: block;
    margin: 20px;
    position: relative;
    flex: 0 0 auto; /* Ограничиваем элементы, чтобы они не растягивались */
}

  
  
}

@media (max-width: 480px) {
   
   /* позиционируем меню на увеличившуюся высоту шапки */
   #menu {
      bottom: 50px;
   }

}

