:root {
  --fs-16: 16px;
}

*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

body{
	font-size: 18px;
	font-family: 'Stolzl Book';
	color: #1e1e1e;
	transition: 0.2s ease-in-out;
}

h1{
	margin-bottom: 30px;
	font-weight: 400;
	font-size: 30px;
	text-align: center;
}

section{
	overflow: hidden;
}

header, section, footer{
	padding-left: 30px;
	padding-right: 30px;
}

section > div > div{
	padding: 50px 0;
}

.container{
	max-width: 1500px;
	margin: 0 auto;
}

a{
	color: #1e1e1e;
	text-decoration: none;
}

/* HEADER */

.header{
	display: flex;
	flex-direction: column;
	padding-top: 50px;
	gap: 40px;
}

.header_top{
	display: flex;
	justify-content: space-between;
	gap: 30px;
	align-items: center;
}

.menu ul{
	display: flex;
	list-style: none;
	gap: 20px;
	justify-content: center;
}

.menu ul li a{
	text-transform: uppercase;
	display: flex;
	align-items: center;
}

.dropbtn span{
	display: flex;
	align-items: center;
	height: 10px;
	margin-top: -2px;
	margin-left: 4px;
	color: #981853;
	font-weight: 700;
	transition: 0.2s ease-in-out;
}

.logo{
	width: 262px;
}

.logo img{
	width: 100%;
}

.header_top form{
	max-width: 220px;
	width: 100%;
	position: relative;

}

#site-search{
	border-radius: 5px;
	outline: none;
	border: 1px solid #e8e1d2;
	padding: 10px 40px 10px 10px;
	width: 100%;
	transition: 0.2s ease-in-out;
}

.header_top form::after{
	content: '';
	display: flex;
	background: url('../img/search.png');
	right: 10px;
	top: 55%;
	transform: translateY(-55%);
	width: 25px;
	position: absolute;
	height: 25px;
	object-fit: cover;
	background-size: 100%;
	z-index: 10;
}

.menu ul > li a, .menu ul > div > .dropbtn{
	padding: 15px 10px;
}



.menu-close{
	position: absolute;
	right: 50px;
	top: 50px;
	cursor: pointer;
	display: none;
}

.menu-close:before, .menu-close:after {
	content: ""; 
	position: absolute; 
	width: 24px; 
	height: 4px; 
	background: gray;
}
div:before {
	transform: rotate(45deg);
}
div:after {
	transform: rotate(-45deg);
}

/* dropdown menu */

/* Кнопка выпадающего списка */
.dropbtn {
	display: flex;
	align-items: center;
  background-color: none;
  color: black;
  border: none;
  cursor: pointer;
  font-weight: 500;
  z-index: 2;
  position: relative;
  transition: 0.5s ease-in-out;
}



/* Контейнер <div> - необходим для размещения выпадающего содержимого */
.dropdown {
  position: relative;
  display: inline-block;
  
}

.dropdown > li > a{
	color: inherit;
	transition: 0.25;
}

/* Выпадающее содержимое (скрыто по умолчанию) */
.dropdown-content {
  padding: 10px 0;
  opacity: 0;
  display: none;
  pointer-events: none;
  position: absolute;
  top: calc(100% + 5px);
  flex-direction: column;
  background-color: white;
  min-width: 160px;
  width: max-content;
  z-index: 210;
  transition: 0.25s opacity;
}

.dropdown-gap{
	height: 100vh;
	position: absolute;
	width: 5px;
	right: -5px;
	top: 0;
}

.dropdown-gap-main{
	width: 100%;
	position: absolute;
	height: 5px;
	top: 100%;
	right: auto;
	left: 0;
}

body.active, input.active{
	background: #d0d0d0;
	transition: 0.2s ease-in-out;
}

.dc-child{
	left: calc(5px + 100%);
	top: 0;
	background: #484848;
}

/* Ссылки внутри выпадающего списка */
.dropdown-content a,  .dropdown-content .dropbtn{
  color: black;
  padding-top: 10px;
  padding-bottom: 10px;
  text-decoration: none;
  display: block;
  transition: 0.2s ease-in-out;
}

