/* Manrope — все веса */
@font-face {
    font-family: 'Manrope';
    font-weight: 200;   
    font-style: normal;
    src: local('Manrope ExtraLight'), local('Manrope-ExtraLight'),
         url('/fonts/manrope/Manrope-ExtraLight.woff2') format('woff2'),
         url('/fonts/manrope/Manrope-ExtraLight.woff') format('woff');
}

@font-face {
    font-family: 'Manrope';
    font-weight: 300;  
    font-style: normal;
    src: local('Manrope Light'), local('Manrope-Light'),
         url('/fonts/manrope/Manrope-Light.woff2') format('woff2'),
         url('/fonts/manrope/Manrope-Light.woff') format('woff');
}

@font-face {
    font-family: 'Manrope';
    font-weight: 400;  
    font-style: normal;
    src: local('Manrope Regular'), local('Manrope-Regular'),
         url('/fonts/manrope/Manrope-Regular.woff2') format('woff2'),
         url('/fonts/manrope/Manrope-Regular.woff') format('woff');
}

@font-face {
    font-family: 'Manrope';
    font-weight: 500;  
    font-style: normal;
    src: local('Manrope Medium'), local('Manrope-Medium'),
         url('/fonts/manrope/Manrope-Medium.woff2') format('woff2'),
         url('/fonts/manrope/Manrope-Medium.woff') format('woff');
}

@font-face {
    font-family: 'Manrope';
    font-weight: 600;  
    font-style: normal;
    src: local('Manrope SemiBold'), local('Manrope-SemiBold'),
         url('/fonts/manrope/Manrope-Semibold.woff2') format('woff2'),
         url('/fonts/manrope/Manrope-Semibold.woff') format('woff');
}

@font-face {
    font-family: 'Manrope';
    font-weight: 700; 
    font-style: normal;
    src: local('Manrope Bold'), local('Manrope-Bold'),
         url('/fonts/manrope/Manrope-Bold.woff2') format('woff2'),
         url('/fonts/manrope/Manrope-Bold.woff') format('woff');
}

@font-face {
    font-family: 'Manrope';
    font-weight: 800;  
    font-style: normal;
    src: local('Manrope ExtraBold'), local('Manrope-ExtraBold'),
         url('/fonts/manrope/Manrope-ExtraBold.woff2') format('woff2'),
         url('/fonts/manrope/Manrope-ExtraBold.woff') format('woff');
}
	
	
	
	
 	
.stock{

    background: url('/ico/0.svg') no-repeat left;
    background-position: 70px center; 
    padding-right:22px;
}
 
 
 
button:disabled
 {
    background: #ccc !important;
    cursor: not-allowed !important;
    opacity: 0.6;
}

	
	h1, h2, h3, h4, a {
		text-decoration:none;
		color: #4A4855;
	}
	h1{
		font-size:28px;
	}
    
 a.active, a:hover{
	 color: #D92625
 }
	
	
	
.block{
    background-color:#F3F3F3 !important;
    border-radius:15px;
}
 
main {
 
	 margin: 0 auto; 
     flex: 1;  /*  растягивает main, толкает footer вниз */
     padding: 175px  0 0 0;
     background: #ffffff;
}
.img-responsive {
  max-width: 100%; 
  height: auto; 
  display: block; 
}

#content {
	width:1180px;
    padding: 0;
	margin:0;
 
    z-index:2;
    min-height: 400px;   
}
	
* { margin: 0; padding: 0; box-sizing: border-box; }

html, body {
    height: 100%;
    font-family: 'Manrope', sans-serif;
}

body {
    display: flex;  
    flex-direction: column; 
    min-height: 100vh;
	background-color:#ffffff;
}
 
.top {
 background-color:#ffffff;
    z-index:2;
    position: fixed;  
    top: 0;
    left: 0;
    right: 0;  
    width: 100%;  
    max-width: 1180px;  
    margin: 0 auto;  
    height: 180px;
    padding: 0 0px;
}

nav a { 
  color: #525252
}

 
.content {
    max-width: 1180px;
    margin: 0 auto;
    background: white;
    padding: 40px;
    border-radius: 16px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.1);
}

 

/* @media (max-width: 1180px) {
    main { padding: 20px; }
} */


#logo {
display: grid;
grid-template-columns: auto  1fr auto 1fr auto;  
align-items: stretch; 
gap:0;
padding-top: 30px;
max-width: 1200px;
margin: 0 auto;
}

#logo .flag {
 
width: 110px;
display: grid;
place-items: center; 
}

#logo .logo {
    width: 182px;
    display: grid;
    place-items: center;
}

#logo >div:first-child {
display: grid;
grid-template-columns: auto auto;  
gap: 12px;
place-items: center; 
}

#logo> div:nth-child(3) {
display: grid;
grid-template-rows: 1fr 1fr;  
justify-items: center;
height: 100%;   
}

#nav0 {  
width:100%;
display:flex;
justify-content: space-between; 
margin:0px;
align-self: start;   
position: relative; 
top: -5px;   
}