.dropdown-content > a, .dropdown-content > div > .dropbtn{
	padding-left: 15px;
	padding-right: 15px;
}

.dc-child a{
	color: white;
}

.dc-child{
	bottom: auto;
}


.menu ul > .dropdown .dropdown .dropbtn:hover, .menu ul > .dropdown > .dropdown-content > a:hover{
	color: #981853;
}

.dropdown .dropdown .dropdown-content a:hover{
	text-decoration: underline;
}


/* Показать выпадающее меню при наведении курсора */
.dropdown:hover > .dropdown-content {display: flex; opacity: 1; pointer-events: all;}

/* Изменение цвета фона кнопки раскрывающегося списка при отображении содержимого раскрывающегося списка */
.dropdown:hover > .dropbtn {background-color: white; }
.dropdown:hover > .dropbtn span {transform: rotateZ(-90deg); }


/* hamburger menu */

.menu-mobile{
	align-items: center;
	justify-content: space-between;
	display: none;
}

.menu-mobile div{
	display: flex;
	align-items: center;

}

#menu__toggle {
	opacity: 0;
  align-items: center;
  display: none;

  width: 26px;
  height: 26px;
  cursor: pointer;
  z-index: 1;
}

.menu__btn {
  align-items: center;
  display: flex;
  width: 26px;
  height: 26px;
  cursor: pointer;
  z-index: 1;
  margin-left: 10px;
}

.menu__btn > span,
.menu__btn > span::before,
.menu__btn > span::after {
  display: block;
  position: absolute;
  width: 26px;
  height: 2px;

  background-color: black;

  transition-duration: .25s;
}

.menu__btn > span{
	position: relative;
}

.menu__btn > span::before {
  content: '';
  top: -8px;
}
.menu__btn > span::after {
  content: '';
  top: 8px;
}

/* MAIN */

.main{
	display: flex;
	flex-direction: column;
}

.main_text{
	display: flex;
	justify-content: center;
	align-items: flex-end;
	text-align: center;
}

.main_text div:nth-child(2){
	display: flex;
}

.main_text div:nth-child(2) a{
	display: flex;
}

.main_text div:nth-child(2) p{
	font-size: 14px;
	margin-left: 10px;
}

.main_text div:nth-child(1){
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.main_text div:nth-child(1) span{
	color: #981853;
}



.main_list{
	display: flex;
	gap: 30px 10px;
	flex-wrap: wrap;
	margin: 50px 0 0;
	justify-content: space-between;
}

.main_list a{
	width: 19%;
	position: relative;
}

.main_list a img{
	height: 300px;
	width: 100%;
	margin-bottom: 5px;
}

.main_list a p{
	margin-bottom: 3px;
}

.main_list a:hover {
	color: #981853;
}

/* ABOUT */

.about h1 {
	width: 100%;
}

.about{
	display: flex;
	flex-direction: column;
	align-items: center;
}

.about p{
	color: #7b7b7b;
	font-size: var(--fs-16);
	margin-bottom: 20px;
}

.about iframe{
	margin-top: 30px;
}

/* NEWS */

.news_list{
	display: flex;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 40px;
}

.news_list > a{
	max-width: 300px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.news_list a:hover p {
	color: #981853;
}

.news-date{
	font-size: var(--fs-16);;
}

.news-pretext{
	font-size: var(--fs-16);;
	color: #7b7b7b;
	line-height: 150%;
}

.news-all{
	border-bottom: 1px solid #7b7b7b;
	font-size: var(--fs-16);
}

.news-all:hover {
	border-bottom: none;
}
/* FOOTER */

.footer{
	border-top: 1px solid #1e1e1e;
	padding-top: 50px;
	margin: 50px 0 80px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.rights{
	color: #7b7b7b;
}

/* MEDIA */

@media (min-width: 1220px){

	.main_list a img {
    height: 350px;
  }

  .about iframe{
  	height: 600px;
  }

  :root {
  	--fs-16: 17px;
	}


	h1{
		font-size: 31px;
	}

	.news_list > a {
    max-width: none;
    width: 25%;
  }

}


@media (min-width: 1350px){

	.main_list a img {
    height: 400px;
  }

  .about iframe{
  	height: 730px;
  }

  :root {
  	--fs-16: 18px;
	}

	body{
		font-size: 20px;
	}

	h1{
		font-size: 32px;
	}

	.news_list > a {
    max-width: none;
    width: 25%;
  }

}


@media (max-width: 1220px){

	.main_list a{
		width: 220px;
	}

	.main_list{
		display: grid;
	  grid-template-columns: repeat(auto-fill, 220px);
	  grid-gap: 20px;
	  justify-content: space-between;
	}

	body{
		font-size: 17px;
	}

	.menu ul{
		gap: 5px;
	}

	.main_text{
		gap: 30px;
	}

	.menu ul > li a, .menu ul > div > .dropbtn{
		padding: 10px 7.5px;
	}

}

@media (max-width: 1023px){
	body{
		font-size: 16px;
	}
}

@media (max-width: 993px){
	.menu-mobile{
		display: flex;
	}

	.menu{
		background-color: white;
		position: fixed;
		width: 100%;
		left: 0;
		top: 0;
		z-index: 301;
		overflow-x: hidden;
		overflow-y: auto;
		height: 100vh;
		padding: 30px 20px;
		align-items: flex-start;
	}

	.menu ul > :last-child > :last-child{
		margin-bottom: 20px;
	}

	.menu ul{
		flex-direction: column;
		justify-content: flex-start;
		width: 100%;
	}

	.dropdown-content{
		transition: none;
	}

	.menu ul > .dropdown > .dropdown-content {
		display: flex !important;
		opacity: 1 !important;
		pointer-events: all !important;
		position: static;
		width: 100%;
	}

	.dc-child a:first-child{
		margin-top: 10px;
	}

	.dc-child a:last-child{
		margin-bottom: 10px;
	}

	.dc-child{
		position: static;
		max-height: 0;
		transform: scaleY(0);
		background: none;
		transition: 0.5s ease-in-out;
	}

	.dc-child a{
		color: black;
		padding-left: 30px;
	}

	/* Нейтрализовать hover-эффекты на мобиле */
	.dropdown:hover > .dropbtn { background-color: transparent; }
	.dropdown:hover > .dropbtn span { transform: none; }

	/* dc-child раскрывается только по классу .open */
	.dropdown.open > .dc-child {
		display: flex !important;
		max-height: 1000px;
		transform: scaleY(1);
	}

	.dropdown-gap-main{
		display: none;
	}

	.dropdown-gap{
		display: none;
	}

	.dropdown-content {
		padding: 0;
		opacity: 1;
		transition: none;
	}

	.menu{
		display: none;
	}

	.menu.active{
		display: flex;
	}

	body.overscroll{
		position: fixed;
		width: 100%;
		overflow-y: scroll;
	}

	.menu-close{
		display: block;
	}

	.news_list a p{
		font-size: 14px;
	}

	.news_list > a {
    gap: 10px;
  }

	.main_text div:nth-child(2) p {
    font-size: 12px;
    margin-left: 5px;
  }

  h1{
  	font-size: 26px;
  }

  .main_text div:nth-child(1) {
  	width: 60%;
  }


  .about iframe{
  	height: 400px;
  	width: 100%;
  }


	
}

@media (max-width: 768px){
	h1{
		text-align: center;
	}

	.main_text div:nth-child(2){
		display: none;
	}

	.main_list{
		display: flex;
		gap: 20px;
	}

	.main_list a{
		width: 47%;
	}

	.about iframe{
  	height: 350px;
  	width: 100%;
  }

  .header{
  	gap: 20px;
  	padding-top: 30px;
  }

  .header_top{
  	flex-direction: column;
  	gap: 10px;
  }

  .header-tel{
  	order: 1;
  	font-weight: 700;
  }

  .logo{
  	order: 2;
  }

  .header_top form{
  	order: 3;
  }

  .news_list{
  	flex-direction: column;
  }

  .news_list a{
  	width: 100%;
  }


}

@media (max-width: 480px){
	.about iframe{
  	height: 300px;
  }

  header, section, footer {
    padding-left: 15px;
    padding-right: 15px;
	}

	.main_list a img {
    height: 200px;
  }

  .main_text div:nth-child(1) {
    width: 100%;
	}

	section > div > div {
    padding: 30px 0;
	}

	.main_list{
		margin-top: 30px;
	}

	.footer {
    margin: 30px 0;
    padding-top: 20px;
  }

}

@media (max-width: 375px){
	.main_list a {
		width: 48%;
	}

	.main_list{
		gap: 10px;
	}

	body{
		font-size: 17px;
	}

	.main_text p{
		font-size: 17px;
	}

	h1{
		text-align: left;
		font-size: 24px;
		margin-bottom: 20px;
	}

	.about iframe{
  	height: 200px;
  }

  .menu{
  	padding: 30px 10px;
  }

}

.product_sale {
	background: #981853;
	color: #fff;
	padding: 4px 13px 6px;
	border-radius: 15px;
	font-size: 18px;
}
.product_icon {
	position: absolute;
	top: 15px;
	left: 15px;
	z-index: 100;
}

.detail_right {
	max-width: 470px !important;
}
.inner_page .cd-user-modal-container *, 
.inner_page .cd-user-modal-container div > * {
    color: #fff !important;
}
.inner_page p, .inner_page td, .inner_page div {
	font-size: 15px;
}
.inner_page A,
.inner_page A:hover {
	font-size: 15px;
}

/* ===== Search page ===== */
.search-page {
	max-width: 860px;
	margin: 0 auto;
	padding: 20px 0 40px;
}

.search-page form {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 24px;
}

.search-page form input[type=text] {
	flex: 1;
	padding: 10px 16px;
	font-size: 15px;
	border: 1px solid #ccc;
	border-radius: 3px;
	outline: none;
	transition: border-color .2s;
}

.search-page form input[type=text]:focus {
	border-color: #981853;
}

.search-page form input[type=submit] {
	padding: 10px 24px;
	background: #981853;
	color: #fff;
	border: none;
	border-radius: 3px;
	font-size: 14px;
	cursor: pointer;
	transition: background .2s;
	white-space: nowrap;
}

.search-page form input[type=submit]:hover {
	background: #7a1242;
}

/* Dividers between results */
.search-page hr {
	border: none;
	border-top: 1px solid #ececec;
	margin: 12px 0;
}

/* Result title links */
.search-page > a {
	display: block;
	font-size: 16px;
	font-weight: 500;
	color: #981853;
	text-decoration: none;
	margin-bottom: 4px;
}

.search-page > a:hover {
	text-decoration: underline;
}

.search-page > a b {
	font-weight: 700;
}

/* Snippet / article number */
.search-page > p {
	font-size: 14px;
	color: #555;
	margin: 2px 0 4px;
	line-height: 1.5;
}

/* Date and path breadcrumbs */
.search-page small {
	font-size: 12px;
	color: #aaa;
}

.search-page small a {
	color: #aaa;
	text-decoration: none;
}

.search-page small a:hover {
	text-decoration: underline;
}

/* Sorting row at the bottom */
.search-page > p:last-of-type {
	margin-top: 20px;
	font-size: 13px;
	color: #888;
	border-top: 1px solid #ececec;
	padding-top: 14px;
}

.search-page > p:last-of-type a {
	color: #981853;
}
img {
	max-width: 100%;
}
.contacts_page {
	display: flex;
}
.contacts_page__left {
	margin: 0 30px 0 0;
}
@media (max-width: 980px) {
	.contacts_page {
		display: block;
	}

	.contacts_page__left {
		margin: 0 0 30px 0;
	}
}

/* Touch-устройства: отключить hover-поведение чтобы iOS не требовал двойного тапа */
@media (hover: none) {
	.dropdown:hover > .dropdown-content { display: none; pointer-events: none; }
	.dropdown:hover > .dropbtn { background-color: transparent; }
	.dropdown:hover > .dropbtn span { transform: none; }

	/* Главный dropdown-content на мобиле всегда виден */
	.menu ul > .dropdown > .dropdown-content {
		display: flex !important;
		opacity: 1 !important;
		pointer-events: all !important;
	}
}