#nav0 a{
 margin-right: 15px;
 font-size:16px;
  white-space: nowrap;
}
#nav0 > a:last-child{
margin-right: 0px;
}


#logo form {   
    align-self: end;     
}

#logo form  {   
    align-self: end;     
    width: 100%;   
    display: flex;  
    gap: 0;    
    border-radius: 5px; 
    overflow: hidden;    
    border: 1px solid #525252;  
}

#logo form input[type="text"] {
    flex: 1;    
    border: none;
	 height: 32px;    
	 
    padding: 12px 5px;
    outline: none;
    background: transparent;
}




#logo form button[type="submit"] {
    width: 55px;    
    height: 32px;     
    border: none;
    background:#525252;    
    color: #ccc;     
    font-size: 18px;
    cursor: pointer;
    border-radius: 0 5px 5px 0; 
    display: flex;
    align-items: center;
    justify-content: center;
}

#logo form button:hover {
    background: #838996;
}
 
button.call{
	width:210px;
	border:0;
	height: 33px; 
	padding:0;
	border-radius: 5px;
	margin:0;
	color: #ffffff;
	background-color:#D92625;
    cursor: pointer;
}

#logo > div:last-child {
    display: grid;
    grid-template-rows: 1fr 1fr;  
    justify-items: center;
 
    height: 100%;   
}

#logo > div:last-child > *:first-child {   
    align-self: start;   

}

#logo > div:last-child > *:last-child {   
    align-self: end;     
}
 
 .phone-container {
    position: relative;
    display: inline-block;
}

.main-phone {
    display: flex !important; 
    align-items: center;
    gap: 5px  !important;  
    flex-wrap: nowrap;  
    cursor: pointer;
}

.main-phone img {
    flex-shrink: 0;  
}

.main-phone a, .phone-dropdown a {
	font-weight:600;
	color:#525252;
	font-size:20px;
	text-decoration:none;
    flex-shrink: 1;       
    white-space: nowrap;    
 
}

 .phone-dropdown > div.ph1:first-child a{
	 color:#D92625;
 }
 
 
 .phone-dropdown > div:first-child span{
    white-space: nowrap;
    flex-wrap: nowrap;
    overflow: hidden;
}
 

.arrow {
    font-size: 15px;
    font-weight: bold;
    color: #666;
    transition: transform 0.3s ease;
    margin-left: 4px;
    flex-shrink: 0;
}


.phone-dropdown {
 
padding :18px 0 10px 0;
    position: absolute;
    top: -5px;
    right: -2px;
 background-color:#ffffff ;
 
    border-radius: 0px;
    box-shadow: 0 15px 45px rgba(0,0,0,0.28), 0 5px 20px rgba(0,0,0,0.20);
/*     min-width: 280px; */
 
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1000;
}

.phone-dropdown.active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
 
.phone-dropdown div.ph1 {
	
    padding: 8px 30px;
    display: flex;
	flex-direction:column;
    justify-content: space-between;
	
    align-items: left;
    border-bottom: 1px solid #f5f5f5;
    transition: background 0.2s;
}


.phone-dropdown div.ph1 a.email {
	font-size:16px;
	font-weight:400;
}

 
.phone-dropdown div.ph1  button.call{
	width:100%;
}
.phone-dropdown div.ph1 a.adr {
	font-size:16px;
	font-weight:400;
    max-width: 270px;  
    white-space: normal;
}

.phone-dropdown > div:hover {
    background: #f8f9fa;
}

.phone-dropdown span {
    font-size: 14px;
    color: #666;
    font-weight: 400;
}

.all_key {
 
    display: flex;
justify-content: start; 
    flex-direction: row;
    gap: 8px; 
    cursor: pointer;
    padding: 10px 0;
}

.all_key > div {
    width: 25px; 
    height: 25px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain; 
    transition: all 0.3s ease;
 
    cursor: pointer;
}
 
.tg { background-image: url(/ico/tg.svg); }
.youtube { background-image: url(/ico/youtube.svg); }
.rutube { background-image: url(/ico/rutube.svg); }
.vk { background-image: url(/ico/vk.svg); }
.zen { background-image: url(/ico/yandex.svg); }
 

.all_key > div:hover {
    opacity: 1;
    transform: scale(1.15);   /* лёгкое увеличение */
    filter: brightness(1.1);  /* ярче при hover */
}
 

.main-phone svg {
    transition: all 0.3s ease;
    flex-shrink: 0;
}

.main-phone:hover svg {
    stroke: #c0392b; 
    transform: scale(1.1);
}


 .pos {
	 width: 230px;
    height: 345px;
    display: flex;
    flex-direction: column;
	justify-content:space-between;
    border-radius: 20px;
    overflow: hidden;
    background: #fff;

}

.pos figure {
  
    text-align: center;
	 
    height: 210px; 
		 
    display: flex;  
    flex-direction: column; 
    align-items: center; 
    justify-content: center; 	 
		 
    position: relative; 
    overflow: visible;   
}

.pos figure::before {
    content: '';
    position: absolute;
    top: 10px;
    right: 15px;
    width: 24px;
    height: 24px;
    background: url('/ico/0.svg') no-repeat center;
    background-size: contain;
    z-index:1;
}

.pos figure img {
     object-fit: cover;
    height: 160px;
    display: block;
}

.pos figure figcaption {
    display: block !important; 
    font-weight: 700;
    font-size: 14px;
    padding: 8px 5px;
    text-align: center;
 	line-height: 1.2;
}

.pos .money {
    flex: 1;
    padding: 5px 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.pos .money button, #comments button {
    background: #ffffff;
    color: #D92625;
    font-size:16px;
    padding: 10px;
    border-radius: 10px;
    cursor: pointer;
    margin: 0 15px 15px 15px;
	border:2px solid #F0A8A8;
    
}

.pos .money button:hover, #comments button:hover{

        background: #D92625;
    color:#ffffff; 
    
} 

  .pos .money .cost{
	  font-weight:700;
	  color: #D92625;
  }
  
  
.pos .money>div:first-child{
    color: #A8A8A8;
    background: url('/ico/1.svg') no-repeat left  40px center;
    background-size: 14px 14px; 
    padding-top: 2px;
    padding-bottom: 2px;
}

.breadcrumb {
    margin: 0;
 width:100%;
    padding: 0 0 0 0;
}

.breadcrumb ol {
 width:100%;
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 0;
 
}

.breadcrumb li, .breadcrumb a{
    color:#4A4D56;
    font-size:13px;
	font-weight:400;
	text-decoration: none;
}

.breadcrumb li + li::before {
    content: "|";
    margin: 0 6px;
     color: #ABABAB;
}

.breadcrumb a {
    color: #ABABAB;
    text-decoration: none;
}

.breadcrumb a:hover {
    color:#4A4D56;
}




@media (max-width: 1181px) {
	
	
	.top {

    padding: 0 10px;
}

#content {
	width:100%;
}
 main {
	margin:0;
}
}


@media (max-width: 1000px) {
	
	
main {
    padding: 175px 0 0 0;
}
 
 	
#logo .flag {
 
width: 95px;
 
}

#logo .logo {
    width: 162px;
 
}


#logo >div:first-child {
    padding-left: 0px;
}
	
	
#nav0 a {
margin-right: 8px;
font-size: 14px;
}
	
nav0 {  
top: -3px;   
}

}

 
@media (max-width: 850px) {
	
	
	
.mobile-contacts{
	margin:0 !important;
	padding:0 !important;
}	
	
.mobile-contacts>div{
	padding-top:20px;
}
	
.mobile-contacts>div.calreport{
	padding-top: 0px;
	padding-left:30px;
}	
	
.mobile-contacts>div.all_key{
	padding-top:25px
}

.mobile-contacts>div.all_key > div {
    width: 30px;
    height: 30px;
}

 
.mobile-contacts .ph{
	display:flex;
	align-items:center;
	gap:8px;
	
}

 .mobile-contacts .ph a{
	 line-height: 1; 
 }


 .mobile-call-btn{
	 margin: 20px 0 10px 0 !important;
 }

.breadcrumb ol>li:first-child , .breadcrumb li + li::before{
 display:none;
}

.breadcrumb ol{
	flex-direction:column
}

.breadcrumb ol > li:nth-last-child(2) {  
    padding-left: 25px;
}


.breadcrumb ol>li:last-child{
	padding-left:50px;
} 
	
h1{
	font-size:20px;
}	
	
	
main {
    padding: 45px  0 0 0;
}

 

	.top {
	   height: 45px;
	}	

	#logo >div:first-child {
		display: grid;
		grid-template-columns: auto auto auto; 
		gap: 12px;
		place-items: center; 
	}

		
	#logo {
		grid-template-columns: auto  auto 1fr auto auto; 
		gap: 5px;
	}
		
	#logo > div:last-child > button.call, #nav0 {
	 display:none
	}

	#logo .logo {
		width: 92px;
	}

	#logo .flag {
	 width: 54px;
	 
	}

	#logo> div:nth-child(3) {
		grid-template-rows: 1fr;
	}


	#logo > div:last-child {
		grid-template-rows: 1fr;
		margin-top:6px;
	}

	#logo {
	padding-top: 5px;
	}

}


@media (max-width: 650px) {

	#logo .main-phone a {
		display:none;
	}


	#logo .main-phone:first-child span{
		display:none;
	}





	#logo .logo { width: 71px}
	#logo .flag { width: 42px}
}

@media (max-width: 445px) {

	#logo form button[type="submit"] {
		width: 30px !important;    
		height: 40px;     
		border: none;
		background:none;    
	}

	#logo form button[type="submit"] svg circle,
	#logo form button[type="submit"] svg path {
		stroke: #D92625 !important; 
	}

	#logo form button[type="submit"] svg {
		stroke: #D92625 !important;   
	    width: 25px  !important;  
		height: 25px !important;   
	}

	#logo form input[type="text"] {
	display:none;

	}

	#logo form {
	 
		width: 100%;
		display: flex;
		  justify-content: end;
		gap: 0;
		border-radius: 0px;
		overflow: hidden;
		border: 0px solid #525252;
	}

}